

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

# Kebijakan penskalaan pelacakan target untuk Amazon EC2 Auto Scaling
<a name="as-scaling-target-tracking"></a>

Kebijakan penskalaan pelacakan target secara otomatis menskalakan kapasitas grup Auto Scaling Anda berdasarkan nilai metrik target. Secara otomatis menyesuaikan dengan pola penggunaan unik dari aplikasi individual Anda. Hal ini memungkinkan aplikasi Anda mempertahankan kinerja optimal dan pemanfaatan tinggi untuk instans EC2 Anda untuk efisiensi biaya yang lebih baik tanpa intervensi manual.

Dengan pelacakan target, Anda memilih metrik dan nilai target untuk mewakili tingkat pemanfaatan atau throughput rata-rata yang ideal untuk aplikasi Anda. Amazon EC2 Auto Scaling membuat dan CloudWatch mengelola alarm yang memanggil peristiwa penskalaan saat metrik menyimpang dari target. Sebagai contoh, ini mirip dengan bagaimana termostat mempertahankan suhu target.

Misalnya, katakanlah Anda saat ini memiliki aplikasi yang berjalan pada dua instance, dan Anda ingin pemanfaatan CPU dari grup Auto Scaling tetap sekitar 50 persen saat beban pada aplikasi berubah. Ini memberi Anda kapasitas ekstra untuk menangani lonjakan lalu lintas tanpa mempertahankan jumlah berlebih dari sumber daya yang tidak aktif. 

Anda dapat memenuhi kebutuhan ini dengan membuat kebijakan penskalaan pelacakan target yang menargetkan pemanfaatan CPU rata-rata 50 persen. Kemudian, grup Auto Scaling Anda akan meningkatkan skala, atau meningkatkan kapasitas, ketika CPU melebihi 50 persen untuk menangani peningkatan beban. Ini akan menskalakan, atau mengurangi kapasitas, ketika CPU turun di bawah 50 persen untuk mengoptimalkan biaya selama periode pemanfaatan rendah.

