1.
前置准备:选择机房与网络供应商
- 确认业务需求(延迟、带宽、合规):网页/API优先选择靠近用户的台北或新竹机房。
- 推荐运营商:中華電信(Chunghwa)、台灣大哥大、遠傳等,询问带宽等级、峰值与DDoS防护选项。
- 要求提供IP段、是否支持BGP、机柜电源(1U/2U/机架)与交付时间;签SLA并记录维护窗口。
2.
实际上架与物理接入步骤
- 到货验收:核对机箱序列号、网卡型号、线缆类型(CAT6/CAT6a/光纤)。拍照并记录。
- 机柜接电:确认PDU、冗余A/B电源均已接入并测试切换。用接地表测量接地阻抗。
- 远程控制:安装ILO/iDRAC或IPMI并设置静态管理IP,开启KVM远程控制方便OS安装。
3.
操作系统安装与基础网络配置
- 安装步骤(以Ubuntu为例):通过IPMI挂载ISO并安装、设置时区、分区、LVM。
- 网络配置:在 /etc/netplan/ 或 /etc/network/interfaces 写入静态IP、网关、DNS;重启网络并验证 ping 网关与 traceroute。
- 设置hostname、时钟同步(chrony 或 ntp),并安装常用工具:apt update && apt install -y curl vim iperf3 mtr tcpdump。
4.
BGP对等与Anycast(若需多点部署)
- 申请ASN与公网前缀(如需自带IP),或与机房签署BGP代理服务。
- 使用FRR/BIRD配置BGP(简要FRR示例):在 /etc/frr/frr.conf 加入 router bgp
neighbor remote-as network <你的前缀>。重启frr并查看 show ip bgp。
- Anycast:在多个POP宣告相同前缀并调优社区与MED,配合健康检查脚本做流量引导。
5.
链路与路由优化实操
- 测试工具:使用 iperf3 测量吞吐,mtr 或 tcptraceroute 检查路径与抖动。示例:iperf3 -c 对端IP -P 10 -t 30。
- 路由策略:优先本地ISP,设置BGP MED/Local-preference;与TPIX等交换点建立直连可显著降延迟。
- 调整MTU(若有隧道或负载均衡):ip link set dev eth0 mtu 1500 并测试分片。
6.
Linux TCP/IP 性能调优命令
- 临时生效示例:sysctl -w net.core.rmem_max=134217728 net.core.wmem_max=134217728
- 持久化:在 /etc/sysctl.conf 中添加 net.ipv4.tcp_congestion_control=bbr net.core.somaxconn=1024 net.ipv4.tcp_max_syn_backlog=2048,然后 sysctl -p。
- 监测:ss -tunap 查看连接;netstat -s 或 /proc/net/netstat 检查丢包与重传。
7.
防火墙、安全与SSH硬化
- SSH:禁止密码登录,使用公钥认证,修改默认端口并启用Fail2Ban。示例 /etc/ssh/sshd_config:PasswordAuthentication no。
- 防火墙:UFW 或 iptables 基本策略:只开放必要端口(80/443/22/443/TCP服务),建立默认DROP策略并记录规则。
- DDoS与WAF:若业务暴露面广,启用机房DDoS防护或第三方WAF(Cloudflare/本地托管)。
8.
监控、日志与备份实操
- 监控栈:安装 node_exporter、prometheus + grafana。配置黑盒探测(blackbox_exporter)监测外链延迟。
- 日志:集中化日志到ELK/Graylog或Loki;启用日志轮替与压缩。
- 备份:关键数据使用 rsync + cron,或 restic/borg 备份到异地(至少一个台湾外的备份点)。定期演练恢复。
9.
数据库与应用层性能建议
- 数据库:MySQL 调整 innodb_buffer_pool_size ~ 60-70% 内存,连接数与慢查询启用监控。
- 应用:启用HTTP keep-alive、gzip、使用CDN缓存静态资源并将API走就近机房。
- 负载均衡:用HAProxy或Nginx做L4/L7,设置健康检查、连接限速与重试策略。
10.
流量测试与上线前验收清单
- 验收命令清单:ping、mtr、iperf3、curl -I、openssl s_client -connect 主机:443。记录多时段结果。
- 验收项包括:BGP路由稳定、延迟与丢包在SLA内、备份恢复测试通过、安全扫描无高危漏洞。
11.
问:在台湾机房部署最常见的网络瓶颈有哪些?
- 答:常见瓶颈包含跨境带宽受限(对大陆或海外链路)、未使用最近交换点(造成额外跳数)、TCP参数未调优导致高并发下吞吐不足。用mtr/iperf3定位。
12.
问:如何快速验证BGP/Anycast是否生效?
- 答:在各部署点用 bgp looking glass 或使用网络工具(mtr/traceroute)从不同ASN发起探测,确认路由到最近节点并查看BGP路由表(show ip bgp)。
13.
问:上线后如何持续优化网络体验?
- 答:持续收集监控(延迟、丢包、TCP重传),周期性做压力测试,优化应用缓存策略并与机房协商链路/带宽升级与多点互联。
来源:面向开发者的台湾机房服务器部署最佳实践与网络优化建议