(Hook) Script nach Erstellung/ Löschung von VM

Vengance

Renowned Member
May 21, 2016
271
12
83
35
Hi,

Ist es möglich ein eigenes Script zu definieren, welches nach der Erstellung oder Löschung einer KVM VM ausgeführt wird?

Ich nutze solch ein Script momentan für OpenNebula um mir automatisiert DNS Records basierend auf dem Hostname und der IP der VM erstellen zu lassen.



Grüße
 
Das würde aber bedeuten, ich müsste die VM immer über die API erstellen, richtig?
 
Jein, das kommt darauf an wie idempotent das Script oder Tool ist. zB. ein Ansible Playbook kann Tasks idempotent aus führen und somit in einem Cronjob laufen, der bei neu erscheinenden VM/CT Konfigurationen vornimmt. Zugleich wird auch geprüft, das im laufenden Betrieb die Konfiguration von DNS und VM nicht auseinander läuft.

Das selbe kann auch per Script über die API ausgemacht werden. Als Beispiel, per 'GET /api2/json/cluster/resources' alle VM/CT (und weitere) abfragen und das Ergebnis als Datei speichern. Bei jedem neuen Aufruf wird diese Datei dann mit dem aktuellen Ergebnis verglichen und bei einer Differenz wird dann die jeweilige Aktion ausgeführt.

Mittels 'pvesh' kann der API Baum auch auf der CLI durchschritten werden.
https://pve.proxmox.com/pve-docs/api-viewer/index.html

Der Vorteil an einem Konfigurationsmanagement Tool ist die Zustandsbeschreibung, die zuerst erstellt wird und im Anschluss erst zur Ausführung kommt. Damit wird die Konfiguration einer spezifischen Maschine bereits nachvollziehbar "Dokumentiert".
 
Danke für deine ausführliche Antwort!
Dann werde ich mir das mal näher anschauen, allerdings schade, dass keine "native" Hook Implemention existiert, das würde sowas deutlich vereinfachen.