Menambahkan kebijakan penskalaan otomatis ke klaster DB Amazon Aurora - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menambahkan kebijakan penskalaan otomatis ke klaster DB Amazon Aurora

Anda dapat menambahkan kebijakan penskalaan menggunakan AWS Management Console, Application Auto Scaling AWS CLI, atau Application Auto API Scaling.

catatan

Untuk contoh yang menambahkan kebijakan penskalaan menggunakan AWS CloudFormation, lihat Mendeklarasikan kebijakan penskalaan untuk klaster DB Aurora di Panduan Pengguna.AWS CloudFormation

Anda dapat menambahkan kebijakan penskalaan ke cluster Aurora DB dengan menggunakan. AWS Management Console

Untuk menambahkan kebijakan penskalaan otomatis ke klaster DB Aurora
  1. Masuk ke AWS Management Console dan buka RDS konsol Amazon di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Basis Data.

  3. Pilih klaster DB Aurora yang ingin Anda tambahi kebijakan.

  4. Pilih tab Log & peristiwa.

  5. Pada bagian Kebijakan auto scaling, pilih Tambahkan.

    Kotak dialog Tambahkan kebijakan Auto Scaling muncul.

  6. Untuk Nama Kebijakan, ketik nama kebijakan.

  7. Untuk metrik target, pilih salah satu dari berikut:

    • Rata-rata CPU pemanfaatan Replika Aurora untuk membuat kebijakan berdasarkan pemanfaatan rata-rata. CPU

    • Koneksi rata-rata dari Aurora Replicas untuk membuat kebijakan berdasarkan jumlah koneksi rata-rata ke Replika Aurora.

  8. Untuk nilai target, ketik salah satu dari berikut ini:

    • Jika Anda memilih CPUpenggunaan Rata-rata Replika Aurora pada langkah sebelumnya, ketikkan persentase CPU pemanfaatan yang ingin Anda pertahankan pada Replika Aurora.

    • Jika Anda memilih Koneksi rata-rata dari Aurora Replicas pada langkah sebelumnya, ketik jumlah koneksi yang ingin Anda pertahankan.

    Replika Aurora ditambahkan atau dihapus untuk menjaga metrik tetap mendekati nilai yang ditentukan.

  9. (Opsional) Perluas Konfigurasi Tambahan untuk membuat periode pendinginan penskalaan ke dalam atau ke luar.

  10. Untuk Kapasitas minimum, ketik jumlah minimum Replika Aurora yang diwajibkan oleh kebijakan Aurora Auto Scaling untuk dipertahankan.

  11. Untuk Kapasitas maksimum, ketik jumlah maksimum Replika Aurora yang diwajibkan oleh kebijakan Aurora Auto Scaling untuk dipertahankan.

  12. Pilih Tambahkan kebijakan.

Kotak dialog berikut membuat kebijakan Auto Scaling berdasarkan CPU pemanfaatan rata-rata 40 persen. Kebijakan tersebut menentukan minimum 5 Replika Aurora dan maksimum 15 Replika Aurora.

Membuat kebijakan penskalaan otomatis berdasarkan pemanfaatan rata-rata CPU

Kotak dialog berikut membuat kebijakan penskalaan otomatis berdasarkan penggunaan koneksi rata-rata sebesar 100. Kebijakan tersebut menentukan minimum dua Replika Aurora dan maksimum delapan Replika Aurora.

Membuat kebijakan Penskalaan Otomatis berdasarkan koneksi rata-rata

Anda dapat menerapkan kebijakan penskalaan berdasarkan metrik standar atau kustom. Untuk melakukannya, Anda dapat menggunakan AWS CLI atau Application Auto API Scaling. Langkah pertama adalah untuk mendaftarkan klaster DB Aurora Anda dengan Application Auto Scaling.

Mendaftarkan klaster DB Aurora

Sebelum Anda dapat menggunakan Aurora Auto Scaling dengan klaster DB Aurora, Anda perlu mendaftarkan klaster DB Aurora dengan Application Auto Scaling. Anda melakukannya untuk mendefinisikan dimensi dan batasan penskalaan yang akan diterapkan pada klaster tersebut. Application Auto Scaling menskalakan klaster DB Aurora secara dinamis bersama dengan dimensi rds:cluster:ReadReplicaCount yang dapat diskalakan, yang merepresentasikan jumlah Replika Aurora.

Untuk mendaftarkan cluster Aurora DB Anda, Anda dapat menggunakan Application Auto Scaling AWS CLI atau Application Auto Scaling. API

AWS CLI

