Episode ini beralih dari lab ke produksi: alasan DevStack tidak cocok untuk production, pengenalan Kolla-Ansible yang mengemas service OpenStack ke dalam Docker dan mengorkestrasinya via Ansible, topologi all-in-one dan multi-node, serta proses deployment dari globals.yml, inventory, hingga kolla-ansible deploy.

Sampai episode 13, semua pembelajaran berjalan di atas DevStack — environment yang memang dirancang untuk eksperimen, bukan untuk beban produksi. Mulai episode 14, kalian masuk ke fase terakhir sekaligus paling penting: production deployment. Tools yang dipakai bukan script stack.sh, melainkan Kolla-Ansible.
Episode 14 menjawab pertanyaan besar: mengapa DevStack tidak cukup, apa itu Kolla-Ansible dan mengapa ia menjadi standar deployment, bagaimana topologi node disusun, dan bagaimana seluruh proses deployment berjalan — dari konfigurasi globals.yml, penyusunan inventory, sampai kolla-ansible deploy.
DevStack punya tujuan mulia tapi sempit: membuat environment OpenStack lengkap secepat mungkin untuk development. Konsekuensinya:
Untuk produksi, kalian butuh deployment yang reproducible, containerized, dan upgradeable — itulah yang disediakan Kolla-Ansible.
Production deployment harus bisa dijawab dengan ya: apakah service bisa dipisah antar node, apakah ada HA untuk komponen kritis, apakah upgrade bisa dilakukan tanpa downtime, dan apakah seluruh konfigurasi terdokumentasi sebagai kode. DevStack gagal di semua poin; Kolla-Ansible menjawab semuanya.
Kolla-Ansible adalah deployment tool resmi OpenStack yang menggabungkan dua teknologi:
Kolla-Ansible (Ansible playbooks)
↓ orchestrate
Node Controller → container keystone-api, nova-api, mariadb
Node Compute → container nova-compute
Node Network → container neutron-agentsHasilnya: deployment yang konsisten di semua node, image yang sama di mana pun, dan rollback yang sederhana — ganti tag image, jalankan upgrade.
Kolla-Ansible dipakai luas di produksi karena: containerized sehingga isolasi dan distribusi image mudah, declarative karena konfigurasi hidup di file yang diversi, HA-ready dengan komponen seperti Galera dan RabbitMQ cluster, dan battle-tested karena menjadi jalur rilis resmi OpenStack.
Topologi all-in-one menjalankan seluruh peran (control, compute, network, storage) dalam satu host. Ia bukan untuk produksi sungguhan, tapi menjadi jembatan dari DevStack menuju multi-node — konfigurasi Kolla-Ansible yang sama, hanya inventory yang berbeda.
Topologi multi-node memisahkan peran ke host berbeda:
| Peran | Service |
|---|---|
| Controller | Keystone, Glance API, Nova API, Neutron Server, RabbitMQ, MariaDB, Horizon |
| Compute | nova-compute, nova-libvirt |
| Network | neutron-agents, openvswitch |
| Storage | cinder-volume, swift, manila-share |
Controller biasanya digandakan tiga kali untuk HA. Pemisahan ini yang membuat cluster tahan terhadap kegagalan satu node — topologi ini akan kita rancang lengkap di episode 20.
Deployment dimulai dari inventory file yang mendefinisikan grup node:
[control]
controller01 ansible_host=10.0.0.11
controller02 ansible_host=10.0.0.12
controller03 ansible_host=10.0.0.13
[compute]
compute01 ansible_host=10.0.0.21
compute02 ansible_host=10.0.0.22
[network]
network01 ansible_host=10.0.0.31
[storage]
storage01 ansible_host=10.0.0.41File di atas adalah contoh isi multinode inventory — setiap node masuk ke grup perannya. Ansible lalu memakai file ini untuk menempatkan service ke node yang tepat.
globals.yml adalah pusat konfigurasi deployment:
kolla_base_distro: "ubuntu"
openstack_release: "caracal"
network_interface: "ens192"
kolla_internal_vip_address: "10.0.0.99"
enable_heat: "yes"
enable_cinder: "yes"
enable_octavia: "yes"Perintah di atas menunjukkan pola konfigurasi: kolla_base_distro dan openstack_release menentukan image, network_interface menunjuk NIC manajemen, dan enable_* menghidupkan service sesuai kebutuhan. Setiap service yang di-enable akan di-deploy oleh playbook.
Proses deployment berjalan berurutan:
kolla-ansible -i multinode bootstrap-servers
kolla-ansible -i multinode prechecks
kolla-ansible -i multinode deploy
kolla-ansible -i multinode post-deploykolla-ansible -i multinode deploy adalah inti proses — menciptakan seluruh container service di semua node. Setelah post-deploy, generate kredensial admin:
source /etc/kolla/admin-openrc.sh
openstack service listOutput openstack service list menampilkan seluruh service yang berjalan sebagai container — bukti cluster produksi kalian hidup.
Episode 14 membawa kalian keluar dari lab: memahami keterbatasan DevStack untuk produksi, mengenal Kolla-Ansible sebagai deployment tool yang mengemas OpenStack dalam Docker dan mengorkestrasinya via Ansible, memilih topologi all-in-one atau multi-node, dan menjalankan alur deployment dari globals.yml dan inventory hingga bootstrap, prechecks, deploy, dan post-deploy.
Inti yang harus dibawa pulang:
globals.yml menentukan image dan service yang di-enable.kolla-ansible -i multinode deploy adalah inti proses.Di episode 15 selanjutnya kita akan membahas Production Networking: Provider Networks, VXLAN & DVR — menyusun layout dual-NIC untuk node, memetakan provider network ke VLAN fisik, mengisolasi tenant dengan overlay VXLAN, dan memakai Distributed Virtual Router untuk menghilangkan bottleneck di network node terpusat.