1.
购买与网络准备
- 选择支持 CN2 路由的云厂商或托管商(确认机房:香港沙田/Shatin)。
- 下单时选择 CN2 专线或直连 CN2 路由、固定公网 IPv4、所需带宽与快照权限。记录控制台提供的 IP、VNC、初始密码。
2.
系统初始化与登录
- 通过 Web 控制台或 VNC 登录,进入救援系统或直接使用控制台修改 root 密码。
- 建议安装 Ubuntu 22.04 或 CentOS 8;登录后执行:apt update && apt upgrade -y(或 yum update -y)。
3.
创建用户与 SSH 安全
- 添加非 root 用户并设置 sudo:adduser deploy && usermod -aG sudo deploy。
- 上传 SSH 公钥到 /home/deploy/.ssh/authorized_keys,修改 /etc/ssh/sshd_config:PermitRootLogin no, PasswordAuthentication no, Port 22(可改端口)。重启 sshd。
4.
防火墙与强基线安全
- 使用 UFW 或 firewalld 开放必要端口(HTTP/HTTPS/SSH/自定义端口):ufw allow 22/tcp; ufw allow 80,443/tcp; ufw enable。
- 安装 fail2ban, 配置 jail.local 防暴力破解:bantime = 3600, maxretry = 5。启用日志监控。
5.
网络与路由优化(CN2 特性)
- 在主机控制台绑定/确认 CN2 IPv4 路由,如果厂商提供 BGP/多出口,请申请多线。
- 若需要多机房高可用,准备至少两台主机(沙田同机房或异机房)并记录各自公网 IP 和内网网段。
6.
负载均衡与高可用架构
- 推荐架构:两台或多台应用服务器 + 两台 HA 层(HAProxy)+ Keepalived 提供虚拟 IP(VIP)。
- 在 HAProxy 节点配置前端监听并转发到后端 app_pool,示例 haproxy.cfg:listen http *:80 mode http balance roundrobin server app1 10.0.0.2:80 check。
7.
Keepalived 快速配置(VRRP)
- 安装 keepalived 并在主/备上设置 virtual_server 和 vrrp_instance,示例要点:state MASTER/BACKUP, interface eth0, virtual_router_id 51, priority 100/90, virtual_ipaddress { 10.0.0.100 }。
- 启用 health_check 脚本检测 HAProxy 本地进程,失败时触发切换。
8.
自动化部署与 CI/CD
- 使用 Ansible 编写 playbook,包含用户创建、SSH key、安装 haproxy/keepalived、配置文件模板和启动服务。示例命令:ansible-playbook -i hosts site.yml。
- 集成 GitLab CI/ GitHub Actions 推送发布,避免手动差异。
9.
备份、监控与演练
- 备份:定期快照 + rsync 到异地(另一个机房或 OSS),数据库使用逻辑备份并异地存档。
- 监控与告警:部署 node_exporter + Prometheus + Alertmanager,外网死活监控用 UptimeRobot/StatusCake。定期演练切换与恢复流程。
10.
问:如何验证 CN2 路由是否生效?
- 检查方法:从国内不同节点 traceroute 到服务器,观察中间跳数是否走经 CN2 节点(ISP 提供信息);使用 mtr/traceroute 并对比普通线路延迟,CN2 延迟和丢包通常更低。
11.
答:部署后常见故障与快速排查?
- 检查点:1) 确认网卡/路由表和默认网关;2) 查看防火墙与 iptables 是否误阻;3) haproxy/check 脚本日志;4) keepalived 日志(/var/log/syslog)确认 VRRP 状态。
12.
问:如何做到跨机房高可用而非仅靠 VRRP?
- 策略:使用 DNS 级别健康检测(Cloudflare/Route53)做主动监测并切换 A 记录,结合 Anycast CDN 缓解流量;数据库采用主从或分布式复制(MySQL GTID/Group Replication)并设置 failover 脚本。
13.
答:演练与恢复建议
- 定期(至少月度)演练:1) 主 HA 宕机验证 VIP 切换;2) 恢复节点回归测试;3) DNS 故障转移演练。记录每次演练时间与问题清单,持续改进。
来源:部署指南 教你快速配置香港沙田cn2主机并保证高可用