Instalasi Openstack Liberty - Ubuntu 14.04 LTS - Part 5.0

10:57:00 PM


Assalamualaikum, oke di part 5 kali ini saya akan menjelaskan mengenai nova atau node compute. lihat gambar.

sekarang kita sudah sampai nova.

Untuk part sebelumnya silahkan klik link dibawah ini :


Nova ( Node Compute )

Openstack Compute atau sering disebut Nova adalah layanan yang bertugas sebagai tuan rumah yang mengelola cloud computing. Nova termasuk kedalam sistem IaaS ( Infrastructure as a Service ). 
Nova ini berhubungan dengan semua komponen, mulai dari Keystone untuk otentikasi, Glance untuk layanan file image dan server image, Horizon untuk layanan dashboard (web interface).

Nova (Node Compute) terdiri dari beberapa komponen berikut :
  • nova-api service, menerima dan merespon panggilan dari end user, layanan ini mendukung API Amazon EC2, dan Special API Admin untuk melakukan tindakan yang sifatnya administratif. 
  • nova-api-metadata service, menerima request metadata dari instances (VMs)
  • nova-compute service, sebuah daemon yang dapat membuat dan mematikan VM melalui API hypervisor. Proses ini cukup rumit, pada dasarnya, daemon menerima tindakan dari queue dan melakukan serangkaian perintah seperti menjalankan KVM dan mengupdate databasenya. Contoh API hypervisor : 
    • XenAPI untuk XenServer / XCP
    • Libvirt untuk KVM atau QEMU
    • VMwareAPI untuk VMware
  • nova-scheduler service, mengambil request VM dari queue untuk menentukan dimana compute server berjalan.
  • nova-conduktor module, sebagai jembatan antara layanan nova-compute dengan database, menghilangkan akses langsung ke database cloud yang dibuat oleh nova-compute.
  • nova-cert module, sebuah server daemon yang melayani layanan Nova Cert untuk X509 certificates. digunakan untuk meng-generate certificates untuk euca-bundle-image.
  • nova-network worker daemon, hampir sama dengan layanan nova-compute, tapi bedanya nova-network worker daemon hanya menerima tugas jaringan dan dan memanipulasi jaringan saja. melakukan tugas seperti konfigurasi bridge interface atau mengubah aturan IPtables
  • nova-consoleauth daemon, token resmi untuk user menggunakan proxy ( nova-novncproxy dan nova-xvpvncproxy ) pada consolenya.
  • nova-nonvnproxy daemon, menyediakan proxy untuk mengakses instances ( VM ) yang sedang berjalan melalui koneksi VNC. mendukung novnc client berbasis browser
  • nova-xvpvncproxy daemon, sama seperti nova-nonvnproxy daemon, bedanya daemon ini mendukung klien Openstack-specific Java.
  • nova-spicehml5proxy daemon, menyediakan proxy untuk mengakses instances ( VM ) yang sedang berjalan melalui koneksi SPICE, mendukung browser-base HTML5 client
  • nova-cert daemon, X509 certificates.
  • euca2ools client, satu set command-line interprenter perintah untuk mengelola sumber daya di cloud, untuk informasi lebih lanjut lihat Eucalyptus 3.4 Dokumentasi.
  • nova client, memungkinkan user untuk mengirimkan perintah sebagai admin tenant (project) atau end user.
  • the queue, sebuah central hub untuk passing messages antar daemons, biasanya di implementasikan dengan RabbitMQ, tapi bisa juga di implementasikan dengan AMQP message queue, seperti Apache Qpid atau Zero MQ
oke next kita lanjut nge-lab :3

LAB 19 - Membuat Database Nova - Node Controller

note : kita masih di node controller, belom ke node compute.

pertama masuk ke database nya dulu dengan user biasa. berikut perintahnya.

$ mysql -u root -p

kemudian kita buat database nova nya.

CREATE DATABASE nova;


kemudian beri akses database nova yang tadi dibuat.

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


note : vschool adalah password untuk database nova, silahkan ganti sesuai yang kalian suka

keluar dari database, kita akan membuat user, service entity dan endpoint. untuk itu jalankan file admin-openrc.sh terlebih dahulu.

$ source admin-openrc.sh

kemudian buat user nova-nya

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

masukan password untuk user nova


tambahkan role admin ke user nova.

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

kemudian tambahkan service entitynya.

$ openstack service create --name nova \
  --description "Vschool Nova" compute


buat Compute Service API endpoints (Admin, Public, Internal).

$ openstack endpoint create --region RegionOne \
  compute admin http://10.10.10.11:8774/v2/%\(tenant_id\)s


$ openstack endpoint create --region RegionOne \
  compute public http://10.10.10.11:8774/v2/%\(tenant_id\)s


$ openstack endpoint create --region RegionOne \
  compute internal http://10.10.10.11:8774/v2/%\(tenant_id\)s


note : 10.10.10.11 adalah ip node controller

LAB 20 - Instalasi Openstack Compute - Node Controller

sebelum kita membangun node compute, kita konfigurasi terlebih dahulu di node controller.
Install paket-paket berikut sebagai super user di node controller. berikut perintahnya

# apt-get install nova-api nova-cert nova-conductor nova-consoleauth nova-novncproxy nova-scheduler python-novaclient

kemudian konfigurasi nova.conf

# nano /etc/nova/nova.conf

lalu tambahkan script berikut disetiap bagiannya.

