首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    k8s集群网络(8)-service之ipvs node port实现原理

    在上一篇文章中我们介绍了基于ipvs的cluster ip类型service的实现原理,本质上是在iptable的PREROUTING chain以及相关target中利用ipset来匹配cluster ip,完成对即将做MASQUERADE伪装的items的mark标记,同时结合ipset也减少了iptable中的entry数量。另外在host network namespace里创建kube-ipvs0网络设备,绑定所有cluster ip,保证网络数据包可以进入INPUT chain。在INPUT chain中ipvs利用映射规则(可由ipvsadm查看该规则)完成对cluster ip的DNAT和目标pod endpoints选择的负载均衡,然后直接把数据送入POSTROUTING chain。当数据包进入POSTROUTING chain,经过相关的iptable target,匹配在PREROUTING chain中的mark标记,完成MASQUERADE伪装(SNAT host的ip地址)。最后数据包根据host network namespace的路由表做下一跳路由选择。在这里我们主要介绍基于ipvs的node port类型service的实现原理,如果对上一篇文章内容有所理解,那么这里也比较简单。

    05

    Cisco交换机与路由器命令总结

    show version    查看版本及引导信息  show running-config    查看运行设置  show startup-config    查看开机设置  show interface g0/1    显示端口信息  show ip router      显示路由信息  show clock      查看系统时钟  show log        查看日志  show interface counters    查看接口流量  show interface description  查看端口的连接状态与描述  show interface status  查看端口的链接状态、所属vlan以及速率双工 show cdp neighbors  查看CDP邻居  show processes cpu  查看设备CPU使用率    show vlan br    查看vlan数据库    show ip int brief //查看所有端口状况 show int des    //查看所有端口的描述 show int f0/1  //查看f0/1接口状态 show run int f0/1    //查看f0/1配置状况 show run int valn 180    //查看Vlan 的配置状态 show vtp stauts  //查看vtp 的状态 show clock      //查看交换机当前的时间 show ntp stauts    //查看ntp 是否同步 show ip ssh  //查看SSH配置

    01

    k8s集群网络(7)-service之ipvs cluster ip实现原理

    在之前文章中我们介绍了基于iptable方式实现的k8s集群中cluster ip类型和node port类型service的负载均衡。其本质上是当网络数据包从pod的network namespace中通过linux veth pair设备进入到host宿主中的network namespace时,经过iptable一系列的NAT转换,把service的cluster ip和端口DNAT成pod的ip和端口。同时leverage linux iptable的random模块,实现了对pod的负载均衡,然后再交由host对目标pod的路由策略来实现将数据包发往pod。当然,这一切都是在linux内核空间实现的,和应用程序的用户空间没有关系。在这里我们主要介绍基于ipvs的cluster ip类型service的实现原理。如果对于ipvs不熟悉的同学可以浏览一下网站http://www.linuxvirtualserver.org/,大名鼎鼎的LVS负载均衡就是基于ipvs来实现的。

    04
    领券