使用阿里云主机ECS,
四台主机信息如下:
server1 — 私网IP:10.0.0.2 ----公网IP: 47.108.54.185 ---- 搭建docker仓库harbor—nfs服务器
server2 — 私网IP:10.0.0.3 ----公网IP: 47.108.144.231 ---- k8s集群主节点
server3 — 私网IP:10.0.0.4 ----公网IP: 47.108.115.206 ---- k8s集群节点
server4 — 私网IP:10.0.0.5 ----公网IP: 47.108.28.42 ---- k8s集群节点


不同节点上的pod之间通信需要使用网络插件。flannel插件和calico插件是比较流行的插件。flannel插件只负责通信,没有网络策略。比如想要控制哪些pod可以访问,哪些pod不能访问.
在这里插入图片描述

flannel

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

calico

  • calico简介:
    flannel实现的是网络通信,calico的特性是在pod之间的隔离(网络策略)。
    通过BGP路由,但大规模端点的拓扑计算和收敛往往需要一定的时间和计算资源。
    纯三层的转发,中间没有任何的NAT和overlay,转发效率最好。

    Calico 仅依赖三层路由可达。Calico 较少的依赖性使它能适配所有 VM、Container、白盒或者混合环境场景。

harbor仓库新建公开项目

在这里插入图片描述

上传calico镜像
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

部署calico

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设定网络策略

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

为了使得策略生效,重新生成pod

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设置满足多个条件中的一个即可

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设置同时满足多个条件

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

拒绝所有入栈流量,放行满足条件的流量

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

ingress-controller部署到特定节点,并直接使用节点网络

在这里插入图片描述
在这里插入图片描述

重新部署ingress-nginx

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

设定svc ingress-nginx-controller为ClusterIP类型

在这里插入图片描述
在这里插入图片描述
因为部署ingress-nginx时设定直接使用主机节点的网络

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