Ini adalah bagian kedua dari OpenStack Kilo di Ubuntu 14.04.2 – Konfigurasi Cinder, dalam tutorial ini kita akan menginstal dan mengkonfigurasi Storage Node untuk layanan Cinder. Untuk tujuan demo, akan mengonfigurasi node penyimpanan ini dengan perangkat penyimpanan blok /dev/sdb yang berisi partisi /dev/sdb1 yang menempati seluruh disk.
Prasyarat:
Berikut ini adalah konfigurasi jaringan dari node penyimpanan. Storage Node akan memiliki satu antarmuka jaringan di jaringan manajemen.
Peran | Kartu NW 1 | Kartu NW 2 | Kartu NW 3 |
---|---|---|---|
Node Penyimpanan | 192.168.12.24 / 24, GW=192.168.12.2 (Jaringan Manajemen) | TIDAK | TIDAK |
Setel nama host node yang akan diblokir.
Salin entri host dari node pengontrol ke node penyimpanan dan tambahkan yang berikut ke dalamnya. Hasil akhir akan terlihat seperti di bawah ini.
192.168.12.21 controller 192.168.12.22 network 192.168.12.23 compute 192.168.12.24 block
Instal paket NTP di Storage Node.
# apt-get install ntp
Edit file konfigurasi di bawah ini.
# nano /etc/ntp.conf
Hapus server NTP lain dari file, hapus saja baris yang dimulai dengan kata "server". Tambahkan entri di bawah ini untuk menyinkronkan simpul kami dengan simpul pengontrol.
server controller
Mulai ulang layanan NTP.
# service ntp restart
Paket OpenStack:
Instal keyring dan repositori arsip Ubuntu Cloud.
# apt-get install ubuntu-cloud-keyring # echo "deb http://ubuntu-cloud.archive.canonical.com/ubuntu" "trusty-updates/kilo main" > /etc/apt/sources.list.d/cloudarchive-kilo.list
Perbarui repositori di sistem Anda.
# apt-get update
Instal paket lvm2, jika diperlukan.
# apt-get install lvm2
Buat volume fisik /dev/sdb1
# pvcreate /dev/sdb1 Physical volume "/dev/sdb1" successfully created
Buat grup volume vg_cinder.
# vgcreate vg_cinder /dev/sdb1 Volume group "vg_cinder" successfully created
Edit file /etc/lvm/lvm.conf dan tambahkan filter yang menerima perangkat /dev/sdb dan menolak semua perangkat lain.
# nano /etc/lvm/lvm.conf
Di bagian perangkat, ubah
Dari
filter = [ "a/.*/ " ]
Untuk
filter = [ "a/sdb/", "r/.*/" ]
Instal dan konfigurasikan komponen Cinder:
Instal paket pada node penyimpanan.
# apt-get install cinder-volume python-mysqldb
Edit file /etc/cinder/cinder.conf.
# nano /etc/cinder/cinder.conf
Ubah pengaturan di bawah ini dan pastikan untuk menempatkan entri di bagian yang tepat. Terkadang Anda mungkin perlu menambahkan bagian jika tidak ada dan Anda juga perlu menambahkan beberapa entri yang tidak ada dalam file, tidak semua.
[DEFAULT] ... rpc_backend = rabbit auth_strategy = keystone my_ip = 192.168.12.24 ## Management IP of Storage Node enabled_backends = lvm glance_host = controller verbose = True [database] connection = mysql://cinder:password@controller/cinder ## Replace "password" with the password you chose for cinder database [oslo_messaging_rabbit] rabbit_host = controller rabbit_userid = openstack rabbit_password = password ## Replace "password" with the password you chose for the openstack account in RabbitMQ. [keystone_authtoken] auth_uri = http://controller:5000 auth_url = http://controller:35357 auth_plugin = password project_domain_id = default user_domain_id = default project_name = service username = cinder password = password ## Replace "password" with the password you chose for cinder user in the identity service ## Comment out or remove any other options in the [keystone_authtoken] section [lvm] volume_driver = cinder.volume.drivers.lvm.LVMVolumeDriver volume_group = vg_cinder iscsi_protocol = iscsi iscsi_helper = tgtadm ## Replace vg_cinder with your volume group. [oslo_concurrency] lock_path = /var/lock/cinder ## Comment out the lock_path in (DEFAULT) section.
Mulai ulang layanan penyimpanan blokir.
# service tgt restart # service cinder-volume restart
Hapus file database SQLite.
# rm -f /var/lib/cinder/cinder.sqlite
Pemecahan masalah:
Periksa log untuk menemukan kesalahan.
# cat /var/log/cinder/cinder-volume.log
Untuk kesalahan seperti di bawah ini.
"Unknown column 'volumes.instance_uuid' in 'field list'") "Unknown column 'volumes.attach_time' in 'field list "Unknown column 'volumes.mountpoint' in 'field list'" "Unknown column 'volumes.attached_host' in 'field list'")
Kunjungi:Kolom Tidak Dikenal
Untuk error seperti di bawah ini.
AMQP server on controller:5672 is unreachable: Too many heartbeats missed. Trying again in 1 seconds.
Kunjungi:Terlalu banyak detak jantung yang terlewat.
Verifikasi:
Jalankan perintah berikut untuk mengonfigurasi klien Block Storage agar menggunakan API versi 2.0.
# echo "export OS_VOLUME_API_VERSION=2" | tee -a admin-openrc.sh demo-openrc.sh
Muat kredensial.
# source admin-openrc.sh
Buat daftar komponen layanan.
# cinder service-list +------------------+------------+------+---------+-------+----------------------------+-----------------+ | Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | +------------------+------------+------+---------+-------+----------------------------+-----------------+ | cinder-scheduler | controller | nova | enabled | up | 2015-07-07T20:11:21.000000 | None | | cinder-volume | block@lvm | nova | enabled | up | 2015-07-07T20:11:18.000000 | None | +------------------+------------+------+---------+-------+----------------------------+-----------------+
Lampirkan volume ke sebuah instance:
Buat virtual disk “disk01” dengan kapasitas 5GB, jalankan perintah berikut pada controller node.
# cinder create --name disk01 5 +---------------------------------------+--------------------------------------+ | Property | Value | +---------------------------------------+--------------------------------------+ | attachments | [] | | availability_zone | nova | | bootable | false | | consistencygroup_id | None | | created_at | 2015-07-07T20:18:34.000000 | | description | None | | encrypted | False | | id | dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 | | metadata | {} | | multiattach | False | | name | disk01 | | os-vol-host-attr:host | None | | os-vol-mig-status-attr:migstat | None | | os-vol-mig-status-attr:name_id | None | | os-vol-tenant-attr:tenant_id | 9b05e6bffdb94c8081d665561d05e31e | | os-volume-replication:driver_data | None | | os-volume-replication:extended_status | None | | replication_status | disabled | | size | 5 | | snapshot_id | None | | source_volid | None | | status | creating | | user_id | 127a9a6b822a4e3eba69fa54128873cd | | volume_type | None | +---------------------------------------+--------------------------------------+
Buat daftar volume yang tersedia, dan status harus tersedia.
# cinder list +--------------------------------------+-----------+--------+------+-------------+----------+-------------+ | ID | Status | Name | Size | Volume Type | Bootable | Attached to | +--------------------------------------+-----------+--------+------+-------------+----------+-------------+ | dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 | available | disk01 | 5 | None | false | | +--------------------------------------+-----------+--------+------+-------------+----------+-------------+
Lampirkan volume disk01 ke instance kami yang sedang berjalan “My-Fedora”
# nova volume-attach MY-Fedora dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 +----------+--------------------------------------+ | Property | Value | +----------+--------------------------------------+ | device | /dev/vdb | | id | dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 | | serverId | 7432030a-3cbe-49c6-956a-3e725e22196d | | volumeId | dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 | +----------+--------------------------------------+
Buat daftar volume, Anda dapat melihat statusnya sebagai sedang digunakan dan harus dilampirkan ke ID instance My-Fedora.
# cinder list +--------------------------------------+--------+--------+------+-------------+----------+--------------------------------------+ | ID | Status | Name | Size | Volume Type | Bootable | Attached to | +--------------------------------------+--------+--------+------+-------------+----------+--------------------------------------+ | dbd9afb1-48fd-46d1-8f66-1ef5195b6a94 | in-use | disk01 | 5 | None | false | 7432030a-3cbe-49c6-956a-3e725e22196d | +--------------------------------------+--------+--------+------+-------------+----------+--------------------------------------+
Login ke instance MY-Fedora menggunakan SSH dan jalankan perintah fdisk -l untuk membuat daftar disk.
# ssh -i mykey [email protected] Last login: Mon Jul 6 17:59:46 2015 from 192.168.0.103 [fedora@my-fedora ~]$ sudo su - [root@my-fedora ~]# fdisk -l Disk /dev/vda: 20 GiB, 21474836480 bytes, 41943040 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: dos Disk identifier: 0xf1cc8d9d Device Boot Start End Sectors Size Id Type /dev/vda1 * 2048 41943039 41940992 20G 83 Linux Disk /dev/vdb: 5 GiB, 5368709120 bytes, 10485760 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
Dari atas Anda dapat melihat, disk baru /dev/vdb ditambahkan dengan 5GB. Ini adalah yang kami lampirkan sebelumnya dan sekarang terlihat di OS tamu.
Itu saja. Anda telah berhasil mengonfigurasi layanan penyimpanan blok (Cinder) di Ubuntu 14.04.2