Untuk mendaftarkan cluster Aurora DB Anda, gunakan register-scalable-target AWS CLI perintah dengan parameter berikut:

  • --service-namespace – Atur nilai ini ke rds.

  • --resource-id – Pengidentifikasi sumber daya untuk klaster DB Aurora. Untuk parameter ini, jenis sumber dayanya adalah cluster dan pengidentifikasi uniknya adalah nama klaster DB Aurora, misalnya cluster:myscalablecluster.

  • --scalable-dimension – Atur nilai ini ke rds:cluster:ReadReplicaCount.

  • --min-capacity – Jumlah minimum instans DB pembaca yang akan dikelola oleh Application Auto Scaling. Untuk informasi tentang hubungan antara --min-capacity, --max-capacity, dan jumlah instans DB dalam klaster Anda, lihat Kapasitas minimum dan maksimum.

  • --max-capacity – Jumlah maksimum instans DB pembaca yang akan dikelola oleh Application Auto Scaling. Untuk informasi tentang hubungan antara --min-capacity, --max-capacity, dan jumlah instans DB dalam klaster Anda, lihat Kapasitas minimum dan maksimum.

Dalam contoh berikut, Anda mendaftarkan klaster DB Aurora bernama myscalablecluster. Pendaftaran ini menunjukkan bahwa klaster DB harus diskalakan secara dinamis untuk memiliki satu hingga delapan Replika Aurora.

Untuk Linux, macOS, atau Unix:

aws application-autoscaling register-scalable-target \ --service-namespace rds \ --resource-id cluster:myscalablecluster \ --scalable-dimension rds:cluster:ReadReplicaCount \ --min-capacity 1 \ --max-capacity 8 \

Untuk Windows:

aws application-autoscaling register-scalable-target ^ --service-namespace rds ^ --resource-id cluster:myscalablecluster ^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --min-capacity 1 ^ --max-capacity 8 ^

Application Auto Scaling API

Untuk mendaftarkan cluster Aurora DB Anda dengan Application Auto Scaling, gunakan operasi Application Auto RegisterScalableTargetScaling dengan API parameter berikut:

  • ServiceNamespace – Atur nilai ini ke rds.

  • ResourceID – Pengidentifikasi sumber daya untuk klaster DB Aurora. Untuk parameter ini, jenis sumber dayanya adalah cluster dan pengidentifikasi uniknya adalah nama klaster DB Aurora, misalnya cluster:myscalablecluster.

  • ScalableDimension – Atur nilai ini ke rds:cluster:ReadReplicaCount.

  • MinCapacity – Jumlah minimum instans DB pembaca yang akan dikelola oleh Application Auto Scaling. Untuk informasi tentang hubungan antara MinCapacity, MaxCapacity, dan jumlah instans DB dalam klaster Anda, lihat Kapasitas minimum dan maksimum.

  • MaxCapacity – Jumlah maksimum instans DB pembaca yang akan dikelola oleh Application Auto Scaling. Untuk informasi tentang hubungan antara MinCapacity, MaxCapacity, dan jumlah instans DB dalam klaster Anda, lihat Kapasitas minimum dan maksimum.

Dalam contoh berikut, Anda mendaftarkan cluster Aurora DB bernama myscalablecluster dengan Application Auto Scaling. API Pendaftaran ini menunjukkan bahwa klaster DB harus diskalakan secara dinamis untuk memiliki satu hingga delapan Replika Aurora.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.RegisterScalableTarget X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster", "ScalableDimension": "rds:cluster:ReadReplicaCount", "MinCapacity": 1, "MaxCapacity": 8 }

Menetapkan kebijakan penskalaan untuk klaster DB Aurora

Konfigurasi kebijakan penskalaan pelacakan target diwakili oleh JSON blok tempat metrik dan nilai target ditentukan. Anda dapat menyimpan konfigurasi kebijakan penskalaan sebagai JSON blok dalam file teks. Anda menggunakan file teks tersebut saat menjalankan AWS CLI atau Application Auto API Scaling. Untuk informasi selengkapnya tentang sintaks konfigurasi kebijakan, lihat TargetTrackingScalingPolicyConfigurationdi Referensi APIPenskalaan Otomatis Aplikasi.

Opsi berikut tersedia untuk menetapkan konfigurasi kebijakan penskalaan pelacakan target.

Menggunakan metrik standar

Dengan menggunakan metrik standar, Anda dapat dengan cepat menentukan kebijakan penskalaan pelacakan target untuk klaster DB Aurora yang berfungsi baik, dengan pelacakan target dan penskalaan dinamis dalam Aurora Auto Scaling.

