LVS学习笔记4——延伸至kube-proxy

背景

kubernetes中的service最开始是利用iptables技术实现,但是后来kubernetes官方抛弃了iptables,改用ipvs来实现service

Iptables问题

  • 规则复杂凌乱,排查问题困难
  • 基于链表实现,查找复杂度为O(n),当规则超过2w条时,内核压力巨大,iptbales将会成为瓶颈

IPVS特点

  • 专注于负载均衡技术,且支持多种调度算法
  • 基于哈希查找,复杂度为O(1)

个人思考

为什么要弃用iptables

  1. Iptables在功能上应该是偏防火墙功能
  2. k8s中流量的负载均衡就是利用service来实现的,而ipvs最初的目的就是解决负载问题,ipvs更加专注于负载均衡技术。在这一点上,和service的需求更加契合;而且ipvs的性能还非常好

从以上两点出发,去思考kubenertes为社么要弃用iptables,这样会更简单直接一些!

应该使用ipvs的哪种模式呢?

  1. service是需要支持端口映射的,so,这样一来就只有一种模式可选了——VS/NAT模式

猜你喜欢

转载自blog.csdn.net/Free_time_/article/details/107595034
今日推荐