# DNS 迁移检查清单

## 迁移前准备 (T-7天)

### 环境准备
- [ ] 安装并配置 gcloud CLI
- [ ] 安装 kubectl
- [ ] 验证对源项目和目标项目的访问权限
- [ ] 克隆并配置迁移脚本
- [ ] 在测试环境验证迁移流程

### 项目审计
- [ ] 审计源项目的所有 GKE 集群
- [ ] 审计源项目的负载均衡器配置
- [ ] 审计源项目的 DNS 记录
- [ ] 审计源项目的 SSL 证书
- [ ] 识别所有硬编码的 IP 地址和域名

### 目标项目准备
- [ ] 在目标项目部署完整的应用栈
- [ ] 验证目标项目的网络配置
- [ ] 验证目标项目的 IAM 权限
- [ ] 验证目标项目的防火墙规则
- [ ] 测试目标项目的服务可用性

## 迁移前 48 小时

### DNS 准备
- [ ] 降低源项目 DNS 记录的 TTL 至 300 秒
- [ ] 通知相关团队迁移计划
- [ ] 准备监控和告警
- [ ] 准备回滚计划

### 最终验证
- [ ] 运行服务发现脚本：`./migrate-dns.sh discovery`
- [ ] 运行目标准备脚本：`./migrate-dns.sh prepare`
- [ ] 验证目标项目 SSL 证书状态
- [ ] 验证目标项目服务健康状态

## 迁移执行日

### 迁移前检查 (T-30分钟)
- [ ] 确认所有团队成员就位
- [ ] 确认监控系统正常
- [ ] 确认回滚脚本准备就绪
- [ ] 最后一次验证目标服务状态

### 执行迁移 (T-0)
- [ ] 执行 DNS 切换：`./migrate-dns.sh migrate`
- [ ] 监控 DNS 传播状态
- [ ] 验证服务可用性
- [ ] 检查错误日志

### 迁移后验证 (T+30分钟)
- [ ] 验证所有域名解析正确
- [ ] 测试所有关键业务功能
- [ ] 检查应用日志无异常
- [ ] 验证 SSL 证书工作正常
- [ ] 监控性能指标

## 迁移后 24 小时

### 持续监控
- [ ] 监控服务可用性
- [ ] 监控性能指标
- [ ] 监控错误率
- [ ] 收集用户反馈

### 问题处理
- [ ] 记录并处理任何问题
- [ ] 如有严重问题，考虑回滚
- [ ] 更新监控和告警规则

## 迁移后 1 周

### 稳定性确认
- [ ] 确认服务稳定运行
- [ ] 确认性能符合预期
- [ ] 确认无用户投诉
- [ ] 更新相关文档

### 清理准备
- [ ] 评估源项目资源使用情况
- [ ] 准备资源清理计划
- [ ] 通知相关团队清理计划

## 迁移后 1 个月

### 资源清理
- [ ] 执行清理脚本：`./migrate-dns.sh cleanup`
- [ ] 删除不再使用的 GKE 集群
- [ ] 删除不再使用的负载均衡器
- [ ] 删除不再使用的静态 IP
- [ ] 清理过渡期的 CNAME 记录

### 文档更新
- [ ] 更新架构文档
- [ ] 更新运维手册
- [ ] 更新监控配置
- [ ] 归档迁移报告

## 紧急回滚检查清单

### 立即执行 (发现问题后 5 分钟内)
- [ ] 执行回滚脚本：`./migrate-dns.sh rollback`
- [ ] 验证 DNS 记录已恢复
- [ ] 验证服务可用性恢复
- [ ] 通知相关团队回滚完成

### 问题分析 (回滚后 1 小时内)
- [ ] 分析迁移失败原因
- [ ] 检查日志和错误信息
- [ ] 识别需要修复的问题
- [ ] 制定重新迁移计划

### 后续行动
- [ ] 修复识别的问题
- [ ] 在测试环境重新验证
- [ ] 重新规划迁移时间
- [ ] 更新迁移文档

## 关键联系人

### 技术团队
- 迁移执行负责人：_____________
- 网络工程师：_____________
- 应用开发负责人：_____________
- 运维工程师：_____________

### 业务团队
- 产品负责人：_____________
- 客户支持负责人：_____________
- 业务连续性负责人：_____________

### 紧急联系方式
- 技术支持热线：_____________
- 运维值班电话：_____________
- 管理层紧急联系：_____________

## 工具和资源

### 监控链接
- 服务监控面板：_____________
- DNS 监控工具：_____________
- 性能监控面板：_____________
- 错误日志查看：_____________

### 文档链接
- 迁移计划文档：_____________
- 架构设计文档：_____________
- 回滚操作手册：_____________
- 故障处理手册：_____________

### 脚本和命令
```bash
# 检查迁移状态
./migrate-dns.sh status

# 查看实时日志
tail -f logs/migration_*.log

# 验证 DNS 解析
dig +short your-domain.com @8.8.8.8

# 紧急回滚
./migrate-dns.sh rollback

# 检查服务健康
kubectl get pods,svc,ingress -n default
```

## 成功标准

### 技术指标
- [ ] DNS 解析延迟 < 100ms
- [ ] 服务可用性 > 99.9%
- [ ] 响应时间无明显增加
- [ ] 错误率无明显增加

### 业务指标
- [ ] 用户投诉数量无增加
- [ ] 业务功能正常
- [ ] 数据完整性保持
- [ ] 安全性无降低

### 运维指标
- [ ] 迁移时间在预期范围内
- [ ] 无需紧急回滚
- [ ] 团队协作顺畅
- [ ] 文档更新及时

---

**注意事项：**
1. 此检查清单应根据具体环境和需求进行调整
2. 建议在测试环境先完整执行一遍检查清单
3. 保留所有迁移过程的日志和报告用于后续分析
4. 定期回顾和更新检查清单以改进迁移流程