Layanan interkoneksi - Amazon Elastic Container Service

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

Layanan interkoneksi

Aplikasi yang berjalan dalam tugas Amazon ECS seringkali perlu menerima koneksi dari internet atau untuk terhubung ke aplikasi lain yang berjalan di layanan Amazon ECS. Jika Anda membutuhkan koneksi eksternal dari internet, sebaiknya gunakan Elastic Load Balancing. Untuk informasi selengkapnya tentang penyeimbangan beban terintegrasi, lihatMendistribusikan lalu lintas layanan Amazon ECS menggunakan load balancing.

Memilih metode interkoneksi

Jika Anda memerlukan aplikasi untuk terhubung ke aplikasi lain yang berjalan di layanan Amazon ECS, Amazon ECS menyediakan cara-cara berikut untuk melakukan ini tanpa penyeimbang beban:

  • Amazon ECS Service Connect

    Kami merekomendasikan Service Connect, yang menyediakan konfigurasi Amazon ECS untuk penemuan layanan, konektivitas, dan pemantauan lalu lintas. Dengan Service Connect, aplikasi Anda dapat menggunakan nama pendek dan port standar untuk terhubung ke layanan Amazon ECS di cluster yang sama, cluster lain, termasuk di seluruh VPC yang sama. Wilayah AWS

    Saat Anda menggunakan Service Connect, Amazon ECS mengelola semua bagian penemuan layanan: membuat nama yang dapat ditemukan, mengelola entri secara dinamis untuk setiap tugas saat tugas dimulai dan dihentikan, menjalankan agen di setiap tugas yang dikonfigurasi untuk menemukan nama. Aplikasi Anda dapat mencari nama dengan menggunakan fungsionalitas standar untuk nama DNS dan membuat koneksi. Jika aplikasi Anda sudah melakukan ini, Anda tidak perlu memodifikasi aplikasi Anda untuk menggunakan Service Connect.

    Anda menyediakan konfigurasi lengkap di dalam setiap layanan dan definisi tugas. Amazon ECS mengelola perubahan pada konfigurasi ini di setiap penyebaran layanan, untuk memastikan bahwa semua tugas dalam penerapan berperilaku dengan cara yang sama. Misalnya, masalah umum dengan DNS sebagai penemuan layanan adalah mengendalikan migrasi. Jika Anda mengubah nama DNS untuk menunjuk ke alamat IP pengganti baru, mungkin diperlukan waktu TTL maksimum sebelum semua klien mulai menggunakan layanan baru. Dengan Service Connect, penyebaran klien memperbarui konfigurasi dengan mengganti tugas klien. Anda dapat mengonfigurasi pemutus sirkuit penyebaran dan konfigurasi penerapan lainnya untuk memengaruhi perubahan Service Connect dengan cara yang sama seperti penerapan lainnya.

    Untuk informasi selengkapnya, lihat Layanan Connect.

  • Penemuan layanan Amazon ECS

    Pendekatan lain untuk service-to-service komunikasi adalah komunikasi langsung menggunakan penemuan layanan. Dalam pendekatan ini, Anda dapat menggunakan integrasi penemuan AWS Cloud Map layanan dengan Amazon ECS. Menggunakan penemuan layanan, Amazon ECS menyinkronkan daftar tugas yang diluncurkan ke AWS Cloud Map, yang mempertahankan nama host DNS yang menyelesaikan ke alamat IP internal dari satu atau lebih tugas dari layanan tertentu. Layanan lain di Amazon VPC dapat menggunakan nama host DNS ini untuk mengirim lalu lintas langsung ke wadah lain menggunakan alamat IP internalnya.

    Pendekatan service-to-service komunikasi ini memberikan latensi rendah. Tidak ada komponen tambahan di antara wadah. Lalu lintas bergerak langsung dari satu kontainer ke kontainer lainnya.

    Pendekatan ini cocok saat menggunakan mode awsvpc jaringan, di mana setiap tugas memiliki alamat IP uniknya sendiri. Sebagian besar perangkat lunak hanya mendukung penggunaan A catatan DNS, yang menyelesaikan langsung ke alamat IP. Saat menggunakan mode awsvpc jaringan, alamat IP untuk setiap tugas adalah A catatan. Namun, jika Anda menggunakan mode bridge jaringan, beberapa kontainer dapat berbagi alamat IP yang sama. Selain itu, pemetaan port dinamis menyebabkan kontainer diberi nomor port secara acak pada alamat IP tunggal itu. Pada titik ini, A catatan tidak lagi cukup untuk penemuan layanan. Anda juga harus menggunakan SRV catatan. Jenis catatan ini dapat melacak alamat IP dan nomor port tetapi mengharuskan Anda mengonfigurasi aplikasi dengan tepat. Beberapa aplikasi bawaan yang Anda gunakan mungkin tidak mendukung SRV catatan.

    Keuntungan lain dari mode awsvpc jaringan adalah Anda memiliki grup keamanan unik untuk setiap layanan. Anda dapat mengonfigurasi grup keamanan ini untuk mengizinkan koneksi masuk hanya dari layanan hulu tertentu yang perlu berbicara dengan layanan tersebut.

    Kerugian utama dari service-to-service komunikasi langsung menggunakan penemuan layanan adalah Anda harus menerapkan logika tambahan untuk mencoba ulang dan menangani kegagalan koneksi. Catatan DNS memiliki periode time-to-live (TTL) yang mengontrol berapa lama mereka di-cache. Dibutuhkan beberapa waktu agar catatan DNS diperbarui dan cache kedaluwarsa sehingga aplikasi Anda dapat mengambil versi terbaru dari catatan DNS. Jadi, aplikasi Anda mungkin akan menyelesaikan catatan DNS untuk menunjuk ke wadah lain yang sudah tidak ada lagi. Aplikasi Anda perlu menangani percobaan ulang dan memiliki logika untuk mengabaikan backend yang buruk.

    Lihat informasi yang lebih lengkap di Penemuan Layanan

Tabel kompatibilitas mode jaringan

Tabel berikut mencakup kompatibilitas antara opsi ini dan mode jaringan tugas. Dalam tabel, “klien” mengacu pada aplikasi yang membuat koneksi dari dalam tugas Amazon ECS.

Opsi Interkoneksi Dijembatani awsvpc Host
Penemuan layanan ya, tetapi mengharuskan klien mengetahui catatan SRV di DNS tanpa. hostPort Ya ya, tetapi mengharuskan klien mengetahui catatan SRV di DNS tanpa. hostPort
Layanan Connect Ya ya tidak