**Topics**
+ [Beberapa kebijakan penskalaan pelacakan target](#target-tracking-multiple-policies)
+ [Pilih metrik](#target-tracking-choose-metrics)
+ [Tentukan nilai target](#target-tracking-define-target-value)
+ [Tentukan waktu pemanasan instance](#as-target-tracking-scaling-warmup)
+ [Pertimbangan-pertimbangan](#target-tracking-considerations)
+ [Buat kebijakan penskalaan pelacakan target](policy_creating.md)
+ [Membuat kebijakan pelacakan target menggunakan metrik resolusi tinggi untuk respons yang lebih cepat](policy-creating-high-resolution-metrics.md)
+ [Buat kebijakan penskalaan pelacakan target menggunakan matematika metrik](ec2-auto-scaling-target-tracking-metric-math.md)

## Beberapa kebijakan penskalaan pelacakan target
<a name="target-tracking-multiple-policies"></a>

Untuk membantu mengoptimalkan kinerja penskalaan, Anda dapat menggunakan beberapa kebijakan penskalaan pelacakan target secara bersamaan, asalkan masing-masing menggunakan metrik yang berbeda. Misalnya, pemanfaatan dan throughput dapat saling mempengaruhi. Setiap kali salah satu metrik ini berubah, biasanya menyiratkan bahwa metrik lain juga akan terpengaruh. Oleh karena itu, penggunaan beberapa metrik memberikan informasi tambahan tentang beban yang dimiliki grup Auto Scaling Anda. Ini dapat membantu Amazon EC2 Auto Scaling membuat keputusan yang lebih tepat saat menentukan berapa banyak kapasitas yang akan ditambahkan ke grup Anda. 

Tujuan Amazon EC2 Auto Scaling adalah untuk selalu memprioritaskan ketersediaan. Ini akan memperkecil grup Auto Scaling jika ada kebijakan pelacakan target yang siap untuk diskalakan. Ini akan menskalakan hanya jika semua kebijakan pelacakan target (dengan skala dalam porsi diaktifkan) siap untuk diskalakan.

## Pilih metrik
<a name="target-tracking-choose-metrics"></a>

Anda dapat membuat kebijakan penskalaan pelacakan target dengan metrik yang telah ditentukan sebelumnya atau metrik khusus. Metrik yang telah ditentukan sebelumnya memberi Anda akses yang lebih mudah ke metrik yang paling umum digunakan untuk penskalaan. Metrik khusus memungkinkan Anda menskalakan CloudWatch metrik lain yang tersedia termasuk [metrik resolusi tinggi](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Resolution_definition) yang diterbitkan pada interval yang lebih halus dalam urutan beberapa detik. Anda dapat mempublikasikan metrik atau metrik resolusi tinggi Anda sendiri yang dipublikasikan oleh layanan lain AWS .

Untuk informasi selengkapnya tentang membuat kebijakan pelacakan target menggunakan metrik resolusi tinggi, lihat[Membuat kebijakan pelacakan target menggunakan metrik resolusi tinggi untuk respons yang lebih cepat](policy-creating-high-resolution-metrics.md).

Pelacakan target mendukung metrik yang telah ditentukan berikut:
+ `ASGAverageCPUUtilization`—Penggunaan CPU rata-rata grup Auto Scaling.
+ `ASGAverageNetworkIn`—Rata-rata jumlah byte yang diterima di semua antarmuka jaringan oleh grup Auto Scaling.
+ `ASGAverageNetworkOut`—Rata-rata jumlah byte yang dikirim ke semua antarmuka jaringan oleh grup Auto Scaling.
+ `ALBRequestCountPerTarget`—Rata-rata jumlah permintaan Application Load Balancer per target untuk grup Auto Scaling Anda.

**penting**  
*Informasi berharga lainnya tentang metrik untuk pemanfaatan CPU, I/O jaringan, dan jumlah permintaan Application Load Balancer per target dapat ditemukan di [Daftar metrik yang CloudWatch tersedia untuk topik instans Anda di Panduan Pengguna *Amazon EC2* dan metrik untuk](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/viewing_metrics_with_cloudwatch.html) topik [Application Load Balancer Anda di Panduan Pengguna CloudWatch untuk Penyeimbang Beban Aplikasi](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html), masing-masing.*

Anda dapat memilih CloudWatch metrik lain yang tersedia atau metrik Anda sendiri CloudWatch dengan menentukan metrik khusus. Untuk contoh yang menentukan spesifikasi metrik yang disesuaikan untuk kebijakan penskalaan pelacakan target menggunakan AWS CLI, lihat. [Contoh kebijakan penskalaan untuk AWS CLI](examples-scaling-policies.md)

Ingatlah hal-hal berikut ini saat memilih metrik:
+ Kami menyarankan Anda hanya menggunakan metrik yang tersedia pada interval satu menit atau lebih rendah untuk membantu Anda menskalakan lebih cepat dalam menanggapi perubahan pemanfaatan. Metrik yang diterbitkan pada interval yang lebih rendah memungkinkan kebijakan pelacakan target mendeteksi dan merespons lebih cepat perubahan dalam pemanfaatan grup Auto Scaling Anda.
+ Jika Anda memilih metrik yang telah ditentukan sebelumnya yang diterbitkan oleh Amazon EC2, seperti pemanfaatan CPU, sebaiknya aktifkan pemantauan terperinci. Secara default, semua metrik Amazon EC2 diterbitkan dalam interval lima menit, tetapi dapat dikonfigurasi ke interval yang lebih rendah dari satu menit dengan mengaktifkan pemantauan terperinci. Untuk informasi tentang cara mengaktifkan pemantauan terperinci, lihat[Konfigurasikan pemantauan untuk instans Auto Scaling](enable-as-instance-metrics.md).
+ Tidak semua metrik khusus berfungsi untuk pelacakan target. Metrik harus berupa metrik penggunaan yang valid dan menjelaskan seberapa sibuk instance. Nilai metrik harus meningkatkan atau menurunkan secara proporsional jumlah instance dalam grup Auto Scaling. Dengan demikian, data metrik dapat digunakan untuk meningkatkan atau menurunkan jumlah instance secara proporsional. Misalnya, pemanfaatan CPU pekerjaan grup Auto Scaling (yaitu, `CPUUtilization` metrik Amazon EC2 dengan `AutoScalingGroupName` dimensi metrik), jika beban pada grup Auto Scaling didistribusikan di seluruh instance. 
+ Metrik berikut tidak berfungsi untuk pelacakan target:
  + Jumlah permintaan yang diterima oleh load balancer di depan grup Auto Scaling (yaitu, metrik Elastic Load Balancing `RequestCount`). Jumlah permintaan yang diterima oleh load balancer tidak berubah berdasarkan penggunaan grup Auto Scaling.
  + Latensi permintaan penyeimbang muatan (yaitu, metrik Elastic Load Balancing `Latency`). Permintaan latensi dapat meningkat berdasarkan peningkatan pemanfaatan, tetapi tidak selalu berubah secara proporsional.
  + Metrik antrian CloudWatch Amazon SQS. `ApproximateNumberOfMessagesVisible` Jumlah pesan dalam antrian mungkin tidak berubah secara proporsional dengan ukuran grup Auto Scaling yang memproses pesan dari antrian. Namun, metrik kustom yang mengukur jumlah pesan dalam antrian per instans EC2 di grup Auto Scaling dapat berfungsi. Untuk informasi selengkapnya, lihat [Kebijakan penskalaan berdasarkan Amazon SQS](as-using-sqs-queue.md).
+ Untuk menggunakan `ALBRequestCountPerTarget` metrik, Anda harus menentukan `ResourceLabel` parameter untuk mengidentifikasi kelompok target penyeimbang beban yang terkait dengan metrik. Untuk contoh yang menentukan `ResourceLabel` parameter untuk kebijakan penskalaan pelacakan target menggunakan AWS CLI, lihat. [Contoh kebijakan penskalaan untuk AWS CLI](examples-scaling-policies.md)
+ Ketika metrik memancarkan nilai 0 nyata ke CloudWatch (misalnya,`ALBRequestCountPerTarget`), grup Auto Scaling dapat menskalakan ke 0 ketika tidak ada lalu lintas ke aplikasi Anda untuk jangka waktu yang berkelanjutan. Agar grup Auto Scaling Anda masuk ke 0 saat tidak ada permintaan yang dirutekan, kapasitas minimum grup harus disetel ke 0.
+ Alih-alih menerbitkan metrik baru untuk digunakan dalam kebijakan penskalaan, Anda dapat menggunakan matematika metrik untuk menggabungkan metrik yang ada. Untuk informasi selengkapnya, lihat [Buat kebijakan penskalaan pelacakan target menggunakan matematika metrik](ec2-auto-scaling-target-tracking-metric-math.md).

## Tentukan nilai target
<a name="target-tracking-define-target-value"></a>

Saat membuat kebijakan penskalaan pelacakan target, Anda harus menentukan nilai target. Nilai target mewakili pemanfaatan atau throughput rata-rata optimal untuk grup Auto Scaling. Untuk menggunakan biaya sumber daya secara efisien, tetapkan nilai target setinggi mungkin dengan buffer yang masuk akal untuk peningkatan lalu lintas yang tidak terduga. Ketika aplikasi Anda diskalakan secara optimal untuk arus lalu lintas normal, nilai metrik sebenarnya harus berada pada atau tepat di bawah nilai target. 

Ketika kebijakan penskalaan didasarkan pada throughput, seperti jumlah permintaan per target untuk Application Load Balancer, I/O jaringan, atau metrik hitungan lainnya, nilai target mewakili throughput rata-rata optimal dari satu instans, untuk periode satu menit.

## Tentukan waktu pemanasan instance
<a name="as-target-tracking-scaling-warmup"></a>

Anda memiliki opsi untuk menentukan jumlah detik yang diperlukan untuk pemanasan instans yang baru diluncurkan. Sampai waktu pemanasan yang ditentukan berakhir, instans tidak diperhitungkan dalam agregat metrik instans EC2 grup Auto Scaling.

Sementara kasus berada dalam periode pemanasan, kebijakan penskalaan Anda hanya akan diperkecil jika nilai metrik dari instans yang tidak memanas lebih besar daripada penggunaan target kebijakan.

Jika kelompok menskalakan lagi, contoh yang masih memanas dihitung sebagai bagian dari kapasitas yang diinginkan untuk aktivitas penskalaan berikutnya. Tujuannya adalah untuk terus (tetapi tidak berlebihan) menskalakan ke luar.

Sementara aktivitas scale-out sedang berlangsung, semua skala dalam aktivitas yang diprakarsai oleh kebijakan penskalaan diblokir hingga instans selesai memanas. Ketika contoh selesai pemanasan, jika skala dalam peristiwa terjadi, setiap contoh yang saat ini dalam proses penghentian akan dihitung terhadap kapasitas grup saat ini ketika menghitung kapasitas baru yang diinginkan. Oleh karena itu, kami tidak menghapus lebih banyak instance daripada yang diperlukan oleh grup Auto Scaling.

**Nilai default**  
Jika tidak ada nilai yang disetel, maka kebijakan penskalaan akan menggunakan nilai default, yang merupakan nilai untuk [pemanasan instance default](ec2-auto-scaling-default-instance-warmup.md) yang ditentukan untuk grup. [Jika pemanasan instance default adalah null, maka itu kembali ke nilai cooldown default.](ec2-auto-scaling-scaling-cooldowns.md#set-default-cooldown) Sebaiknya gunakan pemanasan instans default untuk mempermudah pembaruan semua kebijakan penskalaan saat waktu pemanasan berubah.

## Pertimbangan-pertimbangan
<a name="target-tracking-considerations"></a>

Pertimbangan berikut berlaku saat bekerja dengan kebijakan penskalaan pelacakan target:
+ Jangan membuat, mengedit, atau menghapus CloudWatch alarm yang digunakan dengan kebijakan penskalaan pelacakan target. Amazon EC2 Auto Scaling membuat dan CloudWatch mengelola alarm yang terkait dengan kebijakan penskalaan pelacakan target Anda dan dapat mengedit, mengganti, atau menghapusnya bila diperlukan untuk menyesuaikan pengalaman penskalaan untuk aplikasi Anda dan pola pemanfaatannya yang berubah. 
+ Kebijakan penskalaan pelacakan target memprioritaskan ketersediaan selama periode tingkat lalu lintas yang berfluktuasi dengan menskalakan secara lebih bertahap ketika lalu lintas menurun. Jika Anda menginginkan kontrol yang lebih besar, kebijakan penskalaan langkah mungkin merupakan pilihan yang lebih baik. Anda dapat menonaktifkan sementara bagian scale-in dari kebijakan pelacakan target. Ini membantu mempertahankan jumlah minimum instance untuk penerapan yang berhasil. 
+ Jika metrik kehilangan titik data, ini menyebabkan status CloudWatch alarm berubah menjadi`INSUFFICIENT_DATA`. Ketika ini terjadi, Amazon EC2 Auto Scaling tidak dapat menskalakan grup Anda hingga titik data baru ditemukan.
+ Jika metrik jarang dilaporkan oleh desain, matematika metrik dapat membantu. Misalnya, untuk menggunakan nilai terbaru, maka gunakan `FILL(m1,REPEAT)` fungsi di `m1` mana metrik.
+ Anda mungkin melihat kesenjangan antara nilai target dan titik data metrik aktualnya. Ini karena kami bertindak konservatif dengan membulatkan ke atas atau ke bawah saat menentukan berapa banyak instance untuk ditambahkan atau dihapus. Hal ini mencegah kami menambahkan jumlah instance yang tidak mencukupi atau menghilangkan terlalu banyak instance. Namun, untuk grup Auto Scaling yang lebih kecil dengan lebih sedikit instance, pemanfaatan grup mungkin tampak jauh dari nilai target.

  Misalnya, Anda menetapkan nilai target 50 persen untuk pemanfaatan CPU dan grup Auto Scaling Anda kemudian melebihi target. Kami dapat menentukan bahwa penambahan 1,5 instance akan mengurangi penggunaan CPU hingga mendekati 50 persen. Karena tidak mungkin untuk menambahkan 1,5 instance, kami membulatkan ke atas dan menambahkan dua instance. Hal ini dapat mengurangi penggunaan CPU menjadi nilai di bawah 50 persen, tetapi memastikan bahwa aplikasi Anda memiliki sumber daya yang cukup untuk mendukungnya. Demikian pula, jika kami menentukan bahwa menghapus 0,5 instance meningkatkan pemanfaatan CPU Anda hingga di atas 50 persen, kami akan memilih untuk tidak meningkatkan skala sampai metrik cukup rendah sehingga kami pikir penskalaan tidak akan menyebabkan osilasi. 

  Untuk grup Auto Scaling yang lebih besar dengan lebih banyak instance, penggunaan tersebut disebarkan pada sejumlah besar instance, di mana penambahan atau penghapusan instance menyebabkan lebih sedikit kesenjangan antara nilai target dan titik data metrik aktual.
+ Kebijakan penskalaan pelacakan target mengasumsikan bahwa harus meningkatkan skala grup Auto Scaling Anda ketika metrik yang telah ditentukan berada di atas nilai target. Anda tidak dapat menggunakan kebijakan penskalaan pelacakan target untuk memperkecil grup Auto Scaling jika metrik yang ditentukan berada di bawah nilai target.

# Buat kebijakan penskalaan pelacakan target
<a name="policy_creating"></a>

Untuk membuat kebijakan penskalaan pelacakan target untuk grup Auto Scaling Anda, gunakan salah satu metode berikut. 

Sebelum memulai, konfirmasikan bahwa metrik pilihan Anda tersedia pada interval 1 menit (dibandingkan dengan interval 5 menit default metrik Amazon EC2).

------
#### [ Console ]

**Untuk membuat kebijakan penskalaan pelacakan target untuk grup Auto Scaling baru**

1. Buka konsol Amazon EC2 di [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), dan pilih Grup **Auto Scaling** dari panel navigasi.

1. Pilih **Buat grup Auto Scaling**.

1. Pada Langkah 1, 2, dan 3, pilih opsi yang diinginkan dan lanjutkan ke **Langkah 4: Konfigurasikan kebijakan ukuran dan penskalaan grup**.

1. Di bawah **Penskalaan**, tentukan rentang yang ingin Anda skalakan dengan memperbarui kapasitas **Min yang diinginkan dan kapasitas** **Maks yang diinginkan**. Kedua pengaturan ini memungkinkan grup Auto Scaling Anda untuk menskalakan secara dinamis. Untuk informasi selengkapnya, lihat [Tetapkan batas penskalaan untuk grup Auto Scaling Anda](asg-capacity-limits.md).

1. Di bawah **Penskalaan otomatis, pilih Kebijakan penskalaan** **pelacakan target.**

1. Untuk menentukan kebijakan, lakukan hal berikut:

   1. Tentukan nama untuk kebijakan tersebut.

   1. Untuk **Jenis metrik**, pilih metrik. 

      Jika Anda memilih **jumlah permintaan Application Load Balancer per target**, pilih grup target di grup **Target**.

   1. Tentukan **Nilai target** untuk metrik.

   1. (Opsional) Untuk **pemanasan Instance**, perbarui nilai pemanasan instance sesuai kebutuhan.

   1. (Opsional) Pilih **Nonaktifkan penurunan skala untuk membuat hanya kebijakan peningkatan skala**. Ini memungkinkan Anda membuat kebijakan penurunan skala terpisah dari jenis yang berbeda jika diinginkan.

1. Lanjutkan untuk membuat grup Auto Scaling. Kebijakan penskalaan Anda akan dibuat setelah grup Auto Scaling dibuat. 

**Untuk membuat kebijakan penskalaan pelacakan target untuk grup Auto Scaling yang ada**

1. Buka konsol Amazon EC2 di [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/), dan pilih Grup **Auto Scaling** dari panel navigasi.

1. Pilih kotak centang di samping grup Auto Scaling Anda.

   Panel split terbuka di bagian bawah halaman. 

1. Verifikasi bahwa batas penskalaan ditetapkan dengan tepat. Misalnya, jika kapasitas yang diinginkan grup Anda sudah maksimal, Anda perlu menentukan maksimum baru untuk meningkatkan skala. Untuk informasi selengkapnya, lihat [Tetapkan batas penskalaan untuk grup Auto Scaling Anda](asg-capacity-limits.md).

1. Pada tab **Penskalaan otomatis**, dalam Kebijakan **penskalaan dinamis, pilih Buat kebijakan** **penskalaan dinamis**.

1. Untuk menentukan kebijakan, lakukan hal berikut:

   1. Untuk **jenis Kebijakan**, pertahankan default **penskalaan pelacakan Target**. 

   1. Tentukan nama untuk kebijakan tersebut.

   1. Untuk **Jenis metrik**, pilih metrik. Anda hanya dapat memilih satu jenis metrik. Untuk menggunakan lebih dari satu metrik, buat beberapa kebijakan.

      Jika Anda memilih **jumlah permintaan Application Load Balancer per target**, pilih grup target di grup **Target**.

   1. Tentukan **Nilai target** untuk metrik.

   1. (Opsional) Untuk **pemanasan Instance**, perbarui nilai pemanasan instance sesuai kebutuhan.

   1. (Opsional) Pilih **Nonaktifkan penurunan skala untuk membuat hanya kebijakan peningkatan skala**. Ini memungkinkan Anda membuat kebijakan penurunan skala terpisah dari jenis yang berbeda jika diinginkan.

1. Pilih **Buat**.

------
#### [ AWS CLI ]

Untuk membuat kebijakan penskalaan pelacakan target, Anda dapat menggunakan contoh berikut untuk membantu Anda memulai. Ganti masing-masing *user input placeholder* dengan informasi Anda sendiri.

**catatan**  
Untuk contoh lainnya, lihat [Contoh kebijakan penskalaan untuk AWS CLI](examples-scaling-policies.md).

**Untuk membuat kebijakan penskalaan pelacakan target ()AWS CLI**

1. Gunakan `cat` perintah berikut untuk menyimpan nilai target untuk kebijakan penskalaan Anda dan spesifikasi metrik yang telah ditentukan sebelumnya dalam file JSON yang diberi nama `config.json` di direktori home Anda. Berikut ini adalah contoh konfigurasi pelacakan target yang menjaga pemanfaatan CPU rata-rata sebesar 50 persen.

   ```
   $ cat ~/config.json
   {
     "TargetValue": 50.0,
     "PredefinedMetricSpecification": 
       {
         "PredefinedMetricType": "ASGAverageCPUUtilization"
       }
   }
   ```

   Untuk informasi lebih lanjut, lihat [PredefinedMetricSpecification](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredefinedMetricSpecification.html) dalam *Referensi API Amazon EC2 Auto Scaling*.

1. Gunakan perintah [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html), beserta file `config.json` yang Anda buat di langkah sebelumnya, untuk membuat kebijakan penskalaan Anda.

   ```
   aws autoscaling put-scaling-policy --policy-name cpu50-target-tracking-scaling-policy \
     --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
     --target-tracking-configuration file://config.json
   ```

   Jika berhasil, perintah ini mengembalikan ARNs dan nama dari dua CloudWatch alarm yang dibuat atas nama Anda.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/cpu50-target-tracking-scaling-policy",
       "Alarms": [
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e",
               "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e"
           },
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2",
               "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2"
           }
       ]
   }
   ```

------

# Membuat kebijakan pelacakan target menggunakan metrik resolusi tinggi untuk respons yang lebih cepat
<a name="policy-creating-high-resolution-metrics"></a>

Pelacakan target mendukung CloudWatch metrik resolusi tinggi dengan titik data tingkat detik yang diterbitkan pada interval yang lebih rendah dari satu menit. Konfigurasikan kebijakan pelacakan target untuk memantau pemanfaatan melalui CloudWatch metrik resolusi tinggi untuk aplikasi yang memiliki pola permintaan yang tidak stabil, seperti API yang melayani klien, layanan streaming langsung, situs web e-niaga, dan pemrosesan data sesuai permintaan. Untuk mencapai presisi yang lebih tinggi dalam mencocokkan kapasitas dengan permintaan, pelacakan target menggunakan pemantauan berbutir halus ini untuk mendeteksi dan menanggapi perubahan permintaan dan pemanfaatan instans EC2 Anda dengan lebih cepat.

Untuk informasi selengkapnya tentang cara memublikasikan metrik pada resolusi tinggi, lihat [Menerbitkan metrik kustom](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html) di * CloudWatch Panduan Pengguna Amazon*. [Untuk mengakses dan mempublikasikan metrik EC2, seperti pemanfaatan CPU pada resolusi tinggi, Anda mungkin ingin menggunakan agen. CloudWatch ](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Install-CloudWatch-Agent.html)

## Wilayah AWS
<a name="policy-creating-high-resolution-metrics-regions"></a>

Pelacakan target menggunakan metrik resolusi tinggi tersedia di semua Wilayah AWS kecuali. AWS GovCloud (US) Regions

## Cara kerja kebijakan pelacakan target dengan metrik resolusi tinggi
<a name="policy-high-resolution-metrics-how-works"></a>

Anda membuat kebijakan pelacakan target dengan menentukan metrik yang ingin dilacak dan nilai target yang ingin Anda pertahankan untuk metrik tersebut. Untuk menskalakan metrik resolusi tinggi, tentukan nama metrik dan atur periode metrik di mana pelacakan target mengamati metrik ini ke nilai yang lebih rendah dari 60 detik. Saat ini interval terendah yang didukung adalah 10 detik. Anda dapat mempublikasikan metrik Anda pada interval yang lebih rendah dari ini.

**catatan**  
Periode metrik yang lebih besar dari 60 tidak didukung.

Anda dapat mengonfigurasi pelacakan target pada satu CloudWatch metrik atau kueri beberapa CloudWatch metrik dan menggunakan ekspresi matematika untuk membuat deret waktu tunggal baru berdasarkan metrik ini. Kedua opsi memungkinkan Anda untuk menentukan periode metrik.

## Contoh
<a name="high-resolution-metrics-examples"></a>

**Contoh 1**  
Contoh berikut membuat kebijakan pelacakan target berdasarkan CloudWatch metrik resolusi tinggi. Metrik diterbitkan pada resolusi 10 detik. Dengan menentukan periode, Anda dapat mengaktifkan pelacakan target untuk memantau metrik ini pada granularitas 10 detik. Ganti masing-masing *user input placeholder* dengan informasi Anda sendiri.

```
$ cat ~/config.json
{
  "TargetValue": 100.0,
  "CustomizedMetricSpecification": {
      "MetricName": "MyHighResolutionMetric",
      "Namespace": "MyNamespace",
      "Dimensions": [
        {
          "Name": "MyOptionalDimensionName",
          "Value": "MyOptionalMetricDimensionValue"
        }
      ],
      "Statistic": "Average",
      "Unit": "None"
      "Period": "10                  
  }
}
```

**Contoh 2**  
Anda dapat menggunakan ekspresi matematika metrik untuk menggabungkan beberapa metrik menjadi satu deret waktu untuk penskalaan. Matematika metrik sangat berguna untuk mengubah metrik yang ada menjadi rata-rata per instance. Mengonversi metrik sangat penting karena pelacakan target mengasumsikan bahwa metrik berbanding terbalik dengan kapasitas grup Auto Scaling. Jadi ketika kapasitas meningkat, metrik harus berkurang dengan proporsi yang hampir sama.

Misalnya, Anda memiliki metrik yang mewakili pekerjaan yang tertunda untuk diproses oleh aplikasi Anda. Anda dapat menggunakan matematika metrik untuk membagi pekerjaan yang tertunda dengan kapasitas berjalan grup Auto Scaling Anda. Auto Scaling menerbitkan metrik kapasitas pada granularitas 1 menit, jadi tidak akan ada nilai untuk metrik ini untuk interval sub-menit. Jika Anda ingin menggunakan resolusi yang lebih tinggi untuk penskalaan, ini dapat menyebabkan ketidakcocokan periode antara kapasitas dan metrik pekerjaan yang tertunda. Untuk menghindari ketidakcocokan ini, kami sarankan Anda menggunakan ekspresi FILL untuk mengisi nilai yang hilang dengan nomor kapasitas yang direkam dalam stempel waktu menit sebelumnya. 

Contoh berikut menggunakan matematika metrik untuk membagi metrik pekerjaan yang tertunda dengan kapasitas. Untuk periode, kami mengatur kedua metrik pada 10 detik. Karena metrik diterbitkan pada interval 1 menit, kami menggunakan operasi FILL pada metrik kapasitas.

Untuk menggunakan matematika metrik untuk memodifikasi beberapa metrik

```
{
    "CustomizedMetricSpecification": {
        "Metrics": [
            {
                "Label": "Pending jobs to be processed",
                "Id": "m1",
                "MetricStat": {
                    "Metric": {
                        "MetricName": "MyPendingJobsMetric",
                        "Namespace": "Custom",
                    },
                    "Stat": "Sum"
                    "Period": 10
                },
                "ReturnData": false
            },
            {
                "Label": "Get the running instance capacity (matching the period to that of the m1)",
                "Id": "m2",
                "MetricStat": {
                    "Metric": {
                        "MetricName": "GroupInServiceInstances",
                        "Namespace": "AWS/AutoScaling",
                        "Dimensions": [
                            {
                                "Name": "AutoScalingGroupName",
                                "Value": "my-asg"
                            }
                        ]
                    },
                    "Stat": "Average"
                    "Period": 10
                },
                "ReturnData": false
            },
            {
                "Label": "Calculate the pending job per capacity (note the use of the FILL expression)",
                "Id": "e1",
                "Expression": "m1 / FILL(m2,REPEAT)",
                "ReturnData": true
            }
        ]
    },
    "TargetValue": 100
}
```

## Pertimbangan-pertimbangan
<a name="high-resolution-considerations"></a>

Pertimbangkan hal berikut saat menggunakan pelacakan target dan metrik resolusi tinggi.
+ Untuk memastikan bahwa Anda tidak memiliki titik data yang hilang yang dapat menyebabkan hasil penskalaan otomatis yang tidak diinginkan, CloudWatch metrik Anda harus dipublikasikan pada resolusi yang sama atau lebih tinggi dari periode yang Anda tentukan.
+ Tentukan nilai target sebagai nilai per-instance-per-minute metrik yang ingin Anda pertahankan untuk grup Auto Scaling Anda. Menetapkan nilai target yang sesuai sangat penting jika Anda menggunakan metrik yang nilainya dapat dikalikan berdasarkan periode metrik. Misalnya, setiap metrik berbasis hitungan seperti jumlah permintaan atau pekerjaan tertunda yang menggunakan statistik SUM akan memiliki nilai metrik yang berbeda tergantung pada periode yang dipilih. Anda masih harus berasumsi bahwa Anda menetapkan target terhadap rata-rata per menit.
+ Meskipun tidak ada biaya tambahan untuk menggunakan Amazon EC2 Auto Scaling, Anda harus membayar sumber daya seperti CloudWatch instans, metrik, dan alarm Amazon EC2. CloudWatch Alarm resolusi tinggi yang dibuat pada contoh sebelumnya diberi harga berbeda dari alarm standar. CloudWatch Untuk informasi selengkapnya tentang CloudWatch harga, lihat [ CloudWatch Harga Amazon](https://aws.amazon.com/cloudwatch/pricing/).
+ Pelacakan target mengharuskan metrik mewakili penggunaan rata-rata per instans dari instans EC2 Anda. Untuk mencapai hal ini, Anda dapat menggunakan [operasi matematika metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) sebagai bagian dari konfigurasi kebijakan pelacakan target Anda. Bagilah metrik Anda dengan kapasitas berjalan grup Auto Scaling Anda. Pastikan periode metrik yang sama ditentukan untuk setiap metrik yang Anda gunakan untuk membuat satu deret waktu. Jika metrik ini diterbitkan pada interval yang berbeda, gunakan operasi FILL pada metrik dengan interval yang lebih tinggi untuk mengisi titik data yang hilang.

# Buat kebijakan penskalaan pelacakan target menggunakan matematika metrik
<a name="ec2-auto-scaling-target-tracking-metric-math"></a>

Menggunakan matematika metrik, Anda dapat menanyakan beberapa CloudWatch metrik dan menggunakan ekspresi matematika untuk membuat deret waktu baru berdasarkan metrik ini. Anda dapat memvisualisasikan deret waktu yang dihasilkan di CloudWatch konsol dan menambahkannya ke dasbor. Untuk informasi selengkapnya tentang matematika [metrik, lihat Menggunakan matematika metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/using-metric-math.html) di *Panduan CloudWatch Pengguna Amazon*. 

Pertimbangan berikut berlaku untuk ekspresi matematika metrik:
+ Anda dapat menanyakan CloudWatch metrik apa pun yang tersedia. Setiap metrik adalah kombinasi unik dari nama metrik, namespace, dan nol atau lebih dimensi. 
+ Anda dapat menggunakan operator aritmatika (\$1 - \$1/^), fungsi statistik (seperti AVG atau SUM), atau fungsi lain yang mendukung. CloudWatch 
+ Anda dapat menggunakan metrik dan hasil ekspresi matematika lainnya dalam rumus ekspresi matematika. 
+ Setiap ekspresi yang digunakan dalam spesifikasi metrik pada akhirnya harus mengembalikan satu deret waktu.
+ Anda dapat memverifikasi bahwa ekspresi matematika metrik valid dengan menggunakan CloudWatch konsol atau CloudWatch [GetMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_GetMetricData.html)API.

## Contoh: backlog antrian Amazon SQS per instance
<a name="metric-math-sqs-queue-backlog"></a>

Untuk menghitung backlog antrean Amazon SQS per instance, ambil perkiraan jumlah pesan yang tersedia untuk diambil dari antrian dan bagi nomor tersebut dengan kapasitas berjalan grup Auto Scaling, yang merupakan jumlah instance dalam status. `InService` Untuk informasi selengkapnya, lihat [Kebijakan penskalaan berdasarkan Amazon SQS](as-using-sqs-queue.md).

Logika untuk ekspresi adalah ini:

 `sum of (number of messages in the queue)/(number of InService instances)`

Maka informasi CloudWatch metrik Anda adalah sebagai berikut.


| ID | CloudWatch metrik | Statistik | Periode | 
| --- | --- | --- | --- | 
| m1 | ApproximateNumberOfMessagesVisible | Jumlah | 1 menit | 
| m2 | GroupInServiceInstances | Rata-rata | 1 menit | 

ID dan ekspresi matematika metrik Anda adalah sebagai berikut.


| ID | Ekspresi | 
| --- | --- | 
| e1 | (m1)/(m2) | 

Diagram berikut menggambarkan arsitektur untuk metrik ini:

![\[Amazon EC2 Auto Scaling menggunakan diagram arsitektur antrean\]](http://docs.aws.amazon.com/id_id/autoscaling/ec2/userguide/images/sqs-as-custom-metric-diagram.png)


**Untuk menggunakan matematika metrik ini untuk membuat kebijakan penskalaan pelacakan target ()AWS CLI**

1. Simpan ekspresi matematika metrik sebagai bagian dari spesifikasi metrik yang disesuaikan dalam file JSON bernama`config.json`. 

   Gunakan contoh berikut untuk membantu Anda memulai. Ganti masing-masing *user input placeholder* dengan informasi Anda sendiri.

   ```
   {
       "CustomizedMetricSpecification": {
           "Metrics": [
               {
                   "Label": "Get the queue size (the number of messages waiting to be processed)",
                   "Id": "m1",
                   "MetricStat": {
                       "Metric": {
                           "MetricName": "ApproximateNumberOfMessagesVisible",
                           "Namespace": "AWS/SQS",
                           "Dimensions": [
                               {
                                   "Name": "QueueName",
                                   "Value": "my-queue"
                               }
                           ]
                       },
                       "Stat": "Sum"
                   },
                   "ReturnData": false
               },
               {
                   "Label": "Get the group size (the number of InService instances)",
                   "Id": "m2",
                   "MetricStat": {
                       "Metric": {
                           "MetricName": "GroupInServiceInstances",
                           "Namespace": "AWS/AutoScaling",
                           "Dimensions": [
                               {
                                   "Name": "AutoScalingGroupName",
                                   "Value": "my-asg"
                               }
                           ]
                       },
                       "Stat": "Average"
                   },
                   "ReturnData": false
               },
               {
                   "Label": "Calculate the backlog per instance",
                   "Id": "e1",
                   "Expression": "m1 / m2",
                   "ReturnData": true
               }
           ]
       },
       "TargetValue": 100
   }
   ```

   Untuk informasi lebih lanjut, lihat [TargetTrackingConfiguration](https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_TargetTrackingConfiguration.html) dalam *Referensi API Amazon EC2 Auto Scaling*.
**catatan**  
Berikut adalah beberapa sumber daya tambahan yang dapat membantu Anda menemukan nama metrik, ruang nama, dimensi, dan statistik untuk CloudWatch metrik:   
Untuk informasi tentang metrik yang tersedia untuk AWS layanan, lihat [AWS layanan yang memublikasikan CloudWatch metrik](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html) di * CloudWatch Panduan Pengguna Amazon*.
[Untuk mendapatkan nama metrik, namespace, dan dimensi yang tepat (jika ada) untuk CloudWatch metrik dengan metrik AWS CLI, lihat daftar-metrik.](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudwatch/list-metrics.html) 

1. Untuk membuat kebijakan ini, jalankan [put-scaling-policy](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/autoscaling/put-scaling-policy.html)perintah menggunakan file JSON sebagai input, seperti yang ditunjukkan dalam contoh berikut.

   ```
   aws autoscaling put-scaling-policy --policy-name sqs-backlog-target-tracking-scaling-policy \
     --auto-scaling-group-name my-asg --policy-type TargetTrackingScaling \
     --target-tracking-configuration file://config.json
   ```

   Jika berhasil, perintah ini mengembalikan Amazon Resource Name (ARN) kebijakan dan dua CloudWatch alarm ARNs yang dibuat atas nama Anda.

   ```
   {
       "PolicyARN": "arn:aws:autoscaling:us-west-2:123456789012:scalingPolicy:228f02c2-c665-4bfd-aaac-8b04080bea3c:autoScalingGroupName/my-asg:policyName/sqs-backlog-target-tracking-scaling-policy",
       "Alarms": [
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e",
               "AlarmName": "TargetTracking-my-asg-AlarmHigh-fc0e4183-23ac-497e-9992-691c9980c38e"
           },
           {
               "AlarmARN": "arn:aws:cloudwatch:us-west-2:123456789012:alarm:TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2",
               "AlarmName": "TargetTracking-my-asg-AlarmLow-61a39305-ed0c-47af-bd9e-471a352ee1a2"
           }
       ]
   }
   ```
**catatan**  
Jika perintah ini menimbulkan kesalahan, pastikan Anda telah memperbarui AWS CLI secara lokal ke versi terbaru.