Linux实例TCP backlog缓存溢出导致无法远程连接实例的解决方法

作者阿里云代理 文章分类 分类:新闻快递 阅读次数 已被围观 817

问题描述

在Linux实例内如果存在TCP backlog缓存溢出的现象,可能会影响Linux实例的网络性能,导致实例无法远程连接。

问题原因

可能是以下原因所导致:

在/etc/sysctl.conf文件中net.core.somaxconn和net.ipv4.tcp_max_syn_backlog参数的值设置过低。/etc/sysctl.conf文件主要保存系统的配置信息,如果参数配置不合理,则会影响Linux实例的网络性能。

应用的backlog参数设置不合理。

解决方案

阿里云提醒您:

如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。

如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。

如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

请根据现场情况,选择以下对应的步骤。

修改“/etc/sysctl.conf”文件

1.通过VNC远程登录Linux实例。关于如何远程登录,请参见ECS连接方式概述

2.执行以下命令,编辑/etc/sysctl.conf文件。

说明:修改配置文件之前,请先进行备份。

vim /etc/sysctl.conf

3.按A键,请根据现场实际情况调整net.core.somaxconn和net.ipv4.tcp_max_syn_backlog参数的值,按Esc退出编辑模式。输入:wq,按Enter,保存并退出。

说明:

:wq中的冒号:需要按Shift+:键输出。

修改net.core.somaxconn参数的值本文以1024为例,现场请根据实际情况调整。

修改net.ipv4.tcp_max_syn_backlog参数的值本文以5000为例,现场请根据实际情况调整。

系统操作界面类似如下。

4.执行以下命令,使配置生效。

sysctl -p

修改应用的backlog参数

请根据现场业务情况,修改应用的backlog参数。

适用于

•云服务器ECS

如果您有其他问题,可以联系汉中创云互联阿里云代理商,为您提供一对一专业全面的技术服务,同时新老阿里云会员,均可享受我公司代理商价格,欢迎咨询

本公司销售:阿里云、腾讯云、百度云、天翼云、金山大米云、金山企业云盘!可签订合同,开具发票。

我有话说: