背景:客户报障CLB部分机器出现健康检查异常,流量掉零。本文章简单总结腾讯云IPV6排查思路。
IPv6 负载均衡是基于 IPv6 单栈技术实现的负载均衡,和 IPv4 负载均衡协同工作,实现 IPv6/IPv4 双栈通信。IPv6 负载均衡绑定的是云服务器的 IPv6 地址,并对外提供 IPv6 VIP 地址。
监听器健康检查主要两种方式,TCP通过使用SYN包,HTTP通过使用http请求方式。
TCP 健康检查机制如下(本次故障用到的场景):
作用于CLB实例,具备有状态的数据包过滤功能,控制实例级别的出入流量。CLB的安全组属性有两个模式:开启默认放通状态/关闭默认放通状态。开启放通功能后,后端的CVM安全组可以不需要放通Client IP 和服务端口。默认情况下,IPv6 CLB 安全组默认放通为开启状态,且无法关闭。
CVM安全组:
关闭默认放通状态情况下,需要对IPV6请求放开;
开启默认放通状态,不需要设置;
需要配置IPV6 ip,如果是传统账户,则要求配置IPV6外网带宽;
后端服务,需要支持IPV6监听;
客户反馈同一个CLB上有CVM出现健康检查异常,但机器应用是正常的。
CLB安全组上,开启了默认放通的功能,且未对client等做了IP限制;
CVM安全组上,未对CLB VIP做限制;
2、CVM配置:
CVM ipv6配置已生效,客户账户是非系统账号,CLB支持下,云主机可以不需要配置外网带宽;
应用服务正常,客户反馈该端口同时提供ipv4和ipv6应用,目前ipv4服务是正常的。
3、CLB集群检查
CLB集群服务正常,集群流量、QPS等未出现突降等情况,可用性探测正常;
客户生产机器,客户侧也无法登陆机器,提供排查信息,无法抓包等操作配合排查;走流程申请权限需要时间。
健康检查异常的机器,已自动剔除。现网业务不影响,建议客户侧暂时将该机器剔除。
CVM抓到了CLB给过来的SYN包,奈何没有相应;
2、Ng服务器日志排查
请求没有进入应用层,没有日志生成;
综合以上,怀疑是路由问题,路由没有到达应用层。
3、排查路由
确认路由缺少默认路由,导致机器无法达到下一跳。
【规避措施】
配置文件一:/etc/sysctl.conf
net.ipv6.conf.all.disable_ipv6 = 0
net.ipv6.conf.default.disable_ipv6 = 0
net.ipv6.conf.lo.disable_ipv6 = 0
配置文件二:/etc/sysconfig/network-scripts/ifcfg-eth0
DHCPV6C=yes
配置文件三:/etc/sysconfig/network-scripts/route6-eth0
default dev eth0 via fe80::feee:ffff:feff:ffff或者是default dev eth0
PS:文章部分截图取自腾讯云官网。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。