特定のポート(ポート 9200 など) でのみ、同じ名前空間内のすべてのポッド間のトラフィック (イングレス + エグレス) を受け入れるネットワーク ポリシーを作成する必要があります。
を使用して calico という名前の名前空間にラベルを付けましたkubectl label ns calico type=clico
以下のポリシーを試しましたが、ポリシーを作成した後、ポート 9200 で telnet をテストするポッドを作成しましたが、許可されません。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: test-network-policy
namespace: calico
spec:
podSelector: {}
policyTypes:
- Ingress
- Egress
ingress:
- from:
- namespaceSelector:
matchLabels:
type: calico
- podSelector: {}
ports:
- protocol: TCP
port: 9200
egress:
- to:
- namespaceSelector:
matchLabels:
type: calico
- podSelector: {}
ports:
- protocol: TCP
port: 9200