Penskalaan otomatis

Penskalaan otomatis adalah proses mengalokasikan sumber daya secara dinamis untuk menyesuaikan persyaratan performa. Seiring bertambahnya volume pekerjaan, aplikasi mungkin memerlukan sumber daya tambahan untuk mempertahankan tingkat performa yang diinginkan dan memenuhi perjanjian tingkat layanan (SLA). Karena permintaan berkurang dan sumber daya tambahan tidak lagi diperlukan, alokasi tersebut dapat dibatalkan meminimalkan biaya.

Autoscaling memanfaatkan elastisitas lingkungan yang dihosting di cloud sambil mengurangi overhead manajemen. Hal ini mengurangi kebutuhan operator untuk terus memantau kinerja sistem dan membuat keputusan tentang menambahkan atau menghapus sumber daya.

Ada dua cara utama agar aplikasi dapat diskalakan:

  • Penskalaan vertikal, juga disebut penskalaan naik dan turun, berarti mengubah kapasitas sumber daya. Misalnya, Anda dapat memindahkan aplikasi ke ukuran VM yang lebih besar. Penskalaan vertikal sering kali mengharuskan sistem untuk sementara tidak tersedia saat sedang disebarkan kembali. Oleh karena itu, mengotomatisasi penskalaan vertikal lebih jarang dilakukan.

  • Penskalaan horizontal, juga disebut penskalaan keluar dan masuk, berarti menambahkan atau menghapus instans sumber daya. Aplikasi terus berjalan tanpa gangguan saat sumber daya baru disediakan. Ketika proses provisi selesai, solusi disebarkan pada sumber daya tambahan ini. Jika permintaan turun, sumber daya tambahan dapat dimatikan dengan baik dan tidak dialokasikan.

Banyak sistem berbasis cloud, termasuk Microsoft Azure, yang mendukung penskalaan horizontal otomatis. Sisa artikel ini berfokus pada penskalaan horizontal.

Catatan

Penskalaan otomatis sebagian besar berlaku untuk sumber daya komputasi. Meskipun dimungkinkan untuk menskalakan database atau antrean pesan secara horizontal, hal ini biasanya melibatkan partisi data, yang umumnya tidak otomatis.

Komponen penskalaan otomatis

Strategi penskalaan otomatis biasanya melibatkan bagian-bagian berikut:

  • Sistem instrumentasi dan pemantauan di tingkat aplikasi, layanan, dan infrastruktur. Sistem ini menangkap metrik utama, seperti waktu respons, panjang antrean, penggunaan CPU, dan penggunaan memori.
  • Logika pengambilan keputusan yang mengevaluasi metrik ini terhadap ambang atau jadwal yang telah ditentukan, dan memutuskan apakah akan diskalakan.
  • Komponen yang menskalakan sistem.
  • Menguji, memantau, dan menyesuaikan strategi penskalaan otomatis untuk memastikan bahwa penskalaan otomatis berfungsi seperti yang diharapkan.

Azure menyediakan mekanisme penskalaan otomatis bawaan yang menangani skenario umum. Jika layanan atau teknologi tertentu tidak memiliki fungsi penskalaan otomatis bawaan, atau jika Anda memiliki persyaratan penskalaan otomatis spesifik yang berada di luar kemampuannya, Anda dapat mempertimbangkan Implementasi kustom. Implementasi kustom akan mengumpulkan metrik operasional dan sistem, menganalisis metrik, dan kemudian menskalakan sumber daya yang sesuai.

Mengonfigurasikan penskalaan otomatis untuk solusi Azure

Azure menyediakan penskalaan otomatis bawaan untuk sebagian besar opsi komputasi.

Semua opsi komputasi ini menggunakan penskalaan otomatis Azure Monitor untuk menyediakan set fungsi penskalaan otomatis yang umum.

  • Azure Functions berbeda dari opsi komputasi sebelumnya, karena Anda tidak perlu mengonfigurasi aturan penskalaan otomatis apa pun. Sebagai gantinya, Azure Functions secara otomatis mengalokasikan daya komputasi saat kode Anda berjalan, memperluas skala seperlunya untuk menangani beban. Untuk informasi selengkapnya, lihat Memilih paket hosting yang tepat untuk Azure Functions.

