

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

# Menyebarkan aplikasi.NET Windows dengan Elastic Beanstalk
<a name="create_deploy_NET"></a>

**Lihat *.NET di Pusat AWS Pengembang***  
  
Sudahkah Anda mampir ke *Pusat Pengembang.Net* kami? Ini adalah one stop shop kami untuk semua hal. NET di AWS.  
Untuk informasi lebih lanjut, lihat [.NET di Pusat AWS Pengembang](https://aws.amazon.com/developer/language/net).

Bab ini memberikan instruksi untuk mengkonfigurasi dan menyebarkan aplikasi web ASP.NET dan .NET Core Windows Anda ke. AWS Elastic Beanstalk Elastic Beanstalk memudahkan penerapan, pengelolaan, dan skala aplikasi web.NET (Windows) Anda menggunakan Amazon Web Services.

Anda dapat menerapkan aplikasi Anda hanya dalam beberapa menit menggunakan Elastic Beanstalk Command Line Interface (EB CLI) atau dengan menggunakan konsol Elastic Beanstalk. Setelah Anda menerapkan aplikasi Elastic Beanstalk Anda, Anda dapat terus menggunakan EB CLI untuk mengelola aplikasi dan lingkungan Anda, atau Anda dapat menggunakan konsol Elastic Beanstalk,, atau. AWS CLI APIs

Bab ini menyediakan tutorial berikut:
+ [QuickStart untuk .NET Core di Windows](dotnet-quickstart.md)— Step-by-step instruksi untuk membuat dan menyebarkan aplikasi *Hello World* .NET Core Windows menggunakan EB CLI.
+ [QuickStart untuk ASP.NET](aspnet-quickstart.md)— Step-by-step instruksi untuk membuat dan menyebarkan aplikasi *Hello World* ASP.NET menggunakan aplikasi. AWS Toolkit for Visual Studio

Jika Anda memerlukan bantuan dengan pengembangan aplikasi Windows .NET Core, ada beberapa tempat yang dapat Anda kunjungi:
+  [.NET Development Forum](https://forums.aws.amazon.com/forum.jspa?forumID=61) - Posting pertanyaan Anda dan dapatkan umpan balik.
+ [.NET Developer Center](https://aws.amazon.com/net/) — Toko serba ada untuk kode sampel, dokumentasi, alat, dan sumber daya tambahan.
+ [AWS SDK for .NET](https://aws.amazon.com/documentation/sdk-for-net/) Documentation — Baca tentang menyiapkan SDK dan menjalankan contoh kode, fitur SDK, dan informasi terperinci tentang operasi API untuk SDK.

**catatan**  
Platform ini tidak mendukung lingkungan pekerja. Lihat perinciannya di [Lingkungan pekerja Elastic Beanstalk](using-features-managing-env-tiers.md). 

**Topics**
+ [QuickStart: Menyebarkan .NET Core pada aplikasi Windows ke Elastic Beanstalk](dotnet-quickstart.md)
+ [QuickStart: Menyebarkan aplikasi ASP.NET ke Elastic Beanstalk](aspnet-quickstart.md)
+ [Menyiapkan lingkungan pengembangan .NET Anda](dotnet-devenv.md)
+ [Menggunakan platform Elastic Beanstalk .NET Windows](create_deploy_NET.container.console.md)
+ [Menambahkan instans DB Amazon RDS ke lingkungan aplikasi .NET Anda](create_deploy_NET.rds.md)
+ [The AWS Toolkit for Visual Studio](dotnet-toolkit.md)
+ [Memigrasi aplikasi .NET On-Premise Anda ke Elastic Beanstalk](dotnet-onpremmigration.md)
+ [Rekomendasi untuk komponen pensiun Windows Server pada Elastic Beanstalk](dotnet-deprecation-recommendations.md)

# QuickStart: Menyebarkan .NET Core pada aplikasi Windows ke Elastic Beanstalk
<a name="dotnet-quickstart"></a>

 QuickStart Tutorial ini memandu Anda melalui proses pembuatan .NET Core pada aplikasi Windows dan menyebarkannya ke AWS Elastic Beanstalk lingkungan.

**Bukan untuk penggunaan produksi**  
Contoh dimaksudkan untuk demonstrasi saja. Jangan gunakan contoh aplikasi dalam produksi.

**Topics**
+ [AWS Akun Anda](#dotnet-quickstart-aws-account)
+ [Prasyarat](#dotnet-quickstart-prereq)
+ [Langkah 1: Buat .NET Core pada aplikasi Windows](#dotnet-quickstart-create-app)
+ [Langkah 2: Jalankan aplikasi Anda secara lokal](#dotnet-quickstart-run-local)
+ [Langkah 3: Menyebarkan .NET Core Anda pada aplikasi Windows dengan EB CLI](#dotnet-quickstart-deploy)
+ [Langkah 4: Jalankan aplikasi Anda di Elastic Beanstalk](#dotnet-quickstart-run-eb-ap)
+ [Langkah 5: Bersihkan](#go-tutorial-cleanup)
+ [AWS sumber daya untuk aplikasi Anda](#dotnet-quickstart-eb-resources)
+ [Langkah selanjutnya](#dotnet-quickstart-next-steps)
+ [Terapkan dengan konsol Elastic Beanstalk](#dotnet-quickstart-console)

## AWS Akun Anda
<a name="dotnet-quickstart-aws-account"></a>

Jika Anda belum menjadi AWS pelanggan, Anda perlu membuat AWS akun. Mendaftar memungkinkan Anda mengakses Elastic Beanstalk AWS dan layanan lain yang Anda butuhkan.

Jika Anda sudah memiliki AWS akun, Anda dapat melanjutkan ke[Prasyarat](#dotnet-quickstart-prereq).

### Buat AWS akun
<a name="dotnet-quickstart-aws-account-procedure"></a>

#### Mendaftar untuk Akun AWS
<a name="sign-up-for-aws"></a>

Jika Anda tidak memiliki Akun AWS, selesaikan langkah-langkah berikut untuk membuatnya.

**Untuk mendaftar untuk Akun AWS**

1. Buka [https://portal.aws.amazon.com/billing/pendaftaran.](https://portal.aws.amazon.com/billing/signup)

1. Ikuti petunjuk online.

   Bagian dari prosedur pendaftaran melibatkan menerima panggilan telepon atau pesan teks dan memasukkan kode verifikasi pada keypad telepon.

   Saat Anda mendaftar untuk sebuah Akun AWS, sebuah *Pengguna root akun AWS*dibuat. Pengguna root memiliki akses ke semua Layanan AWS dan sumber daya di akun. Sebagai praktik keamanan terbaik, tetapkan akses administratif ke pengguna, dan gunakan hanya pengguna root untuk melakukan [tugas yang memerlukan akses pengguna root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS mengirimi Anda email konfirmasi setelah proses pendaftaran selesai. Kapan saja, Anda dapat melihat aktivitas akun Anda saat ini dan mengelola akun Anda dengan masuk [https://aws.amazon.com.rproxy.goskope.comke/](https://aws.amazon.com/) dan memilih **Akun Saya**.

#### Buat pengguna dengan akses administratif
<a name="create-an-admin"></a>

Setelah Anda mendaftar Akun AWS, amankan Pengguna root akun AWS, aktifkan AWS IAM Identity Center, dan buat pengguna administratif sehingga Anda tidak menggunakan pengguna root untuk tugas sehari-hari.

**Amankan Anda Pengguna root akun AWS**

1.  Masuk ke [Konsol Manajemen AWS](https://console.aws.amazon.com/)sebagai pemilik akun dengan memilih **pengguna Root** dan memasukkan alamat Akun AWS email Anda. Di laman berikutnya, masukkan kata sandi.

   Untuk bantuan masuk dengan menggunakan pengguna root, lihat [Masuk sebagai pengguna root](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) di *AWS Sign-In Panduan Pengguna*.

1. Mengaktifkan autentikasi multi-faktor (MFA) untuk pengguna root Anda.

   Untuk petunjuk, lihat [Mengaktifkan perangkat MFA virtual untuk pengguna Akun AWS root (konsol) Anda](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) di Panduan Pengguna *IAM*.

**Buat pengguna dengan akses administratif**

1. Aktifkan Pusat Identitas IAM.

   Untuk mendapatkan petunjuk, silakan lihat [Mengaktifkan AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) di *Panduan Pengguna AWS IAM Identity Center *.

1. Di Pusat Identitas IAM, berikan akses administratif ke pengguna.

   Untuk tutorial tentang menggunakan Direktori Pusat Identitas IAM sebagai sumber identitas Anda, lihat [Mengkonfigurasi akses pengguna dengan default Direktori Pusat Identitas IAM](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) di *Panduan AWS IAM Identity Center Pengguna*.

**Masuk sebagai pengguna dengan akses administratif**
+ Untuk masuk dengan pengguna Pusat Identitas IAM, gunakan URL masuk yang dikirim ke alamat email saat Anda membuat pengguna Pusat Identitas IAM.

  Untuk bantuan masuk menggunakan pengguna Pusat Identitas IAM, lihat [Masuk ke portal AWS akses](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) di *Panduan AWS Sign-In Pengguna*.

**Tetapkan akses ke pengguna tambahan**

1. Di Pusat Identitas IAM, buat set izin yang mengikuti praktik terbaik menerapkan izin hak istimewa paling sedikit.

   Untuk petunjuknya, lihat [Membuat set izin](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) di *Panduan AWS IAM Identity Center Pengguna*.

1. Tetapkan pengguna ke grup, lalu tetapkan akses masuk tunggal ke grup.

   Untuk petunjuk, lihat [Menambahkan grup](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) di *Panduan AWS IAM Identity Center Pengguna*.

## Prasyarat
<a name="dotnet-quickstart-prereq"></a>

Untuk mengikuti prosedur di panduan ini, Anda memerlukan terminal atau shell baris perintah untuk menjalankan perintah. Perintah ditampilkan dalam daftar yang didahului oleh simbol prompt (>) dan nama direktori saat ini, bila sesuai.

```
C:\eb-project> this is a command
this is output
```

### EB CLI
<a name="dotnet-quickstart-prereq.ebcli"></a>

Tutorial ini menggunakan Elastic Beanstalk Command Line Interface (EB CLI). Untuk detail tentang pemasangan dan konfigurasi EB CLI, lihat [Instal EB CLI dengan skrip pengaturan (disarankan)](eb-cli3.md#eb-cli3-install) dan [Mengonfigurasi EB CLI](eb-cli3-configuration.md).

### .NET Core pada Windows
<a name="dotnet-quickstart-prereq.runtime"></a>

Jika Anda tidak memiliki .NET SDK diinstal pada mesin lokal Anda, Anda dapat menginstalnya dengan mengikuti tautan [Download.NET](https://dotnet.microsoft.com/en-us/download) di situs web [dokumentasi.NET](https://learn.microsoft.com/en-us/dotnet/).

Verifikasi instalasi .NET SDK Anda dengan menjalankan perintah berikut.

```
C:\> dotnet --info
```

## Langkah 1: Buat .NET Core pada aplikasi Windows
<a name="dotnet-quickstart-create-app"></a>

Buat direktori proyek.

```
C:\> mkdir eb-dotnetcore
C:\> cd eb-dotnetcore
```

Selanjutnya, buat contoh aplikasi layanan RESTful web Hello World dengan menjalankan perintah berikut.

```
C:\eb-dotnetcore> dotnet new web --name HelloElasticBeanstalk
C:\eb-dotnetcore> cd HelloElasticBeanstalk
```

## Langkah 2: Jalankan aplikasi Anda secara lokal
<a name="dotnet-quickstart-run-local"></a>

Jalankan perintah berikut untuk menjalankan aplikasi Anda secara lokal.

```
C:\eb-dotnetcore\HelloElasticBeasntalk> dotnet run
```

Outputnya akan terlihat seperti teks berikut.

```
info: Microsoft.Hosting.Lifetime[14]
      Now listening on: https://localhost:7222
info: Microsoft.Hosting.Lifetime[14]
      Now listening on: http://localhost:5228
info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Development
info: Microsoft.Hosting.Lifetime[0]
      Content root path: C:\Users\Administrator\eb-dotnetcore\HelloElasticBeanstalk
```

**catatan**  
`dotnet`Perintah memilih port secara acak saat menjalankan aplikasi secara lokal. Dalam contoh ini port adalah 5228. Saat Anda menerapkan aplikasi ke lingkungan Elastic Beanstalk Anda, aplikasi akan berjalan pada port 5000.

Masukkan alamat URL `http://localhost:port` di browser web Anda. Untuk contoh spesifik ini, perintahnya adalah`http://localhost:5228`. Browser web harus menampilkan “Hello World\$1”.

## Langkah 3: Menyebarkan .NET Core Anda pada aplikasi Windows dengan EB CLI
<a name="dotnet-quickstart-deploy"></a>

Jalankan perintah berikut untuk membuat lingkungan Elastic Beanstalk untuk aplikasi ini.

 

**Untuk membuat lingkungan dan menyebarkan .NET Core Anda pada aplikasi Windows**

1. Jalankan perintah berikut di `HelloElasticBeanstalk` direktori untuk mempublikasikan dan zip aplikasi Anda.

   ```
   C:\eb-dotnetcore\HelloElasticBeasntalk> dotnet publish -o site
   C:\eb-dotnetcore\HelloElasticBeasntalk> cd site
   C:\eb-dotnetcore\HelloElasticBeasntalk\site> Compress-Archive -Path * -DestinationPath ../site.zip
   C:\eb-dotnetcore\HelloElasticBeasntalk\site> cd ..
   ```

1. Buat file baru dalam `HelloElasticBeanstalk` panggilan `aws-windows-deployment-manifest.json` dengan konten berikut: 

   ```
   {
       "manifestVersion": 1,
       "deployments": {
           "aspNetCoreWeb": [
           {
               "name": "test-dotnet-core",
               "parameters": {
                   "appBundle": "site.zip",
                   "iisPath": "/",
                   "iisWebSite": "Default Web Site"
               }
           }
           ]
       }
   }
   ```

1. Inisialisasi repositori EB CLI Anda dengan perintah **eb init**.

   ```
   C:\eb-dotnetcore\HelloElasticBeasntalk> eb init -p iis dotnet-windows-server-tutorial --region us-east-2
   ```

   Perintah ini membuat aplikasi bernama `dotnet-windows-server-tutorial` dan mengkonfigurasi repositori lokal Anda untuk membuat lingkungan dengan versi platform server Windows terbaru.

1. Buat lingkungan baru dan deploy aplikasi Anda dengan **eb create**. Elastic Beanstalk secara otomatis membuat file zip untuk aplikasi Anda dan memulainya pada port 5000.

   ```
   C:\eb-dotnetcore\HelloElasticBeasntalk> eb create dotnet-windows-server-env
   ```

   Dibutuhkan sekitar lima menit untuk Elastic Beanstalk untuk menciptakan lingkungan Anda.

## Langkah 4: Jalankan aplikasi Anda di Elastic Beanstalk
<a name="dotnet-quickstart-run-eb-ap"></a>

Ketika proses untuk membuat lingkungan Anda selesai, buka situs web Anda dengan**eb open**.

```
C:\eb-dotnetcore\HelloElasticBeasntalk> eb open
```

Selamat\$1 Anda telah menerapkan .NET Core pada aplikasi Windows dengan Elastic Beanstalk\$1 Ini akan membuka jendela peramban menggunakan nama domain yang dibuat untuk aplikasi Anda.

## Langkah 5: Bersihkan
<a name="go-tutorial-cleanup"></a>

Anda dapat menghentikan lingkungan Anda ketika Anda selesai bekerja dengan aplikasi Anda. Elastic Beanstalk AWS mengakhiri semua sumber daya yang terkait dengan lingkungan Anda.

Untuk mengakhiri lingkungan Elastic Beanstalk Anda dengan EB CLI jalankan perintah berikut.

```
C:\eb-dotnetcore\HelloElasticBeasntalk> eb terminate
```

## AWS sumber daya untuk aplikasi Anda
<a name="dotnet-quickstart-eb-resources"></a>

Anda baru saja membuat aplikasi instance tunggal. Ini berfungsi sebagai aplikasi sampel langsung dengan satu instans EC2, sehingga tidak memerlukan penyeimbangan beban atau penskalaan otomatis. Untuk aplikasi contoh tunggal Elastic Beanstalk menciptakan sumber daya berikut: AWS 
+ **Instans EC2** – Mesin virtual Amazon EC2 yang dikonfigurasi untuk menjalankan aplikasi web di platform yang Anda pilih.

  Setiap platform menjalankan satu set perangkat lunak, file konfigurasi, dan penulisan yang berbeda untuk mendukung versi bahasa, kerangka kerja, kontainer web tertentu, atau kombinasi dari semua ini. Sebagian besar platform menggunakan Apache atau nginx sebagai proksi terbalik yang memproses lalu lintas web di depan aplikasi web Anda, meneruskan permintaan ke aplikasi web, menyajikan aset statis, dan menghasilkan log akses dan kesalahan.
+ **Grup keamanan instans** – Grup keamanan Amazon EC2 yang dikonfigurasi untuk mengizinkan lalu lintas masuk di port 80. Sumber daya ini memungkinkan lalu lintas HTTP dari penyeimbang beban mencapai instans EC2 yang menjalankan aplikasi web Anda. Secara default, lalu lintas tidak diizinkan di port lain.
+ **Bucket Amazon S3** – Lokasi penyimpanan untuk kode sumber, log, dan artifact lainnya yang dibuat saat Anda menggunakan Elastic Beanstalk.
+ ** CloudWatch Alarm Amazon** — Dua CloudWatch alarm yang memantau beban pada instans di lingkungan Anda dan dipicu jika beban terlalu tinggi atau terlalu rendah. Saat alarm terpicu, grup Auto Scaling Anda akan menaikkan atau menurunkan skala sebagai respons.
+ **CloudFormation stack** - Elastic CloudFormation Beanstalk digunakan untuk meluncurkan sumber daya di lingkungan Anda dan menyebarkan perubahan konfigurasi. Sumber daya ditentukan di sebuah templat yang dapat Anda lihat di [Konsol CloudFormation](https://console.aws.amazon.com/cloudformation).
+  **Nama domain — Nama** domain yang merutekan ke aplikasi web Anda dalam formulir **subdomain*. *region*.elasticbeanstalk.com*. 

Elastic Beanstalk mengelola semua sumber daya tersebut. Ketika Anda mengakhiri lingkungan, Elastic Beanstalk mengakhiri semua sumber daya yang dimuatnya.

## Langkah selanjutnya
<a name="dotnet-quickstart-next-steps"></a>

Setelah lingkungan Anda menjalankan aplikasi, Anda dapat men-deploy versi baru aplikasi atau aplikasi yang berbeda kapan saja. Men-deploy versi aplikasi baru itu sangat cepat karena tidak memerlukan persediaan atau memulai ulang instans EC2. Anda juga dapat menjelajahi lingkungan baru Anda menggunakan konsol Elastic Beanstalk. Untuk langkah-langkah mendetail, lihat [Menjelajahi lingkungan Anda](GettingStarted.md#GettingStarted.Explore) di bagian *Memulai* panduan ini.

**Coba lebih banyak tutorial**  
Jika Anda ingin mencoba tutorial lain dengan aplikasi contoh yang berbeda, lihat[QuickStart untuk ASP.NET](aspnet-quickstart.md).

Setelah Anda menerapkan satu atau dua contoh aplikasi dan siap untuk mulai mengembangkan dan menjalankan .NET Core pada aplikasi Windows secara lokal, lihat [Menyiapkan lingkungan pengembangan .NET Anda](dotnet-devenv.md) 

## Terapkan dengan konsol Elastic Beanstalk
<a name="dotnet-quickstart-console"></a>

Anda juga dapat menggunakan konsol Elastic Beanstalk untuk meluncurkan aplikasi sampel. Untuk langkah-langkah rinci, lihat [Membuat aplikasi contoh](GettingStarted.md#GettingStarted.CreateApp) di Bab *Memulai* panduan ini.

# QuickStart: Menyebarkan aplikasi ASP.NET ke Elastic Beanstalk
<a name="aspnet-quickstart"></a>

 QuickStart Tutorial ini memandu Anda melalui proses membuat aplikasi ASP.NET dan menyebarkannya ke lingkungan AWS Elastic Beanstalk .

**Bukan untuk penggunaan produksi**  
Contoh dimaksudkan untuk demonstrasi saja. Jangan gunakan contoh aplikasi dalam produksi.

**Topics**
+ [AWS Akun Anda](#aspnet-quickstart-aws-account)
+ [Prasyarat](#aspnet-quickstart-prereq)
+ [Langkah 1: Buat aplikasi ASP.NET](#aspnet-quickstart-create-app)
+ [Langkah 2: Jalankan aplikasi Anda secara lokal](#aspnet-quickstart-run-local)
+ [Langkah 3: Menyebarkan aplikasi ASP.NET Anda dengan AWS Toolkit for Visual Studio](#aspnet-quickstart-deploy)
+ [Langkah 4: Jalankan aplikasi Anda di Elastic Beanstalk](#aspnet-quickstart-run-eb-ap)
+ [Langkah 5: Bersihkan](#aspnet-quickstart-cleanup)
+ [AWS sumber daya untuk aplikasi Anda](#aspnet-quickstart-eb-resources)
+ [Langkah selanjutnya](#aspnet-quickstart-next-steps)
+ [Terapkan dengan konsol Elastic Beanstalk](#aspnet-quickstart-console)

## AWS Akun Anda
<a name="aspnet-quickstart-aws-account"></a>

Jika Anda belum menjadi AWS pelanggan, Anda perlu membuat AWS akun. Mendaftar memungkinkan Anda mengakses Elastic Beanstalk AWS dan layanan lain yang Anda butuhkan.

Jika Anda sudah memiliki AWS akun, Anda dapat melanjutkan ke[Prasyarat](#aspnet-quickstart-prereq).

### Buat AWS akun
<a name="aspnet-quickstart-aws-account-procedure"></a>

#### Mendaftar untuk Akun AWS
<a name="sign-up-for-aws"></a>

Jika Anda tidak memiliki Akun AWS, selesaikan langkah-langkah berikut untuk membuatnya.

**Untuk mendaftar untuk Akun AWS**

1. Buka [https://portal.aws.amazon.com/billing/pendaftaran.](https://portal.aws.amazon.com/billing/signup)

1. Ikuti petunjuk online.

   Bagian dari prosedur pendaftaran melibatkan menerima panggilan telepon atau pesan teks dan memasukkan kode verifikasi pada keypad telepon.

   Saat Anda mendaftar untuk sebuah Akun AWS, sebuah *Pengguna root akun AWS*dibuat. Pengguna root memiliki akses ke semua Layanan AWS dan sumber daya di akun. Sebagai praktik keamanan terbaik, tetapkan akses administratif ke pengguna, dan gunakan hanya pengguna root untuk melakukan [tugas yang memerlukan akses pengguna root](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_root-user.html#root-user-tasks).

AWS mengirimkan email konfirmasi setelah proses pendaftaran selesai. Kapan saja, Anda dapat melihat aktivitas akun Anda saat ini dan mengelola akun Anda dengan masuk [https://aws.amazon.com.rproxy.goskope.comke/](https://aws.amazon.com/) dan memilih **Akun Saya**.

#### Buat pengguna dengan akses administratif
<a name="create-an-admin"></a>

Setelah Anda mendaftar Akun AWS, amankan Pengguna root akun AWS, aktifkan AWS IAM Identity Center, dan buat pengguna administratif sehingga Anda tidak menggunakan pengguna root untuk tugas sehari-hari.

**Amankan Anda Pengguna root akun AWS**

1.  Masuk ke [Konsol Manajemen AWS](https://console.aws.amazon.com/)sebagai pemilik akun dengan memilih **pengguna Root** dan memasukkan alamat Akun AWS email Anda. Di laman berikutnya, masukkan kata sandi.

   Untuk bantuan masuk dengan menggunakan pengguna root, lihat [Masuk sebagai pengguna root](https://docs.aws.amazon.com/signin/latest/userguide/console-sign-in-tutorials.html#introduction-to-root-user-sign-in-tutorial) di *AWS Sign-In Panduan Pengguna*.

1. Mengaktifkan autentikasi multi-faktor (MFA) untuk pengguna root Anda.

   Untuk petunjuk, lihat [Mengaktifkan perangkat MFA virtual untuk pengguna Akun AWS root (konsol) Anda](https://docs.aws.amazon.com/IAM/latest/UserGuide/enable-virt-mfa-for-root.html) di Panduan Pengguna *IAM*.

**Buat pengguna dengan akses administratif**

1. Aktifkan Pusat Identitas IAM.

   Untuk mendapatkan petunjuk, silakan lihat [Mengaktifkan AWS IAM Identity Center](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-set-up-for-idc.html) di *Panduan Pengguna AWS IAM Identity Center *.

1. Di Pusat Identitas IAM, berikan akses administratif ke pengguna.

   Untuk tutorial tentang menggunakan Direktori Pusat Identitas IAM sebagai sumber identitas Anda, lihat [Mengkonfigurasi akses pengguna dengan default Direktori Pusat Identitas IAM](https://docs.aws.amazon.com//singlesignon/latest/userguide/quick-start-default-idc.html) di *Panduan AWS IAM Identity Center Pengguna*.

**Masuk sebagai pengguna dengan akses administratif**
+ Untuk masuk dengan pengguna Pusat Identitas IAM, gunakan URL masuk yang dikirim ke alamat email saat Anda membuat pengguna Pusat Identitas IAM.

  Untuk bantuan masuk menggunakan pengguna Pusat Identitas IAM, lihat [Masuk ke portal AWS akses](https://docs.aws.amazon.com/signin/latest/userguide/iam-id-center-sign-in-tutorial.html) di *Panduan AWS Sign-In Pengguna*.

**Tetapkan akses ke pengguna tambahan**

1. Di Pusat Identitas IAM, buat set izin yang mengikuti praktik terbaik menerapkan izin hak istimewa paling sedikit.

   Untuk petunjuknya, lihat [Membuat set izin](https://docs.aws.amazon.com//singlesignon/latest/userguide/get-started-create-a-permission-set.html) di *Panduan AWS IAM Identity Center Pengguna*.

1. Tetapkan pengguna ke grup, lalu tetapkan akses masuk tunggal ke grup.

   Untuk petunjuk, lihat [Menambahkan grup](https://docs.aws.amazon.com//singlesignon/latest/userguide/addgroups.html) di *Panduan AWS IAM Identity Center Pengguna*.

## Prasyarat
<a name="aspnet-quickstart-prereq"></a>

 QuickStart Tutorial ini memandu Anda melalui pembuatan aplikasi “Hello World” dan menyebarkannya ke lingkungan Elastic Beanstalk dengan Visual Studio dan. AWS Toolkit for Visual Studio

### Studio Visual
<a name="aspnet-quickstart-prereq.vs"></a>

Untuk mengunduh dan menginstal Visual Studio ikuti petunjuk di [halaman unduhan](https://visualstudio.microsoft.com/downloads/) Visual Studio. Contoh ini menggunakan Visual Studio 2022. Selama instalasi Visual Studio pilih item spesifik ini:
+ Pada tab **Workloads** — pilih **ASP.NET dan pengembangan web**.
+ Pada tab **Komponen individu** - pilih **alat pengembangan.NET Framework 4.8** dan **templat proyek dan item .NET Framework**.

### AWS Toolkit for Visual Studio
<a name="aspnet-quickstart-prereq.aws-vs-tk"></a>

Untuk mengunduh dan mengatur AWS Toolkit for Visual Studio ikuti petunjuk dalam topik [Memulai](https://docs.aws.amazon.com/toolkit-for-visual-studio/latest/user-guide/getting-set-up.html) Panduan AWS Toolkit for Visual Studio Pengguna. 

## Langkah 1: Buat aplikasi ASP.NET
<a name="aspnet-quickstart-create-app"></a>

Selanjutnya, buat aplikasi yang akan Anda terapkan ke lingkungan Elastic Beanstalk. Kami akan membuat aplikasi web ASP.NET “Hello World”.

**Untuk membuat aplikasi ASP.NET**

1. Luncurkan Visual Studio. Di menu **File**, pilih **New**, lalu **Project**.

1. Kotak dialog **Create a new project** akan ditampilkan. Pilih **aplikasi web ASP.NET (.NET Framework)**, lalu pilih **Berikutnya**.

1. Pada dialog **Configure your new project**, masukkan `eb-aspnet` **nama Project** Anda. **Dari menu dropdown **Framework** pilih **.NET Framework 4.8**, lalu pilih Create.**

   Perhatikan direktori proyek. Dalam contoh ini, direktori proyek adalah`C:\Users\Administrator\source\repos\eb-aspnet\eb-aspnet`.

1. Dialog **Create a new ASP.NET Web Application** ditampilkan. Pilih template **Kosong**. Selanjutnya pilih **Buat**.

   Pada titik ini, Anda telah membuat proyek aplikasi web ASP.NET kosong menggunakan Visual Studio. Selanjutnya, kita akan membuat formulir web yang akan berfungsi sebagai titik masuk untuk aplikasi web ASP.NET.

1. Dari menu **Project**, pilih **Add New Item**. Pada halaman **Tambahkan Item Baru**, pilih **Formulir Web** dan beri nama`Default.aspx`. Selanjutnya pilih **Tambah**.

1. Tambahkan yang berikut ini ke `Default.aspx:`

   ```
   <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="eb_aspnet.Default" %>
   
   <!DOCTYPE html>
   
   <html xmlns="https://www.w3.org/1999/xhtml">
   <head runat="server">
       <title>Hello Elastic Beanstalk!</title>
   </head>
   <body>
       <form id="body" runat="server">
           <div>
               Hello Elastic Beanstalk! This is an ASP.NET on Windows Server application.
           </div>
       </form>
   </body>
   </html>
   ```

## Langkah 2: Jalankan aplikasi Anda secara lokal
<a name="aspnet-quickstart-run-local"></a>

Di Visual Studio, dari menu **Debug** pilih **Start Debugging** untuk menjalankan aplikasi Anda secara lokal. Halaman harus menampilkan “Hello Elastic Beanstalk\$1 Ini adalah ASP.NET pada aplikasi Windows Server.”

## Langkah 3: Menyebarkan aplikasi ASP.NET Anda dengan AWS Toolkit for Visual Studio
<a name="aspnet-quickstart-deploy"></a>

Ikuti langkah-langkah ini untuk membuat lingkungan Elastic Beanstalk dan menyebarkan aplikasi baru Anda ke sana.

**Untuk membuat lingkungan dan menyebarkan aplikasi ASP.NET Anda**

1. Di **Solution Explorer**, klik kanan aplikasi Anda, lalu pilih **Publish to AWS Elastic Beanstalk**.

1. Pilih nama untuk aplikasi dan lingkungan Elastic Beanstalk baru Anda.

1. Di luar titik ini, Anda dapat melanjutkan dengan default yang disediakan oleh Elastic Beanstalk atau memodifikasi salah satu opsi dan pengaturan sesuai keinginan Anda.

1. Pada halaman **Review**, pilih **Deploy**. Ini akan mengemas aplikasi web ASP.NET Anda dan menyebarkannya ke Elastic Beanstalk.

   Dibutuhkan sekitar lima menit untuk Elastic Beanstalk untuk menciptakan lingkungan Anda. Fitur deployment Elastic Beanstalk akan memantau lingkungan Anda sampai tersedia dengan kode yang baru di-deploy. Pada tab **Env: < **environment name** >**, Anda akan melihat status untuk lingkungan Anda.

## Langkah 4: Jalankan aplikasi Anda di Elastic Beanstalk
<a name="aspnet-quickstart-run-eb-ap"></a>

Ketika proses untuk membuat lingkungan Anda selesai, tab **Env: < **environment name** >**, menampilkan informasi tentang lingkungan dan aplikasi Anda, termasuk URL domain untuk meluncurkan aplikasi Anda. Pilih URL ini di tab ini atau salin dan tempel ke browser web Anda.

Selamat\$1 Anda telah menerapkan aplikasi ASP.NET dengan Elastic Beanstalk\$1

## Langkah 5: Bersihkan
<a name="aspnet-quickstart-cleanup"></a>

Ketika Anda selesai bekerja dengan aplikasi Anda, Anda dapat mengakhiri lingkungan Anda di. AWS Toolkit for Visual Studio

**Untuk mengakhiri lingkungan Anda**

1. Perluas simpul Elastic Beanstalk dan simpul aplikasi di **AWS Explorer**. Klik kanan lingkungan aplikasi Anda dan pilih **Mengakhiri Lingkungan**.

1. Saat diminta, pilih **Ya** untuk mengonfirmasi bahwa Anda ingin mengakhiri lingkungan. Diperlukan beberapa menit bagi Elastic Beanstalk untuk AWS menghentikan sumber daya yang berjalan di lingkungan.

## AWS sumber daya untuk aplikasi Anda
<a name="aspnet-quickstart-eb-resources"></a>

Anda baru saja membuat aplikasi instance tunggal. Ini berfungsi sebagai aplikasi sampel langsung dengan satu instans EC2, sehingga tidak memerlukan penyeimbangan beban atau penskalaan otomatis. Untuk aplikasi contoh tunggal Elastic Beanstalk menciptakan sumber daya berikut: AWS 
+ **Instans EC2** – Mesin virtual Amazon EC2 yang dikonfigurasi untuk menjalankan aplikasi web di platform yang Anda pilih.

  Setiap platform menjalankan satu set perangkat lunak, file konfigurasi, dan penulisan yang berbeda untuk mendukung versi bahasa, kerangka kerja, kontainer web tertentu, atau kombinasi dari semua ini. Sebagian besar platform menggunakan Apache atau nginx sebagai proksi terbalik yang memproses lalu lintas web di depan aplikasi web Anda, meneruskan permintaan ke aplikasi web, menyajikan aset statis, dan menghasilkan log akses dan kesalahan.
+ **Grup keamanan instans** – Grup keamanan Amazon EC2 yang dikonfigurasi untuk mengizinkan lalu lintas masuk di port 80. Sumber daya ini memungkinkan lalu lintas HTTP dari penyeimbang beban mencapai instans EC2 yang menjalankan aplikasi web Anda. Secara default, lalu lintas tidak diizinkan di port lain.
+ **Bucket Amazon S3** – Lokasi penyimpanan untuk kode sumber, log, dan artifact lainnya yang dibuat saat Anda menggunakan Elastic Beanstalk.
+ ** CloudWatch Alarm Amazon** — Dua CloudWatch alarm yang memantau beban pada instans di lingkungan Anda dan dipicu jika beban terlalu tinggi atau terlalu rendah. Saat alarm terpicu, grup Auto Scaling Anda akan menaikkan atau menurunkan skala sebagai respons.
+ **CloudFormation stack** - Elastic CloudFormation Beanstalk digunakan untuk meluncurkan sumber daya di lingkungan Anda dan menyebarkan perubahan konfigurasi. Sumber daya ditentukan di sebuah templat yang dapat Anda lihat di [Konsol CloudFormation](https://console.aws.amazon.com/cloudformation).
+  **Nama domain — Nama** domain yang merutekan ke aplikasi web Anda dalam formulir **subdomain*. *region*.elasticbeanstalk.com*. 

Elastic Beanstalk mengelola semua sumber daya tersebut. Ketika Anda mengakhiri lingkungan, Elastic Beanstalk mengakhiri semua sumber daya yang dimuatnya.

## Langkah selanjutnya
<a name="aspnet-quickstart-next-steps"></a>

Setelah lingkungan Anda menjalankan aplikasi, Anda dapat men-deploy versi baru aplikasi atau aplikasi yang berbeda kapan saja. Men-deploy versi aplikasi baru itu sangat cepat karena tidak memerlukan persediaan atau memulai ulang instans EC2. Anda juga dapat menjelajahi lingkungan baru Anda menggunakan konsol Elastic Beanstalk. Untuk langkah-langkah mendetail, lihat [Menjelajahi lingkungan Anda](GettingStarted.md#GettingStarted.Explore) di bagian *Memulai* panduan ini.

**Coba lebih banyak tutorial**  
Jika Anda ingin mencoba tutorial lain dengan aplikasi contoh yang berbeda, lihat[QuickStart untuk .NET Core di Windows](dotnet-quickstart.md).

Setelah Anda menerapkan satu atau dua contoh aplikasi dan siap untuk mulai mengembangkan dan menjalankan aplikasi ASP.NET secara lokal, lihat [Menyiapkan lingkungan pengembangan .NET Anda](dotnet-devenv.md) 

## Terapkan dengan konsol Elastic Beanstalk
<a name="aspnet-quickstart-console"></a>

Anda juga dapat menggunakan konsol Elastic Beanstalk untuk meluncurkan aplikasi sampel. Untuk langkah-langkah rinci, lihat [Membuat aplikasi contoh](GettingStarted.md#GettingStarted.CreateApp) di Bab *Memulai* panduan ini.

# Menyiapkan lingkungan pengembangan .NET Anda
<a name="dotnet-devenv"></a>

Topik ini memberikan petunjuk untuk menyiapkan lingkungan pengembangan.NET Windows untuk menguji aplikasi Anda secara lokal sebelum menerapkannya. AWS Elastic Beanstalk Ini juga merujuk situs web yang menyediakan instruksi instalasi untuk alat yang berguna.

**Topics**
+ [Menginstal IDE](#dotnet-devenv-ide)
+ [Memasang AWS Toolkit for Visual Studio](#dotnet-devenv-toolkit)

Jika Anda perlu mengelola AWS sumber daya dari dalam aplikasi Anda, instal AWS SDK for .NET. Sebagai contoh, Anda dapat menggunakan Amazon S3 untuk menyimpan dan mengambil data.

Dengan AWS SDK for .NET, Anda dapat memulai dalam hitungan menit dengan satu paket yang dapat diunduh lengkap dengan template proyek Visual Studio, pustaka .NET, AWS sampel kode C \$1, dan dokumentasi. Contoh praktis disediakan di C\$1 tentang bagaimana menggunakan pustaka untuk membangun aplikasi. Tutorial video online dan dokumentasi referensi disediakan untuk membantu Anda mempelajari cara menggunakan pustaka dan sampel kode.

Kunjungi [beranda AWS SDK for .NET](https://aws.amazon.com/sdk-for-net/) untuk informasi selengkapnya dan petunjuk instalasi.

## Menginstal IDE
<a name="dotnet-devenv-ide"></a>

Lingkungan pengembangan terintegrasi (IDEs) menyediakan berbagai fitur yang memfasilitasi pengembangan aplikasi. Jika Anda belum menggunakan IDE untuk pengembangan .NET, cobalah Visual Studio Community untuk memulai.

Kunjungi halaman [Studio Visual Community](https://www.visualstudio.com/vs/community/) untuk mengunduh dan menginstal Visual Studio Community.

## Memasang AWS Toolkit for Visual Studio
<a name="dotnet-devenv-toolkit"></a>

[AWS Toolkit for Visual Studio](dotnet-toolkit.md)Ini adalah plug-in open source untuk Visual Studio IDE yang memudahkan pengembang untuk mengembangkan, men-debug, dan menyebarkan aplikasi.NET menggunakan. AWS Kunjungi [beranda Toolkit for Visual Studio](https://aws.amazon.com/visualstudio/) untuk petunjuk instalasi.

# Menggunakan platform Elastic Beanstalk .NET Windows
<a name="create_deploy_NET.container.console"></a>

Topik ini menjelaskan cara mengkonfigurasi, membangun, dan menjalankan aplikasi web ASP.NET dan .NET Core Windows Anda di Elastic Beanstalk.

AWS Elastic Beanstalk mendukung sejumlah platform untuk berbagai versi kerangka pemrograman .NET dan Windows Server. Lihat [.NET di Windows Server dengan IIS](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.net) di dokumen *Platform AWS Elastic Beanstalk * untuk daftar yang lengkap.

Elastic [Beanstalk menyediakan](command-options.md) opsi konfigurasi yang dapat Anda gunakan untuk menyesuaikan perangkat lunak yang berjalan EC2 pada instance di lingkungan Elastic Beanstalk Anda. Anda dapat mengonfigurasi variabel lingkungan yang dibutuhkan oleh aplikasi Anda, mengaktifkan rotasi log ke Amazon S3, dan mengatur pengaturan kerangka kerja .NET.

Opsi konfigurasi tersedia di konsol Elastic Beanstalk untuk [memodifikasi konfigurasi dari lingkungan yang sedang berjalan](environment-configuration-methods-after.md). Agar Anda tidak kehilangan konfigurasi lingkungan ketika mengakhirinya, Anda dapat menggunakan [konfigurasi tersimpan](environment-configuration-savedconfig.md) untuk menyimpan pengaturan dan kemudian menerapkannya ke lingkungan lain.

Untuk menyimpan pengaturan di kode sumber, Anda dapat menyertakan [file konfigurasi](ebextensions.md). Pengaturan di file konfigurasi diterapkan setiap kali Anda membuat lingkungan atau men-deploy aplikasi Anda. Anda juga dapat menggunakan file konfigurasi untuk menginstal paket, menjalankan penulisan, dan melakukan operasi penyesuaian instans lainnya selama deployment.

Pengaturan yang diterapkan di konsol Elastic Beanstalk mengganti pengaturan yang sama di file konfigurasi, jika ada. Hal tersebut memungkinkan Anda memiliki pengaturan default di file konfigurasi, dan mengganti keduanya dengan pengaturan khusus lingkungan di konsol tersebut. Untuk informasi selengkapnya tentang yang diutamakan, dan metode lain untuk mengubah pengaturan, lihat [Opsi konfigurasi](command-options.md).

## Mengonfigurasi lingkungan .NET Anda di konsol Elastic Beanstalk
<a name="dotnet-console"></a>

Anda dapat menggunakan konsol Elastic Beanstalk untuk mengaktifkan rotasi log ke Amazon S3, mengonfigurasi variabel yang dapat dibaca aplikasi dari lingkungan, dan mengubah pengaturan kerangka kerja .NET.

**Untuk mengonfigurasi lingkungan .NET Anda di konsol Elastic Beanstalk**

1. **Buka konsol [Elastic Beanstalk, dan di daftar Wilayah, pilih konsol Elastic](https://console.aws.amazon.com/elasticbeanstalk) Beanstalk.** Wilayah AWS

1. Di panel navigasi, pilih **Lingkungan**, dan kemudian pilih nama lingkungan Anda dari daftar.

1. Pada panel navigasi, pilih **Konfigurasi**.

1. Dalam kategori konfigurasi **Pembaruan, pemantauan, dan pencatatan**, pilih **Edit**.

### Opsi kontainer
<a name="dotnet-console-framework"></a>
+ **Target waktu aktif .NET** – Atur ke `2.0` untuk menjalankan CLR v2.
+ **Aktifkan aplikasi 32-bit** – Atur ke `True` untuk menjalankan aplikasi 32-bit.

### Opsi log
<a name="dotnet-console-logs"></a>

Bagian Opsi Log memiliki dua pengaturan:
+ **Profil instans** – Menentukan profil instans yang memiliki izin untuk mengakses bucket Amazon S3 yang terkait dengan aplikasi Anda.
+ **Aktifkan rotasi file log ke Amazon S3** — Menentukan apakah file log untuk EC2 instans Amazon aplikasi Anda disalin ke bucket Amazon S3 yang terkait dengan aplikasi Anda.

### Properti lingkungan
<a name="dotnet-console-properties"></a>

Bagian **Properti Lingkungan** memungkinkan Anda menentukan pengaturan konfigurasi lingkungan pada EC2 instance Amazon yang menjalankan aplikasi Anda. Pengaturan ini diteruskan sebagai pasangan nilai kunci ke aplikasi. Gunakan `System.GetEnvironmentVariable` untuk membacanya. Kunci identik dapat ada di kedua `web.config` dan sebagai properti lingkungan. Gunakan namespace `System.Configuration` untuk membaca nilai-nilai dari `web.config`.

```
NameValueCollection appConfig = ConfigurationManager.AppSettings;
string endpoint = appConfig["API_ENDPOINT"];
```

Lihat [Variabel lingkungan dan pengaturan perangkat lunak lainnya](environments-cfg-softwaresettings.md) untuk informasi selengkapnya.

## Namespace aws:elasticbeanstalk:container:dotnet:apppool
<a name="dotnet-namespaces"></a>

Anda dapat menggunakan [file konfigurasi](ebextensions.md) untuk mengatur opsi konfigurasi dan melakukan tugas-tugas konfigurasi instans lain selama deployment. Opsi konfigurasi dapat berupa [platform khusus](command-options-specific.md) atau berlaku untuk [semua platform di layanan](command-options-general.md) Elastic Beanstalk secara keseluruhan. Opsi konfigurasi diatur ke dalam *ruang nama*.

Platform .NET menentukan opsi di namespace `aws:elasticbeanstalk:container:dotnet:apppool` yang dapat Anda gunakan untuk mengonfigurasi waktu aktif .NET.

File konfigurasi contoh berikut menunjukkan pengaturan untuk masing-masing opsi yang tersedia di namespace ini:

**Example .ebextensions/go-settings.config**  

```
option_settings:
  aws:elasticbeanstalk:container:dotnet:apppool:
    Target Runtime: 2.0
    Enable 32-bit Applications: True
```

Elastic Beanstalk memberikan banyak opsi konfigurasi untuk menyesuaikan lingkungan Anda. Selain file konfigurasi, Anda juga dapat mengatur opsi konfigurasi menggunakan konsol tersebut, konfigurasi tersimpan, EB CLI, atau AWS CLI. Lihat [Opsi konfigurasi](command-options.md) untuk informasi selengkapnya.

# Migrasi di versi utama dari platform server Elastic Beanstalk Windows
<a name="dotnet-v2migration"></a>

AWS Elastic Beanstalk telah memiliki beberapa versi utama dari platform Windows Server-nya. Halaman ini mencakup perbaikan utama untuk setiap versi utama, dan hal yang harus dipertimbangkan sebelum Anda memigrasi ke versi yang lebih baru.

Platform Windows Server saat ini di versi 2 (v2). Jika aplikasi Anda menggunakan versi platform Windows Server sebelum versi v2, kami sarankan Anda bermigrasi ke v2.

## Apa yang baru di versi utama platform server Windows
<a name="dotnet-v2migration.diffs"></a>

### Platform server Windows V2
<a name="dotnet-v2migration.diffs.v2"></a>

Versi 2 (v2) platform Elastic Beanstalk Windows Server [dirilis pada bulan Februari 2019](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2019-02-21-windows-v2.html). V2 membawa perilaku platform Windows Server lebih dekat dengan platform Elastic Beanstalk berbasis Linux dalam beberapa cara penting. V2 sepenuhnya kompatibel dengan v1, membuat migrasi dari v1 mudah.

Platform Windows Server sekarang mendukung hal berikut:
+ *Versioning* – Setiap rilis mendapat nomor versi baru, dan Anda dapat mengacu ke versi sebelumnya (yang masih tersedia untuk Anda) saat membuat dan mengelola lingkungan.
+ *Peningkatan kondisi* – Untuk detailnya, lihat [Peningkatan pelaporan dan pemantauan kesehatan di Elastic Beanstalk](health-enhanced.md).
+ Deployment *Tetap* dan *Bergulir dengan Batch Tambahan* – Untuk detail tentang kebijakan deployment, lihat [Men-deploy aplikasi ke lingkungan Elastic Beanstalk](using-features.deploy-existing-version.md).
+ *Pembaruan tetap* – Untuk detail tentang tipe pembaruan, lihat [Perubahan konfigurasi](environments-updating.md).
+ *Pembaruan platform terkelola* – Untuk detailnya, lihat [Pembaruan platform yang dikelola](environment-platform-update-managed.md).

**catatan**  
Fitur deployment dan pembaruan baru tergantung pada peningkatan kondisi. Aktifkan peningkatan kondisi untuk menggunakannya. Untuk detailnya, lihat [Mengaktifkan pelaporan kondisi yang ditingkatkan Elastic Beanstalk](health-enhanced-enable.md).

### Platform server Windows V1
<a name="dotnet-v2migration.diffs.v1"></a>

Versi 1.0.0 (v1) platform Elastic Beanstalk Windows Server dirilis pada bulan Oktober 2015. Versi ini mengubah urutan tempat Elastic Beanstalk memproses perintah di [file konfigurasi](ebextensions.md) selama pembuatan dan pembaruan lingkungan.

Versi platform sebelumnya tidak memiliki nomor versi di nama tumpukan solusi:
+ 64bit Windows Server 2012 R2 menjalankan IIS 8.5
+ 64bit Windows Server Core 2012 R2 menjalankan IIS 8.5
+ 64bit Windows Server 2012 menjalankan IIS 8
+ 64bit Windows Server 2008 R2 menjalankan IIS 7.5

Di versi sebelumnya, urutan pemrosesan file konfigurasi tidak konsisten. Selama pembuatan lingkungan, `Container Commands` yang menjalankan sumber aplikasi di-deploy ke IIS. Selama deployment ke lingkungan berjalan, perintah kontainer dijalankan sebelum versi baru di-deploy. Selama menaikkan skala, file konfigurasi tidak diproses sama sekali.

Selain itu, IIS dimulai sebelum perintah kontainer berjalan. Perilaku ini menyebabkan beberapa pelanggan untuk menerapkan solusi di kontainer perintah, menghentikan server IIS sebelum menjalankan perintah, dan memulai lagi setelah mereka selesai.

Versi 1 memperbaiki ketidakkonsistenan dan membawa perilaku platform Windows Server lebih dekat dengan platform Elastic Beanstalk berbasis Linux. Di platform v1, Elastic Beanstalk selalu menjalankan kontainer perintah sebelum memulai server IIS.

Tumpukan solusi platform v1 memiliki `v1` setelah versi Windows Server:
+ 64bit Windows Server 2012 R2 v1.1.0 menjalankan IIS 8.5
+ 64bit Windows Server Core 2012 R2 v1.1.0 menjalankan IIS 8.5
+ 64bit Windows Server 2012 v1.1.0 menjalankan IIS 8
+ 64bit Windows Server 2008 R2 v1.1.0 menjalankan IIS 7.5

Selain itu, platform v1 mengekstrak isi paket sumber aplikasi Anda ke `C:\staging\` sebelum menjalankan kontainer perintah. Setelah kontainer perintah selesai, isi folder ini dikompresi ke dalam file .zip dan di-deploy ke IIS. Alur kerja ini mengizinkan Anda untuk memodifikasi isi paket sumber aplikasi Anda dengan perintah atau tulisan sebelum deployment.

## Migrasi dari versi utama sebelumnya dari platform server Windows
<a name="dotnet-v2migration.migration"></a>

Baca bagian ini untuk pertimbangan migrasi sebelum memperbarui lingkungan. Untuk memperbarui platform lingkungan Anda ke versi yang lebih baru, lihat [Memperbarui versi platform lingkungan Elastic Beanstalk Anda](using-features.platform.upgrade.md).

### Dari V1 ke V2
<a name="dotnet-v2migration.migration.fromv1"></a>

Platform Windows Server v2 tidak mendukung .NET Core 1.x dan 2.0. Jika Anda memigrasi aplikasi Anda dari Windows Server v1 ke v2, dan aplikasi Anda menggunakan salah satu versi .NET Core ini, perbarui aplikasi Anda ke versi .NET Core yang didukung v2. Untuk daftar versi yang didukung, lihat [.NET di Windows Server dengan IIS](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.net) di *Platform AWS Elastic Beanstalk *.

Jika aplikasi Anda menggunakan Amazon Machine Image (AMI) khusus, buat AMI khusus baru berdasarkan platform Windows Server v2 AMI. Untuk pelajari selengkapnya, lihat [Menggunakan image mesin Amazon kustom (AMI) di lingkungan Elastic Beanstalk Anda](using-features.customenv.md).

**catatan**  
Fitur deployment dan pembaruan yang baru bagi Windows Server v2 bergantung pada peningkatan kondisi. Ketika Anda memigrasi lingkungan ke v2, peningkatan kondisi dinonaktifkan. Aktifkan untuk menggunakan fitur ini. Untuk detailnya, lihat [Mengaktifkan pelaporan kondisi yang ditingkatkan Elastic Beanstalk](health-enhanced-enable.md).

### Dari pre-V1
<a name="dotnet-v2migration.migration.fromv0"></a>

Selain pertimbangan untuk migrasi dari v1, jika Anda memigrasi aplikasi Anda dari tumpukan solusi Windows Server sebelum versi v1, dan Anda saat ini menggunakan kontainer perintah, hapus perintah yang ditambahkan untuk mengatasi masalah sekitar ketidakkonsistenan pengolahan ketika Anda bermigrasi ke versi yang lebih baru. Dimulai dengan v1, kontainer perintah dijamin untuk berjalan sepenuhnya sebelum sumber aplikasi yang di-deploy dan sebelum IIS dimulai. Hal ini memungkinkan Anda untuk membuat perubahan ke sumber di `C:\staging` dan memodifikasi file konfigurasi IIS selama langkah ini tanpa masalah.

Misalnya, Anda dapat menggunakan file AWS CLI untuk mengunduh file DLL ke sumber aplikasi Anda dari Amazon S3:

`.ebextensions\copy-dll.config`

```
container_commands:
  copy-dll:
    command: aws s3 cp s3://amzn-s3-demo-bucket/dlls/large-dll.dll .\lib\
```

Untuk informasi selengkapnya tentang menggunakan file konfigurasi, lihat [Penyesuaian lingkungan lanjutan dengan file konfigurasi (`.ebextensions`)](ebextensions.md).

# Menjalankan beberapa aplikasi dan aplikasi ASP.NET Core dengan manifes deployment
<a name="dotnet-manifest"></a>

Anda dapat menggunakan manifes deployment untuk memberitahu Elastic Beanstalk cara men-deploy aplikasi Anda. Dengan menggunakan metode ini, Anda tidak perlu menggunakan `MSDeploy` untuk menghasilkan paket sumber untuk satu aplikasi ASP.NET yang berjalan di jalur akar situs web Anda. Sebaliknya, Anda dapat menggunakan file manifes untuk menjalankan beberapa aplikasi di jalur yang berbeda. Atau, Anda dapat memberitahu Elastic Beanstalk untuk men-deploy dan menjalankan aplikasi dengan ASP.NET Core. Anda juga dapat menggunakan manifes deployment untuk mengonfigurasi kolam aplikasi tempat aplikasi Anda dijalankan.

Manifes deployment menambahkan dukungan untuk [Aplikasi .NET Core](#dotnet-manifest-dotnetcore) ke Elastic Beanstalk. Anda dapat men-deploy aplikasi .NET Framework tanpa manifes deployment. Namun, aplikasi .NET Core memerlukan manifes deployment untuk berjalan di Elastic Beanstalk. Ketika Anda menggunakan manifes deployment, Anda membuat arsip situs untuk setiap aplikasi, dan kemudian memaketkan arsip situs di arsip ZIP kedua yang berisi manifes deployment.

Manifes deployment juga menambahkan kemampuan untuk [menjalankan beberapa aplikasi di jalur yang berbeda](#dotnet-manifest-multiapp). Manifes deployment mendefinisikan array target deployment, masing-masing dengan arsip situs dan jalur tempat IIS harus menjalankannya. Sebagai contoh, Anda dapat menjalankan API web di jalur `/api` untuk melayani permintaan asinkron, dan aplikasi web di jalur akar yang mengonsumsi API.

Anda dapat menggunakan manifes penerapan untuk [mengonfigurasi situs web IIS dengan binding kustom](#dotnet-manifest-websites) dan jalur fisik. Ini memungkinkan Anda untuk mengatur situs web yang mendengarkan port atau nama host tertentu sebelum menerapkan aplikasi Anda.

Anda juga dapat menggunakan manifes deployment untuk [menjalankan beberapa aplikasi menggunakan kolam aplikasi di IIS atau Kestrel](#dotnet-manifest-apppool). Anda dapat mengonfigurasi kolam aplikasi untuk memulai ulang aplikasi Anda secara berkala, menjalankan aplikasi 32-bit, atau menggunakan versi tertentu dari waktu aktif .NET Framework.

Untuk kustomisasi penuh, Anda dapat [menulis skrip penyebaran Anda sendiri](#dotnet-manifest-custom) di Windows PowerShell dan memberi tahu Elastic Beanstalk skrip mana yang harus dijalankan untuk menginstal, menghapus, dan memulai ulang aplikasi Anda.

Manifes deployment dan fitur terkait memerlukan platform Windows Server [versi 1.2.0 atau lebih baru](dotnet-v2migration.md).

Untuk informasi mendetail tentang semua opsi konfigurasi, properti, dan fitur lanjutan yang tersedia seperti melewatkan penyetelan ulang IIS, lihat referensi skema manifes [penerapan](dotnet-manifest-schema.md).

**Topics**
+ [Aplikasi .NET core](#dotnet-manifest-dotnetcore)
+ [Jalankan beberapa aplikasi](#dotnet-manifest-multiapp)
+ [Konfigurasikan situs web IIS](#dotnet-manifest-websites)
+ [Menggunakan Application Request Routing (ARR)](#dotnet-manifest-arr)
+ [Mengonfigurasi kolam aplikasi](#dotnet-manifest-apppool)
+ [Menentukan deployment khusus](#dotnet-manifest-custom)
+ [Referensi skema manifes penerapan](dotnet-manifest-schema.md)

## Aplikasi .NET core
<a name="dotnet-manifest-dotnetcore"></a>

Anda dapat menggunakan manifes deployment untuk menjalankan aplikasi .NET Core di Elastic Beanstalk. .NET Core adalah versi lintas platform dari .NET yang datang dengan alat baris perintah (`dotnet`). Anda dapat menggunakannya untuk menghasilkan aplikasi, menjalankannya secara lokal, dan menyiapkannya untuk penerbitan.

Untuk menjalankan aplikasi .NET Core di Elastic Beanstalk, Anda dapat menjalankan `dotnet publish` dan paket output di arsip ZIP, tidak termasuk direktori yang berisi. Menempatkan arsip situs di paket sumber dengan manifes deployment dengan target deployment tipe `aspNetCoreWeb`.

Manifes deployment berikut menjalankan aplikasi .NET Core dari arsip situs bernama `dotnet-core-app.zip` di jalur akar.

**Example aws-windows-deployment-manifest.json - .NET inti**  

```
{
  "manifestVersion": 1,
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "my-dotnet-core-app",
        "parameters": {
          "archive": "dotnet-core-app.zip",
          "iisPath": "/"
        }
      }
    ]
  }
}
```

Paketkan manifes dan arsip situs di arsip ZIP untuk membuat paket sumber.

**Example dotnet-core-bundle.zip**  

```
.
|-- aws-windows-deployment-manifest.json
`-- dotnet-core-app.zip
```

Arsip situs berisi kode aplikasi yang dikompilasi, dependensi, dan file `web.config`.

**Example dotnet-core-app.zip**  

```
.
|-- Microsoft.AspNetCore.Hosting.Abstractions.dll
|-- Microsoft.AspNetCore.Hosting.Server.Abstractions.dll
|-- Microsoft.AspNetCore.Hosting.dll
|-- Microsoft.AspNetCore.Http.Abstractions.dll
|-- Microsoft.AspNetCore.Http.Extensions.dll
|-- Microsoft.AspNetCore.Http.Features.dll
|-- Microsoft.AspNetCore.Http.dll
|-- Microsoft.AspNetCore.HttpOverrides.dll
|-- Microsoft.AspNetCore.Server.IISIntegration.dll
|-- Microsoft.AspNetCore.Server.Kestrel.dll
|-- Microsoft.AspNetCore.WebUtilities.dll
|-- Microsoft.Extensions.Configuration.Abstractions.dll
|-- Microsoft.Extensions.Configuration.EnvironmentVariables.dll
|-- Microsoft.Extensions.Configuration.dll
|-- Microsoft.Extensions.DependencyInjection.Abstractions.dll
|-- Microsoft.Extensions.DependencyInjection.dll
|-- Microsoft.Extensions.FileProviders.Abstractions.dll
|-- Microsoft.Extensions.FileProviders.Physical.dll
|-- Microsoft.Extensions.FileSystemGlobbing.dll
|-- Microsoft.Extensions.Logging.Abstractions.dll
|-- Microsoft.Extensions.Logging.dll
|-- Microsoft.Extensions.ObjectPool.dll
|-- Microsoft.Extensions.Options.dll
|-- Microsoft.Extensions.PlatformAbstractions.dll
|-- Microsoft.Extensions.Primitives.dll
|-- Microsoft.Net.Http.Headers.dll
|-- System.Diagnostics.Contracts.dll
|-- System.Net.WebSockets.dll
|-- System.Text.Encodings.Web.dll
|-- dotnet-core-app.deps.json
|-- dotnet-core-app.dll
|-- dotnet-core-app.pdb
|-- dotnet-core-app.runtimeconfig.json
`-- web.config
```

## Jalankan beberapa aplikasi
<a name="dotnet-manifest-multiapp"></a>

Anda dapat menjalankan beberapa aplikasi menggunakan manifes deployment dengan mendefinisikan beberapa target deployment.

Manifes deployment berikut mengonfigurasi dua aplikasi .NET Core. `WebApiSampleApp`Aplikasi ini mengimplementasikan API web sederhana dan menyajikan permintaan asinkron di jalur. `/api` Aplikasi `DotNetSampleApp` adalah aplikasi web yang melayani permintaan di jalur akar.

**Example aws-windows-deployment-manifest.json - beberapa aplikasi**  

```
{
  "manifestVersion": 1,
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "WebAPISample",
        "parameters": {
          "appBundle": "WebApiSampleApp.zip",
          "iisPath": "/api"
        }
      },
      {
        "name": "DotNetSample",
        "parameters": {
          "appBundle": "DotNetSampleApp.zip",
          "iisPath": "/"
        }
      }
    ]
  }
}
```

Aplikasi sampel dengan beberapa aplikasi tersedia di sini:
+ **Bundel sumber yang dapat digunakan** [- -v2.zip dotnet-multiapp-sample-bundle](samples/dotnet-multiapp-sample-bundle-v2.zip)
+ **Kode sumber** - [dotnet-multiapp-sample-source-v2.zip](samples/dotnet-multiapp-sample-source-v2.zip)

## Konfigurasikan situs web IIS
<a name="dotnet-manifest-websites"></a>

Anda dapat mengonfigurasi situs web IIS dengan binding kustom dan jalur fisik menggunakan manifes penerapan. Ini berguna saat Anda perlu menyiapkan situs web yang mendengarkan port tertentu, menggunakan nama host khusus, atau menyajikan konten dari direktori tertentu.

Manifes penerapan berikut mengonfigurasi situs web IIS kustom yang mendengarkan HTTP dengan nomor port tertentu dan jalur fisik khusus:

**Example aws-windows-deployment-manifest.json - Konfigurasi situs web IIS**  

```
{
  "manifestVersion": 1,
  "iisConfig": {
    "websites": [
      {
        "name": "MyCustomSite",
        "physicalPath": "C:\inetpub\wwwroot\mysite",
        "bindings": [
          {
            "protocol": "http",
            "port": 8080,
            "hostName": "mysite.local"
          }
        ]
      }
    ]
  },
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "my-dotnet-core-app",
        "parameters": {
          "appBundle": "dotnet-core-app.zip",
          "iisWebSite": "MyCustomSite",
          "iisPath": "/"
        }
      }
    ]
  }
}
```

Dalam contoh ini:
+ Sebuah situs web bernama MyCustomSite "" dibuat dengan jalur fisik khusus
+ Situs web ini memiliki pengikatan HTTP pada port 8080 dengan nama host tertentu
+ Aplikasi ASP.NET Core diterapkan ke situs web khusus ini menggunakan parameter `iisWebSite`

## Menggunakan Application Request Routing (ARR)
<a name="dotnet-manifest-arr"></a>

Modul Application Request Routing (ARR) dan URL Rewrite sudah diinstal sebelumnya dan tersedia di Elastic Beanstalk Windows. AMIs Modul-modul ini memungkinkan skenario routing lanjutan dan manipulasi URL melalui konfigurasi IIS menggunakan ebextensions atau konfigurasi aplikasi.

Contoh berikut menunjukkan manifes penerapan sederhana yang mengonfigurasi situs web dengan port khusus, dikombinasikan dengan konfigurasi ebextensions yang mengatur perutean ARR dasar:

**Example aws-windows-deployment-manifest.json - Pengaturan ARR sederhana**  

```
{
  "manifestVersion": 1,
  "iisConfig": {
    "websites": [
      {
        "name": "ARRSite",
        "physicalPath": "C:\\inetpub\\wwwroot\\arrsite",
        "bindings": [
          {
            "protocol": "http",
            "port": 8080,
            "hostName": "localhost"
          }
        ]
      }
    ]
  },
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "BackendApp",
        "parameters": {
          "appBundle": "backend-app.zip",
          "iisWebSite": "ARRSite",
          "iisPath": "/backend"
        }
      }
    ]
  }
}
```

Konfigurasi ARR dilakukan melalui ebextensions. Konfigurasi berikut mengatur aturan perutean ARR dasar:

**Example .ebextensions/arr-config.config - Konfigurasi ARR dasar**  

```
files:
  "C:\\temp\\configure-arr.ps1":
    content: |
      # Enable ARR proxy at server level
      Set-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter 'system.webServer/proxy' -Name 'enabled' -Value 'True'
      
      # Clear any existing global rules to avoid conflicts
      Clear-WebConfiguration -PSPath 'MACHINE/WEBROOT/APPHOST' -Filter 'system.webServer/rewrite/globalRules'

      # Add global rule to route all requests to backend
      Add-WebConfigurationProperty -PSPath 'MACHINE/WEBROOT/APPHOST' `
        -Filter 'system.webServer/rewrite/globalRules' `
        -Name '.' `
        -Value @{
          name = 'Route_to_Backend'
          stopProcessing = 'True'
          match = @{ url = '^(?!backend/)(.*)' }
          action = @{
            type = 'Rewrite'
            url = 'http://localhost:8080/backend/{R:1}'
          }
        }

container_commands:
  01_configure_arr:
    command: powershell -ExecutionPolicy Bypass -File "C:\\temp\\configure-arr.ps1"
    waitAfterCompletion: 0
```

Konfigurasi ini membuat situs web pada port 8080 dan menyiapkan ARR untuk merutekan semua permintaan yang masuk ke aplikasi backend yang berjalan di situs itu.

## Mengonfigurasi kolam aplikasi
<a name="dotnet-manifest-apppool"></a>

Anda dapat mendukung beberapa aplikasi di lingkungan Windows Anda. Dua pendekatan yang tersedia:
+ Anda dapat menggunakan model out-of-process hosting dengan server web Kestrel. Dengan model ini, Anda mengonfigurasi beberapa aplikasi untuk berjalan dalam satu kolam aplikasi.
+ Anda dapat menggunakan model hosting dalam proses. Dengan model ini, Anda menggunakan beberapa kolam aplikasi untuk menjalankan beberapa aplikasi hanya dengan satu aplikasi di setiap kolam. Jika Anda menggunakan server IIS dan perlu menjalankan beberapa aplikasi, Anda harus menggunakan pendekatan ini.

Untuk mengonfigurasi Kestrel agar menjalankan beberapa aplikasi di satu kolam aplikasi, tambahkan `hostingModel="OutofProcess"` di file `web.config`. Pertimbangkan contoh berikut.

**Example web.config - untuk model hosting Kestrel out-of-process**  

```
<configuration>
<location path="." inheritInChildApplications="false">
<system.webServer>
<handlers>
<add 
    name="aspNetCore" 
    path="*" verb="*" 
    modules="AspNetCoreModuleV2" 
    resourceType="Unspecified" />
</handlers>
<aspNetCore 
    processPath="dotnet" 
    arguments=".\CoreWebApp-5-0.dll" 
    stdoutLogEnabled="false" 
    stdoutLogFile=".\logs\stdout" 
    hostingModel="OutofProcess" />
</system.webServer>
</location>
</configuration>
```

**Example aws-windows-deployment-manifest.json - beberapa aplikasi**  

```
{
"manifestVersion": 1,
  "deployments": {"msDeploy": [
      {"name": "Web-app1",
        "parameters": {"archive": "site1.zip",
          "iisPath": "/"
        }
      },
      {"name": "Web-app2",
        "parameters": {"archive": "site2.zip",
          "iisPath": "/app2"
        }
      }
    ]
  }
}
```

IIS tidak mendukung beberapa aplikasi dalam di satu kolam aplikasi karena menggunakan model hosting dalam proses. Oleh karena itu, Anda perlu mengonfigurasi beberapa aplikasi dengan menetapkan setiap aplikasi ke satu kolam aplikasi. Dengan kata lain, tetapkan hanya satu aplikasi ke satu kolam aplikasi.

Anda dapat mengonfigurasi IIS untuk menggunakan kolam aplikasi yang berbeda di file `aws-windows-deployment-manifest.json`. Lakukan pembaruan berikut saat Anda merujuk ke file contoh berikutnya:
+ Tambahkan bagian `iisConfig` yang mencakup subbagian yang disebut `appPools`.
+ Di blok `appPools`, buat daftar kolam aplikasi. 
+ Di bagian `deployments`, definisikan sebuah bagian `parameters` untuk setiap aplikasi.
+ Untuk setiap aplikasi bagian `parameters` menentukan sebuah arsip, sebuah jalur untuk menjalankannya, dan sebuah `appPool` tempat untuk menjalankannya.

Manifes deployment berikut mengonfigurasi dua kolam aplikasi yang memulai ulang aplikasi mereka setiap 10 menit. Mereka juga melampirkan aplikasi mereka ke aplikasi web .NET Framework yang berjalan di jalur yang ditentukan.

**Example aws-windows-deployment-manifest.json - satu aplikasi per kumpulan aplikasi**  

```
{
"manifestVersion": 1,
  "iisConfig": {"appPools": [
      {"name": "MyFirstPool",
       "recycling": {"regularTimeInterval": 10}
      },
      {"name": "MySecondPool",
       "recycling": {"regularTimeInterval": 10}
      }
     ]
    },
  "deployments": {"msDeploy": [
      {"name": "Web-app1",
        "parameters": {
           "archive": "site1.zip",
           "iisPath": "/",
           "appPool": "MyFirstPool"
           }
      },
      {"name": "Web-app2",
        "parameters": {
           "archive": "site2.zip",
           "iisPath": "/app2",
           "appPool": "MySecondPool"
          }
      }
     ]
    }
}
```

## Menentukan deployment khusus
<a name="dotnet-manifest-custom"></a>

Untuk kontrol lebih, Anda dapat sepenuhnya menyesuaikan deployment aplikasi dengan mendefinisikan *deployment khusus*.

Manifes penerapan ini menginstruksikan Elastic Beanstalk untuk mengeksekusi skrip dalam mode 32-bit. PowerShell Ini menentukan tiga skrip: `install` script (`siteInstall.ps1`) yang berjalan selama peluncuran dan penerapan instance, `uninstall` script (`siteUninstall.ps1`) yang dijalankan sebelum menginstal versi baru selama penerapan, dan `restart` script (`siteRestart.ps1`) yang berjalan saat Anda memilih [Restart](environments-dashboard-actions.md) App Server di konsol manajemen. AWS 

**Example aws-windows-deployment-manifest.json - penyebaran kustom**  

```
{
  "manifestVersion": 1,
  "deployments": {
    "custom": [
      {
        "name": "Custom site",
        "architecture" : 32,
        "scripts": {
          "install": {
            "file": "siteInstall.ps1"
          },
          "restart": {
            "file": "siteRestart.ps1"
          },
          "uninstall": {
            "file": "siteUninstall.ps1"
          }
        }
      }
    ]
  }
}
```

Sertakan Artifact yang diperlukan untuk menjalankan aplikasi dalam paket sumber Anda dengan manifes dan penulisan.

**Example C. ustom-site-bundle Zip**  

```
.
|-- aws-windows-deployment-manifest.json
|-- siteInstall.ps1
|-- siteRestart.ps1
|-- siteUninstall.ps1
`-- site-contents.zip
```

# Referensi skema manifes penerapan
<a name="dotnet-manifest-schema"></a>

Manifes penyebaran adalah file JSON yang mendefinisikan bagaimana Elastic Beanstalk harus menyebarkan dan mengkonfigurasi aplikasi Windows Anda. Bagian ini menyediakan referensi komprehensif untuk semua properti yang didukung dan opsi konfigurasi dalam skema manifes.

## Struktur manifes
<a name="dotnet-manifest-schema-structure"></a>

Manifes penerapan mengikuti skema JSON tertentu dengan struktur tingkat atas berikut:

**Example Struktur manifes dasar**  

```
{
  "manifestVersion": 1,
  "skipIISReset": false,
  "iisConfig": {
    "websites": [...],
    "appPools": [...]
  },
  "deployments": {
    "msDeploy": [...],
    "aspNetCoreWeb": [...],
    "custom": [...]
  }
}
```

### Properti tingkat atas
<a name="dotnet-manifest-schema-top-level"></a>

`manifestVersion`(Diperlukan)  
*Jenis*: Angka  
*Default:* 1  
*Nilai yang valid:* 1  
Menentukan versi skema manifes. Saat ini, hanya versi 1 yang didukung.

`skipIISReset` (opsional)  
*Jenis:* Boolean  
*Default:* false  
Mengontrol apakah IIS disetel ulang selama penerapan aplikasi. Bendera ini memengaruhi keduanya `msDeploy` dan jenis `aspNetCoreWeb` penerapan.  
*Perilaku:*  
+ *Tidak ditentukan atau `false` (default):* Reset IIS dilakukan selama operasi penginstalan, uninstall, dan pembaruan. Ini adalah perilaku tradisional.
+ *`true`:* Reset IIS dilewati selama operasi penerapan.
*Manfaat:*  
+ *Mengurangi waktu henti* - Aplikasi mengalami interupsi layanan yang lebih pendek selama penerapan.
+ *Penerapan yang lebih cepat* — Menghilangkan waktu yang diperlukan IIS untuk memulai ulang dan menginisialisasi ulang sepenuhnya.
Saat menggunakan`skipIISReset`, [RestartAppServer](https://docs.aws.amazon.com/elasticbeanstalk/latest/api/API_RestartAppServer.html)operasi melakukan reset IIS terlepas dari pengaturan bendera ini.
*Contoh:*  

```
{
  "manifestVersion": 1,
  "skipIISReset": true,
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "my-dotnet-core-app",
        "parameters": {
          "archive": "dotnet-core-app.zip",
          "iisPath": "/"
        }
      }
    ]
  }
}
```

`deployments`(Diperlukan)  
*Jenis:* Objek  
Berisi konfigurasi penerapan untuk aplikasi Anda. Objek ini dapat mencakup`msDeploy`,`aspNetCoreWeb`, dan jenis `custom` penyebaran.

`iisConfig` (opsional)  
*Jenis:* Objek  
Mendefinisikan pengaturan konfigurasi IIS untuk diterapkan sebelum menerapkan aplikasi. Mendukung konfigurasi situs web dan kumpulan aplikasi.

## Konfigurasi IIS
<a name="dotnet-manifest-schema-iis-config"></a>

`iisConfig`Bagian ini memungkinkan Anda untuk mengkonfigurasi pengaturan IIS sebelum menerapkan aplikasi Anda. Ini termasuk menyiapkan kumpulan aplikasi dengan konfigurasi khusus dan mengonfigurasi situs web IIS dengan binding khusus.

### Situs web IIS
<a name="dotnet-manifest-schema-websites"></a>

Situs web IIS memungkinkan Anda mengonfigurasi pengaturan situs web khusus termasuk jalur fisik dan binding jaringan sebelum menerapkan aplikasi Anda.

**Pertimbangan penting untuk membuat situs web IIS yang berbeda**  
*Urutan penyiapan situs web:* Situs web dikonfigurasi secara berurutan sesuai urutan kemunculannya dalam array. `websites` Platform memproses setiap konfigurasi situs web secara berurutan, jadi pastikan pemesanan yang tepat jika Anda memiliki ketergantungan antar situs web.
*Firewall dan akses port:* Hanya port 80 yang secara otomatis diekspos melalui konfigurasi firewall Elastic Beanstalk Windows default. Jika Anda mengonfigurasi situs web untuk menggunakan port non-standar, Anda harus menentukan aturan firewall khusus melalui ebextensions atau skrip penerapan khusus untuk memungkinkan akses eksternal ke port ini.

**Example Konfigurasi situs web**  

```
{
  "iisConfig": {
    "websites": [
      {
        "name": "MyCustomSite",
        "physicalPath": "C:\inetpub\wwwroot\mysite",
        "bindings": [
          {
            "protocol": "http",
            "port": 8080,
            "hostName": "mysite.local"
          },
          {
            "protocol": "https",
            "port": 8443
          }
        ]
      }
    ]
  }
}
```Properti situs web

`name`(Diperlukan)  
*Tipe*: String  
Nama situs web IIS. Nama ini digunakan untuk mengidentifikasi situs web di Manajer IIS dan harus unik dalam konfigurasi IIS.

`physicalPath`(Diperlukan)  
*Tipe*: String  
Jalur fisik di server tempat file situs web disimpan. Jalur ini harus dapat diakses oleh proses pekerja IIS.

`bindings`(Diperlukan)  
*Tipe*: Array  
*Item minimum:* 1  
Array konfigurasi pengikatan yang menentukan bagaimana situs web merespons permintaan jaringan. Setiap pengikatan menentukan protokol, port, dan nama host opsional.

#### Binding situs web
<a name="dotnet-manifest-schema-bindings"></a>

Binding situs web menentukan titik akhir jaringan tempat situs web IIS Anda akan mendengarkan permintaan yang masuk.

`protocol`(Diperlukan)  
*Tipe*: String  
*Nilai yang valid:* “http”, “https”  
Protokol yang digunakan untuk mengikat.

`port`(Diperlukan)  
*Tipe*: Integer  
*Rentang yang valid: 1-65535*  
Nomor port tempat situs web akan mendengarkan permintaan.

`hostName` (opsional)  
*Tipe*: String  
Nama host (nama domain) untuk pengikatan.

### Kolam aplikasi
<a name="dotnet-manifest-schema-app-pools"></a>

Kumpulan aplikasi menyediakan isolasi antar aplikasi dan memungkinkan Anda mengonfigurasi pengaturan runtime untuk grup aplikasi.

**Example Konfigurasi kolam aplikasi**  

```
{
  "iisConfig": {
    "appPools": [
      {
        "name": "MyAppPool",
        "enable32Bit": false,
        "managedPipelineMode": "Integrated",
        "managedRuntimeVersion": "v4.0",
        "queueLength": 1000,
        "cpu": {
          "limitPercentage": 80,
          "limitAction": "Throttle",
          "limitMonitoringInterval": 5
        },
        "recycling": {
          "regularTimeInterval": 1440,
          "requestLimit": 10000,
          "memory": 1048576,
          "privateMemory": 524288
        }
      }
    ]
  }
}
```Properti kolam aplikasi

`name`(Diperlukan)  
*Tipe*: String  
Nama kolam aplikasi. Nama ini digunakan untuk mereferensikan kumpulan dalam konfigurasi penerapan.

`enable32Bit` (opsional)  
*Jenis:* Boolean  
Memungkinkan aplikasi 32-bit untuk berjalan pada versi 64-bit Windows. Setel ke aplikasi `true` lama yang membutuhkan kompatibilitas 32-bit.

`managedPipelineMode` (opsional)  
*Tipe*: String  
*Nilai yang valid:* “Terintegrasi”, “Klasik”  
Menentukan modus permintaan-pemrosesan untuk kumpulan aplikasi.

`managedRuntimeVersion` (opsional)  
*Tipe*: String  
*Nilai yang valid:* “Tidak Ada Kode Terkelola”, “v2.0", “v4.0"  
Menentukan versi.NET Framework untuk kolam aplikasi.

`queueLength` (opsional)  
*Tipe*: Integer  
Jumlah maksimum permintaan yang HTTP.sys antrian untuk kumpulan aplikasi sebelum menolak permintaan tambahan.

#### Konfigurasi CPU
<a name="dotnet-manifest-schema-cpu-config"></a>

`cpu`Objek mengonfigurasi batas penggunaan CPU dan pemantauan untuk kumpulan aplikasi.

`limitPercentage` (opsional)  
*Jenis*: Angka  
Persentase maksimum waktu CPU yang dapat dikonsumsi oleh proses pekerja di kumpulan aplikasi.

`limitAction` (opsional)  
*Tipe*: String  
*Nilai yang valid:* "NoAction“, “KillW3wp”, “Throttle”, "” ThrottleUnderLoad  
Tindakan yang harus diambil ketika batas CPU tercapai.

`limitMonitoringInterval` (opsional)  
*Jenis*: Angka  
Atur ulang periode (dalam menit) untuk pemantauan CPU dan batas pelambatan.

#### Konfigurasi daur ulang
<a name="dotnet-manifest-schema-recycling-config"></a>

`recycling`Objek mengonfigurasi kapan dan bagaimana proses pekerja kumpulan aplikasi didaur ulang.

`regularTimeInterval` (opsional)  
*Tipe*: Integer  
Interval waktu (dalam menit) setelah itu kolam aplikasi didaur ulang. Setel ke 0 untuk menonaktifkan daur ulang berbasis waktu.

`requestLimit` (opsional)  
*Tipe*: Integer  
Jumlah maksimum permintaan yang diproses kumpulan aplikasi sebelum didaur ulang.

`memory` (opsional)  
*Tipe*: Integer  
Jumlah memori virtual (dalam kilobyte) yang memicu daur ulang proses pekerja.

`privateMemory` (opsional)  
*Tipe*: Integer  
Jumlah memori pribadi (dalam kilobyte) yang memicu daur ulang proses pekerja.

## Jenis deployment
<a name="dotnet-manifest-schema-deployments"></a>

`deployments`Objek berisi array konfigurasi penerapan untuk berbagai jenis aplikasi. Setiap jenis penerapan memiliki properti dan kasus penggunaan tertentu.

### MSDeploy penyebaran
<a name="dotnet-manifest-schema-msdeploy"></a>

MSDeploy deployment digunakan untuk aplikasi.NET Framework tradisional yang dapat digunakan menggunakan Web Deploy (). MSDeploy

**Example MSDeploy konfigurasi penerapan**  

```
{
  "deployments": {
    "msDeploy": [
      {
        "name": "WebApp",
        "description": "Main web application",
        "parameters": {
          "appBundle": "webapp.zip",
          "iisPath": "/",
          "appPool": "DefaultAppPool"
        }
      }
    ]
  }
}
```MSDeploy properti penyebaran

`name`(Diperlukan)  
*Tipe*: String  
Nama unik untuk penyebaran. Nama ini harus unik di semua penerapan dalam manifes.

`description` (opsional)  
*Tipe*: String  
Deskripsi penyebaran yang dapat dibaca manusia.

`parameters`(Diperlukan)  
*Jenis:* Objek  
Parameter konfigurasi untuk MSDeploy operasi.

`scripts` (opsional)  
*Jenis:* Objek  
PowerShell skrip untuk dijalankan pada berbagai tahap siklus hidup penerapan.

#### MSDeploy parameter
<a name="dotnet-manifest-schema-msdeploy-parameters"></a>

`appBundle`(Diperlukan)  
*Tipe*: String  
Path ke bundel aplikasi (file ZIP) relatif terhadap file manifes. Bundel ini berisi file aplikasi untuk menyebarkan.

`iisWebSite` (opsional)  
*Tipe*: String  
*Default:* “Situs Web Default”  
Situs web IIS untuk menyebarkan aplikasi ke. Secara default, aplikasi dikerahkan ke “Situs Web Default”. Secara opsional, Anda dapat menentukan nama situs web yang berbeda, seperti yang dikonfigurasi di `iisConfig.websites` bagian.

`iisPath` (opsional)  
*Tipe*: String  
*Default:* “/”  
Jalur direktori virtual di IIS tempat aplikasi akan digunakan. Gunakan “/” untuk jalur root atau “/api” untuk subdirektori.

`appPool` (opsional)  
*Tipe*: String  
Nama kumpulan aplikasi untuk menjalankan aplikasi ini.

### Penerapan ASP.NET Core
<a name="dotnet-manifest-schema-aspnetcore"></a>

Penerapan ASP.NET Core dirancang khusus untuk aplikasi.NET Core dan .NET 5\$1.

**Example Konfigurasi penerapan ASP.NET Core**  

```
{
  "deployments": {
    "aspNetCoreWeb": [
      {
        "name": "CoreAPI",
        "description": "ASP.NET Core Web API",
        "parameters": {
          "appBundle": "coreapi.zip",
          "iisPath": "/api",
          "appPool": "CoreAppPool"
        }
      }
    ]
  }
}
```

Penerapan ASP.NET Core menggunakan struktur properti yang sama dengan MSDeploy penerapan, dengan perbedaan utamanya adalah lingkungan runtime dan model hosting yang digunakan untuk aplikasi.Parameter penyebaran ASP.NET Core

`appBundle`(Diperlukan)  
*Tipe*: String  
Path ke bundel aplikasi relatif terhadap file manifes. Ini bisa berupa arsip ZIP atau jalur direktori yang berisi aplikasi ASP.NET Core yang diterbitkan.

`iisWebSite` (opsional)  
*Tipe*: String  
*Default:* “Situs Web Default”  
Situs web IIS untuk menyebarkan aplikasi ASP.NET Core ke. Secara default, aplikasi dikerahkan ke “Situs Web Default”. Secara opsional, Anda dapat menentukan nama situs web yang berbeda, seperti yang dikonfigurasi di `iisConfig.websites` bagian.

`iisPath` (opsional)  
*Tipe*: String  
*Default:* “/”  
Jalur direktori virtual di IIS untuk aplikasi ASP.NET Core.

`appPool` (opsional)  
*Tipe*: String  
Kumpulan aplikasi untuk aplikasi ASP.NET Core. Pool akan dikonfigurasi dengan tepat untuk hosting ASP.NET Core.

### Penerapan kustom
<a name="dotnet-manifest-schema-custom"></a>

Penerapan khusus memberikan kontrol penuh atas proses penyebaran melalui skrip. PowerShell Jenis penerapan ini berguna untuk skenario kompleks yang memerlukan instalasi, konfigurasi, atau logika penerapan khusus.

**Example Konfigurasi penerapan kustom**  

```
{
  "deployments": {
    "custom": [
      {
        "name": "CustomService",
        "description": "Custom Windows service deployment",
        "architecture": 32,
        "scripts": {
          "install": {
            "file": "install-service.ps1"
          },
          "restart": {
            "file": "restart-service.ps1"
          },
          "uninstall": {
            "file": "uninstall-service.ps1",
            "ignoreErrors": true
          }
        }
      }
    ]
  }
}
```Properti penyebaran kustom

`name`(Diperlukan)  
*Tipe*: String  
Nama unik untuk penerapan kustom.

`description` (opsional)  
*Tipe*: String  
Deskripsi penerapan kustom.

`architecture` (opsional)  
*Tipe*: Integer  
*Default:* 32  
*Nilai yang valid:* 32, 64  
Spesifikasi arsitektur untuk mode eksekusi skrip PowerShell

`scripts`(Diperlukan)  
*Jenis:* Objek  
PowerShell skrip yang menentukan perilaku penerapan. Penerapan khusus mendukung jenis skrip tambahan dibandingkan dengan jenis penerapan lainnya.

## Skrip penyebaran
<a name="dotnet-manifest-schema-scripts"></a>

Skrip penerapan adalah PowerShell skrip yang berjalan pada titik-titik tertentu selama siklus hidup penerapan. Jenis penyebaran yang berbeda mendukung kumpulan peristiwa skrip yang berbeda.

### Acara skrip
<a name="dotnet-manifest-schema-script-events"></a>

Peristiwa skrip berikut tersedia tergantung pada jenis penerapan:Skrip penerapan standar (MSDeploy dan Web) aspNetCore

`preInstall`  
Berjalan sebelum aplikasi diinstal atau diperbarui.

`postInstall`  
Berjalan setelah aplikasi diinstal atau diperbarui.

`preRestart`  
Berjalan sebelum aplikasi dimulai ulang.

`postRestart`  
Berjalan setelah aplikasi dimulai ulang.

`preUninstall`  
Berjalan sebelum aplikasi dihapus.

`postUninstall`  
Berjalan setelah aplikasi dihapus.Skrip penerapan khusus (hanya penerapan khusus)

`install`  
Skrip instalasi utama untuk penerapan kustom. Skrip ini bertanggung jawab untuk menginstal aplikasi atau layanan.

`restart`  
Script untuk me-restart aplikasi atau layanan. Disebut ketika lingkungan dimulai ulang.

`uninstall`  
Script untuk menghapus instalasi aplikasi atau layanan. Dipanggil selama penghentian lingkungan atau penghapusan aplikasi.

### Properti skrip
<a name="dotnet-manifest-schema-script-properties"></a>

Setiap skrip didefinisikan sebagai objek dengan properti berikut:

`file`(Diperlukan)  
*Tipe*: String  
Path ke file PowerShell skrip relatif terhadap file manifes. Script harus memiliki `.ps1` ekstensi.

`ignoreErrors` (opsional)  
*Jenis:* Boolean  
*Default:* false  
Saat disetel ke`true`, penerapan berlanjut meskipun skrip gagal. Gunakan ini untuk skrip non-kritis atau operasi pembersihan.

**Example Contoh konfigurasi skrip**  

```
{
  "scripts": {
    "preInstall": {
      "file": "backup-config.ps1",
      "ignoreErrors": true
    },
    "postInstall": {
      "file": "configure-app.ps1"
    }
  }
}
```

# Menggunakan Peluncuran EC2 Cepat dengan cabang platform Windows
<a name="dotnet-ec2fastlaunch"></a>

Fitur Peluncuran EC2 Cepat mengurangi waktu peluncuran instans Windows di lingkungan Elastic Beanstalk Anda. Tujuan dari topik ini adalah untuk memandu Anda menggunakan fitur ini dengan lingkungan Elastic Beanstalk Anda. Dimulai dengan platform Windows versi 2.16.2, dirilis pada [22 Januari 2025,](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2025-01-22-windows.html) rilis platform Elastic Beanstalk menyertakan basis dengan Peluncuran Cepat diaktifkan. AMIs EC2 

## Ketersediaan Peluncuran EC2 Cepat Default
<a name="dotnet-ec2fastlaunch-default"></a>

Versi platform Elastic Beanstalk Windows terbaru AMIs menyertakan EC2 basis dengan Peluncuran Cepat diaktifkan secara otomatis, tanpa biaya tambahan. Namun, ketika versi platform yang lebih baru dirilis, Peluncuran EC2 Cepat mungkin tidak tetap diaktifkan secara otomatis berdasarkan AMIs versi platform yang lebih lama.

Kami merekomendasikan untuk meningkatkan ke versi platform Windows terbaru untuk menggunakan basis AMIs dengan Peluncuran EC2 Cepat diaktifkan secara otomatis. Namun, jika Anda perlu terus menggunakan versi platform yang ada, Anda dapat mengaktifkan Peluncuran EC2 Cepat secara manual di AMI dasar lingkungan Anda. Untuk petunjuk, lihat [Mengkonfigurasi Peluncuran EC2 Cepat secara manual](#dotnet-ec2fastlaunch-manual).

## Mengkonfigurasi Peluncuran EC2 Cepat secara manual
<a name="dotnet-ec2fastlaunch-manual"></a>

**catatan**  
Mengaktifkan Peluncuran EC2 Cepat secara manual dapat menimbulkan biaya tambahan dibandingkan dengan menggunakan versi platform dengan Peluncuran EC2 Cepat diaktifkan secara otomatis. Untuk informasi selengkapnya tentang biaya Peluncuran EC2 Cepat, lihat halaman [Mengelola biaya untuk Peluncuran EC2 Cepat sumber daya dasar](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/win-fast-launch-manage-costs.html) di *Panduan EC2 Pengguna Amazon*.

Ikuti langkah-langkah ini untuk mengaktifkan Peluncuran EC2 Cepat pada AMI basis Windows yang digunakan oleh lingkungan Elastic Beanstalk Anda:

**Untuk mengaktifkan Peluncuran EC2 Cepat secara manual untuk lingkungan Elastic Beanstalk Anda**

1. Identifikasi AMI dasar lingkungan Anda:

   Ikuti langkah-langkah dalam [Membuat AMI Kustom](using-features.customenv.md) untuk mengidentifikasi ID AMI dasar lingkungan Anda. Perhatikan bahwa Anda tidak perlu membuat AMI khusus - Anda hanya perlu mengikuti langkah-langkah untuk menemukan ID AMI dasar Anda saat ini.

1. Aktifkan Peluncuran EC2 Cepat di AMI:

   Gunakan petunjuk di [Aktifkan Peluncuran EC2 Cepat](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/win-fast-launch-configure.html) di *Panduan EC2 Pengguna Amazon* untuk mengonfigurasi Peluncuran EC2 Cepat untuk AMI Anda.

# Menambahkan instans DB Amazon RDS ke lingkungan aplikasi .NET Anda
<a name="create_deploy_NET.rds"></a>

Topik ini memberikan instruksi untuk membuat Amazon RDS menggunakan konsol Elastic Beanstalk. Anda dapat menggunakan instans DB Amazon Relational Database Service (Amazon RDS) untuk menyimpan data yang dikumpulkan dan dimodifikasi oleh aplikasi Anda. Basis data dapat digabungkan ke lingkungan Anda dan dikelola oleh Elastic Beanstalk, atau dapat dibuat sebagai dipisahkan dan dikelola secara eksternal oleh layanan lain. Dalam instruksi ini database digabungkan dengan lingkungan Anda dan dikelola oleh Elastic Beanstalk. Untuk informasi lebih lanjut tentang mengintegrasikan Amazon RDS dengan Elastic Beanstalk, lihat. [Menambahkan basis data ke lingkungan Elastic Beanstalk Anda](using-features.managing.db.md)

**Topics**
+ [Menambahkan instans DB ke lingkungan Anda](#dotnet-rds-create)
+ [Mengunduh driver](#dotnet-rds-drivers)
+ [Menghubungkan ke basis data](#dotnet-rds-connect)

## Menambahkan instans DB ke lingkungan Anda
<a name="dotnet-rds-create"></a>

**Untuk menambahkan instans DB ke lingkungan Anda**

1. **Buka konsol [Elastic Beanstalk, dan di daftar Wilayah, pilih konsol Elastic](https://console.aws.amazon.com/elasticbeanstalk) Beanstalk.** Wilayah AWS

1. Di panel navigasi, pilih **Lingkungan**, dan kemudian pilih nama lingkungan Anda dari daftar.

1. Pada panel navigasi, pilih **Konfigurasi**.

1. Di kategori konfigurasi **Basis data**, pilih **Edit**.

1. Pilih mesin DB, dan masukkan nama pengguna dan kata sandi.

1. Untuk menyimpan perubahan pilih **Terapkan** di bagian bawah halaman.

Menambahkan instans DB memakan waktu sekitar 10 menit. Ketika pembaruan lingkungan selesai, nama host instans DB dan informasi koneksi lainnya tersedia untuk aplikasi Anda melalui properti lingkungan berikut:


| Nama properti | Deskripsi | Nilai properti | 
| --- | --- | --- | 
|  `RDS_HOSTNAME`  |  Nama host instans DB.  |  Di tab **Konektivitas & keamanan** di konsol Amazon RDS: **Titik akhir**.  | 
|  `RDS_PORT`  |  Port tempat instans DB menerima koneksi. Nilai default bervariasi di antara mesin DB.  |  Di tab **Konektivitas & keamanan** di konsol Amazon RDS: **Port**.  | 
|  `RDS_DB_NAME`  |  Nama basis data, **ebdb**.  |  Di tab **Konfigurasi** di konsol Amazon RDS: **Nama DB**.  | 
|  `RDS_USERNAME`  |  Nama pengguna yang Anda konfigurasi untuk basis data Anda.  |  Di tab **Konfigurasi** di konsol Amazon RDS: **Nama pengguna utama**.  | 
|  `RDS_PASSWORD`  |  Kata sandi yang Anda konfigurasi untuk basis data Anda.  |  Tidak tersedia untuk referensi di konsol Amazon RDS.  | 

Untuk informasi selengkapnya tentang mengonfigurasi instance database yang digabungkan dengan lingkungan Elastic Beanstalk, lihat. [Menambahkan basis data ke lingkungan Elastic Beanstalk Anda](using-features.managing.db.md)

## Mengunduh driver
<a name="dotnet-rds-drivers"></a>

Unduh dan instal paket `EntityFramework` dan driver basis data untuk lingkungan pengembangan Anda dengan `NuGet`.

**Penyedia basis data kerangka kerja entitas umum untuk .NET**
+ **Server SQL** – `Microsoft.EntityFrameworkCore.SqlServer`
+ **MySQL** – `Pomelo.EntityFrameworkCore.MySql`
+ **PostgreSQL** – `Npgsql.EntityFrameworkCore.PostgreSQL`

## Menghubungkan ke basis data
<a name="dotnet-rds-connect"></a>

Elastic Beanstalk memberikan informasi koneksi untuk instans DB terlampir di properti lingkungan. Gunakan `ConfigurationManager.AppSettings` untuk membaca properti dan mengonfigurasi koneksi basis data.

**Example Helpers.cs - metode string koneksi**  

```
using System;
using System.Collections.Generic;
using System.Configuration;
using System.Linq;
using System.Web;

namespace MVC5App.Models
{
  public class Helpers
  {
    public static string GetRDSConnectionString()
    {
      var appConfig = ConfigurationManager.AppSettings;

      string dbname = appConfig["RDS_DB_NAME"];

      if (string.IsNullOrEmpty(dbname)) return null;

      string username = appConfig["RDS_USERNAME"];
      string password = appConfig["RDS_PASSWORD"];
      string hostname = appConfig["RDS_HOSTNAME"];
      string port = appConfig["RDS_PORT"];

      return "Data Source=" + hostname + ";Initial Catalog=" + dbname + ";User ID=" + username + ";Password=" + password + ";";
    }
  }
}
```

Gunakan string koneksi untuk menginisialisasi konteks basis data Anda.

**Example DBContext.cs**  

```
using System.Data.Entity;
using System.Security.Claims;
using System.Threading.Tasks;
using Microsoft.AspNet.Identity;
using Microsoft.AspNet.Identity.EntityFramework;

namespace MVC5App.Models
{
  public class RDSContext : DbContext
  { 
    public RDSContext()
      : base(GetRDSConnectionString())
    {
    }

    public static RDSContext Create()
    {
      return new RDSContext();
    }
  }
}
```

# The AWS Toolkit for Visual Studio
<a name="dotnet-toolkit"></a>

Visual Studio menyediakan templat untuk bahasa pemrograman yang berbeda dan tipe aplikasi. Anda dapat mulai dengan salah satu templat ini. AWS Toolkit for Visual Studio juga menyediakan tiga template proyek yang mem-bootstrap pengembangan aplikasi Anda AWS : Console Project AWS , Web Project, AWS dan Empty Project. Untuk contoh ini, Anda akan membuat Aplikasi Web ASP.NET baru.

**Untuk membuat proyek aplikasi web ASP.NET baru**

1. Di Visual Studio, di menu **File**, klik **Baru** dan kemudian klik **Proyek**.

1. Di kotak dialog **Proyek Baru**, klik **Templat Terinstal**, klik **Visual C\$1**, dan kemudian klik **Web**. Klik **Aplikasi Web Kosong ASP.NET**, ketik nama proyek, lalu klik **OK**. 

**Untuk menjalankan proyek**

Lakukan salah satu dari berikut ini:

1. Tekan **F5**.

1. Pilih **Mulai Debugging** dari menu **Debug**.

## Uji secara lokal
<a name="create_deploy_NET.sdlc.testlocal"></a>

Visual Studio memudahkan Anda untuk menguji aplikasi Anda secara lokal. Untuk menguji atau menjalankan aplikasi web ASP.NET, Anda memerlukan web server. Visual Studio menawarkan beberapa opsi, seperti Internet Information Services (IIS), IIS Express, atau Visual Studio Development Server bawaan. Untuk mempelajari tentang masing-masing opsi ini dan memutuskan mana yang terbaik untuk Anda, lihat [Web Server di Visual Studio untuk Proyek Web ASP.NET](http://msdn.microsoft.com/en-us/library/58wxa9w5.aspx).

## Membuat lingkungan Elastic Beanstalk
<a name="create_deploy_NET.sdlc.deploy"></a>

Setelah menguji aplikasi Anda, Anda siap untuk men-deploynya ke Elastic Beanstalk.

**catatan**  
[File konfigurasi](ebextensions.md) perlu menjadi bagian dari proyek agar dimasukkan dalam arsip. Atau, alih-alih menyertakan file konfigurasi di proyek, Anda dapat menggunakan Visual Studio untuk men-deploy semua file di folder proyek. Di **Penjelajah Solusi**, klik kanan nama proyek, dan kemudian klik **Properti**. Klik tab **Paket/Publikasikan Web**. Di bagian **Item yang di-deploy**, pilih **Semua file di Folder Proyek** di daftar drop-down.

**Untuk menyebarkan aplikasi Anda ke Elastic AWS Beanstalk menggunakan toolkit untuk Visual Studio**

1. Di **Solution Explorer**, klik kanan aplikasi Anda dan kemudian pilih **Publish to AWS**.

1. Di wizard **Publikasikan ke AWS**, masukkan informasi akun Anda.

   1. Untuk **akun AWS yang akan digunakan untuk deployment**, pilih akun Anda atau pilih **Lainnya** untuk memasukkan informasi akun baru. 

   1. Untuk **Wilayah**, pilih Wilayah tempat Anda ingin men-deploy aplikasi Anda. Untuk informasi tentang AWS Wilayah yang tersedia, lihat [AWS Elastic Beanstalk Titik Akhir dan Kuota](https://docs.aws.amazon.com/general/latest/gr/elasticbeanstalk.html) di. *Referensi Umum AWS* Jika Anda memilih wilayah yang tidak didukung oleh Elastic Beanstalk, maka opsi untuk men-deploy ke Elastic Beanstalk tidak tersedia.

   1.  Klik **Deploy aplikasi baru dengan templat** dan pilih **Elastic Beanstalk**. Kemudian klik **Selanjutnya**.  
![\[Publikasikan ke AWS wizard 1\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-create-newapp-template.png)

1. Di halaman **Aplikasi**, masukkan detail aplikasi Anda.

   1. Untuk **Nama**, ketik nama aplikasi.

   1. Untuk **Deskripsi**, ketik deskripsi aplikasi. Langkah ini opsional.

   1. Label versi aplikasi secara otomatis muncul di **Label versi deployment**.

   1. Pilih **Deploy aplikasi secara bertahap** untuk men-deploy file yang diubah saja. Deployment tambahan lebih cepat karena Anda memperbarui hanya file yang berubah, bukan semua file. Jika Anda memilih opsi ini, versi aplikasi akan diatur dari Git commit ID. Jika Anda memilih untuk tidak men-deploy aplikasi Anda secara bertahap, maka Anda dapat memperbarui label versi di kotak **Label versi deployment**.   
![\[Publikasikan ke beanstalk wizard 2\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk1.png)

   1. Klik **Berikutnya**.

1. Di halaman **Lingkungan**, jelaskan detail lingkungan Anda.

   1. Pilih **Buat lingkungan baru untuk aplikasi ini**.

   1. Untuk **Nama**, ketik nama untuk lingkungan Anda.

   1. Untuk **Deskripsi**, cirikan lingkungan anda. Langkah ini opsional.

   1. Pilih **Tipe** lingkungan yang Anda inginkan.

      Anda dapat memilih **Beban seimbang, diskalakan otomatis** atau lingkungan **Instans tunggal**. Untuk informasi selengkapnya, lihat [Jenis lingkungan](using-features-managing-env-types.md).

       
**catatan**  
Untuk lingkungan instans tunggal, penyeimbangan beban, penskalaan otomatis, dan pemeriksaan kondisi pengaturan URL tidak berlaku.

   1. URL lingkungan secara otomatis muncul di **Lingkungan URL** setelah Anda memindahkan kursor Anda ke kotak tersebut.

   1. Klik **Periksa ketersediaan** untuk memastikan URL lingkungan tersedia.  
![\[Publikasikan ke beanstalk wizard 3\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk2.png)

   1. Klik **Berikutnya**.

1. Di halaman **Opsi AWS **, konfigurasikan opsi tambahan dan informasi keamanan untuk deployment Anda. 

   1.  Untuk **Tipe Kontainer**, pilih **64bit Windows Server 2012 menjalankan IIS 8** atau **64bit Windows Server 2008 menjalankan IIS 7.5**.

   1. Untuk **Tipe Instans**, pilih **Micro**. 

   1. Untuk **Pasangan kunci**, pilih **Buat pasangan kunci baru**. Ketik nama untuk pasangan kunci baru—di contoh ini, kita menggunakan **myuswestkeypair**—dan kemudian klik **OK**. Sebuah key pair memungkinkan akses remote desktop ke instans Amazon Anda. EC2 Untuk informasi selengkapnya tentang pasangan EC2 kunci Amazon, lihat [Menggunakan Kredensial di Panduan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-credentials.html) Pengguna *Amazon Elastic Compute Cloud*. 

   1. Pilih profil instans.

      Jika Anda tidak memiliki profil instans, pilih **Buat profil instans default**. Untuk informasi tentang menggunakan profil instans dengan Elastic Beanstalk, lihat [Mengelola profil instans Elastic Beanstalk](iam-instanceprofile.md).

   1. Jika Anda memiliki VPC khusus yang ingin Anda gunakan dengan lingkungan Anda, klik **Luncurkan ke VPC**. Anda dapat mengonfigurasi informasi VPC di halaman berikutnya. Untuk informasi selengkapnya tentang Amazon VPC, lanjutkan ke [Amazon Virtual Private Cloud (Amazon VPC)](https://aws.amazon.com/vpc/). Untuk daftar tipe kontainer bukan warisan yang didukung, lihat [Mengapa beberapa versi platform ditandai sebagai legasi?](using-features.migration.md#using-features.migration.why)  
![\[Publikasikan ke beanstalk wizard 4\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk3b_iam.png)

   1.  Klik **Berikutnya**. 

1. Jika Anda memilih untuk meluncurkan lingkungan Anda di dalam VPC, **Opsi VPC** muncul; jika tidak, halaman **Opsi tambahan** akan muncul. Di sini Anda akan mengonfigurasi opsi VPC Anda.  
![\[Opsi VPC untuk lingkungan yang seimbang dan dapat diskalakan\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk3b_vpc.png)  
![\[Opsi VPC untuk lingkungan instans tunggal\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk3b_vpc-single.png)

   1. Pilih VPC ID VPC di tempat Anda ingin meluncurkan lingkungan Anda. 

   1. Untuk lingkungan yang seimbang dengan beban dan dapat diskalakan, pilih **privat** untuk **Skema ELB** jika Anda tidak ingin elastic load balancer Anda tersedia di Internet.

      Untuk lingkungan instans tunggal, opsi ini tidak berlaku karena lingkungan tidak memiliki penyeimbang beban. Untuk informasi selengkapnya, lihat [Jenis lingkungan](using-features-managing-env-types.md).

   1. Untuk lingkungan yang seimbang beban dan dapat diskalakan, pilih subnet untuk penyeimbang beban elastis dan instans. EC2 Jika Anda membuat subnet publik dan pribadi, pastikan penyeimbang beban elastis dan EC2 instans dikaitkan dengan subnet yang benar. Secara default, Amazon VPC membuat subnet publik default menggunakan 10.0.0.0/24 dan subnet privat menggunakan 10.0.1.0/24. Anda dapat melihat subnet yang ada di konsol VPC Amazon di. [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/)

      Untuk lingkungan instans tunggal, VPC Anda hanya membutuhkan subnet publik untuk instans. Memilih subnet untuk penyeimbang beban tidak berlaku karena lingkungan tidak memiliki penyeimbang beban. Untuk informasi selengkapnya, lihat [Jenis lingkungan](using-features-managing-env-types.md).

   1. Untuk lingkungan yang seimbang dengan beban dan dapat diskalakan, pilih grup keamanan yang Anda buat untuk instans Anda, jika berlaku.

      Untuk lingkungan instans tunggal, Anda tidak memerlukan perangkat NAT. Pilih grup keamanan default. Elastic Beanstalk menugaskan alamat IP elastis ke instans yang memungkinkan instans mengakses Internet.

   1. Klik **Berikutnya**.

1. Di halaman **Opsi aplikasi**, konfigurasi opsi aplikasi Anda. 

   1. Untuk kerangka kerja Target, pilih **.NET Framework 4.0**. 

   1. Elastic Load Balancing menggunakan pemeriksaan kesehatan untuk menentukan apakah EC2 instans Amazon yang menjalankan aplikasi Anda sehat. Pemeriksaan kondisi menentukan status kondisi instans dengan memeriksa URL tertentu pada set interval. Anda dapat mengganti URL default untuk mencocokkan sumber daya yang ada di aplikasi Anda (misalnya, `/myapp/index.aspx`) dengan memasukkannya ke kotak **URL pemeriksaan kondisi aplikasi**. Untuk informasi selengkapnya tentang pemeriksaan kondisi aplikasi, lihat [Pemeriksaan kondisi](environments-cfg-clb.md#using-features.managing.elb.healthchecks). 

   1. Ketik alamat email jika Anda ingin menerima notifikasi Amazon Simple Notification Service (Amazon SNS) tentang peristiwa penting yang mempengaruhi aplikasi Anda.

   1. Bagian **Application Environment** memungkinkan Anda menentukan variabel lingkungan pada EC2 instance Amazon yang menjalankan aplikasi Anda. Pengaturan ini mengaktifkan portabilitas yang lebih besar dengan menghilangkan kebutuhan untuk mengompilasi ulang kode sumber Anda saat Anda bergerak di antara lingkungan.

   1. Pilih opsi kredensial aplikasi yang ingin Anda gunakan untuk men-deploy aplikasi Anda.  
![\[Publikasikan ke beanstalk wizard 6\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk3a.png)

   1. Klik **Berikutnya**.

1. Jika Anda sebelumnya telah mengatur basis data Amazon RDS, halaman **Grup Keamanan DB Amazon RDS** akan muncul. Jika Anda ingin menghubungkan lingkungan Elastic Beanstalk Anda ke Instans DB Amazon RDS Anda, kemudian pilih satu atau lebih grup keamanan. Jika tidak, lanjutkan ke langkah berikutnya. Saat Anda siap, klik **Selanjutnya**.  
![\[Publikasikan ke beanstalk wizard 7\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk6b.png)

1.  Tinjau opsi deployment Anda. Jika semuanya seperti yang Anda inginkan, klik **Deploy**.   
![\[Publikasikan ke beanstalk wizard 8\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-beanstalk4.png)

   Proyek ASP.NET Anda akan diekspor sebagai file web deploy, diunggah ke Amazon S3, dan terdaftar sebagai versi aplikasi baru dengan Elastic Beanstalk. Fitur deployment Elastic Beanstalk akan memantau lingkungan Anda sampai tersedia dengan kode yang baru di-deploy. Di tab env:<nama lingkungan>, Anda akan melihat status untuk lingkungan Anda.   
![\[Status lingkungan\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-env-status.png)

## Mengakhiri lingkungan
<a name="create_deploy_NET.terminating"></a>

Untuk menghindari biaya untuk AWS sumber daya yang tidak digunakan, Anda dapat menghentikan lingkungan berjalan menggunakan Toolkit for Visual AWS Studio.

**catatan**  
 Anda selalu dapat meluncurkan lingkungan baru menggunakan versi yang sama nantinya. 

**Untuk mengakhiri lingkungan**

1.  Perluas simpul Elastic Beanstalk dan simpul aplikasi di **AWS Explorer**. Klik kanan lingkungan aplikasi Anda dan pilih **Mengakhiri Lingkungan**.

1. Saat diminta, klik **Ya** untuk mengonfirmasi bahwa Anda ingin mengakhiri lingkungan. Diperlukan beberapa menit bagi Elastic Beanstalk untuk AWS menghentikan sumber daya yang berjalan di lingkungan.  
![\[Kotak dialog Elastic Beanstalk mengakhiri lingkungan\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-terminate-confirm.png)
**catatan**  
Ketika Anda mengakhiri lingkungan Anda, CNAME yang terkait dengan lingkungan yang diakhiri akan tersedia bagi siapa saja untuk digunakan. 

# Men-deploy ke lingkungan Anda
<a name="create_deploy_NET.sdlc.create.edit"></a>

Sekarang, setelah Anda menguji aplikasi Anda, mudah untuk mengedit dan men-deploy ulang aplikasi dan melihat hasilnya dalam beberapa saat. 

 **Untuk mengedit dan menyebarkan kembali aplikasi web ASP.NET Anda** 

1.  Di **Solution Explorer**, klik kanan aplikasi Anda, lalu klik **Republish to Environment < > *your environment name***. Wizard **Publikasikan ulang ke AWS Elastic Beanstalk** terbuka.  
![\[Publikasikan ke beanstalk wizard 1\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-republish-beanstalk-sameenv.png)

1.  Tinjau detail deployment Anda dan klik **Deploy**. 
**catatan**  
Jika Anda ingin mengubah salah satu pengaturan, Anda dapat mengklik **Batalkan** dan gunakan wizard **Publikasikan ke AWS** sebagai gantinya. Untuk petunjuk, lihat [Membuat lingkungan Elastic Beanstalk](dotnet-toolkit.md#create_deploy_NET.sdlc.deploy).

   Proyek web ASP.NET terbaru Anda akan diekspor sebagai file web deploy dengan label versi baru, diunggah ke Amazon S3, dan terdaftar sebagai versi aplikasi baru dengan Elastic Beanstalk. Fitur deployment Elastic Beanstalk memantau lingkungan Anda yang ada sampai tersedia dengan kode yang baru di-deploy. Pada tab **env: < *environment name* >**, Anda akan melihat status lingkungan Anda. 

Anda juga dapat men-deploy aplikasi yang ada ke lingkungan yang ada, jika, misalnya, Anda perlu kembali ke versi aplikasi sebelumnya. 

**Untuk men-deploy versi aplikasi ke lingkungan yang ada**

1. Klik kanan aplikasi Elastic Beanstalk Anda dengan memperluas simpul Elastic Beanstalk di **AWS Explorer**. Pilih **Lihat Status**. 

1. Di tab **App: < *application name* >**, klik **Versi**.   
![\[Versi aplikasi\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-app-version.png)

1. Klik versi aplikasi yang ingin Anda deploy dan klik **Publikasikan Versi**.

1.  Di wizard **Publikasikan Versi Aplikasi**, klik **Selanjutnya**.  
![\[Publikasikan wizard versi aplikasi 1\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-republish-beanstalk2a.png)

1.  Tinjau opsi deployment Anda, dan klik **Deploy**.   
![\[Publikasikan wizard versi aplikasi 2\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-publish-app-version-wizard3.png)

   Proyek ASP.NET Anda akan diekspor sebagai file web deploy dan diunggah ke Amazon S3. Fitur deployment Elastic Beanstalk akan memantau lingkungan Anda sampai tersedia dengan kode yang baru di-deploy. Pada tab **env: < *environment name* >**, Anda akan melihat status untuk lingkungan Anda. 

# Mengelola lingkungan aplikasi Elastic Beanstalk Anda
<a name="create_deploy_NET.managing"></a>

Dengan AWS Toolkit for Visual Studio dan AWS Management Console, Anda dapat mengubah penyediaan dan konfigurasi sumber daya yang digunakan oleh AWS lingkungan aplikasi Anda. Untuk informasi tentang cara mengelola lingkungan aplikasi menggunakan AWS Management Console, lihat[Mengelola lingkungan Elastic Beanstalk](using-features.managing.md). Bagian ini membahas pengaturan layanan tertentu yang dapat Anda edit di Toolkit for Visual Studio AWS sebagai bagian dari konfigurasi lingkungan aplikasi Anda.

## Mengubah pengaturan konfigurasi lingkungan
<a name="create_deploy_NET.managing.env"></a>

Saat Anda menerapkan aplikasi Anda, Elastic Beanstalk mengonfigurasi sejumlah layanan komputasi awan. AWS Anda dapat mengontrol bagaimana layanan individual ini dikonfigurasi menggunakan AWS Toolkit for Visual Studio.

**Untuk mengedit pengaturan lingkungan aplikasi**
+ Perluas simpul Elastic Beanstalk dan node aplikasi Anda. Kemudian klik kanan lingkungan Elastic Beanstalk Anda di **AWS Explorer**. Pilih **Lihat Status**. 

  Sekarang, Anda dapat mengonfigurasi pengaturan untuk hal berikut:
  + Server
  + Penyeimbangan beban
  + Penskalaan otomatis
  + Notifikasi
  + Properti lingkungan

# Mengkonfigurasi instance EC2 server menggunakan AWS toolkit untuk Visual Studio
<a name="create_deploy_NET.managing.ec2"></a>

Amazon Elastic Compute Cloud (Amazon EC2) adalah layanan web yang Anda gunakan untuk meluncurkan dan mengelola instance server di pusat data Amazon. Anda dapat menggunakan instans EC2 server Amazon kapan saja, selama yang Anda butuhkan, dan untuk tujuan hukum apa pun. Instans tersedia dalam berbagai ukuran dan konfigurasi. Untuk informasi lebih lanjut, buka [Amazon EC2](https://aws.amazon.com/ec2/).

Anda dapat mengedit **konfigurasi** instans Amazon lingkungan EC2 Elastic Beanstalk dengan tab Server di dalam AWS tab lingkungan aplikasi Anda di Toolkit for Visual Studio. 

![\[Panel konfigurasi server Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-server.png)


## Jenis EC2 instans Amazon
<a name="create_deploy_NET.managing.ec2.instancetypes"></a>

**Tipe instans** menampilkan tipe instans yang tersedia untuk aplikasi Elastic Beanstalk Anda. Ubah tipe instans untuk memilih server dengan karakteristik (termasuk ukuran memori dan kekuatan CPU) yang paling sesuai untuk aplikasi Anda. Sebagai contoh, aplikasi dengan operasi intensif dan berjalan lama dapat memerlukan lebih banyak CPU atau memori.

Untuk informasi selengkapnya tentang jenis EC2 instans Amazon yang tersedia untuk aplikasi Elastic Beanstalk[, lihat Jenis Instans](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html) di Panduan Pengguna *Amazon Elastic Compute* Cloud.

## Grup EC2 keamanan Amazon
<a name="create_deploy_NET.managing.ec2.securitygroups"></a>

Anda dapat mengontrol akses ke aplikasi Elastic Beanstalk Anda *menggunakan EC2 * Amazon Security Group. Grup keamanan mendefinisikan aturan firewall untuk instans Anda. Aturan ini menentukan lalu lintas jaringan ingress (misalnya, yang masuk) yang harus dikirim ke instans Anda. Semua lalu lintas ingress lainnya akan dibuang. Anda dapat memodifikasi aturan untuk grup kapan saja. Aturan baru secara otomatis diberlakukan untuk semua instans berjalan dan instans yang diluncurkan di masa mendatang. 

Anda dapat mengatur grup EC2 keamanan Amazon menggunakan AWS Management Console atau dengan menggunakan AWS Toolkit for Visual Studio. **Anda dapat menentukan akses kontrol Grup EC2 Keamanan Amazon ke aplikasi Elastic Beanstalk Anda dengan memasukkan nama satu atau beberapa nama grup keamanan EC2 Amazon (dibatasi oleh koma) ke dalam kotak teks Grup Keamanan. EC2 ** 

**catatan**  
Pastikan port 80 (HTTP) dapat diakses dari 0.0.0.0/0 sebagai rentang sumber CIDR jika Anda ingin mengaktifkan pemeriksaan kondisi untuk aplikasi Anda. Untuk informasi selengkapnya tentang pemeriksaan kondisi, lihat [Pemeriksaan kondisi](create_deploy_NET.managing.elb.md#create_deploy_NET.managing.elb.healthchecks).

**Untuk membuat grup keamanan menggunakan AWS toolkit untuk Visual Studio**

1.  Di Visual Studio, di **AWS Explorer**, perluas EC2 node **Amazon**, lalu klik dua kali **Grup Keamanan**. 

1.  Klik **Buat Grup Keamanan**, dan masukkan nama dan deskripsi untuk grup keamanan Anda. 

1.  Klik **OK**. 

Untuk informasi selengkapnya tentang Grup EC2 Keamanan Amazon, lihat [Menggunakan Grup Keamanan](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-network-security.html) di *Panduan Pengguna Amazon Elastic Compute Cloud*.

## Pasangan EC2 kunci Amazon
<a name="create_deploy_NET.managing.ec2.keypair"></a>

Anda dapat masuk dengan aman ke EC2 instans Amazon yang disediakan untuk aplikasi Elastic Beanstalk Anda dengan key pair Amazon. EC2 

**penting**  
Anda harus membuat EC2 key pair Amazon dan mengonfigurasi Elastic Beanstalk—instans Amazon yang disediakan untuk EC2 menggunakan key EC2 pair Amazon sebelum Anda dapat mengakses instans Amazon yang disediakan Elastic Beanstalk—Instans Amazon yang disediakan. EC2 Anda dapat membuat key pair menggunakan AWS wizard **Publish to** di dalam AWS Toolkit for Visual Studio saat Anda menerapkan aplikasi ke Elastic Beanstalk. Jika Anda ingin membuat pasangan kunci tambahan menggunakan Toolkit, ikuti langkah-langkah di bawah ini. Atau, Anda dapat mengatur pasangan EC2 kunci Amazon menggunakan [AWS Management Console](https://console.aws.amazon.com/). Untuk petunjuk cara membuat key pair untuk Amazon EC2, lihat [Panduan Memulai Amazon Elastic Compute Cloud](https://docs.aws.amazon.com/AWSEC2/latest/GettingStartedGuide/). 

 Kotak teks **Existing Key Pair** memungkinkan Anda menentukan nama EC2 key pair Amazon yang dapat Anda gunakan untuk masuk dengan aman ke EC2 instans Amazon yang menjalankan aplikasi Elastic Beanstalk Anda. 

**Untuk menentukan nama EC2 key pair Amazon**

1. Perluas EC2 node **Amazon** dan klik dua kali **Pasangan Kunci**.

1.  Klik **Buat Pasangan Kunci** dan masukkan nama pasangan kunci. 

1.  Klik **OK**. 

Untuk informasi selengkapnya tentang pasangan EC2 kunci Amazon, buka [Menggunakan EC2 Kredensial Amazon](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-credentials.html) di Panduan Pengguna *Amazon Elastic Compute Cloud*. Untuk informasi selengkapnya tentang menghubungkan ke EC2 instans Amazon, lihat[Membuat daftar dan menghubungkan ke server instans](create_deploy_NET.ec2connect.md). 

## Interval pemantauan
<a name="create_deploy_NET.managing.monitoring"></a>

 Secara default, hanya CloudWatch metrik dasar Amazon yang diaktifkan. Mereka mengembalikan data dengan periode lima menit. Anda dapat mengaktifkan CloudWatch metrik satu menit yang lebih terperinci dengan memilih **1 menit** untuk **Interval Pemantauan** di bagian **Server** pada tab **Konfigurasi** untuk lingkungan Anda di. AWS Toolkit for Eclipse

**catatan**  
Biaya CloudWatch layanan Amazon dapat berlaku untuk metrik interval satu menit. Lihat [Amazon CloudWatch](https://aws.amazon.com/cloudwatch/) untuk informasi lebih lanjut.

## ID AMI khusus
<a name="create_deploy_NET.managing.customami"></a>

 Anda dapat mengganti AMI default yang digunakan untuk EC2 instans Amazon Anda dengan AMI kustom Anda sendiri dengan memasukkan pengenal AMI kustom Anda ke dalam kotak **ID AMI** Kustom di bagian **Server** pada tab **Konfigurasi** untuk lingkungan Anda di. AWS Toolkit for Eclipse

**penting**  
Menggunakan AMI Anda sendiri adalah tugas lanjutan yang harus Anda lakukan dengan hati-hati. Jika Anda membutuhkan AMI khusus, kami sarankan Anda mulai dengan Elastic Beanstalk AMI default dan kemudian memodifikasinya. Agar dianggap sehat, Elastic Beanstalk EC2 mengharapkan instans Amazon memenuhi serangkaian persyaratan, termasuk memiliki manajer host yang sedang berjalan. Jika persyaratan ini tidak terpenuhi, lingkungan Anda mungkin tidak bekerja dengan baik.

# Mengkonfigurasi Elastic Load Balancing menggunakan toolkit AWS untuk Visual Studio
<a name="create_deploy_NET.managing.elb"></a>

Elastic Load Balancing adalah layanan web Amazon yang membantu Anda meningkatkan ketersediaan dan skalabilitas aplikasi Anda. Layanan ini memudahkan Anda untuk mendistribusikan beban aplikasi antara dua atau lebih EC2 instance Amazon. Elastic Load Balancing memungkinkan ketersediaan melalui redundansi dan mendukung pertumbuhan lalu lintas untuk aplikasi Anda. 

 Elastic Load Balancing memungkinkan Anda secara otomatis mendistribusikan dan menyeimbangkan lalu lintas aplikasi masuk di antara semua instans yang Anda jalankan. Layanan ini juga memudahkan untuk menambahkan instans baru ketika Anda perlu meningkatkan kapasitas aplikasi Anda.

 Elastic Beanstalk secara otomatis menyediakan Elastic Load Balancing saat Anda men-deploy aplikasi. Anda dapat mengedit konfigurasi instans Amazon lingkungan EC2 Elastic Beanstalk dengan tab **Load Balancer di** dalam tab lingkungan aplikasi Anda di Toolkit AWS for Visual Studio.

![\[Panel konfigurasi Elastic Beanstalk Elastic Load Balancing\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-loadbalancer.png)


 Bagian berikut menjelaskan parameter Elastic Load Balancing yang dapat Anda konfigurasi untuk aplikasi Anda.

## Port
<a name="create_deploy_NET.managing.elb.ports"></a>

Load balancer yang disediakan untuk menangani permintaan aplikasi Elastic Beanstalk Anda mengirimkan permintaan ke instans Amazon yang menjalankan aplikasi Anda. EC2 Penyeimbang beban yang disediakan dapat mendengarkan permintaan pada port HTTP dan HTTPS serta merutekan permintaan ke EC2 instans Amazon di aplikasi Anda. AWS Elastic Beanstalk Secara default, penyeimbang beban menangani permintaan di port HTTP. Setidaknya salah satu port (HTTP atau HTTPS) harus diaktifkan.

![\[Konfigurasi Elastic Beanstalk Elastic Load Balancing - port\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-loadbalancer-ports.png)


**penting**  
Pastikan bahwa port yang Anda tentukan tidak terkunci; jika tidak, pengguna tidak akan dapat terhubung ke aplikasi Elastic Beanstalk Anda.

### Mengontrol port HTTP
<a name="create_deploy_NET.managing.elb.ports.http"></a>

Untuk mematikan port HTTP, pilih **OFF** untuk **Port Listener HTTP**. Untuk mengaktifkan port HTTP, Anda pilih port HTTP (misalnya, **80**) dari daftar.

**catatan**  
Untuk mengakses lingkungan Anda menggunakan port selain port default 80, seperti port 8080, tambahkan listener ke penyeimbang beban yang ada dan konfigurasikan listener baru untuk mendengarkan di port tersebut.  
Misalnya, menggunakan [penyeimbang beban AWS CLI untuk Klasik](https://docs.aws.amazon.com/cli/latest/reference/elb/create-load-balancer-listeners.html), ketik perintah berikut, ganti *LOAD\$1BALANCER\$1NAME* dengan nama penyeimbang beban Anda untuk Elastic Beanstalk.  

```
aws elb create-load-balancer-listeners --load-balancer-name LOAD_BALANCER_NAME --listeners "Protocol=HTTP, LoadBalancerPort=8080, InstanceProtocol=HTTP, InstancePort=80"
```
Misalnya, menggunakan [AWS CLI untuk Application Load Balancers](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-listener.html), ketik perintah berikut, ganti *LOAD\$1BALANCER\$1ARN* dengan ARN penyeimbang beban Anda untuk Elastic Beanstalk.  

```
aws elbv2 create-listener --load-balancer-arn LOAD_BALANCER_ARN --protocol HTTP --port 8080
```
Jika Anda ingin Elastic Beanstalk memantau lingkungan Anda, jangan hapus listener di port 80.

### Mengontrol port HTTPS
<a name="create_deploy_NET.managing.elb.ports.https"></a>

Elastic Load Balancing mendukung HTTPS/TLS protokol untuk mengaktifkan enkripsi lalu lintas untuk koneksi klien ke penyeimbang beban. Koneksi dari penyeimbang beban ke EC2 instance menggunakan enkripsi plaintext. Secara default, port HTTPS dimatikan.

**Untuk mengaktifkan port HTTPS**

1. Buat sertifikat baru menggunakan AWS Certificate Manager (ACM) atau unggah sertifikat dan kunci ke AWS Identity and Access Management (IAM). Untuk informasi selengkapnya tentang permintaan sertifikat ACM, lihat [Meminta Sertifikat](https://docs.aws.amazon.com/acm/latest/userguide/gs-acm-request.html) di *AWS Certificate Manager Panduan Pengguna*. Untuk informasi tentang mengimpor sertifikat pihak ke tiga ke ACM, lihat [Mengimpor Sertifikat](https://docs.aws.amazon.com/acm/latest/userguide/import-certificate.html) di *Panduan Pengguna AWS Certificate Manager *. Jika ACM tidak [tersedia di wilayah Anda](https://docs.aws.amazon.com/general/latest/gr/acm.html), gunakan AWS Identity and Access Management (IAM) untuk mengunggah sertifikat pihak ketiga. Layanan ACM dan IAM menyimpan sertifikat dan menyediakan Amazon Resource Name (ARN) untuk sertifikat SSL. Untuk informasi selengkapnya tentang pembuatan dan pengunggahan sertifikat ke IAM, lihat [Bekerja dengan Sertifikat Server](https://docs.aws.amazon.com/IAM/latest/UserGuide/ManagingServerCerts.html) di *Panduan Pengguna IAM*.

1. Tentukan port HTTPS dengan memilih port untuk **Port Listener HTTPS**.  
![\[Konfigurasi Elastic Beanstalk Elastic Load Balancing - SSL\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-elb-ssl.png)

1. Untuk **ID Sertifikat SSL**, masukkan Amazon Resources Name (ARN) dari sertifikat SSL Anda. Misalnya, **arn:aws:iam::123456789012:server-certificate/abc/certs/build** atau **arn:aws:acm:us-east-2:123456789012:certificate/12345678-12ab-34cd-56ef-12345678**. Gunakan sertifikat SSL yang Anda buat atau unggah di langkah 1.

Untuk mematikan port HTTPS, pilih **OFF** untuk **HTTPS Listener Port**.

## Pemeriksaan kondisi
<a name="create_deploy_NET.managing.elb.healthchecks"></a>

Definisi pemeriksaan kondisi mencakup URL untuk di-kueri untuk instans kondisi. Secara default, Elastic Beanstalk menggunakan TCP:80 untuk kontainer bukan warisan dan HTTP:80 untuk kontainer warisan. Anda dapat mengganti URL default untuk mencocokkan sumber daya yang ada di aplikasi Anda (misalnya, `/myapp/default.aspx`) dengan memasukkannya ke kotak **URL Pemeriksaan Kondisi Aplikasi**. Jika Anda mengganti URL default, maka Elastic Beanstalk menggunakan HTTP untuk meng-kueri sumber daya. Untuk memeriksa apakah Anda menggunakan tipe kontainer warisan, lihat [Mengapa beberapa versi platform ditandai sebagai legasi?](using-features.migration.md#using-features.migration.why)

 Anda dapat mengontrol pengaturan untuk pemeriksaan kesehatan menggunakan bagian **Pemeriksaan Kesehatan EC2 Instans** pada panel **Load Balancing**.

![\[Konfigurasi Elastic Beanstalk Elastic Load Balancing - pemeriksaan kondisi\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-loadbalancer-healthcheck.png)


Definisi pemeriksaan kondisi mencakup URL untuk di-kueri untuk instans kondisi. Ganti URL default untuk mencocokkan sumber daya yang ada di aplikasi Anda (misalnya, `/myapp/index.jsp`) dengan memasukkannya ke kotak **URL Pemeriksaan Kondisi Aplikasi**. 

Daftar berikut menjelaskan parameter pemeriksaan kondisi yang dapat Anda atur untuk aplikasi Anda. 
+ Untuk **Interval Pemeriksaan Kesehatan (detik)**, masukkan jumlah detik Elastic Load Balancing menunggu di antara pemeriksaan kesehatan untuk instans Amazon aplikasi Anda. EC2 
+  Untuk **Timeout Pemeriksaan Kondisi (detik)**, tentukan jumlah detik tunggu Elastic Load Balancing untuk sebuah respons sebelum menganggap instans tidak responsif.
+ Untuk **Ambang Batas Jumlah Pemeriksaan Sehat** dan **Ambang Batas Jumlah Pemeriksaan Tidak Sehat**, tentukan jumlah probe URL yang berhasil atau tidak berhasil berturut-turut sebelum Elastic Load Balancing mengubah status kondisi instans. Sebagai contoh, menentukan **5** untuk **Ambang Batas Jumlah Pemeriksaan Tidak Sehat** berarti URL harus mengembalikan pesan kesalahan atau timeout lima kali berturut-turut sebelum Elastic Load Balancing menganggap pemeriksaan kondisi gagal.

## Sesi
<a name="create_deploy_NET.managing.elb.sessions"></a>

Secara default, penyeimbang beban merutekan setiap permintaan secara independen ke instans server dengan beban terkecil. Sebagai perbandingan, sesi lekat mengikat sesi pengguna ke instans server tertentu, sehingga semua permintaan yang datang dari pengguna selama sesi dikirim ke server instans yang sama. 

 Elastic Beanstalk menggunakan cookie HTTP yang dihasilkan penyeimbang beban saat sesi lekat diaktifkan untuk aplikasi. Penyeimbang beban menggunakan cookie yang dihasilkan penyeimbang beban khusus untuk melacak instans aplikasi untuk setiap permintaan. Ketika penyeimbang beban menerima permintaan, pertama-tama penyeimbang beban memeriksa apakah cookie ini ada di permintaan. Jika ada, permintaan tersebut dikirim ke instans aplikasi yang ditentukan di cookie. Jika tidak ada cookie, penyeimbang beban memilih instans aplikasi berdasarkan algoritme penyeimbangan beban yang ada. Cookie dimasukkan ke dalam respons untuk mengikat permintaan berikutnya dari pengguna yang sama ke instans aplikasi. Konfigurasi kebijakan mendefinisikan kedaluwarsa cookie, yang menetapkan durasi validitas untuk setiap cookie. 

Anda dapat menggunakan bagian **Sesi** di tab **Penyeimbang Beban** untuk menentukan apakah penyeimbang beban untuk aplikasi Anda memungkinkan kelengketan sesi.

![\[Konfigurasi Elastic Beanstalk Elastic Load Balancing - sesi\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-loadbalancer-sessions.png)


 Untuk informasi selengkapnya di Elastic Load Balancing, lanjutkan ke [Panduan Developer Elastic Load Balancing](https://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/). 

# Mengkonfigurasi Auto Scaling menggunakan toolkit AWS untuk Visual Studio
<a name="create_deploy_NET.managing.as"></a>

Amazon EC2 Auto Scaling adalah layanan web Amazon yang dirancang untuk secara otomatis meluncurkan atau menghentikan instans EC2 Amazon berdasarkan pemicu yang ditentukan pengguna. Pengguna dapat menyiapkan *Grup Auto Scaling* dan kaitkan *pemicu* dengan grup-grup ini untuk secara otomatis mengukur sumber daya komputasi berdasarkan metrik, seperti penggunaan bandwidth atau utilisasi CPU. EC2 Auto Scaling Amazon berfungsi dengan Amazon CloudWatch untuk mengambil metrik untuk instance server yang menjalankan aplikasi Anda.

 EC2 Auto Scaling Amazon memungkinkan Anda mengambil grup EC2 instans Amazon dan mengatur berbagai parameter agar grup ini bertambah atau berkurang jumlahnya secara otomatis. EC2 Auto Scaling Amazon dapat menambah atau menghapus EC2 instans Amazon dari grup tersebut untuk membantu Anda menangani perubahan lalu lintas ke aplikasi dengan mulus. 

 Amazon EC2 Auto Scaling juga memantau kesehatan setiap EC2 instans Amazon yang diluncurkan. Jika ada instans yang berakhir secara tidak terduga, Amazon EC2 Auto Scaling mendeteksi penghentian dan meluncurkan instance pengganti. Kemampuan ini memungkinkan Anda mempertahankan jumlah EC2 instans Amazon yang tetap dan diinginkan secara otomatis. 

Elastic Beanstalk menyediakan EC2 Amazon Auto Scaling untuk aplikasi Anda. Anda dapat mengedit konfigurasi instans Amazon lingkungan EC2 Elastic Beanstalk dengan tab **Auto Scaling di** dalam tab lingkungan aplikasi Anda di Toolkit AWS for Visual Studio.

![\[Panel konfigurasi Elastic Beanstalk Auto Scaling\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-autoscaling.png)


Bagian berikut membahas cara mengonfigurasi parameter Auto Scaling untuk aplikasi Anda. 

## Meluncurkan konfigurasi
<a name="create_deploy_NET.managing.as.launchconfig"></a>

Anda dapat mengedit konfigurasi peluncuran untuk mengontrol bagaimana aplikasi Elastic Beanstalk Anda menyediakan sumber daya EC2 Amazon Auto Scaling.

Kotak **Jumlah Instans Minimum** dan **Jumlah Instans Maksimum** memungkinkan Anda menentukan ukuran minimum dan maksimum grup Auto Scaling yang digunakan aplikasi Elastic Beanstalk Anda.

![\[Elastic Beanstalk Auto Scaling meluncurkan jendela konfigurasi config\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-autoscaling-launchconfig.png)


**catatan**  
Untuk mempertahankan jumlah EC2 instans Amazon yang tetap, setel Jumlah **Instans Minimum dan Hitungan** **Instance Maksimum** ke nilai yang sama.

Kotak **Availability Zones** memungkinkan Anda menentukan jumlah Availability Zone yang Anda inginkan untuk EC2 instans Amazon Anda berada. Hal ini penting untuk mengatur jumlah ini jika Anda ingin membangun aplikasi yang toleran terhadap kesalahan. Jika satu Availability Zone mengalami masalah, instans Anda masih akan berjalan di Availability Zone lainnya. 

**catatan**  
Saat ini, tidak mungkin untuk menentukan Availability Zone mana instans Anda akan berada. 

## Pemicu
<a name="create_deploy_NET.managing.as.trigger"></a>

*Pemicu* adalah mekanisme EC2 Auto Scaling Amazon yang Anda atur untuk memberi tahu sistem saat Anda ingin menambah (*memperkecil*) jumlah instance, dan saat Anda ingin mengurangi (*menskalakan*) jumlah instans. Anda dapat mengonfigurasi pemicu untuk *diaktifkan* pada metrik apa pun yang dipublikasikan ke Amazon CloudWatch, seperti pemanfaatan CPU, dan menentukan apakah kondisi yang Anda tentukan telah terpenuhi. Bila ambang batas atas atau bawah dari kondisi yang telah Anda tentukan untuk metrik telah dilanggar selama jangka waktu tertentu, pemicu akan meluncurkan proses yang berjalan lama yang disebut *Aktivitas Penskalaan*.

Anda dapat menentukan pemicu penskalaan untuk aplikasi Elastic Beanstalk Anda menggunakan Toolkit AWS for Visual Studio.

![\[Pemicu Elastic Beanstalk Auto Scaling\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-autoscaling-triggers.png)


Pemicu EC2 Auto Scaling Amazon berfungsi dengan menonton CloudWatch metrik Amazon tertentu untuk sebuah instans. Pemicu mencakup penggunaan CPU, lalu lintas jaringan, dan aktivitas disk. Gunakan pengaturan **Pengukuran Pemicu** untuk memilih metrik pemicu Anda.

Daftar berikut menjelaskan parameter pemicu yang dapat Anda konfigurasikan menggunakan AWS Management Console.
+ Anda dapat menentukan statistik pemicu mana yang harus digunakan. Anda dapat memilih **Minimum**, **Maksimum**, **Jumlah**, atau **Rata-rata** untuk **Statistik Pemicu**.
+ Untuk **Unit Pengukuran**, tentukan unit untuk pengukuran pemicu.
+ Nilai dalam kotak **Periode Pengukuran** menentukan seberapa sering Amazon CloudWatch mengukur metrik untuk pemicu Anda. **Durasi Pelanggaran** adalah jumlah waktu metrik dapat melampaui batas yang ditetapkan (sebagaimana ditentukan untuk **Ambang Batas Atas** dan **Ambang Batas Bawah**) sebelum pemicu diaktifkan.
+ Untuk Peningkatan Skala **Pelanggaran Atas dan Peningkatan Skala** **Pelanggaran Bawah, tentukan jumlah EC2 instans Amazon yang akan ditambahkan atau dihapus saat melakukan aktivitas penskalaan**. 

Untuk informasi selengkapnya tentang EC2 Auto Scaling Amazon, lihat bagian *Auto EC2 Scaling Amazon* di [Amazon Elastic](https://aws.amazon.com/documentation/ec2/) Compute Cloud Documentation.

# Mengkonfigurasi notifikasi menggunakan AWS toolkit untuk Visual Studio
<a name="create_deploy_NET.container.sns"></a>

Elastic Beanstalk menggunakan Amazon Simple Notification Service (Amazon SNS) untuk memberitahu Anda tentang peristiwa penting yang mempengaruhi aplikasi Anda. Untuk mengaktifkan notifikasi Amazon SNS, masukkan alamat email Anda di kotak **Alamat Email**. Untuk menonaktifkan notifikasi ini, hapus alamat email Anda dari kotak.

![\[Jendela notifikasi Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-notifications.png)


# Mengkonfigurasi kontainer.NET menggunakan AWS toolkit untuk Visual Studio
<a name="create_deploy_NET.container"></a>

 Panel **Container/.net Options** memungkinkan Anda menyempurnakan perilaku EC2 instans Amazon Anda dan mengaktifkan atau menonaktifkan rotasi log Amazon S3. Anda dapat menggunakan AWS Toolkit for Visual Studio untuk mengonfigurasi informasi kontainer Anda.

**catatan**  
Anda dapat memodifikasi pengaturan konfigurasi Anda dengan nol downtime dengan menukar CNAME untuk lingkungan Anda. Untuk informasi selengkapnya, lihat [Deployment Biru/Hijau dengan Elastic Beanstalk](using-features.CNAMESwap.md).

Jika mau, Anda bisa menambah jumlah parameter. Untuk informasi memperluas parameter, lihat [Pengaturan opsi](ebextensions-optionsettings.md).

**Untuk mengakses panel opsi Container/.NET untuk aplikasi Elastic Beanstalk Anda**

1. Di AWS Toolkit for Visual Studio, perluas node Elastic Beanstalk dan node aplikasi Anda. 

1. Di **AWS Explorer**, klik dua kali lingkungan Elastic Beanstalk Anda.

1. Di bagian bawah panel **Gambaran Umum**, klik tab **Konfigurasi**.

1. Di bawah **Kontainer**, Anda dapat mengonfigurasi opsi kontainer.   
![\[Panel kontainer Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-container.png)

## Opsi kontainer .NET
<a name="create_deploy_NET.container.vs.options"></a>

Anda dapat memilih versi .NET Framework untuk aplikasi Anda. Pilih 2.0 atau 4.0 untuk **Waktu aktif target**. Pilih **Aktifkan Aplikasi 32-bit** jika Anda ingin mengaktifkan aplikasi 32-bit.

## Pengaturan aplikasi
<a name="create_deploy_NET.container.vs.options.envprop"></a>

Bagian **Pengaturan Aplikasi** memungkinkan Anda menentukan variabel lingkungan yang dapat Anda baca dari kode aplikasi Anda. 

![\[Panel kontainer Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-container-envproperties.png)


# Mengelola akun
<a name="create_deploy_NET.accounts"></a>

## 
<a name="create_deploy_NET.accounts.details"></a>

Jika Anda ingin menyiapkan AWS akun yang berbeda untuk melakukan tugas yang berbeda, seperti pengujian, pementasan, dan produksi, Anda dapat menambahkan, mengedit, dan menghapus akun menggunakan AWS Toolkit for Visual Studio.

**Untuk mengelola beberapa akun**

1.  Di Visual Studio, di menu **Lihat**, klik **AWS Explorer**.

1.  Di samping daftar **Akun**, klik tombol **Tambahkan Akun**.   
![\[AWS tab penjelajah\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-aws-explorer-tab.png)

    Kotak dialog **Tambahkan Akun** muncul.   
![\[Tambahkan kotak dialog akun\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-add-account.png)

1. Isi informasi yang diminta. 

1.  Informasi akun Anda sekarang muncul di tab **AWS Explorer**. Saat Anda mempublikasikan ke Elastic Beanstalk, Anda dapat memilih akun mana yang ingin Anda gunakan. 

# Membuat daftar dan menghubungkan ke server instans
<a name="create_deploy_NET.ec2connect"></a>

Anda dapat melihat daftar EC2 instans Amazon yang menjalankan lingkungan aplikasi Elastic Beanstalk melalui Toolkit AWS for Visual Studio atau dari Management Console. AWS Anda dapat terhubung ke instans-instans ini menggunakan Remote Desktop Connection. Untuk informasi tentang mencantumkan dan menghubungkan ke instance server menggunakan AWS Management Console, lihat[Membuat daftar dan menghubungkan ke server instans](using-features.ec2connect.md). Bagian berikut akan membantu Anda melihat dan menghubungkan Anda ke instance server menggunakan AWS Toolkit for Visual Studio.

**Untuk melihat dan terhubung ke EC2 instans Amazon untuk suatu lingkungan**

1.  Di Visual Studio, di **AWS Explorer**, perluas EC2 node **Amazon** dan klik dua kali **Instans**. 

1.  Klik kanan ID EC2 instance Amazon yang berjalan di load balancer aplikasi Anda di kolom **Instance** dan pilih **Open Remote Desktop** dari menu konteks.   
![\[Buka kotak dialog desktop jarak jauh\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-rdp-login.png)

1.  Pilih **Gunakan EC2 keypair untuk masuk** dan menempelkan konten file kunci pribadi yang Anda gunakan untuk menyebarkan aplikasi Anda di kotak Kunci **pribadi**. Atau, masukkan nama pengguna dan kata sandi Anda di kotak teks **Nama pengguna** dan **Kata sandi**.
**catatan**  
Jika pasangan kunci disimpan di dalam Toolkit, kotak teks tidak muncul.

1. Klik **OK**.

# Pemantauan kondisi aplikasi
<a name="create_deploy_NET.healthstatus"></a>

Ketika Anda menjalankan situs web produksi, penting untuk mengetahui bahwa aplikasi Anda tersedia dan menanggapi permintaan. Untuk membantu pemantauan responsivitas aplikasi Anda, Elastic Beanstalk memberikan fitur agar Anda dapat memantau statistik tentang aplikasi Anda dan membuat pemberitahuan yang memicu ketika ambang batas terlampaui.

Untuk informasi tentang pemantauan kondisi yang disediakan oleh Elastic Beanstalk, lihat [Pelaporan kondisi dasar](using-features.healthstatus.md).

Anda dapat mengakses informasi operasional tentang aplikasi Anda dengan menggunakan AWS Toolkit for Visual Studio atau Management AWS Console.

Kit alat menampilkan status lingkungan dan kondisi aplikasi Anda di bidang **Status**.

![\[Status kondisi Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-env-status.png)


**Untuk memantau kondisi aplikasi**

1. Di AWS Toolkit for Visual Studio, **AWS di** Explorer, perluas node Elastic Beanstalk, dan kemudian perluas node aplikasi Anda. 

1. Klik kanan lingkungan Elastic Beanstalk Anda, dan kemudian klik **Lihat Status**.

1. Di tab lingkungan aplikasi Anda, klik **Pemantauan**.

   Panel **Pemantauan** mencakup serangkaian grafik yang menunjukkan penggunaan sumber daya untuk lingkungan aplikasi tertentu Anda.  
![\[Panel pemantauan Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-monitoring.png)
**catatan**  
Secara default, rentang waktu diatur ke jam terakhir. Untuk memodifikasi pengaturan ini, di daftar **Rentang Waktu**, klik rentang waktu yang berbeda.

Anda dapat menggunakan AWS Toolkit for Visual Studio atau AWS Management Console untuk melihat peristiwa yang terkait dengan aplikasi Anda.

**Untuk melihat peristiwa aplikasi**

1. Di AWS Toolkit for Visual Studio, **AWS di** Explorer, perluas node Elastic Beanstalk dan node aplikasi Anda. 

1. Klik kanan lingkungan Elastic Beanstalk Anda di **AWS Explorer** dan kemudian klik **Lihat Status**. 

1. Di tab lingkungan aplikasi Anda, klik **Peristiwa**.  
![\[Panel peristiwa Elastic Beanstalk\]](http://docs.aws.amazon.com/id_id/elasticbeanstalk/latest/dg/images/aeb-vs-events.png)

# Menerapkan aplikasi Elastic Beanstalk di.NET menggunakan alat penyebaran AWS
<a name="deploy_NET_standalone_tool"></a>

AWS menawarkan dua alat baris perintah untuk menyebarkan aplikasi.NET Core dan ASP.NET Core ke Elastic Beanstalk:
+ **AWS .NET deployment tool — Alat** baris perintah modern yang menyederhanakan penerapan aplikasi.NET ke AWS layanan, termasuk Elastic Beanstalk. Alat ini memberikan pengalaman interaktif dan secara otomatis dapat mendeteksi AWS layanan terbaik untuk aplikasi Anda. Untuk informasi selengkapnya, lihat [alat AWS penyebaran.NET](https://github.com/aws/aws-dotnet-deploy?tab=readme-ov-file#aws-net-deployment-tool).
+ **AWS Ekstensi untuk.NET CLI** - Satu set ekstensi.NET CLI yang menyediakan perintah untuk menyebarkan aplikasi.NET Core ke Elastic Beanstalk dan layanan lainnya. AWS Ekstensi ini terintegrasi dengan alur kerja.NET CLI standar. Untuk informasi selengkapnya, lihat [AWS Ekstensi untuk .NET CLI](https://github.com/aws/aws-extensions-for-dotnet-cli?tab=readme-ov-file#aws-elastic-beanstalk-amazonelasticbeanstalktools).

# Memigrasi aplikasi .NET On-Premise Anda ke Elastic Beanstalk
<a name="dotnet-onpremmigration"></a>

AWS Elastic Beanstalk menyediakan jalur migrasi yang efisien untuk aplikasi Windows Anda yang berjalan di Internet Information Services (IIS) melalui Elastic Beanstalk Command Line Interface (EB CLI). **eb migrate**Perintah secara otomatis menemukan situs IIS, aplikasi, dan direktori virtual Anda, mempertahankan konfigurasinya, dan menyebarkannya ke Cloud. AWS 

Kemampuan migrasi bawaan ini menawarkan pendekatan yang lebih sederhana yang mengurangi kompleksitas dan waktu yang biasanya terkait dengan migrasi cloud. Proses migrasi membantu menjaga fungsionalitas aplikasi dan integritas konfigurasi selama transisi ke AWS.

Untuk petunjuk lengkap dan terperinci tentang memigrasi aplikasi IIS Anda AWS Elastic Beanstalk, lihat bagian dalam [Migrasi aplikasi IIS ke Elastic Beanstalk](dotnet-migrating-applications.md) panduan ini.

# Rekomendasi untuk komponen pensiun Windows Server pada Elastic Beanstalk
<a name="dotnet-deprecation-recommendations"></a>

Topik ini memberikan rekomendasi jika aplikasi Anda saat ini berjalan di cabang platform Windows Server 2012 R2 yang sudah pensiun. Ini juga membahas dukungan usang untuk versi protokol TLS 1.0 dan 1.1 pada titik akhir API AWS layanan kami dan cabang platform yang terpengaruh.

## Cabang platform Windows Server 2012 R2 pensiun
<a name="dotnet-retired-branches"></a>

Elastic Beanstalk mempensiunkan [cabang platform Windows Server 2012 R2 pada 4 Desember](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2023-12-04-windows-2012-retire.html) 2023, dan AMIs menjadikan platform yang terkait dengan platform tersebut menjadi pribadi pada 10 April 2024. Tindakan ini mencegah peluncuran instance di lingkungan Windows Server 2012 Anda yang menggunakan AMI Beanstalk default.

Jika Anda memiliki lingkungan yang berjalan di cabang platform Windows yang sudah pensiun, kami sarankan Anda memigrasikannya ke salah satu platform Windows Server berikut, yang saat ini dan didukung penuh:
+ Windows Server 2022 dengan IIS 10.0 versi 2.x
+ Windows Server 2019 dengan IIS 10.0 versi 2.x

Untuk pertimbangan migrasi lengkap, lihat[Migrasi dari versi utama sebelumnya dari platform server Windows](dotnet-v2migration.md#dotnet-v2migration.migration).

Untuk informasi selengkapnya tentang penghentian platform, lihat. [Kebijakan dukungan platform Elastic Beanstalk](platforms-support-policy.md)

**catatan**  
Jika Anda tidak dapat bermigrasi ke platform yang didukung penuh ini, sebaiknya gunakan kustom yang AMIs dibuat dengan Windows Server 2012 R2 atau Windows Server 2012 R2 Core AMIs sebagai gambar dasar, jika Anda belum melakukannya. Untuk petunjuk mendetail, lihat [Mempertahankan akses ke Amazon Machine Image (AMI) untuk platform yang sudah pensiun](using-features.customenv-env-copy.md). Hubungi [Pusat AWS Dukungan](https://console.aws.amazon.com/support/home#/) jika Anda memerlukan akses sementara ke AMI saat Anda melakukan salah satu langkah migrasi ini.

## TLS 1.2 Kompatibilitas
<a name="tls-1-2-enforcement."></a>

Per 31 Desember 2023, AWS mulai sepenuhnya menerapkan TLS 1.2 di semua AWS titik akhir API. Tindakan ini menghapus kemampuan untuk menggunakan TLS versi 1.0 dan 1.1 dengan semua AWS APIs. Informasi ini awalnya dikomunikasikan pada [28 Juni 2022](https://aws.amazon.com/blogs/security/tls-1-2-required-for-aws-endpoints/). Untuk menghindari risiko dampak ketersediaan, tingkatkan lingkungan apa pun yang menjalankan versi platform yang diidentifikasi di sini ke versi yang lebih baru sesegera mungkin, jika Anda belum melakukannya.

**Potensi dampak**  
Versi platform Elastic Beanstalk yang menjalankan TLS v1.1 atau sebelumnya terpengaruh. Perubahan ini memengaruhi tindakan lingkungan yang mencakup tetapi tidak terbatas pada hal-hal berikut: penerapan konfigurasi, penerapan aplikasi, penskalaan otomatis, peluncuran lingkungan baru, rotasi log, laporan kesehatan yang disempurnakan, dan menerbitkan log aplikasi ke bucket Amazon S3 yang terkait dengan aplikasi Anda.

**Versi Platform Windows yang Terkena Dampak**  
[Pelanggan dengan lingkungan Elastic Beanstalk pada versi platform berikut disarankan untuk memutakhirkan setiap lingkungan yang sesuai ke platform Windows versi 2.8.3 atau yang lebih baru, dirilis pada 18 Feb 2022.](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2022-02-18-windows.html)
+ Windows Server 2019 - platform versi 2.8.2 atau versi sebelumnya

[Pelanggan dengan lingkungan Elastic Beanstalk pada versi platform berikut disarankan untuk memutakhirkan setiap lingkungan yang sesuai ke platform Windows versi 2.10.7 atau yang lebih baru, dirilis pada 28 Des 2022.](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2022-12-28-windows.html)
+ Windows Server 2016 - platform versi 2.10.6 atau versi sebelumnya
+ Windows Server 2012 — semua versi platform; platform ini dihentikan pada [4 Desember 2023](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2023-12-04-windows-2012-retire.html) 
+ Windows Server 2008 — semua versi platform; platform ini dihentikan pada [28 Oktober 2019](https://docs.aws.amazon.com/elasticbeanstalk/latest/relnotes/release-2019-10-28-windows.html) 

Untuk daftar versi platform Windows Server terbaru dan didukung, lihat Platform yang [Didukung](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.net) dalam panduan *AWS Elastic Beanstalk Platform*. 

Untuk detail dan praktik terbaik tentang memperbarui lingkungan Anda, lihat[Memperbarui versi platform lingkungan Elastic Beanstalk Anda](using-features.platform.upgrade.md).