Assegnare un nome di dominio a un'attività AWS Fargate


12

Ho un'attività AWS Fargate che esegue un'app Web in una sottorete pubblica, quindi ha un indirizzo pubblico. La mia domanda è come collegare un dominio (tramite Route 53) a quell'attività, in modo che nulla si rompa quando distribuisco una nuova versione di esso.

  • So di poter usare ALB / NLB ma voglio risparmiare sui costi.
  • Non voglio usare direttamente l'IP pubblico in quanto potrebbe cambiare.
  • Suppongo che la soluzione debba fare qualcosa con l'ENI ma non sono sicuro di come indicarlo attraverso la Route 53.

Qualsiasi aiuto sarebbe molto apprezzato.

Grazie

Risposte:


6

Nella maggior parte dei casi, molto probabilmente si desidera utilizzare un ALB / NLB per il rilevamento del servizio. Sebbene ci siano alcuni costi, ottieni anche molti vantaggi: alcune protezioni DoS, ridimensionamento delle metriche, registrazione, SSL / TLS

Tuttavia, è possibile utilizzare il rilevamento del servizio ECS .

Il servizio di rilevamento utilizza le azioni API di denominazione automatica Amazon Route 53 per gestire le voci DNS per le attività del servizio, rendendole rilevabili all'interno del VPC

e

Gli spazi dei nomi pubblici sono supportati ma è necessario disporre di una zona ospitata pubblica esistente registrata con Route 53 prima di creare il servizio di individuazione del servizio.

L'individuazione del servizio richiede che le attività utilizzino la modalità di rete awsvpc, bridge o host.

Ecco una voce del blog che descrive in dettaglio come utilizzare Service discovery con fargate: https://aws.amazon.com/blogs/aws/amazon-ecs-service-discovery/


0

Ho provato a. Il problema è che l'IP pubblico utilizzato da Fargate è collegato a TASK, quindi se l'attività viene riavviata viene fornito un nuovo indirizzo IP e il record DNS deve essere aggiornato. Ecco perché viene utilizzato alb / nlb.

In teoria potresti usare qualcos'altro per gestire i record dell'host DNS, forse una funzione lambda o qualcosa del genere

Considerazioni sul rilevamento del servizio: i record DNS creati per un servizio di rilevamento del servizio si registrano sempre con l'indirizzo IP privato per l'attività, anziché con l'indirizzo IP pubblico, anche quando vengono utilizzati spazi dei nomi pubblici.

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


0

Come indicato nella guida per sviluppatori ECS :

Amazon ECS non supporta la registrazione di servizi in spazi dei nomi DNS pubblici

Quindi nessuna possibilità di registrazione immediata di dominio pubblico tramite ECS Service Discovery. Ma quello che puoi fare è utilizzare AWS SKD per recuperare l'indirizzo IP pubblico del tuo contenitore dopo la distribuzione e registrarlo nella tua zona pubblica ospitata su Route 53.

Questo articolo mostra un approccio che utilizza una funzione lambda per fare esattamente questo ogni volta che il container viene ridistribuito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.