

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

# Mengonfigurasi grup keamanan Amazon EC2 dan jenis instans menggunakan AWS CLI
<a name="using-features.managing.ec2.aws-cli"></a>

Anda dapat menggunakan AWS Command Line Interface (AWS CLI) untuk mengonfigurasi instans Amazon EC2 di lingkungan Elastic Beanstalk Anda.

## Mengkonfigurasi grup keamanan EC2 menggunakan AWS CLI
<a name="using-features.managing.ec2.aws-cli.security-groups"></a>

Topik ini memberikan contoh untuk konfigurasi grup keamanan EC2 yang berbeda untuk lingkungan instans tunggal dan load balanced (multi-instance). Untuk informasi selengkapnya tentang opsi dalam contoh ini, lihat [aws:autoscaling:launchconfiguration](command-options-general.md#command-options-general-autoscalinglaunchconfiguration).

**Catatan**  
Operasi create environment menyediakan grup keamanan EC2 secara default. Ini juga menciptakan lingkungan dengan penyeimbang beban aplikasi secara default.   
Operasi lingkungan pembaruan dapat digunakan untuk menonaktifkan atau mengaktifkan grup keamanan EC2 default untuk lingkungan Anda dengan opsi boolean. `DisableDefaultEC2SecurityGroup` *Contoh 5* menunjukkan cara mengatur lingkungan Anda kembali ke konfigurasi keamanan default jika Anda sebelumnya telah memodifikasinya.

Contoh berikut menunjukkan perintah [create-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-environment.html) yang memilih keluar dari grup keamanan EC2 default dan menyediakan grup keamanan khusus sebagai gantinya. Karena `DisableDefaultEC2SecurityGroup` opsi disetel ke`true`, grup keamanan EC2 default yang biasanya dikaitkan dengan Elastic Beanstalk ke instans EC2 tidak dibuat. Oleh karena itu, Anda harus memberikan `SecurityGroups` opsi kepada grup keamanan lain. 

Perhatikan bahwa [aws:elasticbeanstalk:environment](command-options-general.md#command-options-general-elasticbeanstalkenvironment) `EnvironmentType` opsi diatur ke`SingleInstance`. Untuk membuat lingkungan instance tunggal, Anda harus menentukan opsi ini, karena `LoadBalanced` adalah default`EnvironmentType`. Karena lingkungan ini tidak menyertakan penyeimbang beban, kita tidak perlu menentukan grup keamanan penyeimbang beban. 

**Example 1 - Lingkungan instans tunggal baru dengan grup keamanan EC2 khusus (opsi namespace sebaris)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v6.5.0 applrunning Node.js 22" \
--option-settings \
Namespace=aws:elasticbeanstalk:environment,OptionName=EnvironmentType,Value=SingleInstance \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role \
Namespace=aws:autoscaling:launchconfiguration,OptionName=DisableDefaultEC2SecurityGroup,Value=true \
Namespace=aws:autoscaling:launchconfiguration,OptionName=SecurityGroups,Value=sg-abcdef01, sg-abcdef02 \
Namespace=aws:autoscaling:launchconfiguration,OptionName=EC2KeyName,Value=my-keypair
```





Sebagai alternatif, gunakan `options.json` file untuk menentukan opsi namespace alih-alih memasukkannya sebaris.

**Example 2 - Lingkungan instans tunggal baru dengan grup keamanan EC2 khusus (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v6.5.0 running Node.js 22" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  { "Namespace" : "aws:elasticbeanstalk:environment", 
    "OptionName" : "EnvironmentType", 
    "Value" : "SingleInstance" 
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "IamInstanceProfile",
    "Value": "aws-elasticbeanstalk-ec2-role"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "true"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "SecurityGroups",
    "Value": "sg-abcdef01, sg-abcdef02"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "EC2KeyName",
    "Value": "my-keypair"
  }
]
```

Contoh berikut menciptakan lingkungan load-balanced. Ini menentukan opsi [aws:elasticbeanstalk:environment](command-options-general.md#command-options-general-elasticbeanstalkenvironment) `LoadBalancerType` namespace diatur ke. `application` Karena kami menonaktifkan grup keamanan EC2 default dengan `DisableDefaultEC2SecurityGroup` opsi, kami perlu menyediakan grup keamanan khusus kami sendiri untuk instans EC2 lagi, dengan [aws:autoscaling:launchconfiguration](command-options-general.md#command-options-general-autoscalinglaunchconfiguration) `SecurityGroups` opsi, seperti contoh sebelumnya. Karena lingkungan ini memiliki penyeimbang beban untuk merutekan lalu lintas, kami harus menyediakan grup keamanan untuk penyeimbang beban juga.

Untuk membuat lingkungan dengan penyeimbang beban klasik, tetapi konfigurasi yang sama, perbarui konfigurasi untuk opsi [aws:elasticbeanstalk:environment](command-options-general.md#command-options-general-elasticbeanstalkenvironment) namespace ke. `LoadBalancerType` `classic` 

Jenis penyeimbang beban yang berbeda memiliki ruang nama berbeda yang menyimpan opsi untuk menentukan grup keamanan:


+ penyeimbang beban aplikasi - opsi [aws:elbv2:loadbalancer](command-options-general.md#command-options-general-elbv2) `SecurityGroups`
+ penyeimbang beban klasik - opsi [aws:elb:loadbalancer](command-options-general.md#command-options-general-elbloadbalancer) `SecurityGroups`
+ penyeimbang beban jaringan — karena penyeimbang beban jaringan tidak memiliki grup keamanan, konfigurasikan grup keamanan EC2 dengan pengidentifikasi VPC. Untuk informasi selengkapnya, lihat [Memperbarui grup keamanan untuk Network Load Balancer](https://docs.aws.amazon.com/elasticloadbalancing/latest/network/load-balancer-security-groups.html) di *Panduan Pengguna untuk Network Load* Balancer.

**Example 3 - Lingkungan multi-instance baru dengan grup keamanan EC2 khusus (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v6.5.0 running Node.js 22" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  { 
    "Namespace" : "aws:elasticbeanstalk:environment", 
    "OptionName" : "EnvironmentType", 
    "Value" : "LoadBalanced" 
  },
  { 
  "Namespace" : "aws:elasticbeanstalk:environment",
    "OptionName" : "LoadBalancerType",
    "Value" : "application"
  },
  {
    "Namespace" : "aws:elbv2:loadbalancer",
    "OptionName" : "SecurityGroups",
    "Value" : "sg-abcdefghikl012345"
  }, 
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "IamInstanceProfile",
    "Value": "aws-elasticbeanstalk-ec2-role"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "true"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "SecurityGroups",
    "Value": "sg-abcdef01, sg-abcdef02"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "EC2KeyName",
    "Value": "my-keypair"
  }
]
```

Anda dapat menonaktifkan grup keamanan EC2 default untuk lingkungan yang ada dengan perintah [update-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-environment.html). Contoh perintah berikut menonaktifkan grup keamanan EC2 default dan menetapkan instans EC2 lingkungan grup keamanan EC2 kustom. 

Gunakan `options.jason` file contoh dalam contoh 4 (a), 4 (b), atau 4 (c), tergantung pada apakah lingkungan seimbang beban dan jenis penyeimbang beban. File konfigurasi 4 (a) menentukan grup keamanan untuk lingkungan instance tunggal. Karena tidak memerlukan penyeimbang beban, kami hanya menyediakan grup keamanan untuk instans EC2. File konfigurasi 4 (b) dan 4 (c) menentukan grup keamanan untuk penyeimbang beban aplikasi dan penyeimbang beban klasik. Untuk kasus ini kita juga perlu menentukan grup keamanan untuk penyeimbang beban.

**Example 4 - Perbarui lingkungan yang ada untuk menonaktifkan grup keamanan EC2 default (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk update-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v6.5.0 running Node.js 22" \
--option-settings file://options.json
```

**Example 4 (a) - File konfigurasi untuk lingkungan instance tunggal (tidak ada penyeimbang beban)**  

```
### example options.json ###
[
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "true"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "SecurityGroups",
    "Value": "sg-abcdef01, sg-abcdef02"
  }
]
```

Untuk memperbarui lingkungan yang menggunakan penyeimbang beban aplikasi, gunakan `aws:elbv2:loadbalancer` namespace untuk menentukan grup keamanan untuk penyeimbang beban.

**Example 4 (b) - File konfigurasi untuk lingkungan dengan penyeimbang beban aplikasi**  

```
### example options.json ###
[
  {
    "Namespace" : "aws:elbv2:loadbalancer",
    "OptionName" : "SecurityGroups",
    "Value" : "sg-abcdefghikl012345"
  }, 
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "true"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "SecurityGroups",
    "Value": "sg-abcdef01, sg-abcdef02"
  }
]
```

Untuk memperbarui lingkungan yang menggunakan penyeimbang beban klasik, gunakan `aws:elb:loadbalancer` namespace untuk menentukan grup keamanan untuk penyeimbang beban.

**Example 4 (c) - File konfigurasi untuk lingkungan dengan penyeimbang beban klasik**  

```
### example options.json ###
[
  {
    "Namespace" : "aws:elb:loadbalancer",
    "OptionName" : "SecurityGroups",
    "Value" : "sg-abcdefghikl012345"
  }, 
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "true"
  },
  {
    "Namespace": "aws:autoscaling:launchconfiguration",n
    "OptionName": "SecurityGroups",
    "Value": "sg-abcdef01, sg-abcdef02"
  }
]
```

Untuk mengembalikan lingkungan Anda ke perilaku dan konfigurasi default dengan grup keamanan default yang ditetapkan Elastic Beanstalk, [gunakan](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-environment.html) perintah update-environment untuk menyetel ke. `DisableDefaultEC2SecurityGroup` `false` Untuk lingkungan multi-instance, Elastic Beanstalk juga menangani grup keamanan dan aturan lalu lintas jaringan untuk penyeimbang beban lingkungan Anda. 

Contoh berikut berlaku untuk lingkungan single instance atau multi-instance (load balanced):

**Example 5 - Perbarui lingkungan kembali menggunakan grup keamanan default (opsi namespace dalam `options.json` file)**  

```
aws elasticbeanstalk update-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2023 v6.5.0 running Node.js 22" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "DisableDefaultEC2SecurityGroup",
    "Value": "false"
  }
]
```

## Mengkonfigurasi EC2 dengan tipe instans menggunakan AWS CLI
<a name="using-features.managing.ec2.aws-cli.instance-types"></a>

Topik ini memberikan contoh untuk mengonfigurasi tipe instans dari instans EC2 di lingkungan Anda.

Dua contoh pertama menciptakan lingkungan baru. Perintah menentukan jenis instans Amazon EC2, t4g.small, yang didasarkan pada arsitektur prosesor arm64. Elastic Beanstalk me-default Image ID (AMI) untuk instans EC2 berdasarkan Region, versi platform, dan jenis instans. Jenis instance sesuai dengan arsitektur prosesor. `solution-stack-name`Parameter ini berlaku untuk versi platform.

**Example 1 - buat lingkungan berbasis arm64 baru (opsi namespace inline)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role \
Namespace=aws:ec2:instances,OptionName=InstanceTypes,Value=t4g.small
```



Sebagai alternatif, gunakan `options.json` file untuk menentukan opsi namespace alih-alih memasukkannya sebaris.

**Example 2 - buat lingkungan berbasis arm64 baru (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "IamInstanceProfile",
    "Value": "aws-elasticbeanstalk-ec2-role"
  },
  {
    "Namespace": "aws:ec2:instances",
    "OptionName": "InstanceTypes",
    "Value": "t4g.small"
  }
]
```





Dua contoh berikutnya memperbarui konfigurasi untuk lingkungan yang ada dengan perintah [update-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/update-environment.html). Dalam contoh ini kita menambahkan jenis instance lain yang juga didasarkan pada arsitektur prosesor arm64. Untuk lingkungan yang ada, semua jenis instance yang ditambahkan harus memiliki arsitektur prosesor yang sama. Jika Anda ingin mengganti jenis instance yang ada dengan yang berasal dari arsitektur yang berbeda, Anda dapat melakukannya. Tetapi pastikan bahwa semua jenis instance dalam perintah memiliki tipe arsitektur yang sama.

**Example 3 - perbarui lingkungan berbasis arm64 yang ada (opsi namespace sebaris)**  

```
aws elasticbeanstalk update-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role \
Namespace=aws:ec2:instances,OptionName=InstanceTypes,Value=t4g.small,t4g.micro
```



Sebagai alternatif, gunakan `options.json` file untuk menentukan opsi namespace alih-alih memasukkannya sebaris.

**Example 4 - memperbarui lingkungan berbasis arm64 yang ada (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk update-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "IamInstanceProfile",
    "Value": "aws-elasticbeanstalk-ec2-role"
  },
  {
    "Namespace": "aws:ec2:instances",
    "OptionName": "InstanceTypes",
    "Value": "t4g.small, t4g.micro"
  }
]
```





Dua contoh berikutnya menunjukkan lebih banyak perintah [create-environment](https://docs.aws.amazon.com/cli/latest/reference/elasticbeanstalk/create-environment.html). Contoh-contoh ini tidak memberikan nilai untuk`InstanceTypes`. Ketika `InstanceTypes` nilai tidak ditentukan, Elastic Beanstalk default ke arsitektur prosesor berbasis x86. ID Gambar (AMI) untuk instans EC2 lingkungan akan default sesuai dengan Wilayah, versi platform, dan jenis instans default. Jenis instance sesuai dengan arsitektur prosesor. 

**Example 5 - buat lingkungan berbasis x86 baru (opsi namespace inline)**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings \
Namespace=aws:autoscaling:launchconfiguration,OptionName=IamInstanceProfile,Value=aws-elasticbeanstalk-ec2-role
```



Sebagai alternatif, gunakan `options.json` file untuk menentukan opsi namespace alih-alih memasukkannya sebaris.

**Example 6 - buat lingkungan berbasis x86 baru (opsi namespace dalam file) `options.json`**  

```
aws elasticbeanstalk create-environment \
--region us-east-1 \
--application-name my-app \
--environment-name my-env \
--solution-stack-name "64bit Amazon Linux 2 v3.4.7 running Docker" \
--option-settings file://options.json
```

**Example**  

```
### example options.json ###
[
  {
    "Namespace": "aws:autoscaling:launchconfiguration",
    "OptionName": "IamInstanceProfile",
    "Value": "aws-elasticbeanstalk-ec2-role"
  }
]
```