用途
Huawei Cloud CCE Cluster Migrator 是一个用于将外部 Kubernetes 环境的集群资源迁移到华为云云容器引擎(CCE)的技能。其迁移对象包括工作负载、集群配置、ConfigMap、Secret、容器镜像以及持久化存储,并提供从环境评估到流量切换的完整流程编排。
主要能力
- 分阶段迁移工作流:依次执行评估与容量规划、方案确认、目标 CCE 就绪检查、镜像同步、多类型 PV 迁移、工作负载与 Secret 恢复、Ingress 与流量切换。
- 存储重映射:将源端存储类型映射至 CCE 的 EVS、SFS Turbo 或 OBS,并给出各自的约束(如 EVS 最小 10Gi、单 Pod 独占 RWO;SFS Turbo 需预创建实例、多 Pod RWX 等)。
- 镜像同步:通过 skopeo 将业务镜像及 Velero 套件镜像批量复制到华为云 SWR,并使用
skopeo list-tags进行校验。 - 工作负载恢复:首选 k8clone 进行零集群开销的元数据克隆,借助 restore.json 自动改写 StorageClass 与镜像仓库地址;备选 Velero(必须使用
--uploader-type=restic)恢复完整文件系统状态。数据库一致性通过 pg_dump/psql 等逻辑导出/导入保障。 - 入口与切换:配置独享型 ELB + EIP 的 Ingress(Turbo 集群用 ClusterIP,Standard 用 NodePort),通过
curl --resolve做冒烟测试,再切换 DNS,并可选择加权灰度切换。 - 前置检查与参数确认:在资源创建、数据迁移或流量切换前,需与用户确认目标集群 ID、区域、迁移工具链、SWR 组织、存储类映射、NAT 网关策略、ELB 实例和 DNS 切换策略。
使用方式
该技能依赖中央操作主机上的 KooCLI(hcloud)、kubectl、velero、k8clone、skopeo 等工具,并需具备 CCE、SWR、EVS、VPC、ELB 等 IAM 权限,以及已就绪的目标 CCE 集群与网络。典型命令包括:
- 查询 CCE 集群规格:
hcloud CCE GetClusterFlavorSpecs --cli-region=<region_id> --clusterType=VirtualMachine - 同步 kubeconfig:
hcloud CCE update-kubeconfig --cluster-id={target_cluster_id} --region=cn-north-4 --output=~/.kube/cce-config - 镜像复制:
skopeo copy --dest-creds="${SWR_AUTH}" --insecure-policy docker://{source_image} docker://swr.cn-north-4.myhuaweicloud.com/{org}/{image}:{tag} - 元数据备份与恢复:
k8clone backup --kubeconfig=~/.kube/source-config --exclude-having-owner-ref=true --local-dir=./k8clone-dump与k8clone restore --kubeconfig=~/.kube/cce-config --local-dir=./k8clone-dump.zip --restore-conf=./restore.json - 流量切换前冒烟测试:
curl -Iv https://app.example.com --resolve app.example.com:443:{target_elb_eip}
适用场景
适用于将自建、本地部署或第三方云上的 Kubernetes 工作负载整体迁移至华为云 CCE 的场景,尤其是涉及多类型持久化存储、容器镜像仓库切换、数据库一致性保障和 DNS 流量灰度切换的迁移项目。
限制
迁移前必须完成目标 CCE 集群(建议 CCE Turbo)的创建与健康检查、VPC 子网路由、NAT 网关 SNAT 规则(如需公网出口)及安全组规则校验;方案阶段需用户明确批准后才能继续执行。具体收费、价格与效果指标暂未提供。