現在、ECSサービス間の通信を構成する方法を理解しようとしています。次の設定を計画しています:
私は私の心の中に次のオプションを持っています:
alb.amazonaws.com/backend/
はbackend-target-group
にリクエストを転送し、バックエンドECSタスクにリクエストを提供します。それらのどれもそれを行う正しい方法のようには思えません。財務上の制限があるため、サービスごとに個別のALBを使用したくありません。私が考えているのは、ECSサービスのある種の内部DNS名です。以下のリンクを調査しましたが、それを自分のケースに適用する方法がわかりません。
関連問題: AWS ECSコンテナ通信
理想的には、私が達成したいのは、バックエンドサービスの内部DNS名を持ち、フロントエンドサービスからバックエンドにリクエストを送信することです。
あなたはほとんど正しいオプションをカバーしました。
ECS Service Discoveryが最初の選択です-すべてのコンテナーがサービス検出ドメインに自動的に登録され、その方法でアクセスできます。簡単、透明、安い。
ターゲットグループごとに異なるパスを持つ内部Application Load Balancerは、2番目の選択肢になります。 1つのALBで外部向けのトラフィックと内部向けのトラフィックを混在させたくはありませんが、内部と外部の2つのトラフィックは完全に有効なアーキテクチャです。 ALBをもう1つ追加する場合は、月額20ドル程度の追加価値があります。
AWS App Mesh-私は個人的には作業していませんが、必要な機能を果たしているようです。タイトルにすべてのサービスのアプリケーションレベルのネットワーキング
API Gatewayもオプションです。あなたのバックエンドはそれで動作するためにいくつかのわずかな変更を必要とするかもしれませんが、大きなものは何もありません。
それが役に立てば幸い:)