DevOps 4
DevOps 4
Accelerates DevOps
Menggunakan cloud sebagai enabler untuk DevOps
Memahami full-stack deployment
Melihat berbagai model cloud services
Mengungkap hybrid cloud
DevOps dan cloud bagai katalis dan enablers satu sama lain. Katalis dalam IPA berarti bahan atau zat
untuk mempercepat reaksi kimia. Dalam bab ini, sesuai dengan judul, cloud mengakselerasi cara
kerja dari DevOps
Sifat Fleksibilitas, ketahanan, ketangkasan, dan layanan yang dibawa oleh platform cloud
memungkinkan efisien dan efektivitas pengiriman aplikasi yang dihosting dengan cloud.
Lingkungan dari pengembangan melalui pengujian dan semua cara untuk produksi dapat disediakan
dan dikonfigurasikan sesuai kebutuhan dan bila diperlukan. Proses ini meminimalkan hambatan
terkait lingkungan dalam proses pengiriman.
Organisasi juga mencari cara untuk memanfaatkan platform cloud untuk mengurangi biaya
pengembangan dan menguji lingkungan atau untuk memberikan pengalaman pengembang yang
efisien bagi para praktisi mereka. Ini membuat kasus bisnis yang sangat menarik untuk adopsi cloud
dengan dan untuk DevOps.
1. Using Cloud as an Enabler for DevOps
Tujuan utama DevOps adalah untuk meminimalisir adanya hambatan dalam delivery aplikasi,
membuatnya lebih efisien dan ramping. Salah satu hambatan terbesar yang dialami organisasi
adalah ketersediaan dan konfigurasi environment. Hal ini biasa terjadi, terutama untuk developer
dan tester, mereka perlu mengajukan tiket terlebih dahulu dan butuh waktu berhari-hari bahkan
berminggu-minggu agar pengajuan itu terpenuhi.
Cloud tanpa DevOps berarti tidak memanfaatkan semua manfaat cloud. Mengadopsi DevOps
dengan lingkungan yang dihosting di cloud memungkinkan kemampuan yang memberikan
manfaat penuh cloud kepada organisasi yang memberikan aplikasi perangkat lunak
2. Full-Stack Deployments
Deployments pada cloud application terdiri dari deploying aplikasi dan mengkonfigurasi
environment cloud tempat aplikasi itu dijalankan. Dua task ini dapat dilakukan secara terpisah,
tetapi ketika digabungkan, ini dikenal sebagai full-stack deployment
Pendekatan pertama adalah dengan memisahkan penyediaan cloud environment dari deployment
aplikasi. Otomation tools deployment aplication hanya melihat cloud environment statis. Skenario
ini tidak memaksimalkan manfaat penerapan cloud.
Pendekatan kedua adalah memanfaatkan deployment otomation tools sebagai tools tunggal
penyedia environment cloud dan deployment aplication ke environment yang disediakan.
Pattern teknologi seperti IBM Virtual System Patterns dan OpenStack HOT template dapat digunakan
sebagai template environment cloud dan IBM UrbanCode Deploy sebagai otomation tools yang
digunakan. Setelah tersedianya environment, kelanjutan aplikasi, konfigurasi, dan perubahan konten
dapat dilakukan secara kontinyu pada environment cloud sebagai pembaruan(update).
Adapun alternatif, organisasi dapat memilih untuk selalu menggunakan full stack deployment di
mana environment dan aplikasi terkait selalu bergabung sebagai satu aset yang dapat digunakan.
Dalam hal ini, tidak ada pembaruan yang dibuat untuk environment yang ada.
3. Choosing a Cloud Service Model for DevOps
Saat akan mengadopsi teknologi cloud, kita terlebih dahulu harus menentukan scope apa saja yang
direncanakan akan dialihkan ke platform cloud dan scope apa yang menjadi tanggungjawab masing
masing. Terdapat 2 services model utama untuk cloud. Infrastructure as a Service (IaaS) dan Platform
as a Service (PaaS).
Platform as a Service (PaaS) = platform sebagai layanan. Layanan cloud yang menyediakan platform
yang memungkinkan pelanggan untuk mengembangkan, menjalankan, dan mengelola aplikasi tanpa
kompleksitas membangun dan memelihara infrastruktur yang biasanya terkait dengan
pengembangan dan peluncuran aplikasi. User bertanggungjawab hanya pada scope applikasi dan
data. Sehingga dapat fokus pada delivery dan development aplikasi.
IBM Bluemix adalah salah satu contoh PaaS. IBM dan mitranya mengelola platform dan layanan yang
disediakan di sana. Platform ini menanamkan Layanan IBM DevOps berupa satu set layanan yang
menyediakan semua kemampuan bagi tim untuk mengadopsi DevOps dan lebih khusus lagi jalur
delivery aplikasi sebagai serangkaian layanan.
Ini merupakan hybrid cloud yang umum digunakan. Terkadang organisasi memiliki aplikasi yang
dijalankan terus menerus pada infrastructure fisik. Contohnya aplikasi mainframe dan sistem data
yang besar tidak mungkin dapat langsung dimigrasi ke cloud. Kalau pun akan dilakukan, tidak
mungkin dapat dilakukan dalam semalaman. Maka dari itu tetap diperlukan infrastruktur fisik.
Dalam skenario ini, organisasi dapat mengadopsi cloud off-premise (publik) untuk beberapa aplikasi
dan sedikit beban kerja. Dan cloud on-premise (pribadi) untuk hal yang lain. Contohnya adalah
organisasi yang memanfaatkan cloud off-premise yang berbiaya rendah untuk development
environment dan cloud on-premise yang dikelola sendiri di pusat data untuk semua beban kerja
production.
Untuk skenario ini PaaS (platform) digunakan untuk beberapa workloads, contohnya inovasi sistem
yang berhubungan dengan aplikasi. Dan IaaS (infrasturcture) digunakan untuk sistem tradisional
yang melakukan pencatatan kerja sistem.
Aplikasi seperti UrbanCode Deploy IBM dapat memetakan aplikasi dan konfigurasi ke berbagai
environment, fisik dan cloud, dan memungkinkan untuk otomation deployment aplikasi di
environment cloud hybrid yang kompleks.