Openshift中Route的HAProxy实现无缝重载原理分析

本文分析了OpenShift中Route通过HAProxy实现的无缝重载原理,探讨了从OpenShift 3.7及更早版本到3.9及更高版本的策略变化。在3.9及以后的版本,HAProxy 1.8引入了内置无缝重载,而在3.7及更早版本,依赖于DROP_SYN_DURING_RESTART环境变量和iptables规则来减少服务中断。
摘要由CSDN通过智能技术生成

一、背景

在openshift集群中(以下简称OCP),对外部流量的转发是通过Router控制器控制Route对象中的路由规则来重载Infra节点中的HAProxy配置文件实现的。
在这里插入图片描述
在上图中的第3步,Router重载Haproxy配置的过程中是会有有一小段时间Haproxy服务不可用,那么在Haproxy重载过程中是如何做到用户请求不丢失呢?

二、Haproxy在不同版本中处理无缝重载的策略

OpenShift 3.9及更高版本

OpenShift 3.9及更高版本随附了基于HAProxy 1.8 7的HAProxy路由器映像。HAProxy 1.8中已完成的一项功能是内置的无缝重载。
在通过以下方式将侦听socket的文件描述符传递给新的HAProxy进程:另一个socket。由于socket永远不会关闭,因此可以最大程度地减少重载配置的延迟!

OpenShift 3.7及更早版本

OpenShift 3.7和更早版本附带基于HAProxy 1.5或更早版本的HAProxy路由器映像。这些较旧的版本不附带上面详细介绍的无缝重载功能。缺少的无缝重载功能的替代解决方案(以下详细介绍)已放入OpenShift 随附的默认重新加载脚本中。
在OpenShift 3.7和更早版本中,Router的DROP_SYN_DURING_RESTART环境变量必须设置为true,以便启用此功能。默认情况下禁用。另外&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值