Le contenu de cet article concerne l'installation de cloud-init pour garantir que la configuration de la source de l'image réussit lors de l'importation d'images de type Linux. Il a une certaine valeur de référence. Les amis dans le besoin pourront s'y référer. vous avez aidé.
Installer cloud-init
Si vous devez utiliser une image existante pour créer une instance ECS, vous pouvez terminer la configuration via la fonction d'importation d'image. Lors de l'importation d'une image de type Linux, afin de garantir que le nom d'hôte de l'image importée, NTP et la source Yum sont configurés avec succès, il est recommandé d'installer cloud-init sur le serveur source, la machine virtuelle ou l'hôte cloud au préalable.
Notes
Actuellement, les distributions Linux qui prennent en charge l'installation de cloud-init incluent CentOS, Debian, Fedora, FreeBSD, Gentoo, RHEL ( Red Hat Enterprise Linux), SLES (SUSE Linux Enterprise Server) et Ubuntu.
Si votre serveur source, machine virtuelle ou hôte cloud a installé cloud-init, vous devez confirmer que le numéro de version de cloud-init est supérieur à 0.7.9. Les images contenant des versions inférieures de cloud-init entraîneront. instances associées La configuration a échoué, telle que NTP, HostName, Yum, etc.
Connectez-vous au serveur source, à la machine virtuelle ou à l'hôte cloud.
Exécutez cloud-init --version pour interroger la version cloud-init.
Si votre numéro de version cloud-init est supérieur à 0.7.9, cela signifie que cette version est disponible. Sinon, vous devez installer cloud-init.
Prérequis
Avant d'installer cloud-init, votre serveur source, votre machine virtuelle ou votre hôte cloud doit avoir installé le logiciel suivant.
git : Téléchargez le package source cloud-init
Méthode d'installation yum : yum install git
Python2.7 : La base du fonctionnement et de l'installation de cloud-init
méthode d'installation yum : yum install python
pip : installez la bibliothèque Python dont dépend cloud-init
méthode d'installation yum : yum install python-pip
yum est répertorié ici Méthode d'installation. La méthode d'installation du gestionnaire de paquets de zypper ou apt-get est similaire à la méthode d'installation de yum.
Installer cloud-init
Vous pouvez suivre les étapes ci-dessous pour installer cloud-init :
Connectez-vous à source de l’image à importer Serveur, machine virtuelle ou hôte cloud.
Exécutez git clone https://git.launchpad.net/cloud-init et téléchargez le package de code source cloud-init depuis le site officiel de cloud-init.
Exécutez cd cloud-init pour accéder au répertoire cloud-init.
Exécutez python setup.py install pour installer le fichier d'installation cloud-init setup.py.
Exécutez vi /etc/cloud/cloud.cfg pour modifier le fichier de configuration cloud.cfg.
Modifiez la configuration précédente de cloud_init_modules comme suit :
# 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:
Dépannage
Différentes images peuvent manquer de bibliothèques différentes. Vous pouvez les installer via pip. Après l'installation, répétez à nouveau l'étape 4 ci-dessus.
Les bibliothèques six et oauthlib sont manquantes
Pendant le processus d'installation, si le message suivant apparaît, cela signifie qu'il manque à Python les six bibliothèques. Vous pouvez installer les six bibliothèques en utilisant pip : pip install six.
File "/root/cloud-init/cloudinit/log.py", line 19, in <module> import six ImportError: No module named s )
Pendant le processus d'installation, si le message suivant apparaît, cela signifie qu'il manque à Python la bibliothèque oauthlib. Vous pouvez installer la bibliothèque oauthlib en utilisant pip : 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 )
Il n'y a pas de bibliothèque dépendante manquante lorsque l'erreur est demandée
Si l'erreur d'installation est signalée et qu'il n'y a pas d'invite claire indiquant quelle bibliothèque dépendante est manquante, vous pouvez suivre les Fichier exigeants.txt de cloud-init Affichez les bibliothèques et exécutez pip install -r exigences.txt pour installer toutes les bibliothèques dépendantes.
Étapes suivantes
Vous pouvez importer une image personnalisée.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!