📅  最后修改于: 2020-11-01 04:14:55             🧑  作者: Mango
网络策略定义了相同名称空间中的Pod如何与彼此以及网络端点进行通信。它要求在API服务器的运行时配置中启用extensions / v1beta1 / networkpolicies 。它的资源使用标签来选择Pod,并定义规则以允许流量进入特定Pod,此外还需要在命名空间中进行定义。
首先,我们需要配置命名空间隔离策略。基本上,负载均衡器需要这种网络策略。
kind: Namespace
apiVersion: v1
metadata:
annotations:
net.beta.kubernetes.io/network-policy: |
{
"ingress":
{
"isolation": "DefaultDeny"
}
}
$ kubectl annotate ns "net.beta.kubernetes.io/network-policy =
{\"ingress\": {\"isolation\": \"DefaultDeny\"}}"
创建名称空间后,我们需要创建网络策略。
kind: NetworkPolicy
apiVersion: extensions/v1beta1
metadata:
name: allow-frontend
namespace: myns
spec:
podSelector:
matchLabels:
role: backend
ingress:
- from:
- podSelector:
matchLabels:
role: frontend
ports:
- protocol: TCP
port: 6379