K8S网络类型

k8s的网络类型

k8s的通信模式

1

pod内部之间容器与容器之间的通信,在同一个pod中容器是共享资源和网络,使用同一个网络命名空间,可以直接通信

2

同一个node节点之内,不同pod之间的通信,每个pod都有一个全局的真实ip地址,同一个node之间的不同pod可以直接使用对方pod的ip地址进行通信,pod1和pod2是通过docker0的网桥来进行通信

3

不同node节点上的pod之间如何通信,cni的插件:cni是一个标准接口,用于容器运行时调用网络插件,配置容器网络,负责设置容器的网络命名空间,IP地址,路由等等参数

Flannel插件:功能就是让集群之中不同节点的docker容器具有全集群唯一的虚拟ai地址,他是一个overlay网络,在底层物理网络的基础之上,创建一个逻辑的网络层,准确的说它是二层加三层的集合,二层是物理网络,三层是逻辑上的网络层,overlay网络也是一种网络虚拟化的技术

Flannel支持的数据转发方式

1

UDP模式,默认模式,应用准发,配置简单,但是性能最差

2

Vxlan,基于内核转发,也是最常用的网络类型(小集群都是用这个)

3

Host-gw(性能最好,但是配置麻烦)

UDP:基于应用转发,flannel提供路由表,fannel封装数据包,解封装

Node都会有一个flannel的虚拟网卡

 

Vxlan:使用的就是overlay的虚拟隧道通信技术,二层+三层模式

Udp基于应用层,用户

Vxlan:flannel提供路由表,内核封装解封装

Flannel1.1接口

 Calico插件

Flannel:每个发向容器的数据包进行封装,vxlan通过vtep打包数据,由内核封装成数据包再转发到目标node节点,到了目标节点,还有一个解封装的过程,再发送到目标pod,性能是有一定的影响。

Calico:采用直接路由的方式:BGP方式路由,它不需要修改报文,统一直接通过路由表换发,路由表会相当复杂,运行维护的要求比较高

BGP模式的特点:交换路由信息的外部网关协议,可以连接不同的node节点,node节点可能不是一个网段,BGP会自动寻址,自动选择可靠的路径,BGP实现可靠的,最佳的,而且是动态的路由选择,自动识别相邻的路由设备

Calico不使用overlay,也不需要交换,直接通过虚拟路由实现,每一台虚拟路由都通过BGP转发

核心组件

Felix:也是运行在主机的一个pod,一个进程,k8s,daemonset的方式部署的pod

Daemont set 会在每个node节点部署相同的pod,后台的运行方式

负责宿主机上插入路由规则,维护calico需要的网络设备,网络接口的管理,监听,路由等等。BGP Client: bird BGP的客户端,专门负责在集群中分发路由规则的信息,每一个节点都会有一个BGP Client、

BGP协议广播的方式通知其他节点的,分发路由的规则,实现网络互通

Etcd:保存路由信息,负责网络元数据的一致性,元数据是保证网络状态的一致性和准确性

Calico的工作原理

路由表来维护每个pod之间的通信

创建好pod之后,会添加一个设备cali  veth pair设备,在ifconfig中看到的也是一个虚拟网卡

虚拟网卡:veth pair是一对设备,虚拟的以太网设备,有两头,一头连接在容器的网络命名空间一般叫做eth0,另一头连接宿主机的网络命名空间也就是cali

IP地址分配:veth pair连接容器的部分给容器分配一个ip地址,这个ip地址是唯一标识,宿主机也会被veth pair分配一个calico的内部网络ip地址,和其他节点上的容器进行通信

Veth设备,容器发出的ip地址通过veth pair设备到宿主机,宿主机根据路由规则的下一跳地址,发送到网关(目标宿主机,)

数据包到达目标宿主机,veth pari设备 目标宿主机也是根据路由规则,下一跳地址

 

根据路由规则转发由BGP发现

