GNU/Linux >> Belajar Linux >  >> Linux

Daftar Kesalahan Paling Umum (dan Solusi) Saat Menginstal OpenStack Image Service SEKILAS

Saya baru saja menginstal OpenStack Icehouse untuk salah satu proyek saya dengan mengikuti dokumentasi resmi dari openstack.org. Selama instalasi layanan Gambar (Glance) pada node pengontrol, saya disadap dengan beberapa kesalahan. Setelah googling selama beberapa menit, saya dapat memperbaikinya.

Sebagian besar kesalahan tersebut terjadi saat menyiapkan basis data sekilas (biasanya disebut sebagai sinkronisasi basis data sekilas), pendaftaran layanan sekilas dengan Keystone dan saat memulai glance-api layanan dan glance-registry melayani. Ada beberapa kesalahan ketergantungan juga, yang tidak akan saya tulis di artikel ini. Mudah-mudahan, saya akan mencoba membahasnya di artikel lain.

Untuk saat ini, inilah daftar kesalahan yang saya hadapi selama instalasi dan konfigurasi Glance.

Error saat 'glance-manage db_sync sekilas' dijalankan

Berikut cuplikan kesalahannya:

$ sekilas-kelola db_sync sekilas/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41:DeprecationWarning:Paket namespace oslo tidak digunakan lagi. Silakan gunakan oslo_config sebagai gantinya. dari oslo.config import cfg/usr/lib64/python2.6/site-packages/Crypto/Util/number.py:57:PowmInsecureWarning:Tidak menggunakan mpz_powm_sec. Anda harus membangun kembali menggunakan libgmp>
=5 untuk menghindari kerentanan serangan waktu. _warn("Tidak menggunakan mpz_powm_sec. Anda harus membangun kembali menggunakan libgmp>
=5 untuk menghindari kerentanan serangan waktu.", PowmInsecureWarning)2015-02-03 22:00:02.848 8671 Sekilas KRITIS [-] DbMigrationError:versi harus bilangan bulat 

Solusi:
Ini ada hubungannya dengan versi GMP yang diinstal. Seperti yang Anda lihat dari kesalahan di atas, PyCrypto memerlukan versi libgmp> =5 . Untuk memperbaikinya, ikuti langkah-langkah di bawah ini:

Unduh dan instal 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

Sekarang Anda telah menginstal versi GMP yang tepat dan dengan pustaka ini Anda dapat menginstal PyCrypto. Untuk melakukannya, jalankan perintah di bawah ini.

$ pip install --ignore-installed PyCrypto

Setelah PyCrpto diinstal, Anda dapat mencoba sinkronisasi database Glance lagi.

ImportError:/usr/lib64/python2.6/site-packages /Crypto/Cipher/_AES.so:simbol tidak terdefinisi:rpl_malloc

Saat ‘keliling-kelola db_sync sekilas ' dieksekusi, saya dipukul dengan pesan kesalahan di bawah ini:

$ sekilas-kelola db_sync sekilassu -s /bin/sh -c "glance-manage db_sync" sekilasTraceback (panggilan terakhir terakhir):File "/usr/bin/glance-manage", baris 6, dari sekilas. cmd.manage impor File utama "/usr/lib/python2.6/site-packages/glance/cmd/manage.py", baris 45, dari migrasi impor dari sekilas.db sebagai File db_migration "/usr/lib/python2. 6/site-packages/glance/db/__init__.py", baris 21, dalam dari sekilas.common import File crypt "/usr/lib/python2.6/site-packages/glance/common/crypt.py", baris 23, masuk dari Crypto.Cipher impor File AES "/usr/lib64/python2.6/site-packages/Crypto/Cipher/AES.py", baris 50, dari Crypto.Cipher impor _AESImportError:/usr/lib64/python2 .6/site-packages/Crypto/Cipher/_AES.so:simbol yang tidak ditentukan:rpl_malloc

Solusi:

Sebelumnya, kami memperbaiki kesalahan libgmp, PyCrypto dengan menginstal GMP versi 6.0.0.a dan pip install PyCrypto. Tapi itu tidak bekerja seperti yang diharapkan. Sepertinya PyCrypto harus dikompilasi ulang dari sumber dan tidak boleh diinstal melalui pip.

Unduh versi terbaru PyCrypto dan kompilasi ulang

Buka tar PyCrypto dan setel variabel lingkungan di bawah ini.

$ ekspor ac_cv_func_malloc_0_nonnull=yes

Konfigurasikan, Bangun, dan Pasang

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

Setelah PyCrypto diinstal, coba ‘glance-manage db_sync sekilas ' lagi.

Error: ValueError:Tabel “migrate_version” tidak memiliki susunan non utf8 , pastikan semua tabel adalah CHARSET=utf8

# su -s /bin/sh -c "glance-manage db_sync" sekilas

Catatan:Setiap kali Anda menyinkronkan database untuk layanan apa pun, pastikan tabel terkait dibuat. Misalnya, ketika saya menyinkronkan database 'glance' menggunakan perintah di atas, tidak ada tabel yang dibuat kecuali 'migrate_version' dan log kesalahan dilaporkan seperti yang ditunjukkan pada judul paragraf ini.

mysql> tampilkan tabel;+------------------+| Tables_in_glance |+------------------+| migrasi_versi |+------------------+1 baris dalam kumpulan (0,00 detik)

Solusi:

Login ke database mysql seperti di bawah ini:

$ mysql -u root -pmysql> gunakan sekilasmysql> ubah tabel migration_version convert to character set utf8 collate utf8_unicode_ci;

Sekarang, coba “db_sync” lagi.

mysql> tampilkan tabel;+------------------+| Tables_in_glance |+------------------+| lokasi_gambar || anggota_gambar || properti_gambar || tag_gambar || gambar || migrasi_versi || info_tugas || tugas |+------------------+8 baris dalam set (0,00 detik)

Error :pandangan CRITICAL [-] DbMigrationError:versi harus bilangan bulat

Saya masih memiliki sedikit kesalahan saat menyinkronkan database Glance.

$ sekilas-kelola db_sync sekilas/usr/lib/python2.6/site-packages/glance/cmd/manage.py:41:DeprecationWarning:Paket namespace oslo tidak digunakan lagi. Silakan gunakan oslo_config sebagai gantinya. from oslo.config import cfg2015-02-04 09:46:14.847 13116 Pandangan KRITIS [-] DbMigrationError:versi harus bilangan bulat

Solusi:

Alih-alih menjalankan 'glance-manage ‘ dengan dua argumen, coba dengan satu argumen ‘db_sync ' sendiri.

# sekilas-kelola db_sync

Ini berhasil untuk saya.

Error :Mengharapkan URL auth melalui –os-auth-url atau env [OS_AUTH_URL

$ keystone user-create --name=glance --pass= --email=Mengharapkan URL auth melalui --os-auth-url atau env[OS_AUTH_URL

Solusi : Mungkin URL autentikasi OpenStack tidak disetel. Coba atur variabel lingkungan di bawah ini.

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

Setelah variabel di atas diatur di shell Anda, coba daftarkan layanan sekilas ke keystone lagi. Ini berhasil untuk saya.

$ keystone user-create --name=glance --pass=glance_password --email=admin_emailMengharapkan URL auth melalui --os-auth-url atau env[OS_AUTH_URLAnda akan melihat tabel seperti di bawah ini+---- ------+----------------------------------+| Properti | Nilai |+----------+----------------------------------+| email | admin_email || diaktifkan | Benar || id | c8c0212a16084a65469609c857914f8c || nama | sekilas || nama pengguna | sekilas |+----------+----------------------------------+ 

Kesalahan saat memulai layanan sekilas-api

$ service openstack-glance-api start [GAGAL]

Log kesalahan /var/log/glance/openstack-glance-api-startup.log mengungkapkan pesan di bawah ini:

Gagal mengonfigurasi penyimpanan dengan benar:Sistem file penyimpanan tidak dapat dikonfigurasi dengan benar. Alasan:Tentukan setidaknya opsi 'filesystem_store_datadir' atau 'filesystem_store_datadirs' Menonaktifkan metode tambah.

Solusi:

  • Buka glance-api.conf mengajukan. Itu harus berada di /etc/glance/glance-api.conf
  • Perhatikan ‘filesystem_store_datadir ‘ dan atur ‘/var/lib/glance/images/ ' sebagai nilai. Jika sudah disetel dan dikomentari, batalkan komentar saja.
  • Coba mulai layanan.

Error : Tidak dapat menemukan file konfigurasi tempel untuk sekilas-api

$ service openstack-glance-api start [GAGAL]

Solusi:

  • Buka glance-api.conf mengajukan. Itu harus berada di /etc/glance/glance-api.conf
  • Cari baris dengan teks 'paste file konfigurasi' dan batalkan komentar pada baris di bawah iniconfig_file=/usr/share/glance/glance-api-dist-paste.ini
  • Coba mulai layanan lagi.

Sekilas KRITIS [-] UnicodeError:Objek pesan tidak mendukung str() karena mungkin berisi karakter non-ascii. Silakan gunakan unicode() atau translate() sebagai gantinya.

$ service openstack-glance-registry start [GAGAL]

File log ‘/var/log/glance/openstack-glance-registry-startup.log ' mengungkapkan pesan di bawah ini:

Solusi:

Kesalahan terjadi pada file '/usr/lib/python2.6/site-packages/glance/openstack/common/gettextutils.py ' yang memunculkan 'UnicodeError '. Anda akan menemukan informasi lebih lanjut tentang kesalahan di sini.

Untuk memperbaiki masalah.

1. Buka tautan ini dan salin file 'gettextutils.py' yang dimodifikasi.
2. Ambil cadangan gettextutils.py . yang ada file seperti di bawah ini

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. Ganti file ‘gettextutils.py ' dengan yang disalin dari langkah 1.
4. Mulai layanan pendaftaran sekilas seperti di bawah ini:

$ service openstack-glance-registry start

Catatan:Jika perintah di atas gagal dengan kesalahan sintaks, Anda mungkin menyalin beberapa karakter yang tidak diinginkan saat menyalin skrip gettextutils.py yang dimodifikasi pada langkah 1. Misalnya, file yang disalin berisi beberapa karakter seperti '[dokumen] '. Untuk memperbaiki masalah ini, buka ‘gettextutils.py ', cari dan hapus karakter yang tidak diinginkan itu. Simpan file dan mulai layanan daftar sekilas lagi.

Jika layanan gagal dimulai, cari pesan kesalahan baru di file log.

# tailf /var/log/glance/openstack-glance-registry-startup.logTraceback (panggilan terakhir terakhir):  File "/usr/bin/glance-registry", baris 6, di     dari pandangan. cmd.registry import main  File "/usr/lib/python2.6/site-packages/glance/cmd/__init__.py", baris 17, di     gettextutils.install('glance', lazy=True)TypeError:install() mendapat argumen kata kunci yang tidak terduga 'malas'

Untuk memperbaiki kesalahan di atas:

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

dan cari fungsi ' gettextutils.install('glance', lazy=True) ‘ dan ganti dengan yang di bawah ini:

 gettextutils.install('glance')

simpan file dan coba mulai layanan pendaftaran sekilas.

ERROR:Tidak dapat menemukan file konfigurasi tempel untuk sekilas-registry.

# service openstack-glance-registry start Memulai openstack-glance-registry:                       [GAGAL]

File log mengungkapkan kesalahan di bawah ini:

# tailf /var/log/glance/openstack-glance-registry-startup.log
ERROR:Tidak dapat menemukan file konfigurasi tempel untuk pendaftaran sekilas.

Solusi:

  • Buka ‘vim /etc/glance/glance-registry.conf ' dan cari baris dengan teks 'paste file konfigurasi'.
  • Batalkan komentar 'config_file'. Misalnya:‘config_file=/usr/share/glance/glance-registry-dist-paste.ini ' dan coba mulai layanan lagi. Ini berhasil untuk saya.

DeprecationWarning:Paket namespace oslo tidak digunakan lagi. Silakan gunakan oslo_config sebagai gantinya. dari oslo.config impor cfg

Solusi: Buka file di bawah ini satu per satu dan ganti ‘oslo.config ‘ dengan ‘oslo_config ' dan simpan. (Catatan titik diganti dengan garis bawah)

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

Coba mulai layanan dan lihat apakah Anda mendapatkan peringatan tersebut.

Saya harap temuan ini dapat membantu seseorang di luar sana. Apakah anda memiliki saran? Silakan berbagi dengan saya di kotak komentar di bawah.

Anda mungkin juga tertarik dengan :Solusi untuk kesalahan penginstalan Keystone OpenStack

Dan Bonusnya ada di sini…

    Unduh eBook Gratis tentang Instalasi OpenStack Icehouse! Unduh Lembar Cheat Antarmuka Baris Perintah OpenStack! – Perintah yang Paling Umum Digunakan

Linux
  1. Cara Mengelola dan Mendaftar Layanan di Linux

  2. Menginstal dan mengatur Grafana di linux

  3. Status Layanan Solaris Dan Ketergantungan?

  1. Cara menginstal dan mengkonfigurasi Dovecot

  2. Kesalahan dan Solusi Instalasi OpenStack Icehouse – CentOS

  3. Daftar Kesalahan Umum (dan Solusi) saat Menginstal dan Mengonfigurasi Layanan OpenStack Nova

  1. Loop Melalui Folder Dan Daftar File?

  2. Menginstal dan mengonfigurasi vsFTPD

  3. Contoh Bash For Loop dan While Loop