创建一个类型为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相关推荐

  1. 如何在Kubernetes里创建一个Nginx service

    Jerry之前的文章如何在Kubernetes里创建一个Nginx应用,已经使用kubectl命令行创建了Pod,但是在kubernetes中,Pod的IP地址会随着Pod的重启而变化,因此用Pod的 ...

  2. 一步步在Kubernetes里运行Web应用

    上一篇文章 在Kubernetes上运行SAP UI5应用(上),我介绍了如何在Docker里运行一个简单的SAP UI5应用,并且已经成功地将一个包含了这个UI5应用的docker镜像上传到Dock ...

  3. 使用Kubernetes里的job计算圆周率后2000位

    使用Kubernetes里的job(作业),我们可以很方便地执行一些比较耗时的操作. 新建一个job.ymal文件: 定义了一个Kubernetes job,名称为pi,类型为job,容器名称为pi, ...

  4. 如何在Kubernetes里创建一个Nginx service 1

    Jerry之前的文章如何在Kubernetes里创建一个Nginx应用,已经使用kubectl命令行创建了Pod,但是在kubernetes中,Pod的IP地址会随着Pod的重启而变化,因此用Pod的 ...

  5. Nvidia GPU如何在Kubernetes 里工作

    Nvidia GPU如何在Kubernetes 里工作 本文介绍Nvidia GPU设备如何在Kubernetes中管理调度. 整个工作流程分为以下两个方面: 如何在容器中使用GPU Kubernet ...

  6. 05 Pod:如何理解这个Kubernetes里最核心的概念?

    文章目录 1 为什么要有pod? 2. 为什么Pod 是 Kubernetes 的核心对象? 3. 如何用YAML描述Pod? 3.1 Pod的基本组成部分 3.1.1 最重要的 spec.conta ...

  7. 通过一个例子学习Kubernetes里的PersistentVolumeClaim的用法

    Kubernetes的pod本身是无状态的(stateless),生命周期通常比较短,只要出现了异常,Kubernetes就会自动创建一个新的Pod来代替它. 而容器产生的数据,会随着Pod消亡而自动 ...

  8. Kubernetes里的secret最基本的用法

    Secret解决了密码.token.密钥等敏感数据的配置问题,使用Secret可以避免把这些敏感数据以明文的形式暴露到镜像或者Pod Spec中. Secret可以以Volume或者环境变量的方式使用 ...

  9. Kubernetes里的ConfigMap的用途

    顾名思义,ConfigMap用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件. ConfigMap同Kubernetes的另一个概念secret类似,区别是ConfigMap主要 ...

最新文章

  1. arcgis server for flex中文乱码问题(转)
  2. 2019.2.14 t3 车辆销售
  3. 计算机复位启动如何操作,电脑能开机但进入不了系统,怎么办?按什么键能恢复系统?...
  4. xcode8 升级后注释快捷键不能使用的解决方法
  5. ip校验和及udp校验和的计算方法
  6. python 3.8 新特性 video_1分钟了解:Python3.8 新特性:仅位置参数
  7. Java技术大咖为什么都有写博客的习惯呢?
  8. Android优秀开源项目大全
  9. JavaWeb入门之简单分页查询功能实现
  10. 国内最受欢迎手游国际版折戟:腾讯也很无奈
  11. 客户端更新功能实现_exlive1.0|监控客户端功能更新
  12. 错误org.hibernate.HibernateException: Error applying BeanValidation relational constraints的解决方法
  13. python数据可视化是什么_python3数据可视化是什么?
  14. django chart mysql,docker Django+mysql+ECharts+AngularJS简单搭建数据可视化
  15. TransE模型的简单介绍TransE模型的python代码实现
  16. 25 个很棒的 Python 脚本合集(迷你项目) - PDF 下载
  17. 易经64卦富含的人生哲理
  18. 为什么要使用工作流引擎
  19. SpringMVC工作原理 侵立删
  20. 2022-04-26:给定四个整数 sx , sy ,tx 和 ty,如果通过一系列的转换可以从起点 (sx, sy) 到达终点 (tx, ty),则返回 true,否则返回 false。 从点 (x

热门文章

  1. redis 集群讲解
  2. iis7+php7.1配置,IIS7.X配置PHP运行环境小结
  3. Sklearn参数详解--决策树
  4. 大型开发项目中 git 工作流的最佳实践
  5. SAP Spartacus B2B OrgUnit 和 OrgUser 的路由映射差异比较
  6. TypeScript里的自定义类型用法
  7. SAP Spartacus的cxComponentWrapper指令
  8. SAP CDS view自学教程之九:cube view和query view的实现原理
  9. SAP Fiori Elements原理介绍之类型为Value Help的Smart Field工作原理
  10. Spring 中基于 AOP 的 XML操作方式