Призначення доменного імені до завдання AWS Fargate


13

У мене завдання AWS Fargate запускає веб-додаток у загальнодоступній підмережі, щоб він мав публічну адресу. Моє запитання полягає в тому, як підключити домен (через маршрут 53) до цього завдання, щоб нічого не зламалося, коли я розгортаю нову його версію.

  • Я знаю, що можу використовувати ALB / NLB, але хочу заощадити на витратах.
  • Я не хочу використовувати загальнодоступний IP безпосередньо, оскільки він може змінитися.
  • Я припускаю, що рішення має щось із ENI, але я не впевнений, як вказати на нього через маршрут 53.

Будь-яка допомога буде дуже вдячна.

Дякую

Відповіді:


7

У більшості випадків ви, швидше за все, хочете використовувати ALB / NLB для виявлення сервісу. Незважаючи на певні витрати, ви також отримуєте багато переваг: Деякі захист DoS, масштабування показників, ведення журналів, SSL / TLS

Однак ви можете використовувати службу відкриття служб ECS .

Служба виявлення використовує Amazon Route 53 дії автоматичного іменування API для управління записами DNS для завдань вашої служби, роблячи їх відкритими для вашого VPC

і

Підтримуються загальнодоступні простори імен, але перед створенням служби виявлення служби у вас повинна бути зареєстрована наявна публічна розміщена зона.

Відкриття служби вимагає, щоб завдання використовували або режим awsvpc, міст, або хост-мережу.

Ось запис у блозі, в якому детально описується використання сервісного виявлення з fargate: https://aws.amazon.com/blogs/aws/amazon-ecs-service-discovery/


0

Я намагався. Проблема полягає в публічному ip, який використовує fargate, приєднаний до ЗАВДАННЯ, тому якщо завдання буде перезапущено, надається нова ip-адреса, і запис dns потрібно оновити. Ось чому використовується alb / nlb.

Теоретично ви могли б використовувати щось інше для управління записами хостів dns, можливо, функцією лямбда чи щось

Міркування щодо виявлення служби: записи DNS, створені для служби виявлення послуги, завжди реєструються з приватною IP-адресою для завдання, а не з загальнодоступною IP-адресою, навіть коли використовуються публічні простори імен.

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


0

Як зазначено в посібнику для розробників ECS :

Amazon ECS не підтримує реєстрацію служб у публічних просторах імен DNS

Тож жодних шансів на нестандартну реєстрацію публічного домену через службу ECS Service Discovery. Але що ви можете зробити, це скористатися AWS SKD для отримання відкритої IP-адреси вашого контейнера після розгортання та зареєструвати його у вашій загальнодоступній зоні маршруту 53.

У цій статті показаний підхід із використанням лямбда-функції, щоб зробити саме це, коли кожен контейнер буде перерозподілений.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.