

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

# Jalankan tugas Amazon ECS di Amazon WorkSpaces dengan Amazon ECS Anywhere
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere"></a>

*Akash Kumar, Amazon Web Services*

## Ringkasan
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-summary"></a>

Amazon Elastic Container Service (Amazon ECS) Anywhere mendukung penerapan tugas Amazon ECS di lingkungan apa pun, termasuk infrastruktur terkelola Amazon Web Services (AWS) dan infrastruktur yang dikelola pelanggan. Anda dapat melakukan ini saat menggunakan pesawat kontrol terkelola AWS sepenuhnya yang berjalan di cloud dan selalu up to date. 

Perusahaan sering menggunakan Amazon WorkSpaces untuk mengembangkan aplikasi berbasis kontainer. Ini memerlukan Amazon Elastic Compute Cloud (Amazon EC2) atau AWS Fargate dengan cluster Amazon ECS untuk menguji dan menjalankan tugas ECS. Sekarang, dengan menggunakan Amazon ECS Anywhere, Anda dapat menambahkan WorkSpaces Amazon sebagai instans eksternal langsung ke cluster ECS, dan Anda dapat menjalankan tugas secara langsung. Ini mengurangi waktu pengembangan Anda, karena Anda dapat menguji container Anda dengan cluster ECS secara lokal di Amazon. WorkSpaces Anda juga dapat menghemat biaya penggunaan EC2 atau instance Fargate untuk menguji aplikasi kontainer Anda.

Pola ini menampilkan cara menerapkan tugas ECS di Amazon WorkSpaces dengan Amazon ECS Anywhere. Ini mengatur cluster ECS dan menggunakan AWS Directory Service Simple AD untuk meluncurkan file. WorkSpaces Kemudian contoh tugas ECS meluncurkan NGINX di. WorkSpaces

## Prasyarat dan batasan
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-prereqs"></a>
+ Akun AWS yang aktif
+ Antarmuka Baris Perintah AWS (AWS CLI)
+ Kredensi AWS [dikonfigurasi pada](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-files.html) mesin Anda

## Arsitektur
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-architecture"></a>

**Tumpukan teknologi target**
+ Awan pribadi virtual (VPC)
+ Kluster Amazon ECS
+ Amazon WorkSpaces
+ AWS Directory Service dengan Simple AD

**Arsitektur target**

![\[ECS Anywhere menyiapkan cluster ECS dan menggunakan Simple AD untuk diluncurkan. WorkSpaces\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/images/pattern-img/da8b2249-3423-485c-9fef-6f902025e969/images/fd354d14-f29b-4b9e-8f1a-c3cb7ed4d6bf.png)


 

Arsitektur mencakup layanan dan sumber daya berikut:
+ Cluster ECS dengan subnet publik dan pribadi dalam VPC khusus
+ Simple AD di VPC untuk menyediakan akses pengguna ke Amazon WorkSpaces
+ Amazon WorkSpaces disediakan di VPC menggunakan Simple AD
+ AWS Systems Manager diaktifkan untuk menambahkan Amazon WorkSpaces sebagai instans terkelola
+ Menggunakan Amazon ECS dan AWS Systems Manager Agent (SSM Agent), Amazon WorkSpaces ditambahkan ke Systems Manager dan cluster ECS
+ Contoh tugas ECS untuk dijalankan di WorkSpaces dalam cluster ECS

## Alat
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-tools"></a>
+ [AWS Directory Service Simple Active Directory (Simple AD)](https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_simple_ad.html) adalah direktori terkelola mandiri yang didukung oleh Server Kompatibel Direktori Aktif Samba 4. Simple AD menyediakan subset fitur yang ditawarkan oleh AWS Managed Microsoft AD, termasuk kemampuan untuk mengelola pengguna dan terhubung dengan aman ke instans Amazon EC2 .
+ [Amazon Elastic Container Service (Amazon ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html)) adalah layanan manajemen kontainer yang cepat dan terukur yang membantu Anda menjalankan, menghentikan, dan mengelola kontainer di klaster.
+ [AWS Identity and Access Management (IAM)](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction.html) membantu Anda mengelola akses ke sumber daya AWS dengan aman dengan mengontrol siapa yang diautentikasi dan diberi wewenang untuk menggunakannya.
+ [AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) membantu Anda mengelola aplikasi dan infrastruktur yang berjalan di AWS Cloud. Ini menyederhanakan manajemen aplikasi dan sumber daya, mempersingkat waktu untuk mendeteksi dan menyelesaikan masalah operasional, dan membantu Anda mengelola sumber daya AWS Anda dengan aman dalam skala besar.
+ [Amazon WorkSpaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html) membantu Anda menyediakan desktop Microsoft Windows atau Amazon Linux virtual berbasis cloud untuk pengguna Anda, yang dikenal sebagai. *WorkSpaces* WorkSpaces menghilangkan kebutuhan untuk mendapatkan dan menyebarkan perangkat keras atau menginstal perangkat lunak yang kompleks.

## Epik
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-epics"></a>

### Siapkan cluster ECS
<a name="set-up-the-ecs-cluster"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat dan konfigurasikan cluster ECS. | Untuk membuat cluster ECS, ikuti petunjuk dalam [dokumentasi AWS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/create_cluster.html), termasuk langkah-langkah berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/prescriptive-guidance/latest/patterns/run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere.html) | Arsitek awan | 

