AWS Fargateタスクへのドメイン名の割り当て


12

パブリックサブネットでウェブアプリを実行しているAWS Fargateタスクがあるため、パブリックアドレスを持っています。私の質問は、ドメインを(Route 53経由で)そのタスクに接続する方法です。そのため、新しいバージョンのドメインを展開しても何も壊れません。

  • ALB / NLBを使用できることはわかっていますが、コストを節約したいと考えています。
  • パブリックIPは変更される可能性があるため、直接使用したくありません。
  • ソリューションはENIで何かを行う必要があると思いますが、Route 53を介してそれをポイントする方法がわかりません。

どんな助けでも大歓迎です。

ありがとう

回答:


6

ほとんどの場合、サービスディスカバリにALB / NLBを使用する可能性があります。コストはかかりますが、DoS保護、スケーリング指標、ロギング、SSL / TLSなど、多くのメリットがあります。

ただし、ECSサービス検出を使用できます。

サービスディスカバリは、Amazon Route 53自動命名APIアクションを使用して、サービスのタスクのDNSエントリを管理し、VPC内で検出できるようにします

そして

パブリック名前空間はサポートされていますが、サービスディスカバリサービスを作成する前に、Route 53に登録されている既存のパブリックホストゾーンが必要です。

サービス検出では、タスクがawsvpc、ブリッジ、またはホストネットワークモードのいずれかを使用する必要があります。

ここでfargateでサービス検出を使用する方法を詳述ブログのエントリは次のとおりです。https://aws.amazon.com/blogs/aws/amazon-ecs-service-discovery/


0

私がしようとしました。問題は、fargateが使用するパブリックIPがタスクにアタッチされているため、タスクが再起動されると、新しい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アドレスをフェッチし、それをパブリックRoute 53ホストゾーンに登録することです。

この記事では、ラムダ関数を使用して、コンテナーが再デプロイされるときにそれを正確に実行する方法を示します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.