网络策略定义同一命名空间中的pod如何相互通信以及网络端点.它需要在API服务器的运行时配置中启用 extensions/v1beta1/networkpolicies .它的资源使用标签来选择pod并定义规则以允许流量到特定的pod以及命名空间中定义的流量.
首先,我们需要配置命名空间隔离策略.基本上,负载均衡器需要这种网络策略.
kind: NamespaceapiVersion: v1metadata: annotations: net.beta.kubernetes.io/network-policy: | { "ingress": { "isolation": "DefaultDeny" } }$ kubectl annotate ns"net.beta.kubernetes.io/network-policy = {ingress: {isolation: DefaultDeny}}"
创建命名空间后,我们需要创建网络策略.
网络策略Yaml
kind: NetworkPolicyapiVersion: extensions/v1beta1metadata: name: allow-frontend namespace: mynsspec: podSelector: matchLabels: role: backend ingress: - from: - podSelector: matchLabels: role: frontend ports: - protocol: TCP port: 6379