美文网首页
2019-12-10 Kubernets网络配置详解

2019-12-10 Kubernets网络配置详解

作者: 布衣码农 | 来源:发表于2019-12-10 17:49 被阅读0次
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
  name: test-network-policy
  namespace: default
spec:
# 用于定义改网络策略作用的Pod范围 ,例如role=db
  podSelector:
    matchLabels:
      role: db
# 网络策略的类型
  policyTypes:
  - Ingress
  - Egress
# Ingress 定义允许访问目标Pod的入站白名单规则 满足条件的哭护短才能访问ports定义的目标Pod端口号
  ingress:
# 对符合条件的客户端Pod进行网络放行,规则包括基于客户端Pod的Label、基于客户端Pod所在的Namespace的Label或者客户端IP范围
  - from:
    - ipBlock:
        cidr: 172.17.0.0/16
        except:
        - 172.17.1.0/24
    - namespaceSelector:
        matchLabels:
          project: myproject
    - podSelector:
        matchLabels:
          role: frontend
    # - ports:允许访问的目标Pod监听的端口号
    ports:
    - protocol: TCP
      port: 6379
#定义目标Pod允许访问的“出站”白名单规则,目标Pod仅允许访问满足to条件的服务端IP范围和ports定义的端口号
  egress:
#允许访问的服务端信息,可以基于服务端Pod的Label、基于服务端Pod所在的Namespace的Label或者服务端IP范围
  - to:
    - ipBlock:
        cidr: 10.0.0.0/24
# 允许访问的服务端的端口号
    ports:
    - protocol: TCP
      port: 5978

说明:

  • 网络策略作用域Namespace "default"中 所有Label 包含role=db的Pod
  • 允许与目标Pod在同一个Namespace中的所有Label包含role=frontend的客户端Pod访问目标Pod
  • 允许数据包含project=myprojectLabel的Namespace客户端Pod访问目标Pod
  • 允许从IP地址范围172.17.0.0/16的客户端Pod访问目标Pod,但是不包括IP地址范围172.17.1.0/24的客户端
  • 允许目标Pod访问IP地址值范围 ”10.0.0.0/24“ 并监听5978端口服务

相关文章

网友评论

      本文标题:2019-12-10 Kubernets网络配置详解

      本文链接:https://www.haomeiwen.com/subject/zmbggctx.html