GNU/Linux >> Znalost Linux >  >> Linux

Seznam nejčastějších chyb (a řešení) při instalaci OpenStack Image Service GLANCE

Nedávno jsem instaloval OpenStack Icehouse pro jeden ze svých projektů podle oficiální dokumentace z openstack.org. Během instalace Image service (Glance) na řadičový uzel se mi objevilo několik chyb. Po několika minutách hledání na Googlu jsem je mohl opravit.

K většině těchto chyb došlo při nastavování databáze pohledů (normálně se to nazývá synchronizace databáze pohledů), registraci služby pohledů pomocí Keystone a při spouštění glance-api službu a pohledový registr servis. Vyskytlo se také několik chyb v závislosti, které v tomto článku nebudu psát. Doufám, že se je pokusím pokrýt v jiném článku.

Prozatím zde je seznam chyb, se kterými jsem se setkal během instalace a konfigurace Glance.

Chyba při spuštění ‚glance-manage db_sync look‘

Zde je snímek chyby:

$ look-manage db_sync look/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41:Upozornění na zastaralost:Balíček jmenného prostoru oslo je zastaralý. Místo toho použijte oslo_config. z oslo.config import cfg/usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57:PowmInsecureWarning:Nepoužívá se mpz_powm_sec. Měli byste znovu sestavit pomocí libgmp>
=5, abyste se vyhnuli zranitelnosti načasovaného útoku. _warn("Nepoužívá se mpz_powm_sec. Měli byste znovu sestavit pomocí libgmp>
=5, abyste se vyhnuli zranitelnosti načasovaného útoku.", PowmInsecureWarning)2015-02-03 22:00:02.848 8671 CRITICAL pohled 

Řešení:
To má něco společného s nainstalovanou verzí GMP. Jak můžete vidět z výše uvedené chyby, PyCrypto potřebuje verzi libgmp> =5 . Chcete-li to opravit, postupujte podle následujících kroků:

Stáhněte si a nainstalujte 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

Nyní máte nainstalovanou správnou verzi GMP a pomocí těchto knihoven můžete nainstalovat PyCrypto. Chcete-li to provést, spusťte níže uvedený příkaz.

$ pip install --ignore-installed PyCrypto

Jakmile je PyCrpto nainstalováno, můžete znovu zkusit synchronizaci databáze Glance.

ImportError:/usr/lib64/python2.6/site-packages /Crypto/Cipher/_AES.so:nedefinovaný symbol:rpl_malloc

Když „pohled-spravovat db_sync pohled ‘ po provedení, zobrazila se mi níže uvedená chybová zpráva:

$ look-manage db_sync insightsu -s /bin/sh -c "glance-manage db_sync" lookTraceback (poslední poslední volání):Soubor "/usr/bin/glance-manage", řádek 6, od pohledu. cmd.manage hlavní import importu Soubor "/usr/lib/python2.6/site-packages/glance/cmd/manage.py", řádek 45, v migraci importu z insight.db jako db_migration Soubor "/usr/lib/python2. 6/site-packages/glance/db/__init__.py", řádek 21, do z insight.common import crypt Soubor "/usr/lib/python2.6/site-packages/glance/common/crypt.py", řádek 23, z Crypto.Cipher importujte soubor AES "/usr/lib64/python2.6/site-packages/Crypto/Cipher/AES.py", řádek 50, z Crypto.Cipher importujte _AESImportError:/usr/lib64/python2 .6/site-packages/Crypto/Cipher/_AES.so:nedefinovaný symbol:rpl_malloc

Řešení:

Dříve jsme opravili libgmp, chybu PyCrypto instalací GMP verze 6.0.0.a a pip install PyCrypto. To ale nefungovalo podle očekávání. Zdá se, že PyCrypto by mělo být překompilováno ze zdroje a nemělo by být instalováno přes pip.

Stáhněte si nejnovější verzi PyCrypto a znovu zkompilujte

Rozbalte PyCrypto a nastavte níže uvedenou proměnnou prostředí.

$ export ac_cv_func_malloc_0_nonnull=yes

Konfigurovat, sestavit a nainstalovat

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

Jakmile je PyCrypto nainstalováno, zkuste ‘glance-manage db_sync look ‘ znovu.

Chyba: ValueError:Tabulky „migrate_version“ nemají řazení utf8 , ujistěte se prosím, že všechny tabulky jsou CHARSET=utf8

# su -s /bin/sh -c pohled “glance-manage db_sync”

Poznámka:Při každé synchronizaci databáze pro jakoukoli službu se ujistěte, že jsou vytvořeny odpovídající tabulky. Když jsem například pomocí výše uvedeného příkazu synchronizoval databázi ‚gance‘, nebyly vytvořeny žádné tabulky kromě ‚migrate_version‘ a chybový protokol hlášený, jak je uvedeno v názvu tohoto odstavce.

mysql> zobrazit tabulky;+------------------+| Tables_in_glance |+------------------+| migrate_version |+------------------+1 řádek v sadě (0,00 s)

Řešení:

Přihlaste se do databáze mysql, jak je uvedeno níže:

$ mysql -u root -pmysql> použijte insightmysql> změňte tabulku migrate_version převeďte na znakovou sadu utf8 collate utf8_unicode_ci;

Nyní zkuste znovu „db_sync“.

mysql> zobrazit tabulky;+------------------+| Tables_in_glance |+------------------+| image_locations || image_members || image_properties || image_tags || obrázky || migrate_version || info o úkolu || úkoly |+------------------+8 řádků v sadě (0,00 s)

Chyba :KRITICKÝ pohled [-] DbMigrationError:verze by měla být celé číslo

Při synchronizaci databáze Glance mi stále zůstalo několik chyb.

$ look-manage db_sync look/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41:Upozornění na zastaralost:Balíček jmenného prostoru oslo je zastaralý. Místo toho použijte oslo_config. from oslo.config import cfg2015-02-04 09:46:14.847 13116 KRITICKÝ pohled [-] DbMigrationError:verze by měla být celé číslo

Řešení:

Místo provádění „glance-manage “ se dvěma argumenty, zkuste s jedním argumentem „db_sync ‘ sám.

# look-manage db_sync

Fungovalo to pro mě.

Chyba :Očekávání adresy URL pro ověření prostřednictvím –os-auth-url nebo env [OS_AUTH_URL

$ keystone user-create --name=glance --pass= --email=Očekávání adresy URL pro ověření buď prostřednictvím --os-auth-url nebo env[OS_AUTH_URL

Řešení: Pravděpodobně nejsou nastaveny autentizační URL OpenStack. Zkuste nastavit níže uvedené proměnné prostředí.

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

Jakmile jsou výše uvedené proměnné nastaveny ve vašem shellu, zkuste znovu zaregistrovat službu pohled do keystone. Fungovalo to pro mě.

$ keystone user-create --name=glance --pass=gance_password --email=admin_email Očekávání auth URL buď prostřednictvím --os-auth-url nebo env[OS_AUTH_URLMěli byste vidět tabulku podobnou té níže +---- ------+-----------------------------------+| Nemovitost | Hodnota |+----------+----------------------------------+| email | admin_email || povoleno | Pravda || id | c8c0212a16084a65469609c857914f8c || jméno | pohled || uživatelské jméno | pohled |+----------+----------------------------------+ 

Chyba při spouštění služby look-api

Spuštění služby $ openstack-glance-api [FAILED]

Protokol chyb /var/log/glance/openstack-glance-api-startup.log odhalil níže uvedenou zprávu:

Správná konfigurace úložiště se nezdařila:Souborový systém úložiště nelze správně nakonfigurovat. Důvod:Zadejte alespoň možnost „filesystem_store_datadir“ nebo „filesystem_store_datadirs“ Zakázání metody přidávání.

Řešení:

  • Otevřete glance-api.conf soubor. Měl by být umístěn na /etc/glance/glance-api.conf
  • Podívejte se na „filesystem_store_datadir “ a nastavte „/var/lib/glance/images/ ‘ jako hodnotu. Pokud je již nastaven a okomentován, stačí jej zrušit.
  • Zkuste službu spustit.

Chyba : Nelze najít vložený konfigurační soubor pro look-api

Spuštění služby $ openstack-glance-api [FAILED]

Řešení:

  • Otevřete glance-api.conf soubor. Měl by být umístěn na /etc/glance/glance-api.conf
  • Vyhledejte řádek s textem „vložit konfigurační soubor“ a odkomentujte níže uvedený řádekconfig_file=/usr/share/glance/glance-api-dist-paste.ini
  • Zkuste službu spustit znovu.

KRITICKÝ pohled [-] UnicodeError:Objekty zpráv nepodporují str(), protože mohou obsahovat znaky jiné než ASCII. Místo toho použijte unicode() nebo translate().

Spuštění služby $ openstack-glance-registry [FAILED]

Soubor protokolu ‘/var/log/glance/openstack-glance-registry-startup.log ‘ odhalil níže uvedenou zprávu:

Řešení:

K chybě došlo v souboru „/usr/lib/python2.6/site-packages/glance/openstack/common/gettextutils.py ‘ což vyvolalo ‘UnicodeError ‘. Více informací o chybě naleznete zde.

Chcete-li problém vyřešit.

1. Přejděte na tento odkaz a zkopírujte upravený soubor „gettextutils.py“.
2. Vytvořte zálohu stávajícího gettextutils.py soubor, jak je uvedeno níže

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. Nahraďte soubor ‘gettextutils.py s tou zkopírovanou z kroku 1.
4. Spusťte službu registru pohledů, jak je uvedeno níže:

Spuštění služby $ openstack-glance-registry

Poznámka:Pokud výše uvedený příkaz selže s chybou syntaxe, pravděpodobně jste při kopírování upraveného skriptu gettextutils.py v kroku 1 zkopírovali některé nežádoucí znaky. Zkopírovaný soubor například obsahoval některé znaky, jako je „[docs] ‘. Chcete-li problém vyřešit, otevřete „gettextutils.py ‘, vyhledejte a odstraňte tyto nežádoucí znaky. Uložte soubor a znovu spusťte službu registru pohledů.

V případě, že se službu nepodařilo spustit, vyhledejte novou chybovou zprávu v souboru protokolu.

# tailf /var/log/glance/openstack-glance-registry-startup.logTraceback (poslední poslední volání):  Soubor „/usr/bin/glance-registry“, řádek 6, v     od pohledu. cmd.registry import main  Soubor "/usr/lib/python2.6/site-packages/glance/cmd/__init__.py", řádek 17, v     gettextutils.install('glance', lazy=True)TypeError:install() má neočekávaný argument klíčového slova 'lazy'

Oprava výše uvedené chyby:

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

a hledejte funkci ‘ gettextutils.install(‘glance’, lazy=True) ‘ a nahraďte jej následujícím:

 gettextutils.install('glance')

uložte soubor a zkuste spustit službu registru pohledů.

CHYBA:Nelze najít vložený konfigurační soubor pro pohled-registr.

# service openstack-glance-registry start Spuštění openstack-glance-registry:                       [NESELHALO]

Soubor protokolu odhalil níže uvedenou chybu:

# tailf /var/log/glance/openstack-glance-registry-startup.log
CHYBA:Nelze najít vložený konfigurační soubor pro pohled-registr.

Řešení:

  • Otevřete ‘vim /etc/glance/glance-registry.conf ‘ a vyhledejte řádek s textem ‘vložit konfigurační soubor’.
  • Zrušte komentář „config_file“. Například:‘config_file=/usr/share/glance/glance-registry-dist-paste.ini “ a zkuste službu spustit znovu. Fungovalo to pro mě.

DeprecationWarning:Balíček jmenného prostoru oslo je zastaralý. Místo toho použijte oslo_config. z oslo.config import cfg

Řešení: Otevřete níže uvedené soubory jeden po druhém a nahraďte „oslo.config ‘ s ‘oslo_config ‘ a uložte to. (Poznámka tečka je nahrazena podtržítkem)

/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/ pohled/common/config.py:26/usr/lib/python2.6/site-packages/paste/deploy/loadwsgi.py:22

Zkuste spustit službu a zjistěte, zda se vám tato varování zobrazí.

Doufám, že tato zjištění mohou někomu pomoci. Máte nějaký návrh? Prosím, podělte se se mnou do pole pro komentáře níže.

Také by vás mohlo zajímat :Řešení pro chyby instalace Keystone OpenStack

A bonus je tady...

    Stáhněte si zdarma e-knihu o instalaci OpenStack Icehouse! Stáhněte si Cheat Sheet rozhraní příkazového řádku OpenStack! – Nejčastěji používané příkazy

Linux
  1. Jak nainstalovat a nakonfigurovat Dovecot

  2. Procházet složku a vypisovat soubory?

  3. Instalace a konfigurace vsFTPD

  1. Instalace a nastavení Grafana v linuxu

  2. Příklady Bash for Loop a While Loop

  3. Instalace a používání XeTeXu

  1. Chyby a řešení instalace OpenStack Icehouse – CentOS

  2. Seznam běžných chyb (a řešení) při instalaci a konfiguraci služby OpenStack Nova

  3. Stav a závislosti služby Solaris?