Terakhir, solusi penskalaan otomatis kustom terkadang dapat bermanfaat. Misalnya, Anda dapat menggunakan Diagnostik Azure dan metrik berbasis aplikasi, bersama dengan kode kustom untuk memantau dan mengekspor metrik aplikasi. Kemudian Anda dapat menentukan aturan kustom berdasarkan metrik ini, dan menggunakan REST API Resource Manager untuk memicu penskalaan otomatis. Namun, solusi kustom tidak mudah diimplementasikan, dan harus dipertimbangkan hanya jika tidak ada pendekatan sebelumnya yang dapat memenuhi persyaratan Anda.

Gunakan fitur penskalaan otomatis bawaan dari platform, jika memenuhi persyaratan Anda. Jika tidak, pertimbangkan baik-baik apakah Anda benar-benar membutuhkan fitur penskalaan yang lebih kompleks. Contoh persyaratan tambahan mungkin mencakup lebih banyak granularitas kontrol, berbagai cara untuk mendeteksi peristiwa pemicu untuk penskalaan, penskalaan di seluruh langganan, dan penskalaan jenis sumber daya lainnya.

Menggunakan penskalaan otomatis Azure Monitor

Penskalaan otomatis Azure Monitor menyediakan set fungsi penskalaan otomatis yang umum untuk set skala mesin virtual, Azure App Service, dan Azure Cloud Services. Penskalaan dapat dilakukan sesuai jadwal, atau berdasarkan metrik runtime, seperti penggunaan CPU atau memori.

Contoh:

  • Perluaskan skala hingga 10 instans pada hari kerja, dan persempit skala menjadi 4 instans pada hari Sabtu dan Minggu.
  • Perluaskan skala dengan satu instans jika penggunaan CPU rata-rata di atas 70%, dan penyempitan skala dengan satu instans jika penggunaan CPU turun di bawah 50%.
  • Perluaskan skala dengan satu instans jika jumlah pesan dalam antrean melebihi ambang tertentu.

Tingkatkan skala sumber daya saat beban meningkat untuk memastikan ketersediaan. Demikian pula, pada saat penggunaan rendah, turunkan skala, sehingga Anda dapat mengoptimalkan biaya. Selalu gunakan kombinasi aturan peluasan skala dan penyempitan skala. Jika tidak, penskalaan otomatis hanya berjalan dalam satu arah hingga mencapai ambang (jumlah instans maksimum atau minimum) yang diatur di profil.

Pilih jumlah instans default yang aman untuk beban kerja Anda. Ini diskalakan berdasarkan nilai tersebut jika jumlah instans maksimum atau minimum tidak diatur.

Untuk daftar metrik bawaan, lihat Metrik umum penskalaan otomatis Azure Monitor. Anda juga dapat mengimplementasikan metrik kustom menggunakan Application Insights.

Anda dapat mengonfigurasi penskalaan otomatis menggunakan PowerShell, Azure CLI, template Azure Resource Manager, atau portal Microsoft Azure. Untuk kontrol yang lebih detail, gunakan REST API Azure Resource Manager. Azure Monitoring Service Management Library dan Microsoft Insights Library (dalam pratinjau) adalah SDK yang memungkinkan pengumpulan metrik dari sumber daya yang berbeda, dan melakukan penskalaan otomatis dengan memanfaatkan REST API. Untuk sumber daya di mana dukungan Azure Resource Manager tidak tersedia, atau jika Anda menggunakan Azure Cloud Services, REST API Service Management dapat digunakan untuk penskalaan otomatis. Dalam semua kasus lain, gunakan Azure Resource Manager.

