
現在持っているものは..
... はマイクロサービス アーキテクチャを備えたアプリケーションであり、さまざまなサービスが GRPC を介してゲートウェイと通信し、ゲートウェイが REST エンドポイントを提供します。
このシステムを GCP にデプロイしています。現在、各サービスには GKE ワークロードを含む Docker イメージがあります。そのため、各サービスはパブリック IP アドレスとポートで公開されています。ゲートウェイも GKE 上の Docker イメージであり、パブリック IP とポートで公開されています。
私が欲しいのは...
... は、各サービスが を介してゲートウェイと通信し127.0.0.1:{PORT}
、ゲートウェイのみがパブリック IP とポートを使用するローカル展開をミラーリングする展開です。私が実現したいのは、ゲートウェイ経由以外のサービスへのアクセスを制限することです。
どうすればこれを実行できますか?
注記: サービスを個別の Git リポジトリとして保持したいので、個別の Dockerfiles/docker イメージが必要です。
答え1
提供された情報に関して、dockerfiles を使用する「サービス」はポッドであると想定しています。ポッドには外部 IP アドレスがありません。
あなたはIngress を使用したロード バランサゲートウェイポッドの外部IPを追加します。他のポッドの場合は、クラスタIPサービスクラスター内でのみ公開され、必要なサービスの種類を指定できるようになります。