|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

 

 

posted on   yanqi_vip  阅读(30)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示