halo sobat life4code, welcome back!, today kita akan belajar bagaimana caranya untuk install dan konfigurasi Compute Service dengan kode name Nova
Nova adalah salah satu komponen yang paling penting ( Inti ) pada environtment openstack, nova ini bahkan suda ada sejak versi OpenStack pertama di rilis, yakni versi Austin
nah karena itu, kita akan menjadikan OpenStack Compute menjadi host sendiri yang berfungsi untuk pengelola sistem komputasi cloud.
OpenStack Compute adalah bagian utama dari sistem Infrastructure-as-a-Service (IaaS). Modul utama yang diimplementasikan dalam bahasa pemrograman Python. nah OpenStack Compute ini memiliki komponen2 variasi, komponennya bisa kamu lihat disini
nah setelah kita mengerti apa itu Compute Service, sekarang kita sudah siap untuk menjadi bisa, sebelum itu kita harus membuat database untuk Nova.
#LAB 18 Membuat database Nova pada node Controller
Persyaratan
Sebelum Install dan konfigurasi Compute service, kamu harus membuat database, service credentials, dan API endpoints.
untuk membuat database, ikuti langkah ini:
1. gunakan database access client untuk connect ke database server sebagai root user:
$ mysql -u root -p
- Membuat nova database:
CREATE DATABASE nova;
- Berikan hak access ke nova database:
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
IDENTIFIED BY 'NOVA_DBPASS';
GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
IDENTIFIED BY 'NOVA_DBPASS';
- Ganti NOVA_DBPASS dengan password yang kamu inginkan.
- Keluar database access client.
$ source admin-openrc.sh3. untuk membuat service credentials, ikuti langkah berikut:
- membuat nova user:
$ openstack user create --domain default --password-prompt novaCatatan
pada saat membuat user, kita dimintai password NOVA_PASS
- tambahkan admin role ke user nova:
$ openstack role add --project service --user nova adminbuat nova service entity:
$ openstack service create --name nova \Buat compute API endpoints:
--description "OpenStack Compute" compute
$ openstack endpoint create --region RegionOne \
compute public http://10.0.0.10:8774/v2/%\(tenant_id\)s
$ openstack endpoint create --region RegionOne \
compute internal http://10.0.0.10:8774/v2/%\(tenant_id\)s
$ openstack endpoint create --region RegionOne \
compute admin http://10.0.0.10:8774/v2/%\(tenant_id\)s
#LAB 19 Install dan Konfigurasi Komponen Nova
setelah kita membuat database untuk nova, it time to Installing a packages!
Install paket nova:
# apt-get install nova-api nova-cert nova-conductor \Edit file /etc/nova/nova.conf dan ikuti langkah berikut:
nova-consoleauth nova-novncproxy nova-scheduler \
python-novaclient
nano /etc/nova/nova.confpada bagian [database], berikan database access:
[database]Ganti NOVA_DBPASS dengan password yang telah kamu buat pada Compute database.
...
connection = mysql://nova:NOVA_DBPASS@10.0.0.10/nova
pada [DEFAULT] dan [oslo_messaging_rabbit] , konfigurasi RabbitMQ message queue access:
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = 10.0.0.10
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Ganti RABBIT_PASS dengan password RabbitMQ.
pada [DEFAULT] dan [keystone_authtoken], konfigurasi Identity service access:
[DEFAULT]
...
auth_strategy = keystone
[keystone_authtoken]
...
auth_uri = http://10.0.0.10:5000
auth_url = http://10.0.0.10:35357
auth_plugin = password
project_domain_id = default
user_domain_id = default
project_name = service
username = nova
password = NOVA_PASS
Ganti NOVA_PASS dengan password yang telah kamu buat pada nova user di bagian Identity service.
Pada [DEFAULT] , setting my_ip untuk menggunakan management interface IP address pada controller node:
[DEFAULT]
...
my_ip = 10.0.0.10
Pada bagian [DEFAULT], enable support Networking service:
[DEFAULT]
...
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
Catatan
By default, Compute menggunakan internal firewall service. disaat Networking memiliki firewall service, kamu harus disable Compute firewall service dengan menggunakan nova.virt.firewall.NoopFirewallDriver firewall driver.
pada bagian [vnc], konfigurasi VNC proxy untuk menggunakan management interface IP address pada controller node:
[vnc]
...
vncserver_listen = $my_ip
vncserver_proxyclient_address = $my_ip
pada [glance], konfigurasi lokasi dari Image service:
[glance]
...
host = controller
Pada bagian [oslo_concurrency], konfigurasi lock path:
[oslo_concurrency]
...
lock_path = /var/lib/nova/tmp
Pada bagian [DEFAULT], disable EC2 API:
[DEFAULT]
...
enabled_apis=osapi_compute,metadata
(Optional) untuk mempermudah troubleshooting, aktifkan verbose logging pada bagian [DEFAULT]
[DEFAULT]
...
verbose = True
sinkronisasi database nova:
# su -s /bin/sh -c "nova-manage db sync" novaFinal Instalasi
Restart Compute services:
# service nova-api restartBy default, Ubuntu packages membuat SQLite database.
# service nova-cert restart
# service nova-consoleauth restart
# service nova-scheduler restart
# service nova-conductor restart
# service nova-novncproxy restart
karena konfigurasi ini menggunakan SQL database server, kamu dapat menghapus SQLite database file dengan cara sebagai berikut:
# rm -f /var/lib/nova/nova.sqlitekali ini kita akan belajar bagaimana install dan konfigurasi Compute service pada compute node. layanan ini mendukung beberapa hypervisors untuk deploy instances / VMs. pada tutorial kali ini kita menggunakan QEMU hypervisor dengan extension KVM pada compute nodes yang mendukung hardware acceleration untuk virtual machines. pada legacy hardware, menggunakan generic QEMU hypervisor. kamu dapat mengikuti intruksu ini dengan minor modifications untuk skala horizontal pada environmentmu dengan tambahan compute nodes.
Catatan :
kali ini kita asumsikan bahwa kamu mengikuti intruksi yang sudah saya buat step-by-step untuk konfigurasi compute node pertama. jika kamu ingin mendambah konfigurasi pada node compute, buatlah konfigurasi yang mirip pada step yang saya buat sebelumnya. setiap penambahan compute node membutuhkan unique IP address.
#LAB 20 Install dan Konfigurasi pada Compute Node
Install packages:
# apt-get install nova-compute sysfsutilsEdit file /etc/nova/nova.conf dan ikuti step ini:
nano /etc/nova/nova.conf[DEFAULT] dan [oslo_messaging_rabbit], konfigurasi RabbitMQ message queue access:
[DEFAULT]
...
rpc_backend = rabbit
[oslo_messaging_rabbit]
...
rabbit_host = controller
rabbit_userid = openstack
rabbit_password = RABBIT_PASS
Ganti RABBIT_PASS dengan password yang telah kamu buat pada openstack account di RabbitMQ.
pada [DEFAULT] dan [keystone_authtoken], konfigurasi Identity service access:
[DEFAULT]
...
auth_strategy = keystone
[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 = nova
password = NOVA_PASS
Ganti NOVA_PASS dengan password yang kamu buat untuk nova user di Identity service.
Catatan
Jika ada command di [keystone_authtoken] selain command di atas, uncommand / hapus.
pada [DEFAULT], konfigurasi my_ip option:
[DEFAULT]
...
my_ip = MANAGEMENT_INTERFACE_IP_ADDRESS
ganti MANAGEMENT_INTERFACE_IP_ADDRESS dengan IP address management network interface pada compute nodemu, typically 10.0.0.31 for the first node in the example architecture.
pada [DEFAULT], enable support Networking service:
[DEFAULT]
...
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
Catatan
secara default, Compute menggunakan internal firewall service. saat Networking memiliki sebuah firewall service, kamu harus disable Compute firewall service dengan menggunakan nova.virt.firewall.NoopFirewallDriver firewall driver.
pada [vnc], enable dan konfigurasi remote console access:
[vnc]
...
enabled = True vncserver_listen = 0.0.0.0
vncserver_proxyclient_address = $my_ip
novncproxy_base_url = http://controller:6080/vnc_auto.html
server component listens di semua IP addresses dan proxy component hanya listens di management interface IP address pada compute node. base URL menunjukan lokasi dimana kamu menggunakan web browser untuk access remote consoles dari instances pada compute node.
Catatan
jika web browser yang untuk access remote console terletak pada host yang tidak dapat resolve controller hostname, kamu harus ganti controller dengan management interface IP address pada controller node, itu sebabnya saya selalu menggunakan ip address.
pada [glance]. konfigurasi lokasi untuk Image service:
[glance]
...
host = controller
pada [oslo_concurrency], konfigurasi lock path:
[oslo_concurrency]
...
lock_path = /var/lib/nova/tmp
(Optional) untuk mempermudah troubleshoting, enable verbose logging pada [DEFAULT]:
[DEFAULT]
...
verbose = True
Final Instalasi
menentukan apakah compute node kamu mendukung hardware acceleration untuk virtual machines:
$ egrep -c '(vmx|svm)' /proc/cpuinfo
jika nilai output lebih dari satu, compute node kamu mendukung hardware acceleration yang biasanya tidak membutuhakan konfigurasi tambahan.
tapi jika output yang keluar adalah kosong (0), compute node kamu tidak mendukung hardware acceleration dan kamu harus mengkonfigurasi libvirt untuk menggunakan QEMU bukan KVM.
Edit [libvirt] pada /etc/nova/nova-compute.conf file ikuti langkah berikut:
nano /etc/nova/nova-compute.conf
[libvirt]
...
virt_type = qemu
Restart the Compute service:
# service nova-compute restartsecara default, Ubuntu packages membuat sebuah SQLite database.
karena konfigurasi ini menggunakan sebuah SQL database server, kamu dapat menghapus SQLite database file:
# rm -f /var/lib/nova/nova.sqlite#LAB 21 Verifikasi pada Controller Node
Verify operation
Source the admin credentials to gain access to admin-only CLI commands:
$ source admin-openrc.sh
List service components untuk verify successful launch and registration of each process:
$ nova service-list
$ nova endpoints
Catatan
abaikan semua output warning, its okay.
List images pada Image service catalog untuk memverifikasi connectivity dengan Image service:
$ nova image-list
0 Response to "Tutorial Install dan Konfigurasi Openstack : Compute service kodename (Nova)"
Post a Comment