

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

# Meluncurkan instance dengan penyediaan sinkron
<a name="launching-instances-synchronous-provisioning"></a>

Anda dapat menggunakan LaunchInstances API untuk meluncurkan sejumlah instans tertentu secara sinkron di grup Auto Scaling Anda. API meluncurkan instance di Availability Zone atau subnet yang Anda tentukan dan segera mengembalikan informasi instans IDs atau kesalahan.

## Prasyarat
<a name="prerequisites-synchronous-provisioning"></a>

Sebelum Anda dapat menggunakan LaunchInstances API, Anda harus memiliki:
+ Grup Auto Scaling yang menggunakan template peluncuran (konfigurasi peluncuran tidak didukung)
+ Anda harus memiliki izin untuk tindakan IAM berikut:
  + `autoscaling:LaunchInstances`
  + `ec2:CreateFleet`
  + `ec2:DescribeLaunchTemplateVersions`

## Luncurkan instance dengan penyediaan sinkron
<a name="launch-instances-cli"></a>

Anda dapat meluncurkan instance dengan penyediaan sinkron melalui file. AWS CLI

### AWS CLI
<a name="aws-cli-launch-instances"></a>

Untuk meluncurkan instance dengan penyediaan sinkron:

```
aws autoscaling launch-instances \
        --auto-scaling-group-name {{group-name}} \
        --requested-capacity {{number}} \
        [--availability-zones {{zone-name}}] \
        [--subnet-ids {{subnet-id}}] \
        [--availability-zone-ids {{zone-id}}] \
        [--retry-strategy {{none}}|{{retry-with-group-configuration}}] \
        [--client-token {{token}}]
```

#### Contoh
<a name="examples-launch-instances"></a>

**Meluncurkan instance di Availability Zone tertentu**

```
aws autoscaling launch-instances \
        --auto-scaling-group-name {{my-asg}} \
        --requested-capacity {{3}} \
        --availability-zones {{us-east-1a}} \
        --retry-strategy {{retry-with-group-configuration}}
```

**Meluncurkan instance di subnet tertentu**

```
aws autoscaling launch-instances \
        --auto-scaling-group-name {{my-asg}} \
        --requested-capacity {{2}} \
        --subnet-ids {{subnet-12345678}} \
        --retry-strategy {{none}} \
        --client-token {{my-unique-token-123}}
```

#### Menangani tanggapan
<a name="handling-responses"></a>

**Contoh respon yang sukses:**

```
{
    "AutoScalingGroupName": "my-asg",
    "ClientToken": "my-unique-token-123",
    "Instances": [
        {
            "InstanceType": "m5.xlarge",
            "AvailabilityZone": "us-east-1a",
            "AvailabilityZoneId": "use1-az1",
            "SubnetId": "subnet-12345678",
            "MarketType": "OnDemand",
            "InstanceIds": ["i-0123456789abcdef0", "i-0fedcba9876543210"]
        }
    ],
    "Errors": []
}
```

**Contoh respons dengan kesalahan**

```
{
    "AutoScalingGroupName": "my-asg",
    "ClientToken": "my-unique-token-123",
    "Instances": [],
    "Errors": [
       {
        "InstanceType": "m5.large",
        "AvailabilityZone": "us-east-1a",
        "AvailabilityZoneId": "use1-az1",
        "SubnetId": "subnet-12345678",
        "MarketType": "OnDemand",
        "ErrorCode": "InsufficientInstanceCapacity",
        "ErrorMessage": "There is not enough capacity to fulfill your request for instance type 'm5.large' in 'us-east-1a'"
        }
    ]
}
```

## Menangani kegagalan peluncuran dan percobaan ulang
<a name="handle-launch-failures-retries"></a>

Saat LaunchInstances API mengalami kegagalan, Anda dapat menerapkan strategi coba ulang menggunakan token idempotensi dan kebijakan coba ulang yang sesuai.

Anda dapat menggunakan parameter client-token untuk mencoba kembali permintaan. Anda juga dapat menggunakan strategi coba lagi berikut:
+ `RetryStrategy: none`(default) - Jika panggilan API gagal, kapasitas yang diinginkan grup Auto Scaling tetap tidak berubah dan tidak ada percobaan ulang otomatis yang terjadi.
+ `RetryStrategy: retry-with-group-configuration`- Jika panggilan API gagal, kapasitas yang diinginkan grup Auto Scaling ditingkatkan dengan jumlah yang diminta, dan Auto Scaling akan secara otomatis mencoba meluncurkan instance menggunakan konfigurasi dan proses standar grup.

Coba lagi perilaku untuk `RetryStrategy: retry-with-group-configuration` tergantung pada jenis kegagalan:
+ **Kesalahan validasi**: Kapasitas yang diinginkan tidak meningkat karena operasi tidak dapat dilanjutkan. Misalnya, parameter tidak valid atau konfigurasi yang tidak didukung.
+ **Kesalahan kapasitas**: Kapasitas yang diinginkan ditingkatkan dan Auto Scaling akan mencoba lagi meluncurkan instance secara asinkron menggunakan proses penskalaan normal grup.

### Menggunakan token klien untuk idempotensi
<a name="client-tokens-sp"></a>

`client-token`Parameter memastikan operasi idempoten dan memungkinkan percobaan ulang permintaan peluncuran yang aman.

Perilaku kunci:
+ Token klien memiliki masa pakai 8 jam dari permintaan awal
+ Mencoba lagi dengan token klien yang sama dalam waktu 8 jam mengembalikan respons yang di-cache alih-alih meluncurkan instance baru
+ Setelah 8 jam, token klien yang sama akan memulai operasi peluncuran baru