0

Google Cloud でマネージド クラスタを実行しているため、有効にするオプションがNetworkPolicyあり、バックエンドでは calico を使用します。私が抱えている問題は、 api version しか使用できないようnetworking.k8s.io/v1です。

ポッドからの内部出力トラフィックを無効にし、外部ネットワークへの/からの入力と出力を許可するポリシーを作成しようとしています。

calico API を使用すると、次のようになります。

apiVersion: projectcalico.org/v3
kind: NetworkPolicy
metadata:
  name: policy-name
  namespace: namespace-name
spec:
  selector: label == value
  types:
  - Ingress
  - Egress
ingress:
  - action: Allow
    notProtocol: UDP
    destination:
      ports:
      - 53
  - action: Allow
    notProtocol: TCP
    destination:
      ports:
      - 53
  egress:
  - action: Deny
    protocol: UDP
    destination:
      ports:
      - 53
  - action: Deny
    protocol: TCP
    destination:
      ports:
      - 53

または、次のポリシーの否定的なバージョン:

apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: policy-name
  namespace: namespace-name
spec:
  podSelector:
    matchLabels:
      label: value
  policyTypes:
  - Egress
  egress:
  - ports:
    - port: 53
      protocol: UDP
    - port: 53
      protocol: TCP
  - to:
    - namespaceSelector: {}

2 つの質問があります。1. networking.k8s.io/v1API で上記のルールを再現できますか? 2.projectcalico.org/v3マネージド GKE クラスタで API を有効にすることはできますか?

4

1 に答える 1