在ipip模式:会生产一个tunnel(隧道),所有的数据包都在tunnel内部打包,封装:宿主机ip容器内部的ip地址

Flannel和calico区别

Flannel

Flannel:配置简单,功能简单,基于overlay叠加网络实现,在屋里层的网络在封装一个虚拟的网络

Vxlan是虚拟三层网络

Udp是默认模式

Vxlan是默认用的最多的模式,基于vni+ip进行转发,flannel提供路由表,内核封装和解封装,由于封装和解封装的过程,对数据传输的性能会有影响,没有网络策略配置的能力UDP(协议,只管发)

默认网段10.244.0.0/16

Host-gw

Calico

Calico:功能强大,基于路由表进行转发,没有封装和解封装的过程,具备网络策略的配置能力,但是路由表维护起来复杂

有两个模式:ipip  BGP

BGP:模式通过ip路由表的前缀来实现目标主机的可达性,

特点:对比ipip模式,BGP模式没有隧道,BGP模式下,POD的数据包直接通过网卡发送到目标主机也就是目的地

Ipip的隧道:隧道进行数据包的封装ipv4---ipv4.

简单的小集群:flannel

涉及到扩容,配置网络策略:calico

Coredns

可以为集群当中的service资源创建一个域名和ip进行映射的关系

Service是对外提供访问的地址,现在我们加入DNS机制之后,可以直接访问他的服务名

Dashboard

仪表盘,kubenetes的可视化界面,在这个可视化界面上

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/580761.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI 领域代币市场趋势:探索最热门投资领域的前沿动向

作者:lesleyfootprint.network 数据源:Token Sector Dashboard ChatGPT 的热潮点燃了 AI 领域,AI 与区块链技术的融合成为市场关注的焦点。因为区块链的一个显著特征是它能够在链上安全地存储大量数据,这与 AI 模型对数据的密集…

mysql面试题:索引(B+树、聚集索引、二级索引、回表查询、覆盖索引、超大分页查询、索引创建原则)

索引 概念 索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构**(B树)**,这些数据结构以某种方式引用(指向)数据&am…

安装虚拟机在虚拟机里面安装WindowsServer2012与步骤

目录 一、VMware介绍 1.1、概念讲解 1.2、VMware虚拟机的安装讲解 1.3、具体操作步骤 二、虚拟机安装WindowsServer2012演示 2.1、在虚拟机里配置具体步骤 (相当于制作启动U盘) 2.2、安装windows server2012步骤演示 三、Windows Server2012激活步骤演示 四、思维导…

golang并发安全-sync.map

