VPC にデプロイされたリソース (ECS インスタンス、ApsaraDB RDS インスタンス、OSS バケット、SLB インスタンスなど) にアクセスする Pod を作成できます。また、Pod のインターネットアクセスを有効にすることもできます。このトピックでは、Pod が外部ネットワークにアクセスできるようにソースとデスティネーションを構成する方法について説明します。
ソースの構成 (Pod 側)
DNS 解決の構成
Pod が外部ネットワークにアクセスする場合、Pod はクラスタによって提供されるドメイン名解決機能を使用してデスティネーションアドレスを解決します。次に、Pod は Pod ネットワーク経由でデスティネーションにアクセスします。ドメイン名を解決できない場合は、DNS 解決エラーのトラブルシューティングを行う必要があります。
ネットワークポリシーの構成
Pod が属する名前空間にネットワークポリシーが構成されているかどうか、およびネットワークポリシーによって Pod がデスティネーション IP アドレスにアクセスすることが禁止されているかどうかを確認します。前述のネットワークポリシーが存在する場合は、ポリシーを変更します。詳細については、「ACS クラスタでネットワークポリシーを使用する」をご参照ください。
セキュリティグループの構成
クラスタと Pod のセキュリティグループで、Pod がデスティネーション IP アドレスにアクセスできるようになっていることを確認します。セキュリティグループルールが次の要件を満たしていることを確認してください。
Pod が送信方向でデスティネーション IP アドレスとポートにアクセスできるように、セキュリティグループルールが作成されています。
Pod が送信方向でデスティネーション IP アドレスとポートにアクセスすることを禁止するセキュリティグループルールは作成されていません。
デスティネーションの構成 (デスティネーション側)
Pod は、VPC にデプロイされたリソースとインターネットにアクセスできます。Pod の構成は、デスティネーションによって異なります。
インターネットへのアクセス
方法 | 使用シナリオ | インターネットへのアクセスに使用するパブリック IP アドレス | 参照 |
インターネット NAT ゲートウェイを使用してインターネットにアクセスする | 複数の Pod | インターネット NAT ゲートウェイに関連付けられている EIP の IP アドレス | |
Pod に EIP を関連付ける | 単一の Pod | Pod に関連付けられている EIP の IP アドレス |
同じ VPC にデプロイされた他のクラウドリソースへのアクセス
セキュリティグループ、ネットワーク ACL、ホワイトリストなど、デスティネーションのアクセス制御ルールによって、Pod がクラスタの VPC 内の他のクラウドリソース (ECS インスタンス、ApsaraDB RDS インスタンス、OSS バケットなど) にアクセスすることが制限される場合があります。アクセス制御ルールによって Pod の IP アドレスがブロックされている場合、接続の問題が発生します。この場合、Pod の IP アドレスからのアクセスを許可するようにアクセス制御ルールを変更する必要があります。
LoadBalancer サービスへのアクセス
サービスのアドレスがパブリックかプライベートかに関係なく、クラスタ内からクラスタによって公開されている LoadBalancer サービスへのアクセスはブロックされます。この問題を解決するには、アクセスするサービスの外部トラフィックポリシーを変更する必要があります。詳細については、「What Can I Do if the Cluster Cannot Access the IP Address of the SLB Instance Exposed by the LoadBalancer Service」をご参照ください。