Heim > Artikel > Betrieb und Instandhaltung > Um sicherzustellen, dass die Bildquellenkonfiguration beim Importieren von Bildern vom Typ Linux erfolgreich ist, sollte cloud-init installiert werden.
Der Inhalt dieses Artikels befasst sich mit der Installation von cloud-init, um sicherzustellen, dass die Bildquellenkonfiguration beim Importieren von Linux-Bildern erfolgreich ist. Ich hoffe, dass es für Freunde hilfreich ist Du hast geholfen.
Cloud-init installieren
Wenn Sie ein vorhandenes Image zum Erstellen einer ECS-Instanz verwenden müssen, können Sie die Konfiguration über die Funktion „Image importieren“ abschließen. Beim Importieren eines Linux-Images wird empfohlen, cloud-init vorab auf dem Quellserver, der virtuellen Maschine oder dem Cloud-Host zu installieren, um sicherzustellen, dass der Hostname, das NTP und die Yum-Quelle des importierten Image erfolgreich konfiguriert werden.
Hinweise
Zu den Linux-Distributionen, die die Installation von Cloud-Init unterstützen, gehören derzeit CentOS, Debian, Fedora, FreeBSD, Gentoo, RHEL ( Red Hat Enterprise Linux), SLES (SUSE Linux Enterprise Server) und Ubuntu.
Wenn auf Ihrem Quellserver, Ihrer virtuellen Maschine oder Ihrem Cloud-Host Cloud-Init installiert ist, müssen Sie bestätigen, dass die Cloud-Init-Versionsnummer höher als 0.7.9 ist. Bilder, die niedrigere Versionen von Cloud-Init enthalten verwandte Instanzen Konfiguration fehlgeschlagen, wie z. B. NTP, HostName, Yum usw.
Melden Sie sich beim Quellserver, der virtuellen Maschine oder dem Cloud-Host an.
Führen Sie cloud-init --version aus, um die Cloud-init-Version abzufragen.
Wenn Ihre Cloud-Init-Versionsnummer höher als 0.7.9 ist, bedeutet dies, dass diese Version verfügbar ist. Andernfalls müssen Sie cloud-init installieren.
Voraussetzungen
Vor der Installation von cloud-init muss auf Ihrem Quellserver, Ihrer virtuellen Maschine oder Ihrem Cloud-Host die folgende Software installiert sein.
git: Laden Sie das Cloud-Init-Quellpaket herunter
yum-Installationsmethode: yum install git
Python2.7: Die Basis für den Betrieb und die Installation von Cloud-init
yum Installationsmethode: yum install python
pip: Installieren Sie die Python-Bibliothek, von der Cloud-Init abhängt
yum Installationsmethode: yum install python-pip
yum ist hier aufgeführt Installationsmethode. Die Paketmanager-Installationsmethode von zypper oder apt-get ähnelt der yum-Installationsmethode.
Cloud-init installieren
Sie können die folgenden Schritte ausführen, um cloud-init zu installieren:
Melden Sie sich an Quelle des zu importierenden Bildes Server, virtuelle Maschine oder Cloud-Host.
Führen Sie git clone https://git.launchpad.net/cloud-init aus und laden Sie das Cloud-init-Quellcodepaket von der offiziellen Website von cloud-init herunter.
Führen Sie cd cloud-init aus, um das Cloud-init-Verzeichnis aufzurufen.
Führen Sie python setup.py install aus, um die Cloud-Init-Installationsdatei setup.py zu installieren.
Führen Sie vi /etc/cloud/cloud.cfg aus, um die Konfigurationsdatei cloud.cfg zu ändern.
Ändern Sie die vorherige Konfiguration von cloud_init_modules wie folgt:
# Example datasource config # The top level settings are used as module # and system configuration. # A set of users which may be applied and/or used by various modules # when a 'default' entry is found it will reference the 'default_user' # from the distro configuration specified below users: - default user: name: root lock_passwd: False # If this is set, 'root' will not be able to ssh in and they # will get a message to login instead as the above $user disable_root: false # This will cause the set+update hostname module to not operate (if true) preserve_hostname: false syslog_fix_perms: root:root datasource_list: [ AliYun ] # Example datasource config datasource: AliYun: support_xen: false timeout: 5 # (defaults to 50 seconds) max_wait: 60 # (defaults to 120 seconds) # metadata_urls: [ 'blah.com' ] # The modules that run in the 'init' stage cloud_init_modules:
Fehlerbehebung
Verschiedenen Bildern fehlen möglicherweise unterschiedliche Bibliotheken. Sie können sie über pip installieren. Wiederholen Sie den obigen Schritt 4.
Die Bibliotheken six und oauthlib fehlen
Wenn während des Installationsvorgangs die folgende Meldung angezeigt wird, bedeutet dies, dass Python die Bibliothek six fehlt. Sie können die Six-Bibliothek mit pip installieren: pip install six.
File "/root/cloud-init/cloudinit/log.py", line 19, in <module> import six ImportError: No module named s )
Wenn während des Installationsvorgangs die folgende Meldung angezeigt wird, bedeutet dies, dass Python die oauthlib-Bibliothek fehlt. Sie können die oauthlib-Bibliothek mit pip installieren: pip install oauthlib.
File "/root/cloud-init/cloudinit/url_helper.py", line 20, in <module> import oauthlib.oauth1 as oauth1 ImportError: No module named oauthlib.oaut )
Es gibt keine eindeutige fehlende abhängige Bibliothek, wenn der Fehler angezeigt wird
Wenn der Installationsfehler gemeldet wird und es keine eindeutige Meldung darüber gibt, welche abhängigen Bibliotheken fehlen, können Sie die Anforderungen befolgen. txt-Datei der Cloud-Init-Bibliothek und führen Sie pip install -r require.txt aus, um alle abhängigen Bibliotheken zu installieren.
Nächste Schritte
Sie können ein benutzerdefiniertes Bild importieren.
Das obige ist der detaillierte Inhalt vonUm sicherzustellen, dass die Bildquellenkonfiguration beim Importieren von Bildern vom Typ Linux erfolgreich ist, sollte cloud-init installiert werden.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!