Pertimbangkan poin-poin berikut saat menggunakan penskalaan otomatis Azure:

  • Pertimbangkan apakah Anda dapat memprediksi beban pada aplikasi dengan cukup akurat untuk menggunakan penskalaan otomatis terjadwal, menambahkan dan menghapus instans untuk memenuhi puncak permintaan yang diantisipasi. Jika ini tidak memungkinkan, gunakan penskalaan otomatis reaktif berdasarkan metrik runtime, untuk menangani perubahan permintaan yang tidak terduga. Biasanya, Anda dapat menggabungkan pendekatan ini. Misalnya, buat strategi yang menambahkan sumber daya berdasarkan jadwal dari waktu saat Anda mengetahui aplikasi paling sibuk. Ini membantu memastikan bahwa kapasitas tersedia saat diperlukan, tanpa penundaan apa pun untuk memulai instans baru. Untuk setiap aturan terjadwal, tentukan metrik yang memungkinkan penskalaan otomatis reaktif selama periode tersebut untuk memastikan bahwa aplikasi dapat menangani puncak permintaan yang berkelanjutan tetapi tidak dapat diprediksi.

  • Sering kali sulit untuk memahami hubungan antara metrik dan persyaratan kapasitas, terutama saat aplikasi pertama kali disebarkan. Provisikan sedikit kapasitas ekstra di awal, lalu pantau dan sesuaikan aturan penskalaan otomatis untuk mendekatkan kapasitas ke beban yang sebenarnya.

  • Konfigurasikan aturan penskalaan otomatis, lalu pantau performa aplikasi Anda dari waktu ke waktu. Gunakan hasil pemantauan ini untuk menyesuaikan cara penskalaan sistem jika perlu. Namun, perlu diingat bahwa penskalaan otomatis bukanlah proses instan. Dibutuhkan waktu bagi penskalaan otomatis untuk bereaksi terhadap metrik seperti penggunaan CPU rata-rata yang melebihi (atau turun di bawah) ambang yang ditentukan.

  • Aturan penskalaan otomatis yang menggunakan mekanisme deteksi berdasarkan atribut pemicu terukur (seperti penggunaan CPU atau panjang antrean) menggunakan nilai agregat dari waktu ke waktu, bukan nilai seketika, untuk memicu tindakan penskalaan otomatis. Secara default, agregat adalah nilai rata-rata. Ini mencegah sistem bereaksi terlalu cepat, atau menyebabkan osilasi cepat. Ini juga memberikan waktu bagi instans baru yang secara otomatis mulai masuk ke mode berjalan, yang mencegah agar tindakan penskalaan otomatis tambahan tidak terjadi saat instans baru dimulai. Untuk Azure Cloud Services dan Azure Virtual Machines, periode default untuk agregasi adalah 45 menit, sehingga perlu waktu hingga periode waktu ini agar metrik memicu penskalaan otomatis sebagai respons terhadap lonjakan permintaan. Anda dapat mengubah periode agregasi menggunakan SDK, tetapi periode kurang dari 25 menit dapat menyebabkan hasil yang tidak terduga. Untuk Web Apps, periode rata-rata jauh lebih pendek, yang memungkinkan instans baru agar tersedia dalam waktu sekitar lima menit setelah perubahan pada ukuran pemicu rata-rata.

  • Hindari flapping di mana tindakan penyempitan skala dan peluasan skala secara bolak-balik terjadi terus menerus. Misalkan ada dua instans, dan batas atas adalah 80% CPU, batas bawah adalah 60%. Saat beban mencapai 85%, instans lain ditambahkan. Setelah beberapa waktu, beban berkurang menjadi 60%. Sebelum menyempitkan skala, layanan penskalaan otomatis menghitung distribusi beban total (dari tiga instans) ketika ada satu instans yang dihapus, yang menjadikannya 90%. Ini berarti skala harus segera diperluas lagi. Jadi, penskalaan otomatis melewatkan penyempitan skala dan Anda mungkin tidak akan pernah melihat hasil penskalaan yang diharapkan.

    Situasi flapping dapat dikontrol dengan memilih margin yang memadai antara ambang peluasan dan penyempitan skala.

  • Penskalaan manual diatur ulang dengan jumlah maksimum dan minimum instans yang digunakan untuk penskalaan otomatis. Jika Anda memperbarui jumlah instans secara manual ke nilai yang lebih tinggi atau lebih rendah dari nilai maksimum, mesin penskalaan otomatis secara otomatis menskalakan kembali ke minimum (jika lebih rendah) atau maksimum (jika lebih tinggi). Misalnya, Anda mengatur rentang antara 3 dan 6. Jika Anda memiliki satu instans yang berjalan, mesin skala otomatis akan diskalakan ke tiga instans pada eksekusi berikutnya. Demikian juga, jika Anda mengatur skala secara manual ke delapan instans, pada skala otomatis eksekusi berikutnya akan menskalakannya kembali ke enam instans pada eksekusi berikutnya. Penskalaan manual bersifat sementara kecuali Anda juga mengatur ulang aturan skala otomatis.

  • Mesin penskalaan otomatis hanya memproses satu profil dalam satu waktu. Jika suatu kondisi tidak terpenuhi, maka mesin ini akan melakukan pemeriksaan untuk profil berikutnya. Jauhkan metrik utama dari profil default karena profil tersebut diperiksa terakhir kali. Dalam satu profil, Anda dapat memiliki beberapa aturan. Pada peluasan skala, skala otomatis berjalan jika ada aturan yang terpenuhi. Pada penyempitan skala, skala otomatis mengharuskan semua aturan terpenuhi.

