1. 前言:运维目标与环境确认
说明:确认服务器为位于新加坡且使用电信CN2链路(通常表现为到中国延迟稳定)。操作前列出:服务器IP、ISP(CN2)、内核版本(uname -r)、带宽型号、虚拟化类型(KVM/OpenVZ/裸机)。实际步骤:1) ssh 登陆;2) uname -a 查看内核;3) ethtool eth0 查看网卡;4) cat /proc/net/dev 查看接口流量统计。
2. 日常监控与指标采集
步骤:1) 部署 node_exporter(Prometheus)或 Telegraf + InfluxDB 采集指标;2) 配置监控项:CPU、内存、磁盘IO、网卡速率(ifstat/vnstat)、丢包(ping/mtr)与连接数(ss -s);3) 快速检查命令示例:top -b -n1 | head -20;iperf3 -s(在测试端)/ iperf3 -c server_ip -P 4 -t 30 测带宽;4) 设置阈值告警(例如 90% 带宽/CPU/磁盘 IOPS)。
3. 网络连通性与CN2路径验证
做法:1) 使用 mtr -rwz --report-cycles=5 target_cn_ip(如国内节点)持续追踪,观察是否走 CN2(跳数与运营商 ASN);2) traceroute -T -p 80 target_ip 可检测 TCP 路径;3) 若路径非 CN2,联系机房/带宽供应商索要 BGP 信息或申请 CN2 专线;4) 测试 MTU:ping -M do -s 1472 target_ip,若失败降至 1460 并调整网络 MTU 或宿主机配置。
4. 系统与内核优化(实际命令与配置)
步骤与配置:
- 检查内核版本:uname -r,若 <4.9 建议升级,以启用 BBR。
- 开启 BBR:编辑 /etc/sysctl.conf 增加:
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
然后执行 sysctl -p;确认 lsmod | grep bbr 或 sysctl net.ipv4.tcp_available_congestion_control。
- 提高文件句柄:在 /etc/security/limits.conf 添加 * soft nofile 200000 等,并在 /etc/sysctl.conf 设置 fs.file-max=200000。
- TCP 参数(示例 append 到 sysctl.conf):
net.core.rmem_max=134217728
net.core.wmem_max=134217728
net.ipv4.tcp_rmem=4096 87380 134217728
net.ipv4.tcp_wmem=4096 65536 134217728
执行 sysctl -p 使生效。
5. 网卡与中断(NIC)优化
步骤:
1) 使用 ethtool -k eth0 查看 offload 设置,必要时启用/禁用:ethtool -K eth0 tso on gso on gro on(或 off,视应用特性调整);
2) 调整 IRQ 亲和:查看 /proc/interrupts,使用 irqbalance 服务或手动 echo 1 > /proc/irq/
/smp_affinity_list 将高流量网卡的中断绑定到独立 CPU;
3) 调整网卡中断分流(RSS):ethtool -L eth0 combined 8(根据 CPU 核数设置),重启网卡后验证;
4) 检查网卡驱动更新,必要时按厂商指南更新驱动。
6. 安全加固与日常维护清单
清单(按步骤):
1) SSH:禁用 root 直连(/etc/ssh/sshd_config PermitRootLogin no),启用公钥认证,限制登录端口并使用 fail2ban。
2) 防火墙:使用 nftables/iptables,仅放行必要端口;示例:iptables -A INPUT -p tcp --dport 22 -j ACCEPT;其余 DROP。
3) 定期补丁:设置 yum/apt 自动安全更新或每周检查 apt update && apt upgrade;记录变更。
4) 备份:使用 rsync + cron 把重要数据同步到异地;每周做一次全量快照并验证恢复流程。
7. 问:如何判断新加坡CN2线路的稳定性与丢包根源?
答:先用 mtr -r -c 100 目标IP(国内节点)看逐跳丢包与延时尖峰;若丢包出现在边缘路由(机房出口)且持续,说明链路或互联问题,保存 mtr/traceroute 输出并联系带宽供应商;同时用 iperf3 做双向带宽测试排除本机发送/接收问题。
8. 问:启用 BBR 失败或无效怎么办?
答:确认内核版本 >= 4.9(uname -r),sysctl 中 net.ipv4.tcp_congestion_control=bbr 已生效(sysctl net.ipv4.tcp_congestion_control),并用 ss -t|-p 查看连接使用的拥塞算法。此外检查中间负载均衡或云平台是否替换了内核网络栈,必要时咨询宿主机或升级内核。
9. 问:遇到突发带宽下降的快速排查步骤是什么?
答:1) 使用 iftop/iftop -i eth0 查看实时流量来源端口;2) ss -tanp | grep ESTAB 看大量连接是否来自单一源(DDoS);3) iperf3 同机内其它节点互测排除机房侧问题;4) 查看 dmesg/syslog 是否有驱动或硬件错误;5) 若定位到链路问题,导出 mtr/traceroute/iperf3 日志并联系带宽商协助排查。
来源:运维视角 新加坡cn2服务器 日常维护与性能优化清单