首页 > 其他分享 >kubeproxy 的三种模式

kubeproxy 的三种模式

时间:2024-04-26 15:11:58浏览次数:23  
标签:iptables service kubeproxy 模式 三种 proxy 规则 kube 内核

kube-proxy是对service的实现,也就是service只是用来抽象定义,真正具体化干活的是kube-proxy.它运行在每一个node节点上,负责该节点的网络代理。它是一个pod。

userspace

  • 单纯的用户态 会经过内核切换存一点过的开销
  • 频繁用户空间和内核空间之间切换

iptales

  • 内核态直接作用Linux netfilter
  • 当service或者endpoints、pod发生变化时,kube-proxy会创建对应的iptables规则
  • 对于每个服务,它都安装iptables规则,该规则捕获到服务clusterIP和的port流量,并将该流量重定向到服务的后端集之一。
  • 对于每个Endpoint对象,它将安装iptables规则,该规则选择一个后端Pod。
  • 默认情况下,iptables模式下的kube-proxy会随机选择一个后端,所选的第一个Pod没有响应,则连接失败,无法重试
  • 缺点:服务多的时候产生太多的 iptables 规则,非增量式更新会引入一定的时延,大规模情况下有明显的性能问题

ipvs

  • 内核态直接作用网络协议栈
  • kube-proxy监视Kubernetes服务和端点,调用netlink接口以相应地创建IPVS规则,并定期将IPVS规则与Kubernetes服务和端点同步。
  • 用哈希表作为基础数据结构,访问服务时,IPVS将流量定向到后端Pod之一, 更低的延迟来重定向流量。
  • 更多的轮询策略。 rr:轮循、lc:连接最少(打开的连接最少)、dh:目标哈希、sh:源哈希、sed:最短的预期延迟、nq:永不排队
  • 采用增量式更新,并可以保证 service 更新期间连接保持不断开

标签:iptables,service,kubeproxy,模式,三种,proxy,规则,kube,内核
From: https://www.cnblogs.com/guanchaoguo/p/18160120

相关文章

  • 设计模式
    设计模式六大原则1、开放封闭原则OpenClosePrincipleOCP:尽量通过扩展软件实体来解决需求变化,而不是通过修改已有的代码来完成变化OCP原则要求设计者在需要修改现有代码时,不应该直接修改已有的代码,而是应该通过扩展现有代码来实现新的功能或修改。代码实例:实现计算机:Ope......
  • 什么是IPD项目管理模式?聊聊IPD下的产品研发流程
    IPD(集成产品开发)涵盖了产品从创意提出到研发、生产、运营等,包含了产品开发到营销运营的整个过程。围绕产品(或项目)生命周期的过程的管理模式,是一套生产流程,更是时下国际先进的管理体系。IPD(集成产品开发)以产品成功、用户满意为最终目标,通过构建一套科学、持续、稳定、可重复、高质......
  • [NewStarCTF]flask disk debug模式下的漏洞
    打开环境,发现三个链接/list/upload/console,题目描述为flask,那就是与flask的debug模式相关的漏洞,在此之前我只听过debug的pin码漏洞,也就是关于pin码的生成的。这里提一下:点击查看代码pin码的生成取决于下面这几个因素:1.服务器运行flask所登录的用户名。2.modname2.geta......
  • 常用设计模式-单例模式
    单例模式(保证只有一个实例,并只提供一个访问实例的访问点)单例模式的创建方式:饿汉模式-静态变量packagecom.pattern;//饿汉模式-静态变量publicclassSingleton{//类初始化时,会立即加载该对象,线程天生安全,调用效率高privatestaticfinalSingletons......
  • GPIO模式
    GPIO模式输出模式推挽输出用PMOS和NMOS协同工作电压输出为VDD和VSS芯片内部电压驱动驱动能力弱开漏输出只有NMOS工作NMOS断低通高借助外部电压驱动复用推挽输出复用开漏输出为什么复用?引脚除了输入同时还可以做片上外设(I2C、SPI等)输入模式上拉输入默认为高电平......
  • 不得不说,在很多业务中,这种模式用得真的很香
    故事“不能在写ifelse来拓展当前系统了,现在已经有三个支付场景了......”工位上,小猫看着电脑,挠着头。就在刚刚,小猫接到了一个新需求,需要和客户公司打通资产,形成资产联动。说白了就是需要定制化对接客户公司的支付资产体系。除了这次接到的之外。前面其实已经对接了三家了。由于......
  • ECS(Entity-Component-System)模式
    前言:在使用CocosCreator开发弹幕游戏的过程中,由于项目中出现的单位过多,导致项目的性能并不是特别理想,当时研究这个问题的时候看到用ECS可以解决这方面的问题,所以研究后将其应用进项目中,实践后发现ECS这种模式要去unity下插件配合使用效果才大,在cocos上效果甚微;不过上线后勉强还......
  • Linux:VMware切换"仅主机模式"并配置静态IP
    配置网络编辑器点击“编辑”->“虚拟网络编辑器”没有仅主机模式的话,可以通过“添加网络”进行新增网络配置。更改虚拟机网路模式右键“创建的虚拟就”->“设置”登录虚拟机配置静态IP切换目录到“/etc/sysconfig/network-scripts/”修改“if-ens33”文件TYPE=Ethern......
  • 记录一次责任链设计模式使用低级错误
    记录一次责任链设计模式使用低级错误目录记录一次责任链设计模式使用低级错误背景流程发现问题解决方案总结背景提供一个服务支持语音转写成文本,以及历史转写备份数据的简单服务。提供一个接口批量上传,一次最大1000条(分表)落库之后同时发送到消息队列并更新数据状态消费......
  • 前端面试题 - 在HTML5中DOCTYPE的作用是什么?标准与兼容模式(混杂模式)各有什么区别?
    #前端面试题-在HTML5中DOCTYPE的作用是什么?标准与兼容模式(混杂模式)各有什么区别?DOCTYPE(文档类型声明)是一种在HTML文档中使用的标记,用于告诉浏览器使用哪个HTML版本解析文档。它的作用是确保浏览器正确地渲染和显示网页内容。标准模式(严格模式)和兼容模式(混杂模式)是浏览器根......