1.
优点小结:地理位置靠近中国大陆、低延迟、国际带宽灵活、法律合规对多国业务友好。适合跨境电商、SaaS、内容分发及金融类低延迟场景。
实际考量:评估目标用户分布、带宽峰值、合规(ICP/非ICP备案场景)、是否需要双机房容灾以及成本预算。
2.
步骤1:确立规格(CPU / 内存 / 磁盘 / 带宽)。例如:Web 应用初期可选2vCPU+4GB内存+50GB SSD+按流量计费带宽。
步骤2:比较计费模式(按小时/按月、按流量/按峰值)。如果流量波动大建议按流量计费并选弹性带宽。
步骤3:选择机房与网络优化服务(是否带公网 IP、是否支持弹性公网 IP、是否有 CDN/负载均衡)。购买前在控制台先确认快照、镜像、快照价格与 SLA。
3.
使用 SSH 连接:在控制台生成密钥对或使用密码。Linux 示例:ssh -i ~/.ssh/id_rsa root@<公网IP>
系统初始化脚本(Ubuntu 为例):
sudo apt update && sudo apt upgrade -y
sudo apt install -y vim curl git ufw fail2ban apt-transport-https ca-certificates
创建非 root 用户并配置 sudo:
adduser deployer
usermod -aG sudo deployer
mkdir /home/deployer/.ssh && chmod 700 /home/deployer/.ssh
4.
关闭密码登录并启用密钥认证:编辑 /etc/ssh/sshd_config,设置 PasswordAuthentication no,PermitRootLogin no,重启 sshd。
设置防火墙(ufw 示例):
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
安装 fail2ban 防爆破:sudo systemctl enable --now fail2ban;根据 /etc/fail2ban/jail.local 配置 sshd 规则。
5.
设置内核参数优化 TCP(/etc/sysctl.conf):
net.ipv4.tcp_fin_timeout=15
net.ipv4.tcp_tw_reuse=1
net.core.somaxconn=1024
应用层:使用 Nginx 做反向代理并启用 keepalive、gzip、缓存头;示例 /etc/nginx/nginx.conf 中 worker_processes auto, keepalive_timeout 65。
考虑接入 CDN(如 Cloudflare)减轻源站带宽与防 DDoS。
6.
磁盘:系统盘与数据盘分离,数据盘挂载到 /data 并在 /etc/fstab 中添加 UUID 持久化。
定期快照:在云控制台配置自动快照策略(每日/每周),并设置保留周期。
异地备份实操(rsync + cron):
rsync -avz --delete /data/ backup@backup-server:/backup/
crontab -e -> 0 2 * * * /usr/bin/rsync -avz --delete /data/ backup@backup-server:/backup/$(hostname)/
推荐使用加密备份工具(Borg 或 Restic)并保存到对象存储(S3 兼容)。
7.
安装 Docker 与 Docker Compose:
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker $USER
sudo apt install -y docker-compose
使用 docker-compose.yml 管理应用,并通过 systemd unit 文件确保服务开机自启:
/etc/systemd/system/docker-app.service 示例:
[Unit]
Description=Docker Compose App
After=docker.service
[Service]
WorkingDirectory=/opt/myapp
ExecStart=/usr/local/bin/docker-compose up
ExecStop=/usr/local/bin/docker-compose down
Restart=always
[Install]
WantedBy=multi-user.target
8.
基础监控:部署 Prometheus + node_exporter + Grafana。node_exporter 安装并 systemd 启动后,在 Prometheus 中添加 targets。
日志:使用 Filebeat 采集日志到 ELK(Elasticsearch + Logstash + Kibana)或直接送到云日志服务。配置 logrotate /etc/logrotate.d/yourapp 保持日志大小可控。
告警:在 Prometheus Alertmanager 中配置邮箱/钉钉/Slack 通知策略,设定 CPU、内存、磁盘、响应时间阈值。
9.
使用 GitLab CI/GitHub Actions 触发构建并在部署节点使用 SSH 部署脚本或使用 Docker Registry 拉取镜像。
示例部署脚本 deploy.sh:
#!/bin/bash
docker pull myrepo/myapp:$CI_COMMIT_SHA
docker-compose -f /opt/myapp/docker-compose.yml up -d --no-deps --build
引入蓝绿/滚动更新策略,结合负载均衡器(如 nginx upstream 或云负载均衡)实现零停机部署。
10.
步骤化处理:1) 定位(查看监控/日志);2) 隔离(调整负载或下线实例);3) 恢复(从最近备份或快照恢复);4) 根因分析并编写回顾报告。
演练:至少每季度进行一次故障恢复演练,包括快照恢复、数据库回滚、异地切换。记录 RTO/RPO 并优化。
11.
答:香港不需要大陆 ICP 备案,但如果目标用户主要在中国大陆且访问速度受限,应结合国内 CDN 或大陆机房。敏感数据需遵循所在业务国家/地区法律,采用数据加密(传输 TLS、静态盘加密 LUKS 或云盘加密)并在合同中约定数据处理条款。
12.
答:先通过 CDN 缓存和 WAF 降低源站压力;在云控制台启用弹性伸缩组(ASG)或预先准备镜像+启动脚本实现分钟级扩容;带宽策略使用按流量计费并设置峰值告警;事后查看账单并对高峰进行成本归因。
13.
答:建议建立文档化流程(含标准操作 SOP)、基础镜像/自动化部署模板、监控告警与巡检机制、定期安全审计与备份恢复演练。采用 IaC(Terraform)管理云资源,CI/CD 管理应用交付,并定期进行成本与合规评估,形成持续改进闭环。