现象:
阿里云服务器ecs启动了python程序,当使用slb以后会建立大量的保留地址会话,而且会一直上升
咨询阿里云售后发现是健康检查的地址,但是一般最多只有几十个,这样几千个的establish 会话不正常,重启系统,或者重启程序后刚开始没问题,后面一直累加establish会话
后面问了同事发现是使用了 5.4 的内核,于是降低内核版本,重启系统问题得到解决
说明阿里云的slb 和最新的内核版本不兼容,不要随意升级操作系统内核
# 载入公钥 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # 安装ELRepo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm # 载入elrepo-kernel元数据 yum --disablerepo=* --enablerepo=elrepo-kernel repolist # 查看可用的rpm包 yum --disablerepo=* --enablerepo=elrepo-kernel list kernel* # 安装长期支持版本的kernel yum --disablerepo=* --enablerepo=elrepo-kernel install -y kernel-lt.x86_64 # 删除旧版本工具包 yum remove kernel-tools-libs.x86_64 kernel-tools.x86_64 -y # 安装新版本工具包 yum --disablerepo=* --enablerepo=elrepo-kernel install -y kernel-lt-tools.x86_64 #查看默认启动顺序 # awk -F' '$1=="menuentry " {print $2}' /etc/grub2.cfg CentOS Linux (5.4.90-1.el7.elrepo.x86_64) 7 (Core) CentOS Linux (3.10.0-1160.11.1.el7.x86_64) 7 (Core) CentOS Linux (3.10.0-1160.6.1.el7.x86_64) 7 (Core) CentOS Linux (3.10.0-1160.el7.x86_64) 7 (Core) CentOS Linux (0-rescue-20201120162201014812678890627137) 7 (Core) # 查看当前内核启动顺序 是1 ,说明当前是从 CentOS Linux (3.10.0-1160.11.1.el7.x86_64) 7 (Core) 这个内核启动的 # grub2-editenv list saved_entry=1 #默认启动的顺序是从 1 开始,新内核 CentOS Linux (5.4.90-1.el7.elrepo.x86_64) 7 (Core) 目前位置在0,而 3.10.0 的是在1),所以需要选择0 # 需要将 5.4.90 这个内核设置为默认启动即为 0 grub2-set-default 0 #重启并检查 reboot