码迷,mamicode.com
首页 > Web开发 > 详细

如何使用Kubernetes里的NetworkPolicy

时间:2018-11-22 00:28:26      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:tor   http   ber   kubectl   out   timeout   说明   工作原理   通过   

创建一个类型为NetworkPolicy的Kubernetes对象的yaml文件。

第九行的podSelector指定这个NetworkPolicy施加在哪些pod上,通过label来做pod的过滤。

技术分享图片

从第16行开始的ingress定义,定义了只有具备标签component=ads,module=app的pod才能够连接component=ads, module=db的pod。

首先创建一个临时的pod,使用正确的label(component=ads,module=app)去访问db pod:

kubectl run --restart=Never -it --rm --image=postgres:9.6 --labels="component=ads,module=app" --env="PGCONNECT_TIMEOUT=5" helper --command -- /bin/bash

执行完毕后看到提示root@helper:/#, 说明我通过上述命令创建的临时pod成功的连接到了postgreSQL的pod上。

技术分享图片

输入正确的用户名和密码,能成功连接到postgreSQL pod提供的数据库服务上。

技术分享图片

现在我们重新创建一个临时pod,不指定label,因此不满足NetworkPolicy里定义的限制条件,因此会看到我们期望的结果:postgreSQL连接失败。

技术分享图片

希望通过例子大家能够理解Kubernetes里NetworkPolicy的工作原理。
要获取更多Jerry的原创文章,请关注公众号"汪子熙":

技术分享图片

如何使用Kubernetes里的NetworkPolicy

标签:tor   http   ber   kubectl   out   timeout   说明   工作原理   通过   

原文地址:https://www.cnblogs.com/sap-jerry/p/9998365.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!