### Luncurkan Amazon WorkSpaces
<a name="launch-amazon-workspaces"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Siapkan Simple AD dan luncurkan Amazon WorkSpaces. | Untuk menyediakan direktori Simple AD untuk VPC yang baru dibuat dan meluncurkan Amazon WorkSpaces, ikuti petunjuk dalam dokumentasi [AWS](https://docs.aws.amazon.com/workspaces/latest/adminguide/launch-workspace-simple-ad.html). | Arsitek awan | 

### Menyiapkan AWS Systems Manager untuk lingkungan hybrid
<a name="set-up-aws-systems-manager-for-a-hybrid-environment"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Unduh skrip terlampir. | Di mesin lokal Anda, unduh `ssm-activation.json` file `ssm-trust-policy.json` dan file yang ada di bagian *Lampiran.* | Arsitek awan | 
| Tambahkan peran IAM. | Tambahkan variabel lingkungan berdasarkan kebutuhan bisnis Anda.<pre>export AWS_DEFAULT_REGION=${AWS_REGION_ID}<br />export ROLE_NAME=${ECS_TASK_ROLE}<br />export CLUSTER_NAME=${ECS_CLUSTER_NAME}<br />export SERVICE_NAME=${ECS_CLUSTER_SERVICE_NAME}</pre>Jalankan perintah berikut.<pre>aws iam create-role --role-name $ROLE_NAME --assume-role-policy-document file://ssm-trust-policy.json</pre> | Arsitek awan | 
| Tambahkan SSMManaged InstanceCore kebijakan Amazon ke peran IAM. | Jalankan perintah berikut.<pre>aws iam attach-role-policy --role-name $ROLE_NAME --policy-arn arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore</pre> | Arsitek awan | 
| Tambahkan kebijakan EC2 ContainerServicefor EC2 Peran Amazon ke peran IAM. | Jalankan perintah berikut.<pre>aws iam attach-role-policy --role-name $ROLE_NAME --policy-arn arn:aws:iam::aws:policy/service-role/AmazonEC2ContainerServiceforEC2Role</pre> | Arsitek awan | 
| Verifikasi peran IAM. | Untuk memverifikasi peran IAM, jalankan perintah berikut.<pre>aws iam list-attached-role-policies --role-name $ROLE_NAME</pre> | Arsitek awan | 
| Aktifkan Systems Manager. | Jalankan perintah berikut.<pre>aws ssm create-activation --iam-role $ROLE_NAME | tee ssm-activation.json</pre> | Arsitek awan | 

### Tambahkan WorkSpaces ke cluster ECS
<a name="add-workspaces-to-the-ecs-cluster"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
|  Connect ke Anda WorkSpaces. | Untuk menyambung dan mengatur Ruang Kerja Anda, ikuti petunjuk dalam [dokumentasi AWS](https://docs.aws.amazon.com/workspaces/latest/userguide/workspaces-user-getting-started.html). | Pengembang aplikasi | 
| Unduh skrip penginstalan ecs-anywhere. | Pada prompt perintah, jalankan perintah berikut:<pre>curl -o "ecs-anywhere-install.sh" "https://amazon-ecs-agent-packages-preview.s3.us-east-1.amazonaws.com/ecs-anywhere-install.sh" && sudo chmod +x ecs-anywhere-install.sh</pre> | Pengembang aplikasi | 
| Periksa integritas skrip shell. | (Opsional) Jalankan perintah berikut.<pre>curl -o "ecs-anywhere-install.sh.sha256" "https://amazon-ecs-agent-packages-preview.s3.us-east-1.amazonaws.com/ecs-anywhere-install.sh.sha256" && sha256sum -c ecs-anywhere-install.sh.sha256<br /><br /><br /></pre> | Pengembang aplikasi | 
| Tambahkan repositori EPEL di Amazon Linux. | Untuk menambahkan repositori Paket Ekstra untuk Enterprise Linux (EPEL), jalankan perintah. `sudo amazon-linux-extras install epel -y` | Pengembang aplikasi | 
| Instal Amazon ECS Anywhere. | Untuk menjalankan skrip instal, gunakan perintah berikut.<pre>sudo ./ecs-anywhere-install.sh --cluster $CLUSTER_NAME --activation-id $ACTIVATION_ID --activation-code $ACTIVATION_CODE --region $AWS_REGION<br /><br /><br /></pre> |  | 
| Periksa informasi instance dari cluster ECS. | Untuk memeriksa informasi instans Systems Manager dan ECS cluster dan memvalidasi yang WorkSpaces ditambahkan pada cluster, jalankan perintah berikut dari mesin lokal Anda.<pre>aws ssm describe-instance-information" && "aws ecs list-container-instances --cluster $CLUSTER_NAME</pre> | Pengembang aplikasi | 

### Tambahkan tugas ECS untuk WorkSpaces
<a name="add-an-ecs-task-for-the-workspaces"></a>


| Tugas | Deskripsi | Keterampilan yang dibutuhkan | 
| --- | --- | --- | 
| Buat peran IAM eksekusi tugas. | Unduh `task-execution-assume-role.json` dan `external-task-definition.json` dari bagian *Lampiran.* Pada mesin lokal Anda, jalankan perintah berikut.<pre>aws iam --region $AWS_DEFAULT_REGION create-role --role-name $ECS_TASK_EXECUTION_ROLE --assume-role-policy-document file://task-execution-assume-role.json</pre> | Arsitek awan | 
| Tambahkan kebijakan ke peran eksekusi. | Jalankan perintah berikut.<pre>aws iam --region $AWS_DEFAULT_REGION attach-role-policy --role-name $ECS_TASK_EXECUTION_ROLE --policy-arn arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy</pre> | Arsitek awan | 
| Buat peran tugas. | Jalankan perintah berikut.<pre>aws iam --region $AWS_DEFAULT_REGION create-role --role-name $ECS_TASK_EXECUTION_ROLE --assume-role-policy-document file://task-execution-assume-role.json<br /><br /><br /></pre> | Arsitek awan | 
| Daftarkan definisi tugas ke cluster. | Pada mesin lokal Anda, jalankan perintah berikut.<pre>aws ecs register-task-definition --cli-input-json file://external-task-definition.json</pre> | Arsitek awan | 
| Jalankan tugas. | Pada mesin lokal Anda, jalankan perintah berikut.<pre>aws ecs run-task --cluster $CLUSTER_NAME --launch-type EXTERNAL --task-definition nginx</pre> | Arsitek awan | 
| Validasi status tugas yang sedang berjalan. | Untuk mengambil ID tugas, jalankan perintah berikut.<pre>export TEST_TASKID=$(aws ecs list-tasks --cluster $CLUSTER_NAME | jq -r '.taskArns[0]')</pre>Dengan ID tugas, jalankan perintah berikut.<pre>aws ecs describe-tasks --cluster $CLUSTER_NAME --tasks ${TEST_TASKID}</pre> | Arsitek awan | 
| Verifikasi tugas di WorkSpace. | Untuk memeriksa bahwa NGINX berjalan pada WorkSpace, jalankan perintah. ` curl http://localhost:8080` | Pengembang aplikasi | 

## Sumber daya terkait
<a name="run-amazon-ecs-tasks-on-amazon-workspaces-with-amazon-ecs-anywhere-resources"></a>
+ [Cluster ECS](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/clusters.html)
+ [Menyiapkan lingkungan hibrida](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-managedinstances.html)
+ [Amazon WorkSpaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/amazon-workspaces.html)
+ [Sederhana AD](https://docs.aws.amazon.com/workspaces/latest/adminguide/launch-workspace-simple-ad.html)

## Lampiran
<a name="attachments-da8b2249-3423-485c-9fef-6f902025e969"></a>

[Untuk mengakses konten tambahan yang terkait dengan dokumen ini, unzip file berikut: attachment.zip](samples/p-attach/da8b2249-3423-485c-9fef-6f902025e969/attachments/attachment.zip)