GNU/Linux >> Tutoriels Linux >  >> Linux

Liste des erreurs (et solutions) les plus courantes lors de l'installation du service d'image OpenStack GLANCE

J'installais récemment OpenStack Icehouse pour l'un de mes projets en suivant la documentation officielle d'openstack.org. Lors de l'installation du service d'image (Glance) sur le nœud du contrôleur, j'ai été bogué avec quelques erreurs. Après avoir cherché sur Google pendant quelques minutes, j'ai pu les corriger.

La plupart de ces erreurs se sont produites lors de la configuration de la base de données de coup d'œil (elle est normalement appelée synchronisation de la base de données de coup d'œil), de l'enregistrement du service de coup d'œil avec Keystone et du démarrage de glance-api service et glance-registry un service. Il y avait également quelques erreurs de dépendance, que je ne vais pas écrire dans cet article. J'espère que j'essaierai de les couvrir dans un autre article.

Pour l'instant, voici la liste des erreurs que j'ai rencontrées lors de l'installation et de la configuration de Glance.

Erreur lors de l'exécution de 'glance-manage db_sync coup d'œil'

Voici l'instantané de l'erreur :

$ eye-manage db_sync eye/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41 :DeprecationWarning :le package d'espace de noms oslo est obsolète. Veuillez utiliser oslo_config à la place. depuis oslo.config import cfg/usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57 :PowmInsecureWarning :n'utilise pas mpz_powm_sec. Vous devez reconstruire en utilisant libgmp>
=5 pour éviter la vulnérabilité des attaques temporelles. _warn("N'utilisant pas mpz_powm_sec. Vous devez reconstruire en utilisant libgmp>
=5 pour éviter la vulnérabilité d'attaque temporelle.", PowmInsecureWarning)2015-02-03 22:00:02.848 8671 CRITIQUE coup d'œil [-] DbMigrationError :la version doit être un entier 

Solution :
Cela a quelque chose à voir avec la version de GMP installée. Comme vous pouvez le voir dans l'erreur ci-dessus, PyCrypto nécessite la version libgmp >=5 . Pour résoudre ce problème, suivez les étapes ci-dessous :

Télécharger et installer gmp-6.0.0.a

 $ bunzip2 gmp-6.0.0a.tar.bz2 $ tar xvf gmp-6.0.0a.tar $ cd gmp-6.0.0a.tar $ ./configure $ make $ make check $ make install

Vous avez maintenant la bonne version de GMP installée et avec ces bibliothèques, vous pouvez installer PyCrypto. Pour ce faire, exécutez la commande ci-dessous.

$ pip install --ignore-installed PyCrypto

Une fois PyCrpto installé, vous pouvez réessayer la synchronisation de la base de données Glance.

Erreur d'importation :/usr/lib64/python2.6/site-packages /Crypto/Cipher/_AES.so :symbole non défini :rpl_malloc

Lorsque 'coup d'œil-gérer db_sync coup d'œil ' exécuté, j'ai reçu le message d'erreur ci-dessous :

$ eye-manage db_sync eyesu -s /bin/sh -c "glance-manage db_sync" eyeTraceback (appel le plus récent en dernier) :fichier "/usr/bin/glance-manage", ligne 6, dans from eye. cmd.manage importez le fichier principal "/usr/lib/python2.6/site-packages/glance/cmd/manage.py", ligne 45, à partir de la migration d'importation de la vue.db en tant que fichier db_migration "/usr/lib/python2. 6/site-packages/glance/db/__init__.py", ligne 21, dans le fichier de cryptage d'importation de look.common "/usr/lib/python2.6/site-packages/glance/common/crypt.py", ligne 23, à partir du fichier AES d'importation Crypto.Cipher "/usr/lib64/python2.6/site-packages/Crypto/Cipher/AES.py", ligne 50, à partir de l'importation Crypto.Cipher _AESImportError :/usr/lib64/python2 .6/site-packages/Crypto/Cipher/_AES.so :symbole non défini :rpl_malloc

Solution :

Auparavant, nous avons corrigé l'erreur libgmp, PyCrypto en installant GMP version 6.0.0.a et pip install PyCrypto. Mais cela n'a pas fonctionné comme prévu. Il semble que PyCrypto devrait être recompilé à partir de la source et ne devrait pas être installé via pip.

Téléchargez la dernière version de PyCrypto et recompilez

Décompressez PyCrypto et définissez la variable d'environnement ci-dessous.

$ exporter ac_cv_func_malloc_0_nonnull=yes

Configurer, créer et installer

$ ./configure
$ python setup.py build
$ python setup.py install

Une fois PyCrypto installé, essayez 'glance-manage db_sync coup d'oeil ‘ à nouveau.

Erreur : ValueError :les tables "migrate_version" ont un classement non utf8 , assurez-vous que toutes les tables sont CHARSET=utf8

# coup d'œil su -s /bin/sh -c "glance-manage db_sync"

Remarque :Chaque fois que vous synchronisez la base de données pour un service, assurez-vous que les tables correspondantes sont créées. Par exemple, lorsque j'ai synchronisé la base de données "glance" à l'aide de la commande ci-dessus, aucune table n'a été créée à l'exception de "migrate_version" et le journal des erreurs signalé comme indiqué dans le titre de ce paragraphe.

mysql> affiche les tables ;+-----------------+| Aperçu_des_tableaux |+------------------+| migrate_version |+------------------+1 ligne dans l'ensemble (0.00 sec)

Solution :

Connectez-vous à la base de données mysql comme ci-dessous :

$ mysql -u root -pmysql> use eyemysql> alter table migrate_version convert to character set utf8 collate utf8_unicode_ci;

Maintenant, essayez à nouveau "db_sync".

mysql> affiche les tables ;+-----------------+| Aperçu_des_tableaux |+------------------+| emplacements_images || image_members || propriétés_image || image_tags || images || migrer_version || info_tâche || tâches |+------------------+8 lignes dans l'ensemble (0.00 sec)

Erreur :regard CRITIQUE [-] DbMigrationError :la version doit être un entier

Il me restait encore quelques erreurs lors de la synchronisation de la base de données Glance.

$ eye-manage db_sync eye/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41 :DeprecationWarning :le package d'espace de noms oslo est obsolète. Veuillez utiliser oslo_config à la place. from oslo.config import cfg2015-02-04 09:46:14.847 13116 Coup d'œil CRITIQUE [-] DbMigrationError :la version doit être un entier

Solution :

Au lieu d'exécuter 'glance-manage ‘ avec deux arguments, essayez avec un argument ‘db_sync ‘ seul.

# look-manage db_sync

Cela a fonctionné pour moi.

Erreur :attend une URL d'authentification via –os-auth-url ou env [OS_AUTH_URL

$ keystone user-create --name=glance --pass= --email=Attente d'une URL d'authentification via --os-auth-url ou env[OS_AUTH_URL

Solution : Les URL d'authentification OpenStack ne sont probablement pas définies. Essayez de définir les variables d'environnement ci-dessous.

exporter OS_USERNAME=adminexport OS_PASSWORD=keystone_passwordexport OS_TENANT_NAME=adminexport OS_AUTH_URL=http://controller.node.in:35357/v2.0

Une fois les variables ci-dessus définies dans votre shell, essayez à nouveau d'enregistrer le service de regard sur la clé de voûte. Cela a fonctionné pour moi.

$ keystone user-create --name=glance --pass=glance_password --email=admin_emailAttente d'une URL d'authentification via --os-auth-url ou env[OS_AUTH_URLVous devriez voir un tableau comme celui ci-dessous+---- ------+------------------------------------------------+| Propriété | Valeur |+----------+------------------------------------------------+| e-mail | admin_email || activé | Vrai || identifiant | c8c0212a16084a65469609c857914f8c || nom | regard || nom d'utilisateur | coup d'oeil |+----------+------------------------------------------------+ 

Erreur lors du démarrage du service Glance-api

$ service openstack-glance-api start [ÉCHEC]

Le journal des erreurs /var/log/glance/openstack-glance-api-startup.log révélé le message ci-dessous :

Échec de la configuration correcte du magasin :le système de fichiers du magasin n'a pas pu être configuré correctement. Raison :Spécifiez au moins l'option "filesystem_store_datadir" ou "filesystem_store_datadirs" pour désactiver la méthode d'ajout.

Solution :

  • Ouvrir glance-api.conf dossier. Il doit se trouver dans /etc/glance/glance-api.conf
  • Recherchez ‘filesystem_store_datadir ‘ et définissez ‘/var/lib/glance/images/ ' comme valeur. S'il est déjà défini et commenté, décommentez-le simplement.
  • Essayez de démarrer le service.

 Erreur : Impossible de localiser le fichier de configuration de collage pour le regard-api

$ service openstack-glance-api start [ÉCHEC]

Solution :

  • Ouvrir glance-api.conf dossier. Il doit se trouver dans /etc/glance/glance-api.conf
  • Recherchez la ligne contenant le texte "coller le fichier de configuration" et décommentez la ligne ci-dessousconfig_file=/usr/share/glance/glance-api-dist-paste.ini
  • Essayez de redémarrer le service.

Coup d'œil CRITIQUE [-] UnicodeError :les objets de message ne prennent pas en charge str() car ils peuvent contenir des caractères non ASCII. Veuillez utiliser unicode() ou translate() à la place.

$ service openstack-glance-registry start [ÉCHEC]

Le fichier journal /var/log/glance/openstack-glance-registry-startup.log ' a révélé le message ci-dessous :

Solution :

L'erreur s'est produite dans le fichier '/usr/lib/python2.6/site-packages/glance/openstack/common/gettextutils.py ' qui levait 'UnicodeError ‘. Vous trouverez plus d'informations sur l'erreur ici.

Pour résoudre le problème.

1. Accédez à ce lien et copiez le fichier "gettextutils.py" modifié.
2. Faites une sauvegarde de gettextutils.py existant fichier comme ci-dessous

cp /usr/lib/python2.6/site-packages/glance/openstack/common/gettextutils.py /usr/lib/python2.6/site-packages/glance/openstack/common/gettextutils.py.bak 

3. Remplacez le fichier 'gettextutils.py " par celui copié à l'étape 1.
4. Démarrez le service de registre de vue comme ci-dessous :

démarrage du service $openstack-glance-registry

Remarque :Si la commande ci-dessus échoue avec une erreur de syntaxe, vous avez probablement copié des caractères indésirables lors de la copie du script gettextutils.py modifié à l'étape 1. Par exemple, le fichier copié contenait des caractères tels que '[docs] ‘. Pour résoudre le problème, ouvrez 'gettextutils.py ‘, recherchez et supprimez ces caractères indésirables. Enregistrez le fichier et redémarrez le service de registre de regard.

Dans le cas où le service ne démarre pas, recherchez le nouveau message d'erreur dans le fichier journal.

# tailf /var/log/glance/openstack-glance-registry-startup.logTraceback (appel le plus récent en dernier) :  Fichier "/usr/bin/glance-registry", ligne 6, dans     de la vue. cmd.registry import main  File "/usr/lib/python2.6/site-packages/glance/cmd/__init__.py", ligne 17, dans     gettextutils.install('glance', lazy=True)TypeError :install() a reçu un argument de mot-clé inattendu 'lazy'

Pour corriger l'erreur ci-dessus :

$vim /usr/lib/python2.6/site-packages/glance/cmd/__init__.py

et recherchez la fonction ' gettextutils.install('glance', lazy=True) ‘ et remplacez-le par celui ci-dessous :

 gettextutils.install('glance')

enregistrez le fichier et essayez de démarrer le service de registre de regard.

ERREUR :impossible de localiser le fichier de configuration collé pour le registre d'œil.

# service openstack-glance-registry start Démarrage d'openstack-glance-registry :                       [ÉCHEC]

Le fichier journal a révélé l'erreur ci-dessous :

# tailf /var/log/glance/openstack-glance-registry-startup.log
ERREUR :impossible de localiser le fichier de configuration collé pour le registre look.

Solution :

  • Ouvrir 'vim /etc/glance/glance-registry.conf ' et recherchez la ligne contenant le texte 'coller le fichier de configuration'.
  • Décommentez "config_file". Par exemple :'config_file=/usr/share/glance/glance-registry-dist-paste.ini " et essayez de redémarrer le service. Cela a fonctionné pour moi.

DeprecationWarning :le package d'espace de noms oslo est obsolète. Veuillez utiliser oslo_config à la place. depuis oslo.config importer cfg

Solution : Ouvrez les fichiers ci-dessous un par un et remplacez ‘oslo.config ‘ avec ‘oslo_config ‘ et enregistrez-le. (Notez que le point est remplacé par un trait de soulignement)

/usr/lib/python2.6/site-packages/glance/openstack/common/log.py/usr/lib/python2.6/site-packages/glance/common/wsgi.py:37/usr/ lib/python2.6/site-packages/oslo_config/cfg.py:333/usr/lib/python2.6/site-packages/oslo_config/cfg.py:333/usr/lib/python2.6/site-packages/ coup d'oeil/common/config.py:26/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py:22

Essayez de démarrer le service et voyez si vous obtenez ces avertissements.

J'espère que ces découvertes pourront aider quelqu'un là-bas. Avez-vous une suggestion? S'il vous plaît partager avec moi dans la zone de commentaire ci-dessous.

Vous pourriez également être intéressé par :Solutions pour les erreurs d'installation Keystone d'OpenStack

Et le Bonus est là…

    Téléchargez l'ebook gratuit sur l'installation d'OpenStack Icehouse ! Téléchargez l'aide-mémoire de l'interface de ligne de commande OpenStack ! - Commandes les plus couramment utilisées

Linux
  1. Comment gérer et répertorier les services sous Linux

  2. Comment installer et configurer Dovecot

  3. Installation et configuration de Grafana sous Linux

  4. Erreurs et solutions d'installation d'OpenStack Icehouse - CentOS

  5. Liste des erreurs courantes (et solutions) lors de l'installation et de la configuration du service OpenStack Nova

Comment télécharger et télécharger une image cloud dans OpenStack

Raspberry Pi Basics :installer Raspbian et le faire fonctionner

Installer et configurer Jenkins sous Linux

L'histoire d'OpenStack, la communauté et 7 de ses principaux projets

Problèmes de serveur courants et solutions

Erreurs courantes sur Yum sur CentOS, RHEL ou Fedora