Install & konfigurasi Openstack Newton Multinode di Ubuntu 16.04 - Part 1

new

Pada pembahasan pertama ini, saya akan fokus ke persiapan server dan initialisasi server node yang akan kita gunakan.

[Topologi]

networklayout

topologi diatas adalah topologi standar yang dipakai pada openstack, untuk controller dan compute memiliki 2 interface yaitu utnuk provider network dan management network.

sebenarnya yang menjadi core untuk openstack bisa beroprasi hanya controller dan compute.

node yang akan kita konfig adalah

  • controller
  • compute
  • cinder (block storage)
  • swift1 (object storage)
  • swift2 (object storage)

Pembahasan pertama adalah

[Controller Node]

  • Setting ip address
IP address: 10.0.0.10
Network mask: 255.255.255.0 (or /24)
Default gateway: 10.0.0.1

sesuaikan dengan network yang anda miliki

konfigurasi hostname

merubah hostname pada server menjadi controller

kemudian tambahkan pada /etc/hosts, untuk memberikan inisal pada setiap node

#controller
10.0.0.10   controller

#compute
10.0.0.20   compute

#cinder
10.0.0.30   cinder

#swift1
10.0.0.40   swift1

#swift2
10.0.0.50   swift2

Perhatikan untuk ip 127.0.1.1 sebagi resolve untuk hostname, lebih baik di comment (#) supaya hosts alias mengarahkan ke ip controller. tapi jangan hapus 127.0.0.1

 

[Compute Node]

  • Setting ip address
IP address: 10.0.0.20
Network mask: 255.255.255.0 (or /24)
Default gateway: 10.0.0.1

sesuaikan dengan network yang anda miliki

konfigurasi hostname

merubah hostname pada server menjadi compute

kemudian tambahkan pada /etc/hosts, untuk memberikan inisal pada setiap node

#controller
10.0.0.10   controller

#compute
10.0.0.20   compute

#cinder
10.0.0.30   cinder

#swift1
10.0.0.40   swift1

#swift2
10.0.0.50   swift2

Perhatikan untuk ip 127.0.1.1 sebagi resolve untuk hostname, lebih baik di comment (#) supaya hosts alias mengarahkan ke ip compute. tapi jangan hapus 127.0.0.1

 

[Cinder Node – Block Storage Node (optional)]

untuk block storage ini sebenarnya bersifat optional artinya tanpa mengkonfig bagian ini, sebenarnya openstack sudah bisa digunakan. namun fungsi cluster storagenya blm maksimal.

  • Setting ip address
IP address: 10.0.0.30
Network mask: 255.255.255.0 (or /24)
Default gateway: 10.0.0.1

sesuaikan dengan network yang anda miliki

konfigurasi hostname

merubah hostname pada server menjadi cinder

kemudian tambahkan pada /etc/hosts, untuk memberikan inisal pada setiap node

#controller
10.0.0.10   controller

#compute
10.0.0.20   compute

#cinder
10.0.0.30   cinder

#swift1
10.0.0.40   swift1

#swift2
10.0.0.50   swift2

Perhatikan untuk ip 127.0.1.1 sebagi resolve untuk hostname, lebih baik di comment (#) supaya hosts alias mengarahkan ke ip cinder. tapi jangan hapus 127.0.0.1

 

[Swift1 Node – Object Storage Node (optional)]

untuk object storage ini sebenarnya bersifat optional artinya tanpa mengkonfig bagian ini, sebenarnya openstack sudah bisa digunakan.

  • Setting ip address
IP address: 10.0.0.40
Network mask: 255.255.255.0 (or /24)
Default gateway: 10.0.0.1

sesuaikan dengan network yang anda miliki

konfigurasi hostname

merubah hostname pada server menjadi swift1

kemudian tambahkan pada /etc/hosts, untuk memberikan inisal pada setiap node

#controller
10.0.0.10   controller

#compute
10.0.0.20   compute

#cinder
10.0.0.30   cinder

#swift1
10.0.0.40   swift1

#swift2
10.0.0.50   swift2

Perhatikan untuk ip 127.0.1.1 sebagi resolve untuk hostname, lebih baik di comment (#) supaya hosts alias mengarahkan ke ip swift1. tapi jangan hapus 127.0.0.1

 

[Swift2 Node – Object Storage Node (optional)]

untuk object storage ini sebenarnya bersifat optional artinya tanpa mengkonfig bagian ini, sebenarnya openstack sudah bisa digunakan.

  • Setting ip address
IP address: 10.0.0.50
Network mask: 255.255.255.0 (or /24)
Default gateway: 10.0.0.1

sesuaikan dengan network yang anda miliki

konfigurasi hostname

merubah hostname pada server menjadi swift2

kemudian tambahkan pada /etc/hosts, untuk memberikan inisal pada setiap node

#controller
10.0.0.10   controller

#compute
10.0.0.20   compute

#cinder
10.0.0.30   cinder

#swift1
10.0.0.40   swift1

#swift2
10.0.0.50   swift2

Perhatikan untuk ip 127.0.1.1 sebagi resolve untuk hostname, lebih baik di comment (#) supaya hosts alias mengarahkan ke ip swift2. tapi jangan hapus 127.0.0.1

jika sudah disetting diharapkan untuk me-reboot servernya

[Test Koneksi]

kita akan mentesting koneksi dari semua node

  • Test dari controller
# ping -c 4 openstack.org

PING openstack.org (174.143.194.225) 56(84) bytes of data.
64 bytes from 174.143.194.225: icmp_seq=1 ttl=54 time=18.3 ms
64 bytes from 174.143.194.225: icmp_seq=2 ttl=54 time=17.5 ms
64 bytes from 174.143.194.225: icmp_seq=3 ttl=54 time=17.5 ms
64 bytes from 174.143.194.225: icmp_seq=4 ttl=54 time=17.4 ms

dari controller , kita test koneksi ke compute

# ping -c 4 compute

PING compute1 (10.0.0.20) 56(84) bytes of data.
64 bytes from compute1 (10.0.0.20): icmp_seq=1 ttl=64 time=0.263 ms
64 bytes from compute1 (10.0.0.20): icmp_seq=2 ttl=64 time=0.202 ms
64 bytes from compute1 (10.0.0.20): icmp_seq=3 ttl=64 time=0.203 ms
64 bytes from compute1 (10.0.0.20): icmp_seq=4 ttl=64 time=0.202 ms
  • Test dari compute
ping -c 4 openstack.org

PING openstack.org (174.143.194.225) 56(84) bytes of data.
64 bytes from 174.143.194.225: icmp_seq=1 ttl=54 time=18.3 ms
64 bytes from 174.143.194.225: icmp_seq=2 ttl=54 time=17.5 ms
64 bytes from 174.143.194.225: icmp_seq=3 ttl=54 time=17.5 ms
64 bytes from 174.143.194.225: icmp_seq=4 ttl=54 time=17.4 ms

dari compute , kita test koneksi ke controller

# ping -c 4 controller

PING controller (10.0.0.10) 56(84) bytes of data.
64 bytes from controller (10.0.0.10): icmp_seq=1 ttl=64 time=0.263 ms
64 bytes from controller (10.0.0.10): icmp_seq=2 ttl=64 time=0.202 ms
64 bytes from controller (10.0.0.10): icmp_seq=3 ttl=64 time=0.203 ms
64 bytes from controller (10.0.0.10): icmp_seq=4 ttl=64 time=0.202 ms

*jika saat ping hasilnya tidak replay mungkin ada masalah pada firewall yang blok protocol icmp atau blok police inputnya

 

[Network Time Protocol (NTP)]

NTP adalah suatu protocol yang berfungsi untuk mensinkronisasi waktu antara server node 1 dengan server node yang lainnya. pada openstack ini kita akan mengunakan aplikasi chrony sebagai ntp servernya

[Controller Node]

pada controller kita setting sebagai ntp server dan ntp client, yang nantinya controller ini akan menjadi ntp server untuk node yang lainnya.

root@controller:~# apt install chrony

apabila tidak bisa di install karena packet blm tersedia, maka jalankan perintah ini apt update, untuk mengupdate repository

kemudian edit file /etc/chrony/chrony.conf

root@controller:~# nano /etc/chrony/chrony.conf 

#pool 2.debian.pool.ntp.org offline iburst

server id.pool.ntp.org iburst #tambahkan sesuai dengan ntp pada regional negara indonesia

pada pool yang pertama disable dan tambahkan pool di bawahnya

kemudian di restart service ntp nya

root@controller:~# /etc/init.d/chrony restart
[ ok ] Restarting chrony (via systemctl): chrony.service.

 

[Node yang lain]

root@compute:~# apt install chrony

apabila tidak bisa di install karena packet blm tersedia, maka jalankan perintah ini apt update, untuk mengupdate repository

kemudian edit file /etc/chrony/chrony.conf

root@compute:~# nano /etc/chrony/chrony.conf 

#pool 2.debian.pool.ntp.org offline iburst

server controller iburst #tambahkan sesuai dengan ntp pada regional negara indonesia

pada pool yang pertama disable dan tambahkan pool di bawahnya

kemudian di restart service ntp nya

root@compute:~# /etc/init.d/chrony restart
[ ok ] Restarting chrony (via systemctl): chrony.service.

 

[Verfikasi NTP]

  • jalankan perintah di controller
root@controller:~# chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* valhalla.intiland.net         2   6   177    95    +19us[  +21us] +/-  164ms
  • jalankan perintah di node yang lain
root@compute:/home/server# chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^? controller                    0  10     0   10y     +0ns[   +0ns] +/-    0ns

hasil diatas sudah benar, pada controller ntp servernya mengarah ke ntp publik sedangkan dari node yang lain (compute, cinder dll) mengarah ke controller

[Menambah Repository]

Tambahkan repository pada semua node

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

setelah ditambah repositorynya, sekarang kita akan menupdate dan dist-upgrade

# apt update && apt dist-upgrade

jika sudah di update dan dist-upgrade , maka setelah itu OS harus di reboot, karena proses upgrade akan menambah kerel baru ke os

kemudian install openstack client

# apt-get install python-openstackclient

pastikan pada proses installasi tidak ada packet missing atau error.

okee untuk install openstack newton part-1 sudah selesai, selanjutnya kita akan menginstall databasenya pada part-2

About the author
Alan Adi Prastyo

Routecloud Networks

Information about Server, Linux and Computer Network.

Great! You’ve successfully signed up.

Welcome back! You've successfully signed in.

You've successfully subscribed to Routecloud Networks.

Success! Check your email for magic link to sign-in.

Success! Your billing info has been updated.

Your billing was not updated.