Saat ini, Aurora mendukung metrik standar berikut dalam Aurora Auto Scaling:

  • RDSReaderAverageCPUUtilization— Nilai rata-rata CPUUtilization metrik di CloudWatch seluruh Replika Aurora di cluster Aurora DB.

  • RDSReaderAverageDatabaseConnections— Nilai rata-rata DatabaseConnections metrik di CloudWatch seluruh Replika Aurora di cluster Aurora DB.

Untuk informasi selengkapnya tentang metrik CPUUtilization dan DatabaseConnections, lihat CloudWatch Metrik Amazon untuk Amazon Aurora.

Untuk menggunakan metrik standar dalam kebijakan penskalaan, Anda membuat konfigurasi pelacakan target untuk kebijakan penskalaan Anda. Konfigurasi ini harus menyertakan PredefinedMetricSpecification untuk metrik yang sudah ditentukan sebelumnya dan TargetValue untuk nilai target metrik tersebut.

contoh

Contoh berikut menjelaskan konfigurasi kebijakan umum untuk penskalaan pelacakan target untuk klaster DB Aurora. Dalam konfigurasi ini, metrik yang RDSReaderAverageCPUUtilization telah ditentukan digunakan untuk menyesuaikan cluster Aurora DB berdasarkan pemanfaatan CPU rata-rata 40 persen di semua Replika Aurora.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } }

Menggunakan metrik khusus

Dengan menggunakan metrik kustom, Anda dapat menentukan kebijakan penskalaan pelacakan target yang memenuhi persyaratan kustom Anda. Anda dapat menentukan metrik kustom berdasarkan metrik Aurora apa pun yang berubah secara berbanding lurus dengan penskalaan.

Tidak semua metrik Aurora berfungsi untuk pelacakan target. Metrik harus berupa metrik pemanfaatan yang valid dan menjelaskan tingkat kesibukan sebuah instans. Nilai metrik harus meningkat atau menurun secara berbanding lurus dengan jumlah Replika Aurora dalam klaster DB Aurora. Peningkatan atau penurunan proporsional ini diperlukan untuk menggunakan data metrik untuk menskalakan ke luar atau ke dalam jumlah Replika Aurora secara proporsional.

contoh

Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik khusus menyesuaikan cluster Aurora DB berdasarkan pemanfaatan CPU rata-rata 50 persen di semua Replika Aurora dalam cluster Aurora DB bernama. my-db-cluster

{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "CPUUtilization", "Namespace": "AWS/RDS", "Dimensions": [ {"Name": "DBClusterIdentifier","Value": "my-db-cluster"}, {"Name": "Role","Value": "READER"} ], "Statistic": "Average", "Unit": "Percent" } }

Menggunakan periode pendinginan

Anda dapat menentukan nilai, dalam detik, untuk ScaleOutCooldown guna menambahkan periode pendinginan untuk menskalakan ke luar klaster DB Aurora Anda. Demikian pula, Anda dapat menentukan nilai, dalam detik, untuk ScaleInCooldown guna menambahkan periode pendinginan untuk menskalakan ke dalam klaster DB Aurora Anda. Untuk informasi selengkapnya tentang ScaleInCooldown danScaleOutCooldown, lihat TargetTrackingScalingPolicyConfigurationdi Referensi Application Auto Scaling. API

Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik yang RDSReaderAverageCPUUtilization telah ditentukan digunakan untuk menyesuaikan cluster Aurora DB berdasarkan pemanfaatan CPU rata-rata 40 persen di semua Replika Aurora di cluster Aurora DB itu. Konfigurasi ini menyediakan periode pendinginan penskalaan ke dalam selama 10 menit dan periode pendinginan penskalaan ke luar selama 5 menit.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }

Menonaktifkan aktivitas penskalaan ke dalam

Anda dapat mencegah konfigurasi kebijakan penskalaan pelacakan target agar tidak menskalakan klaster DB Aurora ke dalam dengan menonaktifkan aktivitas penskalaan ke dalam. Menonaktifkan aktivitas penskalaan ke dalam akan mencegah kebijakan penskalaan menghapus Replika Aurora, tetapi masih memungkinkan kebijakan penskalaan membuat Replika Aurora sesuai kebutuhan.

Anda dapat menentukan nilai Boolean untuk DisableScaleIn guna mengaktifkan atau menonaktifkan aktivitas penskalaan ke dalam untuk klaster DB Aurora Anda. Untuk informasi selengkapnyaDisableScaleIn, lihat TargetTrackingScalingPolicyConfigurationdi Referensi Application Auto Scaling. API

Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik yang RDSReaderAverageCPUUtilization telah ditentukan menyesuaikan cluster Aurora DB berdasarkan CPU pemanfaatan rata-rata 40 persen di semua Replika Aurora di cluster Aurora DB itu. Konfigurasi ini menonaktifkan aktivitas skala masuk untuk kebijakan penskalaan.

