Strategi Penskalaan Otomatis untuk Windows Azure, EC2 Amazon, dan Platform Cloud Lainnya
Strategi yang dibahas dalam artikel ini dapat diterapkan ke platform cloud apa pun yang memiliki kemampuan untuk menyediakan sumber daya komputasi secara dinamis, meskipun saya mengandalkan contoh dari layanan penskalaan dan pemantauan otomatis AzureWatch untuk Windows Azure
Topik penskalaan otomatis adalah topik yang sangat penting dalam hal merancang sistem berbasis cloud. Premis utama komputasi awan adalah pendekatan berbasis utilitas untuk penyediaan dan de-provisioning sumber daya sesuai permintaan sambil membayar hanya untuk apa yang telah dikonsumsi.
Masuk akal untuk memikirkan masalah penyediaan dinamis dan penskalaan otomatis saat merancang sistem Anda untuk hidup di cloud. Menerapkan aplikasi berbasis cloud tanpa penskalaan otomatis seperti memasang AC tanpa termostat: seseorang harus terus memantau dan menyesuaikan suhu yang diperlukan secara manual atau berdoa agar suhu di luar tidak pernah berubah.
Banyak platform cloud seperti EC2 Amazon atau Windows Azure tidak secara otomatis menyesuaikan daya komputasi yang didedikasikan untuk aplikasi yang berjalan di platform mereka. Sebaliknya, mereka mengandalkan berbagai alat dan layanan untuk menyediakan penskalaan otomatis dinamis.
Untuk aplikasi yang berjalan di Amazon cloud, penskalaan otomatis ditawarkan oleh Amazon sendiri melalui layanan CloudWatch serta vendor pihak ketiga seperti RightScale. Windows Azure tidak memiliki mesin penskalaan otomatis sendiri tetapi vendor pihak ketiga seperti AzureWatch dapat menyediakan penskalaan dan pemantauan otomatis.
Sebelum memutuskan kapan harus menaikkan dan menurunkan skala Google Cloud Platform, penting untuk memahami kapan dan mengapa perubahan permintaan terjadi. Secara umum, permintaan pada aplikasi Anda dapat bervariasi karena acara yang direncanakan atau tidak direncanakan. Karena itu, penting untuk membagi strategi penskalaan Anda ke dalam dua kategori besar ini: Permintaan yang Dapat Diprediksi dan Tidak Dapat Diprediksi.
Tujuan artikel ini adalah untuk menjelaskan strategi penskalaan yang dengan anggun menangani lonjakan permintaan yang tidak direncanakan dan direncanakan. Saya akan menggunakan AzureWatch untuk menunjukkan contoh spesifik tentang bagaimana strategi ini dapat diterapkan di lingkungan Windows Azure.
Catatan penting: meskipun artikel ini kebanyakan akan membahas tentang teknik scale up, jangan lupa untuk memikirkan teknik mencocokan scale down. Dalam beberapa kasus, mungkin membantu untuk memikirkan tentang membangun strategi penskalaan otomatis dengan cara yang mirip dengan membuat termostat.
Permintaan tak terduga
Mengkonseptualisasikan kasus penggunaan lonjakan permintaan yang tidak direncanakan yang jarang terjadi agak mudah. Permintaan pada aplikasi Anda mungkin tiba-tiba meningkat karena sejumlah penyebab, seperti:
- CEO perusahaan Anda baru saja memesan sejumlah laporan kompleks sebelum rapat besar dengan pemegang saham
- departemen pemasaran Anda baru saja menjalankan kampanye iklan yang sukses dan lupa memberi tahu Anda tentang kemungkinan masuknya pengguna baru
- pelanggan besar di luar negeri mendaftar dalam semalam dan mulai menghabiskan banyak sumber daya
Apa pun masalahnya, memiliki polis asuransi yang menangani lonjakan permintaan yang tidak direncanakan seperti itu tidak hanya cerdas. Ini dapat membantu menyelamatkan reputasi dan reputasi perusahaan Anda.
Namun, menangani lonjakan permintaan yang tidak direncanakan dengan anggun bisa jadi sulit. Ini karena Anda bereaksi terhadap peristiwa yang telah terjadi. Ada dua cara yang disarankan untuk menangani lonjakan yang tidak direncanakan: