Monitoring OpenStack Instances with Service Discovery Prometheus + Grafana

Selain bisa mendefine target secara static, Prometheus juga mendukung konfigurasi secara dynamically menggunakan service discovery.
Salah satunya Prometheus dapat melakukan query ke Nova API untuk me-list seluruh Instances di OpenStack sebagai target untuk dimonitoring.

Kebutuhan:
Prometheus
Grafana
Node Exporter
OpenStack RC / Credential

Langkah-langkah:

I. Prometheus Server

1. Update server dan pasang paket pendukung

2. Unduh Prometheus Server

3. Sunting berkas konfigurasi, sesuaikan konfigurasi yang diinginkan

4. Verifikasi berkas config Prometheus server pastikan SUCCESS

5. Jalankan Prometheus server sebagai service

6. Jalankan service Prometheus Server

7. Verifikasi bahwa service Prometheus sudah berjalan

II. Grafana
1. Pasang Grafana

2. Jalankan service Grafana

3. Akses Grafana Dashboard http://ip-server:3000

– Login dengan usename dan passsword admin/admin
– Klik 'Add Datasource'
– Name: Prometheus, Type: Prometheus
– Http settings: http://localhost:9090
– Klik 'Save and Test'.
Pastikan hasilnya 'success' dan 'datasource added'

4. Buat dashboard atau bisa juga unduh di https://grafana.com/dashboards sesuai dengan kebutuhan anda, sebagai contoh:

III. Node Exporter

1. Pasang Node Exporter ditiap Instance yang ingin anda monitoring

Sekarang saat ada Instances baru anda hanya perlu memasang atau menambahkan Node Exporter (bisa juga dipasang waktu create Instance di Customization Script) dan secara otomatis Prometheus server akan men-scrapenya dan viola! seluruh Instances bisa dimonitoring di dashboard Grafana sekarang 😀


Referensi:
https://medium.com/@pasquier.simon/monitoring-your-openstack-instances-with-prometheus-a7ff4324db6c

Enable Soft Delete to Recover Deleted Instances OpenStack

Ubah konfigurasi Nova di node Controller dan semua node Compute

Cari nilai reclaim_instance_interval

Ubah nilainya sesuai yang diinginkan misal ingin menahan Instance agar tidak dihapus secara permanent selama 1 hari (24 jam x 3600 = 86400 detik) berarti disi

Muat ulang service Nova compute dan API

List Instance

Ujicoba hapus Instance

Cek List instance yang sudah di Hapus, jika kita aktifkan Soft Delete maka statusnya akan menjadi SOFT_DELETE sampai batas waktu yang sudah kita tentukan akan berubah menjadi DELETED

Ujicoba Restore Instance

Lalu bagaimana jika kita ingin segera memakai resource kita tanpa menunggu 1 hari? bisa gunakan perintah

Sekian dan Terima kasih!

Attach Multiple Network Interfaces to Instance OpenStack

Dalam beberapa kasus kalian mungkin membutuhkan 2 Internal Network dalam satu Instance, dan itu memang sudah didukung dengan baik oleh OpenStack bahkan saat Instance sudah berjalan kita bisa dapat secara live menambahkan Interface baru 😀

Tapi jika ada lebih dari satu Interface dalam satu Instance, cloud-init/images tidak secara otomatis mengkonfigurasi seluruh Interface. Maka dari itu kita perlu melakukan langkah tambahan agar seluruh Interface dapat berjalan dengan semestinya:

CentOS 7
Cara Ke-1:

Buat berkas Konfigurasi eth1

Sesuaikan Device dan HWADDR

Bring up eth1

Verifikasi

Cara Ke-2:
Dengan menambahkan Configuration > Customisation Script berikut pada saat membuat Instance baru dengan Multiple Interface:

Ubuntu 16.04

Ubah permission dan Eksekusi skrip

Ubah kepemilikan lalu simpan ke /etc/rc0.d/ agar skrip dieksekusi saat reboot

Ujicoba reboot Instance

Sekian dan Selamat Liburan. 🙂


Refrensi:  https://support.metacloud.com/hc/en-us/articles/115002332667-Configuring-a-VM-to-work-with-multiple-network-interfaces
https://leadwithoutatitle.wordpress.com/2017/07/06/how-to-create-a-multi-nic-ubuntu-cloud-image/

Grep Volume ID OpenStack

List Volume ID di Satu Project

List Volume ID di Banyak Project

Sekian. 🙂

Force Delete Cinder Volume OpenStack