Menetapkan nama domain ke tugas AWS Fargate

12

Saya memiliki tugas AWS Fargate yang menjalankan aplikasi web di subnet publik sehingga ia memiliki alamat publik. Pertanyaan saya adalah bagaimana saya menghubungkan domain (melalui Rute 53) ke tugas itu, sehingga tidak ada yang rusak ketika saya menggunakan versi baru itu.

  • Saya tahu saya bisa menggunakan ALB / NLB tapi saya ingin menghemat biaya.
  • Saya tidak ingin menggunakan IP publik secara langsung karena dapat berubah.
  • Saya menganggap solusinya harus melakukan sesuatu dengan ENI tapi saya tidak yakin bagaimana menunjukkannya melalui Rute 53.

Bantuan apa pun akan sangat dihargai.

Terima kasih

Leo
sumber

Jawaban:

6

Untuk sebagian besar kasus, Anda kemungkinan besar ingin menggunakan ALB / NLB untuk penemuan layanan. Meskipun ada beberapa biaya, Anda juga mendapatkan banyak manfaat: Beberapa perlindungan DoS, metrik penskalaan, logging, SSL / TLS

Namun, Anda dapat menggunakan penemuan layanan ECS .

Penemuan layanan menggunakan Amazon Route 53 tindakan penamaan otomatis API untuk mengelola entri DNS untuk tugas layanan Anda, membuatnya dapat ditemukan dalam VPC Anda

dan

Ruang nama publik didukung tetapi Anda harus memiliki zona host umum yang ada terdaftar dengan Rute 53 sebelum membuat layanan pencarian layanan Anda.

Penemuan layanan mengharuskan tugas menggunakan mode jaringan awsvpc, bridge, atau host.

Berikut ini adalah entri Blog yang merinci cara menggunakan Penemuan layanan dengan fargate: https://aws.amazon.com/blogs/aws/amazon-ecs-service-discovery/

M. Glatki
sumber
0

Saya mencoba untuk. Masalahnya adalah ip publik yang menggunakan fargate dilampirkan pada TUGAS sehingga jika tugas dimulai kembali maka alamat ip baru diberikan dan catatan dns perlu diperbarui. Itulah mengapa alb / nlb digunakan.

Secara teori Anda bisa menggunakan sesuatu yang lain untuk mengelola catatan host dns, mungkin fungsi lambda atau sesuatu

Pertimbangan Penemuan Layanan: Catatan DNS yang dibuat untuk layanan penemuan layanan selalu mendaftar dengan alamat IP pribadi untuk tugas tersebut, bukan alamat IP publik, bahkan ketika ruang nama publik digunakan.

https://forums.aws.amazon.com/thread.jspa?threadID=270599

oneklc
sumber
0

Sebagaimana dinyatakan dalam panduan pengembang ECS :

Amazon ECS tidak mendukung layanan pendaftaran ke ruang nama DNS publik

Jadi tidak ada peluang untuk pendaftaran domain publik out-of-the-box melalui ECS Service Discovery. Tetapi yang dapat Anda lakukan adalah menggunakan AWS SKD untuk mengambil alamat IP publik dari wadah Anda setelah penyebaran dan mendaftarkannya di zona umum Rute 53 yang dihosting.

Artikel ini menunjukkan pendekatan menggunakan fungsi lambda untuk melakukan hal itu kapan pun kontainer Anda dipindahtugaskan.

Andreas Pasch
sumber