[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
my_ip = 10.0.0.11
network_api_class = nova.network.neutronv2.api.API
security_group_api = neutron
linuxnet_interface_driver = nova.network.linux_net.NeutronLinuxBridgeInterfaceDriver
firewall_driver = nova.virt.firewall.NoopFirewallDriver
enabled_apis=osapi_compute,metadata

[database]
connection = mysql://nova:vschool@10.10.10.11/nova

[oslo_messaging_rabbit]
rabbit_host = controller
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 = nova
password = vschool

[vnc]
vncserver_listen = 10.10.10.11
vncserver_proxyclient_address = 10.10.10.11

[glance]
host = 10.10.10.11

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

pastikan seperti di gambar


note : 10.10.10.11 adalah ip node controller, vschool adalah password dari database nova

kemudian kita singkronisasikan databasenya

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

pastikan tidak ada error. jika ada tulisan "No handlers could be found for logger "oslo_config.cfg"" biarkan saja 


setelah itu kita restart semua nova service nya.

# service nova-api restart
# service nova-cert restart
# service nova-consoleauth restart
# service nova-scheduler restart
# service nova-conductor restart
# service nova-novncproxy restart


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

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

oke sekarang kita lanjut Instalasi dan Konfigurasi Node Compute,

LAB 21 - Instalasi dan Konfigurasi Nova - Node Compute

Step 1 - Install Ubuntu dan Set IP Address

kalian semua sudah pasti bisa install ubuntu kan? kalau ragu bisa buka link ini ( Tutorial Install Ubuntu)

setelah install selesai, login sebagai root, kemudian setting network pada node compute, dengan perintah berikut ini.

# nano /etc/network/interfaces

setting eth0 sebagai static, dan eth1 untuk dhcp. kita pakai ip 10.10.10.22 untuk node node compute, pastikan sama seperti di gambar.



setelah itu simpan dan restart networknya dengan perintah

# /etc/init.d/networking restart

lalu kita ketikan perintah berikut agar tidak perlu mereboot servernya

# ifdown eth0 && ifup eth0
# ifdown eth1 && ifup eth1

jika eth1 nge-bound, berarti server sudah terhubung dengan internet.

STEP 2 - Konfigurasi Host - Node Compute

disini kita akan menambahkan host pada node compute, berikut perintahnya.

# nano /etc/hosts

tambahkan ip dan hostname dari setiap komponen yang nanti akan kita install, pastikan seperti digambar.


lalu save dan reboot servernya

STEP 3 - Install Paket Chrony 

Install NTP Servernya:

# apt-get install chrony

STEP 4 - Edit dan Add file chrony.conf 

konfigurasi chrony.conf nya:

# nano /etc/chrony/chrony.conf

kemudian tambahkan
server 10.10.10.11 iburst
di bawah
server 3.debian.pool.ntp.org offline minpool 8 




kemudian restart chrony nya

# service chrony restart

untuk mengecek berhasil berjalan atau tidak NTP severnya, maka masukan perintah berikut.

# chronyc sources


pastikan ada controller di paling bawah.

oke next....

STEP 5 - Enable Repository Liberty - Node Compute

instal paket di ubuntu dan tambahkan repository openstack liberty.

# apt-get install software-properties-common &&  add-apt-repository cloud-archive:liberty

kemudian update dan upgrade ubuntu servernya

# apt-get update && apt-get dist-upgrade

setelah itu install client nya

# apt-get install python-openstackclient

setelah itu reboot untuk mengaktifkan kernel yang baru di update, jika tidak upgrade kernel baru, tidak usah di reboot.

LAB 22 - Instalasi Paket Nova - Node Compute

langsung saja kita install paketnya

# apt-get install nova-compute sysfsutils

kemudian konfigurasi file nova.conf

# nano /etc/nova/nova.conf

[DEFAULT]
rpc_backend = rabbit
auth_strategy = keystone
my_ip = 10.10.10.22
network_api_class = nova.network.neutronv2.api.API
security_group_api = neutron
linuxnet_interface_driver = nova.network.linux_net.NeutronLinuxBridgeInterfaceDriver
firewall_driver = nova.virt.firewall.NoopFirewallDriver
verbose = True

[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 = nova
password = vschool

[vnc]
enabled = True
vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = 10.10.10.22
novncproxy_base_url = http://10.10.10.11:6080/vnc_auto.html

[glance]
host = 10.10.10.11

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



kemudian cek node compute, apakah sudah support harddware acceleration, pertama keluar dari super user dan masukan perintah berikut.

$ egrep -c '(vmx|svm)' /proc/cpuinfo

outputnya akan ada angka 0, itu karena saya menggunakan VirtualBox, dan di VirtualBox tidak terdapat service nested. karena angka 0 menandakan bahwa node compute tidak mendukung hardware acceleration. tetapi jika outpunya angka 1 atau lebih, itu artinya node compute kita sudah mendukung hardware acceleration. dan skip step dibawah, langung restart nova servicenya

cara fix agar output nya bukan angka 0 adalah dengan mengganti tipe virtual nya dengan QEMU. pertama kita buka file nova-compute.conf.

$ sudo nano /etc/nova/nova-compute.conf

kemudian ubah kvm menjadi qemu

[libvirt]

virt_type = qemu

kemudian kita restart nova-nya

$ sudo service nova-compute restart

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

$ sudo rm -f /var/lib/nova/nova.sqlite

LAB 23 - Verifikasi Node Compute - Node Controller 

sebelum mem-verifikasi, kita load dulu file admin-openrc.sh.

$ source admin-openrc.sh

kemudian kita verifikasi dengan mengecek service compute nya.

$ openstack compute service list



setelah itu kita verifikasi koneksi dengan Indentity Service

$ nova endpoints





note : abaikan jika ada peringatan 

lalu verifikasi juga koneksi dengan Image Service

$ nova image-list



sampai disini kita nge-lab Nova, di part selanjutnya kita akan nge-lab tentang Neutron

klik link berikut untuk melanjutkan :3


Nun walqalami wama yasthurun
Wassalamualaikum...

You Might Also Like

0 komentar