Untuk detail tentang bagaimana Azure Monitor diskalakan, lihat Praktik terbaik untuk Penskalaan Otomatis.

  • Jika Anda mengonfigurasi penskalaan otomatis menggunakan SDK dan bukan portal, Anda dapat menentukan jadwal yang lebih mendetail selama aturan aktif. Anda juga dapat membuat metrik Anda sendiri dan menggunakannya dengan atau tanpa metrik yang sudah ada di aturan penskalaan otomatis Anda. Misalnya, Anda mungkin ingin menggunakan penghitung alternatif, seperti jumlah permintaan per detik atau ketersediaan memori rata-rata, atau menggunakan penghitung kustom untuk mengukur proses bisnis tertentu.

  • Saat menskalakan Service Fabric secara otomatis, jenis node di kluster Anda terbuat dari set skala mesin virtual di back-end, jadi Anda perlu menyiapkan aturan penskalaan otomatis untuk setiap jenis node. Perhitungkan jumlah node yang harus Anda miliki sebelum menyiapkan penskalaan otomatis. Jumlah minimum node yang harus Anda miliki untuk jenis node utama didorong oleh tingkat keandalan yang Anda pilih. Untuk informasi selengkapnya, lihat Menskalakan kluster Service Fabric masuk atau keluar menggunakan aturan skala otomatis.

  • Anda dapat menggunakan portal untuk menautkan sumber daya seperti instans SQL Database dan antrean ke instans Cloud Service. Ini memungkinkan Anda untuk lebih mudah mengakses opsi konfigurasi penskalaan manual dan otomatis yang terpisah untuk setiap sumber daya yang ditautkan. Untuk informasi selengkapnya, lihat Cara: Menautkan sumber daya ke layanan cloud.

  • Saat Anda mengonfigurasi beberapa kebijakan dan aturan, kebijakan dan aturan tersebut dapat saling bertentangan. Penskalaan Otomatis menggunakan aturan resolusi konflik berikut untuk memastikan bahwa selalu ada instans dalam jumlah cukup yang berjalan:

    • Operasi peluasan skala selalu diutamakan daripada operasi penyempitan skala.
    • Saat operasi peluasan skala berkonflik, aturan yang memulai peningkatan dengan jumlah instans terbesar akan diutamakan.
    • Saat operasi penyempitan skala berkonflik, aturan yang memulai penurunan dengan jumlah instans terkecil akan diutamakan.
  • Dalam Lingkungan App Service, kumpulan pekerja atau metrik front-end dapat digunakan untuk menentukan aturan penskalaan otomatis. Untuk informasi selengkapnya, lihat Penskalaan Otomatis dan Lingkungan App Service.

Pertimbangan desain aplikasi

