

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

# Penskalaan otomatis lebih cepat dengan metrik resolusi tinggi
<a name="target-tracking-faster-auto-scaling"></a>

Secara default, Amazon ECS menerbitkan `CPUUtilization` dan `MemoryUtilization` metrik pada resolusi 60 detik. Anda dapat mengonfigurasi resolusi 20 detik untuk mendorong penskalaan otomatis servis yang lebih cepat.

Metrik standar resolusi tinggi berikut tersedia untuk kebijakan penskalaan pelacakan target:


| PredefinedMetricType | Deskripsi | 
| --- | --- | 
| ECSServiceAverageCPUUtilizationHighResolution | Pemanfaatan CPU rata-rata pada resolusi 20 detik | 
| ECSServiceAverageMemoryUtilizationHighResolution | Pemanfaatan memori rata-rata pada resolusi 20 detik | 

## Buat layanan baru dengan metrik resolusi tinggi untuk penskalaan otomatis yang lebih cepat
<a name="faster-auto-scaling-create-service"></a>

### Konsol
<a name="faster-auto-scaling-create-service-console"></a>

1. Pada halaman **Clusters**, pilih cluster tempat Anda ingin membuat layanan.

1. Di bagian **Layanan**, pilih **Buat**.

1. Dalam formulir Buat Layanan, di bagian **Konfigurasi pemantauan**, pilih **Tambahkan konfigurasi metrik**.

1. Untuk **nama Metrik**, pilih metrik yang ingin Anda kumpulkan pada resolusi tinggi. Pilih `CPUUtilization` atau`MemoryUtilization`.

1. Untuk **Resolusi (detik)**, pilih **20**.

1. (Opsional) Untuk menambahkan kedua metrik pada resolusi tinggi, pilih **Tambahkan konfigurasi metrik** lagi dan ulangi dua langkah sebelumnya untuk metrik lainnya.

1. Di bagian **Penskalaan otomatis layanan**, pilih **Gunakan penskalaan otomatis layanan**.

1. Untuk **Jumlah tugas minimum**, masukkan batas bawah jumlah tugas untuk penskalaan otomatis servis yang akan digunakan. Hitungan yang diinginkan tidak akan berada di bawah hitungan ini.

1. Untuk **Jumlah tugas maksimum**, masukkan batas atas jumlah tugas untuk penskalaan otomatis servis yang akan digunakan. Hitungan yang diinginkan tidak akan melebihi hitungan ini.

1. Untuk **Jenis kebijakan penskalaan**, pilih **Pelacakan target**.

1. Untuk **jenis Metrik**, pilih metrik resolusi tinggi yang sesuai. Misalnya, pilih `ECSServiceAverageCPUUtilizationHighResolution` apakah Anda mengonfigurasi `CPUUtilization` pada resolusi 20 detik, atau `ECSServiceAverageMemoryUtilizationHighResolution` jika Anda mengonfigurasi `MemoryUtilization` pada resolusi 20 detik.

1. Untuk **nilai Target**, masukkan persentase pemanfaatan target. Service auto scaling meningkatkan kapasitas Anda hingga pemanfaatan rata-rata berada pada nilai target, atau hingga mencapai jumlah maksimum tugas yang Anda tentukan.

1. Di bawah **Pengaturan Tambahan**, konfigurasikan hal berikut:

   1. Untuk **periode Scale-out cooldown**, masukkan jumlah waktu dalam hitungan detik untuk menunggu aktivitas scale-out sebelumnya berlaku.

   1. Untuk **periode Scale-in cooldown**, masukkan jumlah waktu dalam hitungan detik setelah aktivitas scale-in selesai sebelum aktivitas scale-in lainnya dapat dimulai.

1. Pilih **Buat** untuk membuat layanan.

### AWS CLI
<a name="faster-auto-scaling-create-service-cli"></a>

