

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

# Arsitek untuk EC2 kapasitas Amazon ECS
<a name="launch-type-ec2"></a>

Gunakan EC2 kapasitas untuk beban kerja besar yang harus dioptimalkan harga.

Saat mempertimbangkan cara memodelkan definisi tugas dan layanan yang digunakan EC2, kami menyarankan Anda mempertimbangkan proses apa yang harus dijalankan bersama dan bagaimana Anda dapat melakukan penskalaan setiap komponen.

Sebagai contoh, misalkan aplikasi terdiri dari komponen-komponen berikut:
+ Sebuah layanan frontend yang menampilkan informasi pada halaman web
+ Layanan backend yang menyediakan layanan APIs frontend
+ Penyimpanan data

Untuk contoh ini, buat definisi tugas yang mengelompokkan kontainer yang digunakan untuk tujuan bersama. Pisahkan komponen yang berbeda menjadi beberapa definisi tugas. Contoh cluster berikut memiliki tiga instance kontainer yang menjalankan tiga kontainer layanan front-end, dua kontainer layanan backend, dan satu kontainer layanan penyimpanan data. 

Anda dapat mengelompokkan kontainer terkait dalam ketentuan tugas, seperti kontainer terkait yang harus dijalankan bersama-sama. Misalnya, tambahkan wadah streaming log ke layanan front-end Anda dan sertakan dalam definisi tugas yang sama.

Setelah Anda memiliki ketentuan tugas, Anda dapat membuat layanan dari mereka untuk menjaga ketersediaan tugas yang Anda inginkan. Untuk informasi selengkapnya, lihat [Membuat penyebaran pembaruan bergulir Amazon ECS](create-service-console-v2.md). Dalam layanan Anda, Anda dapat mengaitkan kontainer dengan penyeimbang beban Elastic Load Balancing. Untuk informasi selengkapnya, lihat [Menggunakan penyeimbangan beban untuk mendistribusikan lalu lintas layanan Amazon ECS](service-load-balancing.md). Ketika persyaratan aplikasi Anda berubah, Anda dapat memperbarui layanan Anda untuk meningkatkan atau menurunkan jumlah tugas yang diinginkan. Atau, Anda dapat memperbarui layanan untuk menerapkan versi kontainer yang lebih baru dalam tugas Anda. Untuk informasi selengkapnya, lihat [Memperbarui layanan Amazon ECS](update-service-console-v2.md).

![\[Contoh arsitektur aplikasi dengan tiga contoh. Instance 1 memiliki wadah layanan Front-end dan wadah layanan database. Instance 2 dan Instance 3 memiliki wadah layanan front-end dan wadah layanan backend.\]](http://docs.aws.amazon.com/id_id/AmazonECS/latest/developerguide/images/application.png)


# Perilaku tarik gambar kontainer untuk EC2 dan instans eksternal di Amazon ECS
<a name="pull-behavior"></a>

Waktu yang dibutuhkan wadah untuk memulai bervariasi, berdasarkan gambar kontainer yang mendasarinya. Misalnya, gambar yang lebih gemuk (versi lengkap Debian, Ubuntu, dan Amazon1/2) mungkin membutuhkan waktu lebih lama untuk memulai karena ada lebih banyak layanan yang berjalan di wadah dibandingkan dengan versi ramping masing-masing (Debian-slim, Ubuntu-slim, dan Amazon-slim) atau gambar dasar yang lebih kecil (Alpine).

Ketika agen Amazon ECS memulai tugas, ia menarik gambar Docker dari registri jarak jauhnya, dan kemudian menyimpan salinan lokal. Bila Anda menggunakan tag gambar baru untuk setiap rilis aplikasi Anda, perilaku ini tidak diperlukan. 

Parameter `ECS_IMAGE_PULL_BEHAVIOR` agen menentukan perilaku tarik gambar. Pilihan berikut tersedia:
+ `ECS_IMAGE_PULL_BEHAVIOR`: `default`

  Gambar akan ditarik dari jarak jauh. Jika tarikan gagal, gambar yang di-cache dalam instance digunakan.
+ `ECS_IMAGE_PULL_BEHAVIOR`: `always`

  Gambar akan ditarik dari jarak jauh. Jika tarikan gagal, tugas gagal.

Untuk mempercepat penerapan, setel parameter agen Amazon ECS ke salah satu nilai berikut: 
+ `ECS_IMAGE_PULL_BEHAVIOR`: `once`

  Gambar ditarik dari jarak jauh hanya jika tidak ditarik oleh tugas sebelumnya pada instance kontainer yang sama atau jika gambar yang di-cache dihapus oleh proses pembersihan gambar otomatis. Jika tidak, citra cache pada instans digunakan. Hal ini memastikan bahwa tidak ada percobaan penarikan citra yang tidak perlu. 
+ `ECS_IMAGE_PULL_BEHAVIOR`: `prefer-cached`

  Gambar ditarik dari jarak jauh jika tidak ada gambar yang di-cache. Jika tidak, citra cache pada instans digunakan. Pembersihan gambar otomatis dimatikan untuk wadah untuk memastikan bahwa gambar yang di-cache tidak dihapus. 

Menyetel `ECS_IMAGE_PULL_BEHAVIOR` parameter ke salah satu nilai sebelumnya dapat menghemat waktu karena agen Amazon ECS menggunakan gambar yang diunduh yang ada. Untuk gambar Docker yang lebih besar, waktu pengunduhan mungkin memakan waktu 10-20 detik untuk melewati jaringan.