Share via


Verwenden geplanter Ereignisse

Ab 8.2.2 kann CycleCloud die Vorteile geplanter Ereignisse für VMs nutzen. Mit diesem Feature können Sie ein Skript auf Ihrem virtuellen Computer platzieren, das automatisch ausgeführt wird, wenn eines der unterstützten Ereignisse auftritt.

Aufrufen eines Skripts, wenn Ereignisse auftreten

Der Jetpack-Agent auf dem Knoten überwacht automatisch Ereignisse. Wenn eins auftritt, sucht es im Skriptverzeichnis (/opt/cycle/jetpack/scripts unter Linux, C:\cycle\jetpack\scripts unter Windows) nach einem Skript, das dem Ereignis entspricht. Wenn es ein Skript findet, wird es ausgeführt und das Ereignis zurückgesetzt, bis das Skript erfolgreich verläuft (oder das Ereignis timeout verstrichen ist und Azure das Ereignis plant). Sobald das Skript erfolgreich beendet wurde, wird das Ereignis in Azure bestätigt, sodass die zugrunde liegende Aktion (z. B. ein Neustart) sofort erfolgen kann.

Hinweis

Ereignisse, für die keine Skripts vorhanden sind, werden automatisch von CycleCloud erkannt, wenn die Überwachung aktiviert ist, um sicherzustellen, dass Ereignisse wie Neustarts nicht unnötig verzögert werden. Wenn Sie einen anderen benutzerdefinierten Prozess haben, der bereits Ereignisse überwacht, kann die Ereignisüberwachung deaktiviert werden. Beachten Sie, dass CycleCloud keine Benachrichtigung über Spoträumungen erhält.

Die geplante Ereignisüberwachung ist standardmäßig aktiviert, kann jedoch deaktiviert werden, indem Sie folgendes auf einem Knoten oder Knotenarray festlegen:

[[[configuration]]]
cyclecloud.monitor_scheduled_events = false

Die veraltete Einstellung cyclecloud.monitor_spot_eviction, die in Version 8 hinzugefügt wurde, bedeutet jetzt identisch mit cyclecloud.monitor_scheduled_events.

Unterstützte Ereignisse

Ereignis BESCHREIBUNG Linux-Skript Windows Script
Preempt Der Spot-VM wird ausgeräumt. onPreempt.sh onPreempt.bat
Terminate Der virtuelle Computer soll gelöscht werden (optional) onTerminate.sh onTerminate.bat
Reboot Der virtuelle Computer wird geplant, neu gestartet zu werden. onReboot.sh onReboot.bat
Erneute Bereitstellung Der virtuelle Computer wird geplant, zu einem anderen Host zu wechseln. onRedeploy.sh onRedeploy.bat
Freeze Der virtuelle Computer wird für einige Sekunden angehalten. onFreeze.sh onFreeze.bat

Benachrichtigung beenden

CycleCloud unterstützt das Aktivieren von Terminbenachrichtigungen auf Scaleset-VMs (z. B. Ausführen von Knoten). Legen Sie EnableTerminateNotification dazu auf "true" im Knotenarray fest. Dadurch wird es für Skalierungssets aktiviert, die für dieses Knotenarray erstellt wurden. Um das zulässige Timeout außer Kraft zu setzen, können Sie eine neue Uhrzeit festlegen TerminateNotificationTimeout . Beispiel: in einer Clustervorlage:

[[nodearray execute]]
EnableTerminateNotification = true
TerminateNotificationTimeout = 10

Ohne EnableTerminateNotification "true" wird das Scaleset-VMs kein Terminate-Ereignis abgerufen.