{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" }, "DisableScaleIn": true }

Menerapkan kebijakan penskalaan untuk klaster DB Aurora

Setelah mendaftarkan klaster DB Aurora Anda dengan Application Auto Scaling dan menentukan kebijakan penskalaan, Anda perlu menerapkan kebijakan penskalaan ini ke klaster DB Aurora yang terdaftar. Untuk menerapkan kebijakan penskalaan ke klaster Aurora DB, Anda dapat menggunakan Application Auto Scaling atau AWS CLI Application Auto Scaling. API

Untuk menerapkan kebijakan penskalaan ke cluster Aurora DB Anda, gunakan put-scaling-policy AWS CLI perintah dengan parameter berikut:

  • --policy-name – Nama kebijakan penskalaan.

  • --policy-type – Atur nilai ini ke TargetTrackingScaling.

  • --resource-id – Pengidentifikasi sumber daya untuk klaster DB Aurora. Untuk parameter ini, jenis sumber dayanya adalah cluster dan pengidentifikasi uniknya adalah nama klaster DB Aurora, misalnya cluster:myscalablecluster.

  • --service-namespace – Atur nilai ini ke rds.

  • --scalable-dimension – Atur nilai ini ke rds:cluster:ReadReplicaCount.

  • --target-tracking-scaling-policy-configuration – Konfigurasi kebijakan penskalaan pelacakan target untuk digunakan pada klaster DB Aurora.

Dalam contoh berikut, Anda menerapkan kebijakan penskalaan pelacakan target yang disebut myscalablepolicy ke klaster DB Aurora bernama myscalablecluster dengan Application Auto Scaling. Untuk melakukannya, Anda menggunakan konfigurasi kebijakan yang disimpan dalam file bernama config.json.

Untuk Linux, macOS, atau Unix:

aws application-autoscaling put-scaling-policy \ --policy-name myscalablepolicy \ --policy-type TargetTrackingScaling \ --resource-id cluster:myscalablecluster \ --service-namespace rds \ --scalable-dimension rds:cluster:ReadReplicaCount \ --target-tracking-scaling-policy-configuration file://config.json

Untuk Windows:

aws application-autoscaling put-scaling-policy ^ --policy-name myscalablepolicy ^ --policy-type TargetTrackingScaling ^ --resource-id cluster:myscalablecluster ^ --service-namespace rds ^ --scalable-dimension rds:cluster:ReadReplicaCount ^ --target-tracking-scaling-policy-configuration file://config.json

Untuk menerapkan kebijakan penskalaan ke cluster Aurora DB Anda dengan Application API Auto Scaling, gunakan operasi Application PutScalingPolicyAuto Scaling dengan API parameter berikut:

  • PolicyName – Nama kebijakan penskalaan.

  • ServiceNamespace – Atur nilai ini ke rds.

  • ResourceID – Pengidentifikasi sumber daya untuk klaster DB Aurora. Untuk parameter ini, jenis sumber dayanya adalah cluster dan pengidentifikasi uniknya adalah nama klaster DB Aurora, misalnya cluster:myscalablecluster.

  • ScalableDimension – Atur nilai ini ke rds:cluster:ReadReplicaCount.

  • PolicyType – Atur nilai ini ke TargetTrackingScaling.

  • TargetTrackingScalingPolicyConfiguration – Konfigurasi kebijakan penskalaan pelacakan target untuk digunakan pada klaster DB Aurora.

Dalam contoh berikut, Anda menerapkan kebijakan penskalaan pelacakan target yang disebut myscalablepolicy ke klaster DB Aurora bernama myscalablecluster dengan Application Auto Scaling. Anda menggunakan konfigurasi kebijakan berdasarkan pada metrik standar RDSReaderAverageCPUUtilization.

POST / HTTP/1.1 Host: autoscaling.us-east-2.amazonaws.com Accept-Encoding: identity Content-Length: 219 X-Amz-Target: AnyScaleFrontendService.PutScalingPolicy X-Amz-Date: 20160506T182145Z User-Agent: aws-cli/1.10.23 Python/2.7.11 Darwin/15.4.0 botocore/1.4.8 Content-Type: application/x-amz-json-1.1 Authorization: AUTHPARAMS { "PolicyName": "myscalablepolicy", "ServiceNamespace": "rds", "ResourceId": "cluster:myscalablecluster", "ScalableDimension": "rds:cluster:ReadReplicaCount", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "RDSReaderAverageCPUUtilization" } } }