Elastisitas cloud adalah kemampuan sistem cloud untuk mengubah resource komputasinya secara otomatis agar sesuai dengan workload yang berubah. Juga disebut sebagai komputasi elastis, konsep ini seperti karet gelang; dapat diregangkan untuk menangani lebih banyak pekerjaan dan kemudian kembali ke bentuk semula setelah pekerjaan selesai, yang berarti Anda tidak perlu menebak berapa banyak kapasitas yang Anda perlukan sebelumnya. Sebagai gantinya, layanan cloud Anda secara otomatis memberi Anda lebih banyak daya pemrosesan, memori, atau penyimpanan saat Anda mengalami lonjakan traffic, lalu menurunkannya kembali saat traffic melambat. Hal ini dapat membantu bisnis menghemat uang dengan hanya membayar resource yang mereka gunakan.
Elastisitas cloud adalah manfaat utama cloud computing yang memungkinkan infrastruktur cloud perusahaan menambah atau mengurangi resource secara otomatis berdasarkan permintaan. Elasticitas cloud inti berarti beradaptasi dengan perubahan workload yang tidak dapat diprediksi tanpa bantuan manusia.
Misalnya, situs e-commerce mungkin mengalami lonjakan traffic yang sangat besar pada hari libur seperti Harbolnas. Dengan komputasi elastis, situs akan otomatis mendapatkan lebih banyak server untuk menangani lonjakan traffic, sehingga pelanggan dapat menikmati pengalaman belanja yang lancar. Setelah liburan berakhir, sistem akan mengurangi resource ke tingkat normal.
Ada dua cara utama yang dapat digunakan sistem untuk menerapkan elastisitas: horizontal dan vertikal.
Hal ini juga disebut "penyebaran skala" atau "penurunan skala". Ini melibatkan penambahan atau penghapusan lebih banyak mesin, atau instance, ke sistem Anda. Saat Anda memerlukan kapasitas yang lebih besar, Anda menambahkan lebih banyak server. Jika tidak diperlukan, Anda dapat menghapusnya. Hal ini sering digunakan untuk aplikasi yang dapat dibagi dan dijalankan di beberapa server sekaligus.
Hal ini juga disebut "peningkatan skala" atau "pengecilan skala". Hal ini melibatkan peningkatan atau penurunan resource satu mesin. Misalnya, jika Anda memerlukan lebih banyak daya untuk server tertentu, Anda akan memberinya lebih banyak CPU, memori, atau penyimpanan. Setelah selesai, Anda dapat mengurangi resource tersebut.
Meskipun istilah elastisitas dan skalabilitas sering digunakan bersamaan, keduanya menggambarkan hal yang berbeda.
Anggap saja seperti ini: Skalabilitas itu seperti mempersiapkan diri untuk maraton besar dengan berlatih selama berbulan-bulan. Elastisitas seperti pelari yang bisa langsung mempercepat atau memperlambat langkahnya selama lomba untuk menyesuaikan diri dengan pelari lain.
Komputasi elastis menawarkan banyak potensi keuntungan bagi bisnis dan developer.
Efisiensi biaya
Komputasi elastis dapat membantu Anda menghemat uang dengan hanya membayar resource yang Anda gunakan. Saat permintaan rendah, Anda tidak perlu menjalankan server tambahan, sehingga mengurangi pengeluaran yang tidak perlu. Anda juga dapat menghindari pembelian hardware mahal untuk menangani traffic puncak yang hanya Anda perlukan beberapa kali dalam setahun.
Ketersediaan dan keandalan tinggi
Dengan menyesuaikan resource secara otomatis, komputasi elastis dapat membantu memastikan aplikasi Anda tetap tersedia dan responsif bahkan selama lonjakan traffic yang tidak terduga. Hal ini dapat mencegah pelambatan atau crash yang dapat membuat pengguna frustrasi atau merusak reputasi bisnis Anda.
Performa meningkat
Sistem ini otomatis menambahkan resource jika diperlukan, yang dapat membantu mempertahankan waktu respons yang cepat dan pengalaman pengguna yang lancar. Hal ini sangat penting untuk aplikasi dengan workload yang tidak dapat diprediksi, seperti game online, layanan streaming, atau e-commerce.
Pengelolaan sederhana
Karena proses penskalaan otomatis, developer dan tim IT tidak perlu memantau dan menyesuaikan resource secara manual. Hal ini dapat menghemat waktu dan tenaga yang dapat difokuskan pada tugas penting lainnya, seperti mengembangkan fitur baru atau meningkatkan pengalaman pengguna.
Bagi developer di lingkungan perusahaan, komputasi elastis bukan hanya fitur, tetapi juga strategi penting yang dapat membantu membangun aplikasi yang tangguh, hemat biaya, dan berperforma tinggi. Hal ini terkait dengan perancangan sistem yang dapat beradaptasi secara cerdas terhadap workload yang tidak dapat diprediksi, sehingga menghindari kelebihan dan kekurangan penyediaan. Hal ini sangat penting untuk aplikasi penting yang harus tetap tersedia 24/7, seperti platform e-commerce, jasa keuangan, atau pipeline pemrosesan data.
Elastisitas cloud adalah prinsip inti di balik cara kerja grup instance terkelola (MIG) Compute Engine. Daripada menyediakan VM secara manual untuk menangani traffic, Anda dapat mendesain sistem yang otomatis beradaptasi dengan perubahan permintaan. MIG adalah sekelompok VM identik yang dapat Anda kelola sebagai satu entity, dan merupakan alat utama untuk membangun sistem elastis di Compute Engine. MIG menggunakan autoscaler untuk otomatis menambahkan atau menghapus VM dari grup berdasarkan metrik yang telah ditentukan sebelumnya, sehingga mencapai elastisitas.
Berikut cara developer perusahaan dapat menerapkan konsep ini secara praktis untuk membangun sistem yang dapat diskalakan:
Membuat blueprint VM: template instance. | Sebelum dapat membuat sistem elastis, Anda memerlukan template instance. Template ini berfungsi sebagai sumber kebenaran tunggal untuk konfigurasi VM aplikasi Anda, termasuk jenis mesin, boot disk, dan skrip startup yang diperlukan. Hal ini memastikan setiap VM baru adalah replika yang sama persis dengan yang terakhir, sehingga meningkatkan konsistensi dan menyederhanakan peluncuran. |
Mengonfigurasi grup instance terkelola | Buka halaman "Instance groups" di konsol Google Cloud dan buat grup instance terkelola baru. Pilih template instance yang Anda buat, tetapkan jumlah minimum dan maksimum instance, serta pilih zona untuk grup Anda guna memastikan redundansi dan ketersediaan tinggi. |
Mengimplementasikan aturan penskalaan otomatis | Inilah inti dari elastisitas cloud. Alih-alih penskalaan berbasis CPU sederhana, developer perusahaan dapat menerapkan aturan penskalaan otomatis lanjutan berdasarkan metrik Cloud Monitoring (seperti panjang antrean untuk layanan worker backend) atau menggunakan penskalaan otomatis prediktif, yang menggunakan data historis untuk menjalankan VM baru sebelum lonjakan traffic diperkirakan terjadi. |
Menambahkan load balancer | Untuk aplikasi yang menghadap publik, load balancer sangat penting untuk mendistribusikan traffic pengguna yang masuk ke semua VM di grup instance terkelola Anda, yang memastikan tidak ada satu pun VM yang kelebihan beban dan aplikasi Anda tetap memiliki ketersediaan tinggi. |
Membuat blueprint VM: template instance.
Sebelum dapat membuat sistem elastis, Anda memerlukan template instance. Template ini berfungsi sebagai sumber kebenaran tunggal untuk konfigurasi VM aplikasi Anda, termasuk jenis mesin, boot disk, dan skrip startup yang diperlukan. Hal ini memastikan setiap VM baru adalah replika yang sama persis dengan yang terakhir, sehingga meningkatkan konsistensi dan menyederhanakan peluncuran.
Mengonfigurasi grup instance terkelola
Buka halaman "Instance groups" di konsol Google Cloud dan buat grup instance terkelola baru. Pilih template instance yang Anda buat, tetapkan jumlah minimum dan maksimum instance, serta pilih zona untuk grup Anda guna memastikan redundansi dan ketersediaan tinggi.
Mengimplementasikan aturan penskalaan otomatis
Inilah inti dari elastisitas cloud. Alih-alih penskalaan berbasis CPU sederhana, developer perusahaan dapat menerapkan aturan penskalaan otomatis lanjutan berdasarkan metrik Cloud Monitoring (seperti panjang antrean untuk layanan worker backend) atau menggunakan penskalaan otomatis prediktif, yang menggunakan data historis untuk menjalankan VM baru sebelum lonjakan traffic diperkirakan terjadi.
Menambahkan load balancer
Untuk aplikasi yang menghadap publik, load balancer sangat penting untuk mendistribusikan traffic pengguna yang masuk ke semua VM di grup instance terkelola Anda, yang memastikan tidak ada satu pun VM yang kelebihan beban dan aplikasi Anda tetap memiliki ketersediaan tinggi.
Mulailah membangun solusi di Google Cloud dengan kredit gratis senilai $300 dan lebih dari 20 produk yang selalu gratis.