1. Buat layanan dengan konfigurasi pemantauan menggunakan perintah [create-service](https://docs.aws.amazon.com/cli/latest/reference/ecs/create-service.html).

   ```
   aws ecs create-service --region {{us-east-1}} \
       --cluster {{my-cluster}} \
       --service-name {{my-service}} \
       --task-definition {{my-app:1}} \
       --desired-count 2 \
       --monitoring "metricConfigurations=[{metricNames=[CPUUtilization,MemoryUtilization],resolutionSeconds=20}]"
   ```

1. Daftarkan layanan sebagai target yang dapat diskalakan menggunakan perintah [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html).

   ```
   aws application-autoscaling register-scalable-target \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --min-capacity {{1}} \
       --max-capacity {{10}} \
       --region {{us-east-1}}
   ```

1. [Buat kebijakan penskalaan pelacakan target dengan metrik standar resolusi tinggi menggunakan perintah put-scaling-policy.](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html)

   ```
   aws application-autoscaling put-scaling-policy \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --policy-name {{my-highres-cpu-policy}} \
       --policy-type TargetTrackingScaling \
       --target-tracking-scaling-policy-configuration '{
           "TargetValue": {{50.0}},
           "PredefinedMetricSpecification": {
               "PredefinedMetricType": "ECSServiceAverageCPUUtilizationHighResolution"
           }
       }' \
       --region {{us-east-1}}
   ```

1. Verifikasi kebijakan dibuat menggunakan [perintah describe-scaling-policies](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/describe-scaling-policies.html).

   ```
   aws application-autoscaling describe-scaling-policies \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --region {{us-east-1}}
   ```

## Memperbarui layanan yang ada untuk menggunakan metrik resolusi tinggi untuk penskalaan otomatis yang lebih cepat
<a name="faster-auto-scaling-update-service"></a>

Memperbarui layanan yang ada untuk menggunakan metrik resolusi tinggi untuk penskalaan otomatis layanan yang lebih cepat adalah proses dua langkah. Anda harus terlebih dahulu memperbarui resolusi pemantauan, yang memicu penyebaran layanan. Setelah penerapan berhasil diselesaikan dan semua tugas memancarkan metrik pada resolusi 20 detik, Anda kemudian dapat mengonfigurasi kebijakan penskalaan resolusi tinggi.

**penting**  
Jika layanan Anda sebelumnya menggunakan resolusi metrik 60 detik, metrik resolusi tinggi untuk kebijakan penskalaan hanya akan tersedia di konsol Amazon ECS setelah Anda memperbarui layanan untuk menggunakan resolusi metrik 20 detik dan penerapan layanan selesai.

### Konsol
<a name="faster-auto-scaling-update-service-console"></a>

**Langkah 1: Perbarui resolusi pemantauan**  


1. Pada halaman **Clusters**, pilih cluster yang berisi layanan yang ingin Anda perbarui.

1. Di bagian **Layanan**, pilih layanan dan pilih **Perbarui**.

1. Dalam formulir Perbarui Layanan, di bagian **Konfigurasi pemantauan**, pilih **Tambahkan konfigurasi metrik**.

1. Untuk **nama Metrik**, pilih metrik yang ingin Anda kumpulkan pada resolusi tinggi. Pilih `CPUUtilization` atau`MemoryUtilization`.

1. Untuk **Resolusi (detik)**, pilih **20**.

1. (Opsional) Untuk menambahkan kedua metrik pada resolusi tinggi, pilih **Tambahkan konfigurasi metrik** lagi dan ulangi dua langkah sebelumnya untuk metrik lainnya.

1. Pilih **Perbarui** untuk mengirimkan perubahan. Ini memicu penyebaran layanan.

1. Tunggu hingga penerapan selesai. Anda dapat memantau kemajuan pada halaman detail layanan di tab **Deployment.**
**catatan**  
Opsi metrik penskalaan resolusi tinggi berwarna abu-abu di bagian penskalaan otomatis layanan hingga penerapan berhasil dan semua tugas dipancarkan pada resolusi 20 detik.

**Langkah 2: Konfigurasikan kebijakan penskalaan resolusi tinggi**  


Setelah penerapan selesai, konfigurasikan kebijakan penskalaan menggunakan salah satu metode berikut:

Opsi A: Halaman detail Layanan  

1. Pada halaman detail layanan, pilih tab **Penskalaan otomatis layanan**.

1. Pilih **Buat kebijakan penskalaan** (atau edit kebijakan yang ada).

1. Untuk **Jenis kebijakan penskalaan**, pilih **Pelacakan target**.

1. Untuk **jenis Metrik**, pilih metrik resolusi tinggi. Misalnya, `ECSServiceAverageCPUUtilizationHighResolution` atau `ECSServiceAverageMemoryUtilizationHighResolution`.

1. Untuk **nilai Target**, masukkan persentase pemanfaatan target.

1. Di bawah **Pengaturan Tambahan**, konfigurasikan hal berikut:

   1. Untuk **periode Scale-out cooldown**, masukkan jumlah waktu dalam hitungan detik untuk menunggu aktivitas scale-out sebelumnya berlaku.

   1. Untuk **periode Scale-in cooldown**, masukkan jumlah waktu dalam hitungan detik setelah aktivitas scale-in selesai sebelum aktivitas scale-in lainnya dapat dimulai.

1. Pilih **Buat kebijakan penskalaan**.

Opsi B: Perbarui formulir Layanan  

1. Pada halaman detail layanan, pilih **Perbarui**.

1. Di bagian **Penskalaan otomatis layanan**, pilih **Gunakan penskalaan otomatis layanan** (jika belum diaktifkan).

1. Untuk **Jumlah tugas minimum**, masukkan batas bawah.

1. Untuk **Jumlah tugas maksimum**, masukkan batas atas.

1. Untuk **Jenis kebijakan penskalaan**, pilih **Pelacakan target**.

1. Untuk **jenis Metrik**, pilih metrik resolusi tinggi (sekarang diaktifkan setelah penerapan selesai).

1. Untuk **nilai Target**, masukkan persentase pemanfaatan target.

1. Di bawah **Pengaturan Tambahan**, atur periode **Scale-out cooldown dan periode Scale-in ** **cooldown.**

1. Pilih **Perbarui** untuk mengirimkan perubahan.

### AWS CLI
<a name="faster-auto-scaling-update-service-cli"></a>

**Langkah 1: Perbarui resolusi pemantauan**  


1. Perbarui layanan dengan konfigurasi pemantauan menggunakan perintah [update-service](https://docs.aws.amazon.com/cli/latest/reference/ecs/update-service.html).

   ```
   aws ecs update-service --region {{us-east-1}} \
       --cluster {{my-cluster}} \
       --service {{my-service}} \
       --monitoring "metricConfigurations=[{metricNames=[CPUUtilization,MemoryUtilization],resolutionSeconds=20}]"
   ```

1. Tunggu hingga penerapan selesai. Anda dapat memantau kemajuan menggunakan [perintah deskripsi-layanan](https://docs.aws.amazon.com/cli/latest/reference/ecs/describe-services.html) dan memeriksa status penerapan.

   ```
   aws ecs describe-services --region {{us-east-1}} \
       --cluster {{my-cluster}} \
       --services {{my-service}}
   ```

1. Setelah penerapan selesai, verifikasi konfigurasi pemantauan aktif dengan menjelaskan revisi layanan. Dapatkan ARN revisi layanan aktif dari output, `describe-services` lalu jalankan:

   ```
   aws ecs describe-service-revisions --region {{us-east-1}} \
       --service-revision-arns {{arn:aws:ecs:us-east-1:012345678910:service-revision/my-cluster/my-service/1234567890123456789}}
   ```

   Konfirmasikan konfigurasi pemantauan muncul dalam respons:

   ```
   {
       "serviceRevisions": [
           {
               ...
               "monitoring": {
                   "metricConfigurations": [
                       {
                           "metricNames": ["CPUUtilization", "MemoryUtilization"],
                           "resolutionSeconds": 20
                       }
                   ]
               }
           }
       ]
   }
   ```

**Langkah 2: Konfigurasikan kebijakan penskalaan resolusi tinggi**  


1. Daftarkan layanan sebagai target yang dapat diskalakan jika belum terdaftar, menggunakan perintah [register-scalable-target](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/register-scalable-target.html).

   ```
   aws application-autoscaling register-scalable-target \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --min-capacity {{1}} \
       --max-capacity {{10}} \
       --region {{us-east-1}}
   ```

1. [Buat kebijakan penskalaan pelacakan target dengan metrik standar resolusi tinggi menggunakan perintah put-scaling-policy.](https://docs.aws.amazon.com/cli/latest/reference/application-autoscaling/put-scaling-policy.html) Contoh berikut menargetkan 50% pemanfaatan CPU:

   ```
   aws application-autoscaling put-scaling-policy \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --policy-name {{my-highres-cpu-policy}} \
       --policy-type TargetTrackingScaling \
       --target-tracking-scaling-policy-configuration '{
           "TargetValue": {{50.0}},
           "PredefinedMetricSpecification": {
               "PredefinedMetricType": "ECSServiceAverageCPUUtilizationHighResolution"
           }
       }' \
       --region {{us-east-1}}
   ```

1. Verifikasi kebijakan telah dibuat:

   ```
   aws application-autoscaling describe-scaling-policies \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --region {{us-east-1}}
   ```

## Validasi penskalaan otomatis servis yang lebih cepat
<a name="faster-auto-scaling-validate"></a>

**Bagian 1: Verifikasi metrik resolusi tinggi dipublikasikan**  


1. Arahkan ke CloudWatch konsol.

1. Di panel navigasi, pilih **Metrik**, lalu pilih **Semua** metrik.

1. Pilih **AWS/ECS**namespace.

1. Pilih **ClusterName, ServiceName**.

1. Temukan `CPUUtilization` dan `MemoryUtilization` metrik untuk layanan Anda.

1. Atur periode menjadi **20 detik**. Anda akan melihat titik data pada interval 20 detik, mengonfirmasi bahwa metrik resolusi tinggi aktif.

**Bagian 2: Verifikasi kebijakan penskalaan menggunakan metrik resolusi tinggi**  


1. Pada halaman detail layanan, pilih tab **Penskalaan otomatis layanan**.

1. Lihat kebijakan penskalaan yang ada dan konfirmasikan bahwa metrik disetel ke varian resolusi tinggi (`ECSServiceAverageCPUUtilizationHighResolution`atau`ECSServiceAverageMemoryUtilizationHighResolution`).

1. Atau, verifikasi menggunakan CLI:

   ```
   aws application-autoscaling describe-scaling-policies \
       --service-namespace ecs \
       --resource-id service/{{my-cluster}}/{{my-service}} \
       --scalable-dimension ecs:service:DesiredCount \
       --region {{us-east-1}}
   ```

   Konfirmasikan `PredefinedMetricType` dalam respons diatur ke metrik resolusi tinggi.

## Pertimbangan-pertimbangan
<a name="faster-auto-scaling-considerations"></a>
+ Perubahan konfigurasi pemantauan membuat revisi layanan baru dan memerlukan penyebaran layanan. Metrik penskalaan resolusi tinggi tidak tersedia sampai penerapan selesai dan semua tugas dipancarkan pada resolusi 20 detik.
+ High-resolution metrik didukung untuk layanan menggunakan Application Load Balancers dan Network Load Balancers. Layanan yang menggunakan Classic Load Balancer tanpa grup target tidak didukung.
+ High-resolution metrik tidak didukung untuk layanan yang menggunakan jenis pengontrol `CODE_DEPLOY` atau `EXTERNAL` penyebaran.
+ Anda dapat melihat konfigurasi pemantauan untuk layanan Anda menggunakan`DescribeServiceRevisions`. Konfigurasi pemantauan tidak dikembalikan `CreateService` atau `UpdateService` tanggapan.