Openstack Deployment di Debian 8
Openstack Deployment
Berhubung Debian Squeeze LTS memasuki masa EOL bulan Pebruari nanti dan
server yang kami pakai masih menggunakan OS tersebut, maka OS server
harus diupgrade ke Debian Stable saat ini, versi 8.2 dengan codename
Jessie.
Sebelumnya server-server ini berjalan di lingkungan virtualisasi Xen.
Tapi karena saat ini sepertinya setiap orang membicarakan Openstack,
maka saya putuskan untuk ikut latah Openstack.
Hypervisor yang dipilih untuk Openstack adalah KVM dengan alasan karena guest os yang berjalan tidak perlu aware virtualisasi seperti ketika menggunakan Xen.
Dan inilah, setelah beberapa hari bersama Openstack dan Debian Jessie.
Tentang Openstack, Openstack adalah cloud platform yang sifatnya
modular dan ini merupakan nilai plus karena memberikan kebebasan pilihan
kepada sysadmin. Openstack awalnya merupakan project kerjasama antara
Rackspace dan NASA, namun sejak 2012 Openstack menjadi project dibawah
nama Openstack Foundation.
Ada banyak service Openstack, tapi beberapa saja yang dipakai disini.
Keystone
Keystone adalah identity service dari Openstack, disini semuanya
dimanage dari tenant, service, user, dll.
Nova
Nova service untuk computing resource, disini virtualisasi berjalan.
Nova bertanggung jawab untuk mengalokasikan resource seperti cpu dan
memori. Nova bisa menggunakan hypervisor Qemu, Kvm, Xen, atau mungkin
juga VMware vSphere.
Neutron
Neutron service merupakan NaaS (Network as a service). Meskipun hampir
setiap hari berhubungan dengan networking, tapi konsep Neutron ini yang
paling susah untuk dipahami, untuk kapasitas saya maksudnya. Selain
karena baru mengenal Network as a service, Neutron juga menggunakan
istilah-istilah yang asing di dunia jaringan seperti floating ip, fixed
ip.
Dengan Neutron user bisa bebas memanage jaringan virtualnya sendiri
seperti membuat router virtual, mengatur topologi jaringan, menambahkan
port di router, manage ip address, firewall dsb, dan itu semua virtual.
Meskipun awalnya susah dipahami, tapi setelah cukup paham, Neutron ini
jadi salah satu hal paling keren di Openstack.
Cinder
Cinder adalah block storage service. Cinder bisa menggunakan lvm dan
iscsi sebagai backend. Lvm dan iscsi sudah umum di dunia per-storage-an
dan Cinder hanya sebagai wrapper, jadi tidak ada yang baru.
Glance
Glance adalah image service, tugasnya memanage image. Image bisa
berformat qcow2, img, raw, iso, dll.
Deployment yang ini menggunakan Openstack Juno. Di Debian 8, Openstack
belum masuk ke repository stable jadi menggunakan repository Debian
Backports. Dan karena belum ada Openstack stable, deployment juga ada
kendala disana-sini.
Beberapa diantaranya:
Konfigurasi
Di section keystone di tiap-tiap konfigurasi service, harus menggunakan
auth_uri dan identity_uri bukan auth yang terpisah-pisah.
Openvswitch
Neutron menggunakan plugin openvswitch. Masalahnya, pertama service
networking di Debian 8 tambah tidak konsisten mengatur link dan network
jadi harus menggunakan systemd-networkd. Systemd-networkd lebih bagus
dari ifup yang tradisional itu, tapi belum ada konfigurasi untuk
openvswitch di systemd-networkd. Jadi waktu boot, network interface yang
dipakai openvswitch tidak bisa up otomatis. Workaround yang saya pakai
dengan menambahkan baris “/sbin/ip link set eth0 up” di /etc/rc.local.
Dual stack ipv4 dan ipv6
Implementasi dual stack ip di Openstack Juno belum sepenuhnya berjalan
karena memang support dual stack baru direncanakn oleh Openstack di
release Kilo, Kilo adalah Openstack setelah Juno.
Meskipun ada limitasi tersebut, bukan berarti tidak bisa dual stack.
Dengan sedikit shell script akhirnya ipv6 bisa digunakan.
Kesimpulan
Meskipun ada kendala, tapi secara keseluruhan Openstack di Debian 8.2
bisa berjalan dengan baik.
Untuk Openstack, saya merasa platform cloud ini bisa mengakomodasi
trend cloud computing yang semakin hari demand-nya semakin besar.
Openstack sangat layak dipelajari meskipun harus belajar bahasa Python,
karena Openstack ditulis menggunakan bahasa Python. Siapapun yang punya
background programming pasti tidak kesulitan mempelajari Python karena
bahasanya yang high level.
Menariknya, Openstack menyediakan API untuk memanage service-nya. Jadi
kalau berencana membangun bisnis dengan Openstack, hanya tinggal membuat
program openstack client nya, atau bisa juga menggunakan horizon, web ui
Openstack.
Kalau masih meragukan Openstack, dibawah ini link cloud provider besar
yang menggunakan Openstack sebagai bisnisnya:
- Rackspace: https://www.rackspace.com/
- Cloudscaling: http://www.cloudscaling.com/
- Mirantis: https://www.mirantis.com/
- Canonical: http://www.ubuntu.com/cloud/openstack
- Red Hat:
https://www.redhat.com/en/technologies/linux-platforms/openstack-platform
- HP: http://www8.hp.com/us/en/cloud/hphelion-platform.html
- And many more…
Lebih lanjut tentang Openstack https://www.openstack.org/