0

ワーカー ノードを 6 つの AZ に分散する k8s クラスターがあるため、エグレス トラフィックは 6 つの nat ゲートウェイを介してルーティングされます。私の要件は、アプリ「xyz」のすべての送信トラフィックが AZ-A の nat ゲートウェイのみを介してルーティングされることです。解決策として、同じ名前空間に nginx プロキシ インスタンスを作成し、それを AZ - A のみにバインドするアフィニティ ルールを設定xyzし、ネットワーク ポリシーを使用してポッドからこのプロキシ インスタンスにエグレス トラフィックをルーティングすることを考えました。しかし、ネットワーク ポリシーが下りトラフィック全体をブロックしているようです。以下は、問題ないように見えるエグレス NW ポリシーのコードです。

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: xyz-app-egress
spec:
  podSelector:
    matchLabels:
      app: xyz
  policyTypes:
  - Ingress
  - Egress
  ingress: 
  - {}
  egress:
    - to:
      - podSelector:
          matchLabels:
            app: proxy

curl ifconfig.coNW ポリシーを適用した後、xyz ポッドで使用してテストしています。そして、それはいつか以下のエラーとタイムアウトを与えます:

curl: (6) Could not resolve host: ifconfig.co

ここで何かが足りないと思います。誰か私にこれについての洞察を教えてください。またはこの要件に対するより良い解決策。

4

2 に答える 2

0

ここに示すように、イングレス ルールの代わりにエグレス ルールが必要です。

  egress:
   - {}
于 2020-08-09T13:31:16.123 に答える