Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 8.0

12:03:00 AM

Assalamualaikum...

kembali lagi saya nge-blog tentang instalasi openstack hehe :3
pada part kali ini saya akan menjelaskan tentang cinder

untuk part sebelumnya silahkan lihat di link berikut:


CINDER
Apa itu Cinder?

Ada dua tipe storage di Openstack, pertama Cinder (Block Storage) dan yang kedua Swift (Object Storage), kali ini saya akan menjelaskan tentang Cinder.

Cinder merupakan layanan yang menyediakan penyimpanan berbentuk block (Volume) yang akan digunakan oleh Instances (VM). Cinder ini berfungsi sebagai media penyimpanan dalam bentuk block, arti lainnya cinder ini sama seperti harddisk fisik. Block ini bisa diformat ke filesystem tertentu seperti ext4, ntfs, atau fat dan diisi data.
Cinder biasanya dipakai di SAN (Storage Area Network). Data yang berupa block dapat dipakai untuk hard disk virtual, karena itu tipe storage ini banyak dipakai di filesystem di Guest OS.
Block yang tersimpan di disk itu bisa didistribusikan sebagai hard disk virtual ke server-server lewat protokol iSCSI atau FC (Fibre Channel).

beberapa komponen dari cinder ini sebagai berikut:

  • cinder-api, komponen yang menerima request dari API dam akan di tentukan jalurnya ke cinder-volume untuk di jalankan
  • cinder-volume, komponen yang berinteraksi langsung dengan service Block Storage, cinder-sceduler. message queue. cinder-volume akan merespon untuk read & write request yang nantinya dikirim ke maintain state.
  • cinder-scheduler daemon, komponen ini mirip dengan nova-scheduler. bedanya cinder-scheduler ini digunakan untuk memilih node penyimpanan yang optimal untuk membuat volume. 
  • cinder-backup daemon, komponen ini menyediakan volume khusus untuk mem-backup dari berbagai tipe yang digunakan di block storage.
  • Messaging queue, komponen yang me-route informasi antara proses dan block storage.
oke kita langung melanjutkan lab-nya


LAB 30 - Instalasi dan Konfigurasi Cinder - Node Controller

STEP 1 - Membuat Database Cinder

pertama kita masuk ke databasenya, berikut perintahnya:

$ mysql -u root -p

lalu buat database cindernya:

CREATE DATABASE cinder;


dan beri akses untuk database cinder:

GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'localhost' \
  IDENTIFIED BY 'vschool';
GRANT ALL PRIVILEGES ON cinder.* TO 'cinder'@'%' \
  IDENTIFIED BY 'vschool';


note: vschool adalah password untuk database cinder

lalu keluar dari database.

STEP 2 - Membuat User, Service Entity, API Endpoint, dan Role

pertama jalankan file admin-openrc.sh

$ source admin-openrc.sh

lalu tambahkan user cinder

$ openstack user create --domain default --password-prompt cinder


lalu tambahkan admin role ke user cinder:

$ openstack role add --project service --user cinder admin

kemudian kita buat service entity-nya. disini kita akan membuat 2 service entity. kedua service ini masing-masing akan digunakan oleh harddisk, jadi 1 hardisk memiliki 1 service entity.

$ openstack service create --name cinder --description "Vschool Block Storage" volume



$ openstack service create --name cinderv2 --description "Vschool Block Storage" volumev2


kemudian buat di API endpoints di setiap service entity-nya.

api endpoint untuk cinder 1

openstack endpoint create --region RegionOne \
  volume public http://10.10.10.11:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
  volume internal http://10.10.10.11:8776/v1/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
  volume admin http://10.10.10.11:8776/v1/%\(tenant_id\)s


api endpoint untuk cinder 2

openstack endpoint create --region RegionOne \
  volumev2 public http://10.10.10.11:8776/v2/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
  volumev2 internal http://10.10.10.11:8776/v2/%\(tenant_id\)s

openstack endpoint create --region RegionOne \
  volumev2 admin http://10.10.10.11:8776/v2/%\(tenant_id\)s'


note: 10.10.10.11 adalah ip dari node controller

LAB 31 - Instalasi Package Cinder - Node Controller

STEP 1 - Instal Paket-nya

# apt-get install cinder-api cinder-scheduler python-cinderclient

STEP 2 - Konfgurasi Cinder

buka file cinder.conf:

# nano /etc/cinder/cinder.conf

lalu tambahkan konfigurasi berikut

[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
my_ip = 10.10.10.11
verbose = True

[database]
connection = mysql+pymysql://cinder:vschool@localhost/cinder

[oslo_messaging_rabbit]
rabbit_host = 10.10.10.11
rabbit_userid = openstack
rabbit_password = vschool

[keystone_authtoken]
auth_uri = http://10.10.10.11:5000
auth_url = http://10.10.10.11:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = cinder
password = vschool

[oslo_concurrency]
lock_path = /var/lib/cinder/tmp



LAB 32 - Sinkronisasi Cinder - Node Controller

sekarang kita sinkronisasikan cinder-nya, berikut perintahnya:

# su -s /bin/sh -c "cinder-manage db sync" cinder


LAB 34 - Instalasi dan Konfigurasi Cinder di Node Compute - Node Compute

STEP 1 - Konfigurasi nova.conf

pertama buka file nova.conf:

# nano /etc/nova/nova.conf

lalu tambahkan konfigurasi berikut dipaling bawah:

[cinder]
os_region_name = RegionOne

LAB 35 - Restart Service Nova dan Cinder - Node Controller

kembali lagi ke node controller, lalu kita restart service nova-nya

# service nova-api restart

lalu restart juga service cinder-nya

# service cinder-scheduler restart
# service cinder-api restart

kemudian kita hapus file cinder.sqlite nya, karena secara default ubuntu membuat paket di SQLite database. berikut perintah untuk menghapus nya:

# rm -f /var/lib/cinder/cinder.sqlite



untuk Instalasi dan Konfigurasi Node Cinder bisa dilihat di part selanjutnya

Nun walqalami wama yasthurun
Wassalamualaikum...

You Might Also Like

0 komentar