Friday, August 24, 2012

High Availability menggunakan Citrix (Apache) CloudStack

Dashboard CloudStack
Pada April 2012 Apache menerima CloudStack dari Citrix sebagai salah satu project open source di Apache Incubator.
CloudStack merupakan platform software yang mengumpulkan sumberdaya-sumberdaya komputasi menjadi sebuah Cloud IaaS (infrastructure as a service). Bayangkanlah Amazon EC2 yang dapat diinstall di data center pribadi kita.
Service Offering - mirip Amazon EC2
Dengan CloudStack, kita bisa memberikan layanan cloud ke user kita.. Mereka dapat melaunch Server sesuai keinginan asalkan masih di batas kuota dan kapasitas sistem.

Pilihan Template VM

Sebenarnya komponen utama CloudStack adalah aplikasi web berbasis Java yang melakukan provisioning ke software hypervisor berupa XenServer, VMWare, ataupun KVM. Sebuah Cluster dalam terminologi CloudStack adalah sekumpulan host yang dikendalikan oleh hypervisor yang seragam.  

Apa yang didapat dari CloudStack antara lain :
  • Manajemen sentral berbasis web berfitur Ajax untuk VM-VM berbasis Xen, VMWare vSphere, ataupun KVM
  • Repository tempat menyimpan template image VM yang dapat diintegrasikan dengan OpenStack Swift
  • Konfigurasi offering VM : user dapat melaunch VM dengan memilih paket yang di dalamnya sudah terkonfigurasi ukuran memory, banyaknya CPU.

  • Integrasi dengan Citrix Netscaler untuk Elastic load balancing dan Elastic IP
  • Load balancing biasa dengan Virtual Router atau F5 BigIP
  • Konfigurasi Firewall dan NAT untuk Virtual Router ataupun Jupiter SRX
  • High Availability untuk VM yang dijalankan di CloudStack (Jika ada masalah dengan salah satu Host, CloudStack akan memboot VM tersebut di Host yang masih sehat dengan asumsi VM menggunakan virtual hard disk yang tersimpan di shared storage)
  • Provisioning VLAN
Konsep Deployment Umum Cloudstack
CloudStack dideploy dengan menyediakan dua jenis storage, primary dan secondary. Secondary Storage digunakan untuk menyimpan template VM atau ISO sebagai image dasar pembuatan virtual machine. Primary storage digunakan untuk menyimpan data hard disk milik VM-VM. CloudStack sendiri menyimpan informasi di database MySQL. Dianjurkan untuk menyediakan 3 jalur jaringan pada semua host : jaringan publik internet, jaringan privat (LAN), dan jaringan khusus manajemen dan storage.
Salah satu konfigurasi deployment CloudStack


Aspek penting dalam high availability ialah moda failure yang disupport. Di dalam sistem di atas ada beberapa moda failure :
  • Host Failure : kegagalan atau kerusakan pada host yang menjadi bagian dari Cluster
  • Management Server Failure : kegagalan atau kerusakan pada server CloudStack
  • Primary Storage Failure : kegagalan pada penyimpanan data utama (virtual hard disk)
  • Secondary Storage Failure : kegagalan pada penyimpanan template atau ISO 
  • Management Server MySQL database failure : kegagalan pada database CloudStack
Mekanisme host failure Failover pada CloudStack

Moda Failure yang ditangani oleh CloudStack ialah Host Failure. Secondary Storage failure ditangani oleh infrastruktur OpenStack Swift, yang menyimpan image secara rendundan pada cluster storagenya sendiri. Management Server Failure dapat ditangani dengan menjalankan CloudStack pada dua host yang diberi load-balancing. Mgmt Server MySQL database failure ditangani dengan memasang DRBD pada storage mysql atau mengkonfigurasi MySQL secara master-slave.

Digabungkan dengan High Availability Storage System (CloudStack tidak menyediakan layanan storage primary, hanya interface ke sistem storage berbasis iSCSI atau NFS) maka CloudStack dapat menjadi platform yang cukup robust untuk deployment sistem.

Referensi:

1 comment:

Ika Trisnawati said...

keren....
jadi orang ko pinter amat ya