Mit cloud-init booten
Überblick
Cloud-init ist ein Softwarepaket, das die Initialisierung von Servern während des Systemstarts automatisiert. Wenn Sie einen neuen Linux-Server aus einem Image bereitstellen, bietet cloud-init Ihnen die Möglichkeit, Standard-Benutzerdaten festzulegen. Die Benutzerdaten müssen in Shell-Skripten oder cloud-config-Direktiven mit YAML-Syntax geschrieben werden.
Diese Methode ist plattformübergreifend hochkompatibel und absolut sicher. Kompatibilität: Dieser Service wird auf allen öffentlichen centron ccloud Linux-Distributionen (Debian, CentOS und Ubuntu) unterstützt. Sie können Benutzerdaten über das ccenter oder über die ccloud API übermitteln. Bestehende Cloud-Init-Konfigurationen von anderen Anbietern sind mit centron ccloud kompatibel.
Beschränkungen
Cloud-init ist auf allen öffentlichen Images verfügbar, die von centron ccloud bereitgestellt werden. Wenn Sie Ihr eigenes Linux-Image verwenden möchten, vergewissern Sie sich bitte zuerst, dass es Cloud-init unterstützt. Andernfalls gibt es keine Garantie, dass das Paket wie vorgesehen funktioniert. Windows-Images werden derzeit nicht unterstützt; ihre Aufnahme kann zu einem späteren Zeitpunkt in Betracht gezogen werden.
Bereitstellung
Cloud-init kann nur bei der Erstbereitstellung festgelegt werden. Sie kann nicht auf Instanzen angewendet werden, die bereits bereitgestellt wurden. Die Einstellungen können nach der Bereitstellung nicht mehr geändert werden.
Unterstützte Formate
Dieses Tutorial demonstriert die Verwendung der Skripte cloud-config und user-data. Das cloud-init-Paket unterstützt jedoch eine Vielzahl von Formaten.
Format | Beschreibung |
---|---|
Base64 | Wenn die Benutzerdaten base64-kodiert sind, stellt cloud-init fest, ob es die dekodierten Daten als einen der unterstützten Typen verstehen kann. Wenn es die dekodierten Daten versteht, dekodiert es die Daten und behandelt sie entsprechend. Wenn nicht, werden die base64-Daten unverändert zurückgegeben. |
User-Data Script | Beginnt mit |
Include File | Beginnt mit |
Cloud Config data | Beginnt mir |
Upstart Job | Beginnt mit Der Inhalt wird in |
Cloud Boothook | Beginnt mit Dieser Inhalt ist eine |
Shell Scripts
Shell Skripte sind der einfachste Weg, einen Server zu bootstrappen. Das folgende Beispiel konfiguriert einen CentOS Webserver:
Lassen Sie der Instanz genügend Zeit, um zu starten und die Befehle in Ihrem Skript auszuführen, und überprüfen Sie dann, ob Ihr Skript die von Ihnen beabsichtigten Aufgaben erfüllt hat. Im obigen Beispiel wird ein Webserver installiert und die Standarddatei index.html neu geschrieben.
Um zu testen, ob cloud-init Ihre VM erfolgreich gebootet hat, können Sie die entsprechende IP-Adresse in Ihrem Browser öffnen. Sie sollten mit einer "Hello World"-Nachricht von Ihrem Webserver begrüßt werden.
Cloud-config directives
Cloud-init-Images können auch mit cloud-config-Direktiven gebootet werden. Auf der cloud-init-Website werden alle unterstützten Module beschrieben und Beispiele für grundlegende Direktiven gegeben.
Module
Beispiele
Beispiel 1: Swap Partition
Das folgende Code Schnipsel erläutert, wie eine eine Swap Partition mittels YAML Skript erstellt werden kann:
Beispiel 2: Größe des Filesystems ändern
Das folgende Skript beschreibt, wie mittels eines YAML Skripts Ihr File System angepasst werden kann:
Output Log Files
Die Cloud-Init-Ausgabeprotokolldatei (/var/log/cloud-init-output.log) zeichnet die Konsolenausgaben auf. Je nach der Standardkonfiguration für die Protokollierung existiert eine zweite Protokolldatei unter /var/log/cloud-init.log..... . Dies bietet eine umfassende Aufzeichnung auf der Grundlage von Benutzerdaten.
Last updated