Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menetapkan kebijakan penskalaan
Konfigurasi kebijakan penskalaan pelacakan target diwakili oleh blok JSON yang menetapkan metrik dan nilai target. Anda dapat menyimpan konfigurasi kebijakan penskalaan sebagai blok JSON dalam file teks. Anda menggunakan file teks tersebut saat memicu AWS CLI atau Application Auto Scaling API. Untuk informasi lebih lanjut tentang sintaks konfigurasi kebijakan, lihat TargetTrackingScalingPolicyConfigurationdalam Referensi API Application Auto Scaling.
Opsi berikut tersedia untuk menetapkan konfigurasi kebijakan penskalaan pelacakan target:
Topik
Menggunakan metrik yang sudah ditentukan sebelumnya
Dengan menggunakan metrik yang telah ditetapkan sebelumnya, Anda dapat dengan cepat menentukan kebijakan penskalaan pelacakan target untuk klaster ElastiCache for Redis yang bekerja dengan pelacakan target untuk Auto Scaling. ElastiCache
Saat ini, ElastiCache untuk Redis mendukung metrik yang telah ditetapkan sebelumnya berikut dalam NodeGroup Redis Auto ElastiCache Scaling:
ElastiCachePrimaryEngineCPUUtilization - Nilai rata-rata
EngineCPUUtilization
metrik di CloudWatch seluruh node utama di cluster ElastiCache for Redis.ElastiCacheDatabaseMemoryUsageCountedForEvictPercentage- Nilai rata-rata
DatabaseMemoryUsageCountedForEvictPercentage
metrik CloudWatch di semua node utama di cluster ElastiCache for Redis.ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage- Nilai rata-rata
ElastiCacheDatabaseCapacityUsageCountedForEvictPercentage
metrik CloudWatch di semua node utama di cluster ElastiCache for Redis.
Untuk informasi selengkapnya tentangEngineCPUUtilization
, DatabaseMemoryUsageCountedForEvictPercentage
dan DatabaseCapacityUsageCountedForEvictPercentage
metrik, lihatPemantauan penggunaan dengan CloudWatch Metrik. Untuk menggunakan metrik yang sudah ditentukan sebelumnya 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 berikut menjelaskan konfigurasi kebijakan umum untuk penskalaan pelacakan target untuk klaster untuk Redis. ElastiCache Dalam konfigurasi ini, metrik ElastiCachePrimaryEngineCPUUtilization
yang telah ditetapkan sebelumnya digunakan ElastiCache untuk menyesuaikan klaster Redis berdasarkan penggunaan CPU rata-rata sebesar 40 persen di seluruh node utama dalam klaster.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" } }
Menggunakan metrik khusus
Dengan menggunakan metrik khusus, Anda dapat menentukan kebijakan penskalaan pelacakan target yang memenuhi persyaratan kustom Anda. Anda dapat menentukan metrik kustom berdasarkan metrik Elasticache apa pun yang berubah proporsinya terhadap penskalaan. Tidak semua ElastiCache metrik berfungsi untuk pelacakan target. Metrik harus berupa metrik penggunaan yang valid dan menjelaskan seberapa sibuk suatu instans. Nilai metrik harus meningkat atau menurun proporsinya terhadap jumlah Pecahan dalam klaster. Peningkatan atau penurunan proporsional ini diperlukan untuk menggunakan data metrik untuk menskalakan keluar atau masuk jumlah pecahan.
Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik kustom menyesuaikan klaster ElastiCache untuk Redis berdasarkan penggunaan CPU rata-rata sebesar 50 persen di seluruh pecahan dalam klaster bernama. my-db-cluster
{ "TargetValue": 50, "CustomizedMetricSpecification": { "MetricName": "EngineCPUUtilization", "Namespace": "AWS/ElastiCache", "Dimensions": [ { "Name": "RelicationGroup","Value": "my-db-cluster" }, { "Name": "Role","Value": "PRIMARY" } ], "Statistic": "Average", "Unit": "Percent" } }
Menggunakan periode jeda pakai
Anda dapat menentukan nilai, dalam detik, untuk menambahkan periode ScaleOutCooldown
jeda pakai untuk menskalakan keluar klaster Anda. Demikian pula, Anda dapat menentukan nilai, dalam detik, ScaleInCooldown
untuk menambahkan periode jeda pakai untuk menskalakan masuk klaster Anda. Untuk informasi lebih lanjut, lihat TargetTrackingScalingPolicyConfigurationdalam Referensi API Application Auto Scaling.
Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik ElastiCachePrimaryEngineCPUUtilization
yang telah ditetapkan sebelumnya digunakan untuk menyesuaikan klaster Redis berdasarkan penggunaan CPU rata-rata sebesar 40 persen di seluruh node utama dalam klaster tersebut. ElastiCache Konfigurasi ini menyediakan periode jeda pakai skala masuk selama 10 menit dan periode jeda pakai skala keluar selama 5 menit.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" }, "ScaleInCooldown": 600, "ScaleOutCooldown": 300 }
Menonaktifkan aktivitas skala masuk
Anda dapat mencegah konfigurasi kebijakan penskalaan pelacakan target dari penskalaan dalam klaster ElastiCache for Redis dengan menonaktifkan aktivitas skala masuk. Menonaktifkan aktivitas skala masuk mencegah kebijakan penskalaan menghapus pecahan, namun masih memungkinkan kebijakan penskalaan untuk membuatnya sesuai kebutuhan.
Anda dapat menentukan nilai Boolean DisableScaleIn
untuk mengaktifkan atau menonaktifkan skala dalam aktivitas untuk klaster Anda. Untuk informasi lebih lanjut, lihat TargetTrackingScalingPolicyConfigurationdalam Referensi API Application Auto Scaling.
Contoh berikut menjelaskan konfigurasi pelacakan target untuk kebijakan penskalaan. Dalam konfigurasi ini, metrik yang ElastiCachePrimaryEngineCPUUtilization
telah ditetapkan sebelumnya, metrik yang ElastiCache telah ditetapkan sebelumnya, metrik yang telah ditetapkan sebelumnya, metrik yang telah ditetapkan sebelumnya, metrik yang telah ditetapkan sebelumnya. Konfigurasi ini menonaktifkan aktivitas skala masuk untuk kebijakan penskalaan.
{ "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" }, "DisableScaleIn": true }
Menerapkan kebijakan penskalaan
Setelah mendaftarkan klaster Anda ElastiCache untuk Redis auto scaling dan menentukan kebijakan penskalaan, Anda menerapkan kebijakan penskalaan untuk klaster terdaftar. Untuk menerapkan kebijakan penskalaan untuk klaster Redis, Anda dapat menggunakan AWS CLI atau Application Auto Scaling API. ElastiCache
Menerapkan kebijakan penskalaan menggunakan AWS CLI
Untuk menerapkan kebijakan penskalaan ElastiCache untuk klaster Redis Anda, gunakan put-scaling-policyperintah dengan parameter berikut:
Nama policy-name — Nama kebijakan penskalaan.
--policy-type - Tetapkan nilai ini ke.
TargetTrackingScaling
----resource-id — Pengidentifikasi sumber daya untuk Redis. ElastiCache Untuk parameter ini, jenis sumber daya adalah
ReplicationGroup
dan identifier unik adalah nama ElastiCache untuk Redis cluster, misalnya.replication-group/myscalablecluster
-service-namespace — Atur nilai ini ke.
elasticache
-scalable-dimension — Atur nilai ini ke.
elasticache:replication-group:NodeGroups
- target-tracking-scaling-policy -configuration — Konfigurasi kebijakan penskalaan pelacakan target untuk digunakan pada klaster Redis. ElastiCache
Dalam contoh berikut, Anda menerapkan kebijakan penskalaan pelacakan target yang disebut pada klaster untuk Redis bernama dengan myscalablepolicy
ElastiCache untuk penskalaan auto Redis. myscalablecluster
ElastiCache 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 replication-group/myscalablecluster \ --service-namespace elasticache \ --scalable-dimension elasticache:replication-group:NodeGroups \ --target-tracking-scaling-policy-configuration file://config.json
Untuk Windows:
aws application-autoscaling put-scaling-policy ^ --policy-name myscalablepolicy ^ --policy-type TargetTrackingScaling ^ --resource-id replication-group/myscalablecluster ^ --service-namespace elasticache ^ --scalable-dimension elasticache:replication-group:NodeGroups ^ --target-tracking-scaling-policy-configuration file://config.json
Menerapkan kebijakan penskalaan menggunakan API
Untuk menerapkan kebijakan penskalaan ke klaster ElastiCache for Redis Anda, gunakan PutScalingPolicyAWS CLIperintah dengan parameter berikut:
Nama policy-name — Nama kebijakan penskalaan.
----resource-id — Pengidentifikasi sumber daya untuk Redis. ElastiCache Untuk parameter ini, jenis sumber daya adalah
ReplicationGroup
dan identifier unik adalah nama ElastiCache untuk Redis cluster, misalnya.replication-group/myscalablecluster
-service-namespace — Atur nilai ini ke.
elasticache
-scalable-dimension — Atur nilai ini ke.
elasticache:replication-group:NodeGroups
- target-tracking-scaling-policy -configuration — Konfigurasi kebijakan penskalaan pelacakan target untuk digunakan pada klaster Redis. ElastiCache
Dalam contoh berikut, Anda menerapkan kebijakan penskalaan pelacakan target yang disebut pada klaster untuk Redis bernama dengan myscalablepolicy
ElastiCache untuk penskalaan auto Redis. myscalablecluster
ElastiCache Anda menggunakan konfigurasi kebijakan berdasarkan pada metrik ElastiCachePrimaryEngineCPUUtilization
yang ditetapkan sebelumnya.
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": "elasticache", "ResourceId": "replication-group/myscalablecluster", "ScalableDimension": "elasticache:replication-group:NodeGroups", "PolicyType": "TargetTrackingScaling", "TargetTrackingScalingPolicyConfiguration": { "TargetValue": 40.0, "PredefinedMetricSpecification": { "PredefinedMetricType": "ElastiCachePrimaryEngineCPUUtilization" } } }