Network Policy 是 Kubernetes 的一种资源。Network Policy 通过 Label 选择 Pod,并指定其他 Pod 或外界如何与这些 Pod 通信。

默认情况下,所有 Pod 是非隔离的,即任何来源的网络流量都能够访问 Pod,没有任何限制。当为 Pod 定义了 Network Policy,只有 Policy 允许的流量才能访问 Pod。

不过,不是所有的 Kubernetes 网络方案都支持 Network Policy。比如 Flannel 就不支持,Calico 是支持的。我们接下来将用 Canal 来演示 Network Policy。Canal 这个开源项目很有意思,它用 Flannel 实现 Kubernetes 集群网络,同时又用 Calico 实现 Network Policy。

部署 Canal

部署 Canal 与部署其他 Kubernetes 网络方案非常类似,都是在执行了 kubeadm init 初始化 Kubernetes 集群之后通过 kubectl apply 安装相应的网络方案。也就是说,没有太好的办法直接切换使用不同的网络方案,基本上只能重新创建集群。

要销毁当前集群,最简单的方法是在每个节点上执行 kubeadm reset。然后就可以按照我们在前面 “部署 Kubernetes Cluster” 一章的 “初始化 Master” 小节中的方法初始化集群。

kubeadm init --apiserver-advertise-address 192.168.56.105 --pod-network-cidr=10.244.0.0/16

然后按照文档 https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/ 安装 Canal。文档列出了各种网络方案的安装方法:

执行如下命令部署 Canal

kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.7/rbac.yaml
kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.7/canal.yaml

部署成功后,可以查看到 Canal 相关组件:

Canal 作为 DaemonSet 部署到每个节点,地属于 kube-system 这个 namespace。

Canal 准备就绪,下节我们将实践 Network Policy。

最新文章

  1. javascript设计模式与开发实践
  2. Java线程中带有返回值的线程Callable
  3. MySQL5:性能优化
  4. C++复制对象时勿忘每一部分
  5. MVC 中aspx的增删改查
  6. forms6 builder安装之后设置注册表开发环境
  7. 批处理启动QQ
  8. 深入理解Tornado——一个异步web服务器
  9. openstack 启用spice
  10. Android ScrollView用法
  11. weblogic 密码加密
  12. [LeetCode] Split Concatenated Strings 分割串联字符串
  13. GPU Accelerated Computing with Python
  14. HTML学习笔记Day6
  15. ansible笔记(2):清单配置详解
  16. ceph PG数量调整/PG的状态说明
  17. 安装ubuntu的坑&RHEL7配置
  18. Jquery回到顶部功能
  19. Java 8 中 Date与LocalDateTime、LocalDate、LocalTime互转
  20. java垃圾回收几种算法

热门文章

  1. Vue专题系列
  2. [理解] C++ 中的 源文件 和 头文件
  3. mysql 官方读写分离方案
  4. PB specified database is invalid
  5. 概念 - 抖脚(Fidgeting)
  6. 19年读100本书之第二本--《OKR工作法》-克里斯蒂娜 沃特克
  7. 【Python数据挖掘】第六篇--特征工程
  8. Python 之并发编程之进程下(事件(Event())、队列(Queue)、生产者与消费者模型、JoinableQueue)
  9. 【C++初学者自学笔记一】(把自己刚学到的东西做一下总结,如果有哪些地方不足请留言指正)
  10. CSS - 定位(position),难点