Flannel网络原理

本文详细介绍了Flannel的二进制安装步骤和配置过程,探讨了为何需要Flannel作为Kubernetes集群的网络插件,以及如何配置docker以配合Flannel实现跨主机通信。Flannel通过创建覆盖网络,确保每个节点的docker0位于不同网段,并利用路由转发策略使得集群内Pod能够通信。
摘要由CSDN通过智能技术生成

更多内容可参考本人博客:https://blog.51cto.com/tryingstuff/2121707

之前的博客已经介绍了部署一个简单的Kubernetes集群,但是这个集群环境没有一个合理的网络配置。在实际生产中要实现集群中各个组件的通信,就需要使用第三方提供的网络插件。

Flannel 二进制安装

1、下载fannel组件

wget https://github.com/coreos/flannel/releases/download/v0.10.0/flannel-v0.10.0-linux-amd64.tar.gz

2、安装Flannel 网络组件

tar xf flannel-v0.10.0-linux-amd64.tar.gz 
cp flanneld  /usr/bin/
cp mk-docker-opts.sh  /usr/bin/

3、由于是二进制的文件,将flanneld拷贝到有系统环境变量的可执行路径就完成了安装。下面讲解具体的配置过程和原理。

Flannel 配置

我们之所以要单独使用第三方的网络插件来扩展k8s,主要原因是在使用docker的环境中,在每个node节点的docker0默认的网段都是172.17.0.0/16的网络。如果要实现不同宿主node上pod(这里也可以理解为容器)互相通信,就不能使用默认的docker0提供的网段,我们需要部署一个覆盖网络,让每个node节点的docker0网络都处于不同的网段,这样,通过添加一些路由转发策略,就能让集群中各个pod在同一个虚拟的网络中实现通信。

1、这里编写flanneld的systemd文件ÿ

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值