DevStack & MicroStack

Gilang Virga Perdana
5 min readAug 18, 2021

--

Holaa, Ingin belajar Openstack dengan resource yang rendah? Jika sebelumnya kita sudah pernah instalasi Openstack dengan Kolla-Ansible (Production Ready) yang bisa kalian kunjungi pada https://gilangvperdana.medium.com/deploy-multi-node-openstack-ussuri-with-kolla-ansible-on-ubuntu-18-04-b137b51e9421 Namun sekarang Ada dua deployer yang mainstream digunakan untuk belajar Openstack, yakni DevStack & MicroStack. Yang pertama, DevStack adalah suatu deployer yang dapat membangun OpenStack dengan mudah dan cepat. DevStack memungkinkan kita menjalankan Openstack dengan resource yang minim, DevStack bisa dibilang sebagai Production Ready namun ada beberapa poin yang perlu kalian baca. Begitupun dengan MicroStack, yaitu deployer Openstack berbentuk Snap yang memungkinkan kita untuk instalasi Openstack hanya dari Snap. Sama seperti DevStack, ada beberapa poin-poin yang harus dipertimbangkan pada MicroStack. Tapi ini bisa sangat menguntungkan bagi kita sebagai pelajar atau sekedar ingin mengoprek seputaran OpenStack. Karena DevStack & Microstack memiliki syntax serta konsep yang sama seperti OpenStack asli. Tanpa berlama lama, mari kita provisioning DevStack & Microstack.

Envrionment:

Ubuntu 18.04

150GB Storage

Putty

Instalasi DevStack :

1. Upgrade paket Ubuntu :

$ sudo apt update && sudo apt-get full-upgrade

2. Buat user “stack” :

$ sudo useradd -s /bin/bash -d /opt/stack -m stack$ echo "stack ALL=(ALL) NOPASSWD: ALL" | sudo tee /etc/sudoers.d/stack$ su stack$ cd

3. Clone repository instalasi DevStack :

$ git clone https://opendev.org/openstack/devstack.git$ cd devstack

4. Atur local.conf :

$ cp samples/local.conf .$ nano local.conf

Rubah sesuai keinginan, disini saya merubah untuk password setiap service menjadi password yang sama seperti password Admin.

Terlihat bahwa saya memberikan password admin “secret” , maka semua service akan mengikuti semua password admin. Adapun yang saya rubah lagi adalah HOST_IP dimana HOST_IP adalah alamat internal VM kita, bisa dilihat pada $ ifconfig . Jika sudah terkonfigurasi, silahkan save lalu exit.

Jika kalian ingin mengaktifkan fitur Heat dan Magnum bisa menggunakan local.conf ini.

5. Atur version yang diinginkan :

Saya ingin instalasi openstack Ussuri Version, hal ini bisa kita lakukan dengan cara mengganti branch:

$ git branch --allKita akan menggukan openstack versi "Ussuri", untuk mengganti silahkan ganti branch sesuai versi yang diinginkan.
$ git checkout stable/ussuri

Sesuaikan dengan versi yang ingin kalian instalasi.

6. Start instalasi :

$ FORCE=yes ./stack.sh

Proses ini akan memakan waktu lumayan lama (10–30menit), tergantung environment VM kalian masing masing.

7. Verifikasi instalasi :

Jika sudah sampai tahap ini, ini artinya DevStack berhasil menginstall OpenStack pada VM kita. Selanjutknya kita akan verifikasi keberhasilannya.

Untuk verifikasi yang paling awal, kita bisa mencoba untuk menuliskan perintah perintah Openstack CLI pada terminal

$ openstack server list

Yap, sudah muncul ini artinya sudah bisa dipastikan bahwa openstack sudah terinstall. Selanjutnya kita akan akses dashboard Openstack. Kalian bisa langsung akses IP VM kalian, disini saya menggunakan Public Cloud & domain.

Voila, Instalasi OpenStack menggunakan DevStack sudah berhasil. Silahkan untuk belajar belajar tentang OpenStack.

Info Teknis DevStack :

1. Credentials yang digunakan untuk login adalah :

Username : admin

Password : secret (sesuai pada local.conf tadi).

2. Masalah koneksi pada Devstack :

a. Jika Instance tidak bisa terkoneksi ke internet, pastikan Security Group sudah mengizinkan akses keluar.

b. Jika Security Group sudah di setting namun belum bisa juga, silahkan nyalakan IP Forwarding pada VM :

$ sudo sysctl net.ipv4.ip_forward=1

c. Jika setelah IP Forward belum bisa juga, silahkan masukkan syntax berikut :

$ sudo iptables -t nat -A POSTROUTING -o ens4 -j MASQUERADE (Dengan menyesuaikan “ens4” dengan environment adapter internet kamu, bisa kalian cek pada $ ifconfig).

3. Untuk pembuatan Network External, silahkan pilih Flat dan masukkan “public” pada Physical Network.

4. Setelah Ubuntu dimatikan, DevStack tidak bisa diakses :

Hal ini dikarenakan br-ex hilang (tidak ada IP). Solusi :

$ ip addr add 172.24.4.1/24 dev br-ex$ ip link set br-ex up

Atau kalian bisa setting agar permanent pada /etc/netplan/ .

5. Instance pada DevStack tidak bisa akses internet :

$ nano /run/systemd/resolve/resolv.conf
isi dengan:
nameserver 8.8.8.8

save,exit.

Instalasi Microstack :

1. Upgrade paket Ubuntu:

$ sudo apt update && sudo apt-get full-upgrade

2. Instalasi MicroStack :

$ sudo snap install microstack --beta
$ sudo microstack init --auto --control

Jika sudah sampai pada tahap itu, ini artinya Cluster OpenStack sudah berhasil dibangun menggunakan MicroStack.

3. Generate Password :

Untuk akses Login ke Dashboard silahkan lakukan Generate Password terlebih dahulu.

$ sudo snap get microstack config.credentials.keystone-password

Simpan password tersebut, untuk keperluan Login user admin pertama kali.

4. Login Dashboard :

Login kedalam Dashboard Openstack dengan akses IP VM kita.

Voila, kita sudah berhasil provisioning OpenStack menggunakan MicroStack. Untuk login gunakan username “admin” dan password sesuai yang tadi kita generate ya. Mudah bukan? Silahkan untuk belajar OpenStack!

Info Teknis MicroStack :

1. Instance gagal Koneksi ke Internet :

a. Pastikan sudah mengatur policy pada Security Group.

b. Pastikan sudah mengaktifkan Port Forward pada Ubuntu :

$ sudo sysctl net.ipv4.ip_forward=1

c. Jika masih gagal, silahkan buat Postrouting pada Ubuntu :

$ sudo iptables -t nat -A POSTROUTING -s 10.20.20.1/24 ! -d 10.20.20.1/24 -j MASQUERADE

d. Networking External agar setting type Flat dan isi Physical Network physnet1 .

2. Konfigurasi alias syntax :

$ sudo snap alias microstack.openstack openstack

3. TLS Path

Untuk penggunaan TLS pada Microstack silahkan tambahkan path SSL pada admin-openrc.sh seperti berikut :

export OS_CACERT=/var/snap/microstack/common/etc/ssl/certs/cacert.pem

Terima kasih telah membaca, semoga bermanfaat.

--

--