Penskalaan otomatis bukanlah solusi instan. Cukup menambahkan sumber daya ke sistem atau menjalankan lebih banyak contoh proses tidak menjamin bahwa performa sistem akan meningkat. Pertimbangkan poin-poin berikut saat merancang strategi penskalaan otomatis:

  • Sistem harus dirancang agar dapat diskalakan secara horizontal. Hindari membuat asumsi tentang afinitas instans; jangan merancang solusi yang mengharuskan kode selalu berjalan dalam instans spesifik dari suatu proses. Saat menskalakan layanan cloud atau situs web secara horizontal, jangan berasumsi bahwa serangkaian permintaan dari sumber yang sama akan selalu dirutekan ke instans yang sama. Untuk alasan yang sama, rancang layanan menjadi tanpa status guna menghindari serangkaian permintaan dari aplikasi untuk selalu dirutekan ke instans layanan yang sama. Saat merancang layanan yang membaca pesan dari antrean dan memprosesnya, jangan membuat asumsi tentang layanan mana yang menangani pesan tertentu. Penskalaan otomatis dapat memulai instans layanan tambahan seiring bertambahnya panjang antrean. Pola Konsumen yang Bersaing menjelaskan cara menangani skenario ini.

  • Jika solusi mengimplementasikan tugas yang berjalan lama, rancang tugas ini untuk mendukung peluasan dan penyempitan skala. Tanpa kehati-hatian, tugas semacam itu dapat mencegah instans proses dimatikan dengan baik saat sistem dipersempit skalanya, atau instans bisa kehilangan data jika proses dihentikan secara paksa. Idealnya, refaktor tugas yang sudah berjalan lama dan pisahkan pemrosesan yang dijalankannya menjadi gugus yang lebih kecil dan terpisah. Pola Pipa dan Filter memberikan contoh cara untuk melakukannya.

  • Atau, Anda dapat mengimplementasikan mekanisme titik pemeriksaan yang mencatat informasi status tentang tugas secara berkala, dan menyimpan status ini dalam penyimpanan tahan lama yang dapat diakses oleh proses apa pun yang menjalankan tugas. Dengan cara ini, jika proses dimatikan, pekerjaan yang sedang dilakukan dapat dilanjutkan dari titik pemeriksaan terakhir dengan menggunakan instans lain. Ada pustaka yang menyediakan fungsionalitas ini, seperti NServiceBus dan MassTransit. Status tersebut bertahan secara transparan, di mana interval diselaraskan dengan pemrosesan pesan dari antrean di Azure Bus Layanan.

  • Saat proses di latar belakang berjalan pada instans komputasi terpisah, seperti dalam peran pekerja aplikasi yang dihosting layanan cloud, Anda mungkin perlu menskalakan bagian aplikasi yang berbeda menggunakan kebijakan penskalaan yang berbeda. Misalnya, Anda mungkin perlu menyebarkan instans komputasi antarmuka pengguna (UI) tambahan tanpa menambah jumlah instans komputasi latar belakang, atau sebaliknya. Jika Anda menawarkan tingkat layanan yang berbeda (seperti paket layanan dasar dan premium), Anda mungkin perlu memperluas skala sumber daya komputasi untuk paket layanan premium secara signifikan dibanding sumber daya untuk paket layanan dasar guna memenuhi SLA.

  • Pertimbangkan lamanya antrean di mana UI dan instans komputasi latar belakang berkomunikasi. Gunakan sebagai kriteria untuk strategi penskalaan otomatis Anda. Ini adalah salah satu indikator yang mungkin dari ketidakseimbangan atau perbedaan antara beban saat ini dan kapasitas pemrosesan tugas latar belakang. Ada atribut yang sedikit lebih kompleks, tetapi lebih baik untuk menskalakan dasar keputusan. Gunakan waktu antara kapan pesan dikirim dan ketika pemrosesannya selesai, yang dikenal sebagai waktu kritis. Jika nilai waktu kritis ini di bawah ambang batas bisnis yang bermakna, maka tidak perlu untuk menskalakan, bahkan jika panjang antrean panjang.

    • Misalnya, mungkin ada 50.000 pesan dalam antrean, tetapi waktu kritis pesan tertua adalah 500 ms, dan titik akhir tersebut berurusan dengan integrasi dengan layanan web pihak ke-3 untuk mengirim email. Kemungkinan para pemangku kepentingan bisnis akan menganggap bahwa sebagai periode waktu yang tidak akan membenarkan pengeluaran uang tambahan untuk penskalaan.
    • Di sisi lain, mungkin ada 500 pesan dalam antrean, dengan waktu kritis 500 ms yang sama, tetapi titik akhir adalah bagian dari jalur kritis dalam beberapa game online real-time, di mana pemangku kepentingan bisnis mendefinisikan waktu respons 100 ms atau kurang. Dalam hal ini, menskalakan keluar akan masuk akal.
    • Untuk memanfaatkan waktu penting dalam keputusan penskalaan otomatis, sangat berguna untuk membuat pustaka secara otomatis menambahkan informasi yang relevan ke header pesan, saat dikirim dan diproses. Salah satu pustaka yang menyediakan fungsionalitas ini adalah NServiceBus.
  • Jika Anda mendasarkan strategi penskalaan otomatis Anda pada penghitung yang mengukur proses bisnis, seperti jumlah pesanan yang ditempatkan per jam atau waktu eksekusi rata-rata dari transaksi yang kompleks, pastikan Anda sepenuhnya memahami hubungan antara hasil dari jenis penghitung ini dan aktual kebutuhan kapasitas komputasi. Mungkin perlu untuk menskalakan lebih dari satu komponen atau unit komputasi sebagai respons terhadap perubahan penghitung proses bisnis.

  • Untuk mencegah sistem agar tidak mencoba melakukan peluasan skala secara berlebihan, dan untuk menghindari biaya yang terkait dengan menjalankan ribuan instans, pertimbangkan untuk membatasi jumlah maksimum instans yang dapat ditambahkan secara otomatis. Sebagian besar mekanisme penskalaan otomatis memungkinkan Anda menentukan jumlah minimum dan maksimum instans untuk suatu aturan. Selain itu, pertimbangkan untuk menurunkan fungsionalitas yang disediakan sistem jika jumlah maksimum instans telah disebarkan, dan sistem masih kelebihan beban.

  • Perlu diingat bahwa penskalaan otomatis mungkin bukan mekanisme yang paling tepat untuk menangani lonjakan beban kerja yang tiba-tiba. Dibutuhkan waktu untuk menyediakan dan memulai instans layanan baru atau menambahkan sumber daya ke sistem, dan permintaan puncak mungkin telah berlalu pada saat sumber daya tambahan tersebut telah tersedia. Dalam skenario ini, mungkin lebih baik untuk membatasi layanan. Untuk informasi selengkapnya, lihat Pola pembatasan.

  • Sebaliknya, jika Anda memang membutuhkan kapasitas untuk memproses semua permintaan saat volume berfluktuasi dengan cepat, dan biaya bukanlah faktor penyebab utama, pertimbangkan untuk menggunakan strategi penskalaan otomatis agresif yang memulai instans tambahan lebih cepat. Anda juga dapat menggunakan kebijakan terjadwal yang memulai jumlah instans yang cukup untuk memenuhi beban maksimum sebelum beban tersebut diharapkan.

  • Mekanisme penskalaan otomatis harus memantau proses penskalaan otomatis, dan mencatat detail setiap peristiwa penskalaan otomatis (apa yang memicunya, sumber daya apa yang ditambahkan atau dihapus, dan kapan). Jika Anda membuat mekanisme penskalaan otomatis kustom, pastikan mekanisme tersebut menyertakan kemampuan ini. Analisis informasi untuk membantu mengukur efektivitas strategi penskalaan otomatis, dan sesuaikan jika perlu. Anda dapat menyesuaikan keduanya dalam jangka pendek, ketika pola penggunaan menjadi lebih jelas, dan dalam jangka panjang, ketika bisnis bertambah besar atau persyaratan aplikasi berkembang. Jika aplikasi mencapai batas atas yang ditentukan untuk penskalaan otomatis, mekanisme mungkin juga memperingatkan operator yang dapat memulai sumber daya tambahan secara manual jika diperlukan. Perhatikan bahwa dalam situasi ini, operator mungkin juga bertanggung jawab untuk menghapus sumber daya ini secara manual setelah beban kerja berkurang.

Pola dan panduan berikut mungkin juga relevan dengan skenario Anda saat menerapkan penskalaan otomatis:

  • Pola pembatasan. Pola ini menjelaskan bagaimana aplikasi dapat terus berfungsi dan memenuhi SLA ketika peningkatan permintaan menempatkan beban yang ekstrem pada sumber daya. Pembatasan dapat digunakan dengan penskalaan otomatis untuk mencegah agar sistem tidak kewalahan saat sistem diperluas skalanya.

  • Pola Konsumen yang Bersaing. Pola ini menjelaskan cara mengimplementasikan kumpulan instans layanan yang dapat menangani pesan dari instans aplikasi apa pun. Penskalaan otomatis dapat digunakan untuk memulai dan menghentikan instans layanan agar sesuai dengan beban kerja yang diantisipasi. Pendekatan ini memungkinkan sistem untuk memproses beberapa pesan secara bersamaan untuk mengoptimalkan throughput, meningkatkan skalabilitas dan ketersediaan, serta menyeimbangkan beban kerja.

  • Pemantauan dan diagnostik. Instrumentasi dan telemetri sangat penting untuk mengumpulkan informasi yang dapat mendorong proses penskalaan otomatis.