|NO.Z.00409|——————————|CloudNative|——|KuberNetes&NetworkPolicy.V01|——|NetworkPolicy.v01|配置详解.v01|
一、NetworkPolicy配置详解
### --- NetworkPolicy官方地址:
~~~ https://kubernetes.io/docs/concepts/services-networking/network-policies/

二、NetworkPolicy配置说明:
### --- NetworkPolicy配置说明:
~~~ 实现路由的机制
三、NetworkPolicy配置文件说明
### --- NetworkPolicy配置文件说明
apiVersion: networking.k8s.io/v1 //apiversion是不可以省略的
kind: NetworkPolicy //king为NetworkPolicy
metadata: //源数据配置
name: test-network-policy //指定名称
namespace: default //指定namespace
spec:
podSelector: //podselector一:表示这个策略对那些pod生效的
matchLabels:
role: db //表示在default命名空间下具有role等于db这个pod去生效的
policyTypes: //限制它的入口还是出口;若是这个字段为空;默认会配置一个ingress;若是为空;下面配置了egress;它也会补充上egress
- Ingress //入口
- Egress //出口
ingress: //ingress配置:入口 是附属的形式:是个切片;切片下可以写很多个from
- from: //from下写一些符合条件的ip可以访问pod中的服务
- ipBlock: //限制一:IPblock:可以访问服务服务和这个网段:172.17.0.0/16就可以进来
cidr: 172.17.0.0/16 //限制一:IPblock:可以访问服务服务和这个网段:172.17.0.0/16就可以进来
except: //限制一:IPblock:可以访问服务服务和这个网段:172.17.0.0/16就可以进来;排除掉 - 172.17.1.0/24这个网段;剩下的都是可以进来访问的
- 172.17.1.0/24
- namespaceSelector:
matchLabels:
project: myproject //限制二:也可以允许具有project等于myproject的namespace可以进来;namespace的限制
- podSelector:
matchLabels:
role: frontend //限制二:具有pod的标签role等于Frontend的pod也是可以访问这个服务的
ports: //限制四:ports:若是配置了ports字段;就是进来只能访问这个服务的6379端口;若是没有配置ports字段;就可以role等于db的所有的服务
- protocol: TCP
port: 6379
egress: //egress配置:出口;role等于db的这些pod的出口的限制
- to:
- ipBlock: //限制一:只能访问10.0.0.0/24这个网段的服务
cidr: 10.0.0.0/24
ports:
- protocol: TCP //限制二:限制了这个网段下5978的端口
port: 5978
Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart
——W.S.Landor
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」