sync.map解决的问题 golang 原生map是存在并发读写的问题,在并发读写时候会抛出异常 func main() {mT : make(map[int]int)g1 : []int{1, 2, 3, 4, 5, 6}g2 : []int{4, 5, 6, 7, 8, 9}go func() {for i : range g1 {mT[i] i}}()go func() {for i : range g2 {mT[…

【SpringBoot篇】优惠券秒杀 — 添加优惠劵操作(基本操作 | 一人仅一张券的操作)

文章目录 🍔发放优惠券🎆基本操作🎄数据库表🛸思路🌹代码实现 🎆完善后的操作🛸乐观锁🌹代码实现 🍔一人仅一张优惠券🛸思路🌹代码⭐代码分析 &am…

git远程操作,推送【push】,拉取【pull】,忽略特殊文件,配置别名,标签管理

文章目录 前言:新建远程仓库克隆推送【push】拉取【pull】 配置git忽略特殊文件给命令配置别名 标签管理理解标签创建标签操作标签 前言: 大家如果没有看过前几章git的基础操作的话,推荐先看一下,看完再来看这个远程操作&#xf…

2023年总结:反复纠结与成长的一年

前言 这是我第五年写年度总结: 《2022年总结:道阻且长,行则将至》 《2021年总结:前路有光,初心莫忘》 《2020年总结,所有努力只为一份期待》 《2019年总结,平凡的我仍在平凡的生活》 现在…

【超图】SuperMap iClient3D for WebGL/WebGPU —— 数据集合并缓存如何控制对象样式

作者:taco 最近在支持的过程中,遇到了一个新问题!之前研究功能的时候竟然没有想到。通常我们控制单个对象的显隐、颜色、偏移的参数都是根据对象所在的图层以及对象单独的id来算的。那么问题来了,合并后的图层。他怎么控制单个对象…

面试官:SpringBoot项目中,要如何1秒实现异步接口?

今年IT寒冬,大厂都裁员或者准备裁员,作为开猿节流主要目标之一,我们更应该时刻保持竞争力。为了抱团取暖,林老师开通了《知识星球》,并邀请我阿里、快手、腾讯等的朋友加入,分享八股文、项目经验、管理经验…

STM32逆变器方案

输入电压: 额定输入电压:DC110V 输入电压范围:DC77-137.5V 额定输出参数 电压:200V5%(200VAC~240VAC 可调) 频率: 42Hz0.5Hz(35-50 可调) 额定输出容量:1…

关于“Python”的核心知识点整理大全45

目录 15.4.6 绘制直方图 die_visual.py 注意 15.4.7 同时掷两个骰子 dice_visual.py 15.4.8 同时掷两个面数不同的骰子 different_dice.py 15.5 小结 第 16 章 16.1 CSV 文件格式 16.1.1 分析 CSV 文件头 highs_lows.py 注意 16.1.2 打印文件头及其位置 highs_l…

适合穷人创业项目低成本生意,2024热门创业项目

回收生意,一个月赚20万?别不信! 我们两个人靠回收倒闭的酒店和KTV的店内物品,一个月赚了20多万。大件就是家具家电、厨房设备、点唱机,小件就是床品、餐具,只要能卖钱的都收。 卖给谁呢?大部分…

office bookmarks

Word2007Util.java-CSDN博客

webstorm中直接运行ts(TypeScript)

参考:https://www.cnblogs.com/yangfanjie/p/12036118.html 1:安装ts: npm install -g typescript 2:安装直接运行所需依赖包: npm install -g ts-node 3:在设置中安装安装插件后重启 4:重启后就会发现在…

Solana 生态铭文跨链桥 Sobit 是何神圣?其场外白名单已达到1200U

在短暂的沉寂,在与 Solana 手机 Saga 联合生态 Meme 币 Bonk 掀起一波 meme 浪潮,以及GPU 计算网路Render network 宣布将从公链Polygon迁往Solana 后,Solana 生态再次迎来爆发。随着 SOL 代币在 12 月暴涨,SOL 也在市值上超越了 …

前端进度条和进度条流光效果

前言 进度条的实现学习这个的,这里只是记录下自己笔记 https://bytefish.medium.com/css-awesome-trick-how-to-create-a-progress-bar-that-changes-color-according-to-progress-be9652ebdd1c 在线演示地址(原作者) https://codepen.io/bytefishmedium/pen/VwXYKQK 在线演示…

opencv和gdal的读写图片波段顺序问题

最近处理遥感影像总是不时听到 图片的波段错了,一开始不明就里,都是图片怎么就判断错了。 1、图像RGB波段顺序判断 后面和大家交流,基本上知道了一个判断标准。 一般来说,进入人眼的自然画面在计算机视觉中一般是rgb波段顺序表示…

Linux账号和权限管理

目录 前言 一、管理用户账号 1、Linux系统中用户账号类型 2、用户标识UID的分类 3、用户账号文件 4、用户账号的初始配置文件 5、用户账号的管理命令 5.1 useradd 5.2 usermod 5.3 passwd 5.4 userdel 二、管理组账号 1、Linux系统中组账号类型 2、组标识号GID的…

drf知识--07

回顾之视图层 # 两个视图基类: from rest_framework.views import APIView: 包装新的request、去除csrf认证、执行三大认证和处理全局异常 -as_view -dispatch -parser_class -render_class from rest_framewo…