Com2us Platform · Migration
Zero-downtime migration from GCP to Tencent Cloud
Moved 80 servers and 20 databases of Summoners War: Chronicles from GCP to Tencent Cloud in about one week with no downtime.
- Role
- Cloud Engineer · Main engineer
- Period
- Feb 2023 – Feb 2026
- Cloud
- GCP · Tencent
- Scale
- 80 servers · 20 databases
- Key tech
- Terraform · GCP · Tencent Cloud · Online Migration
- 80
- Servers migrated
- 20
- Databases migrated
- 0
- Downtime
At a glance
Problem
A live game had to move between clouds without stopping, and the firewall policy could not drift during the move.
Approach
Network and firewall rules were built on Tencent to match GCP first. Servers moved with the Online Migration tool and the same infrastructure was built. It then ran privately while the dev team checked for issues, and traffic moved in stages. The whole effort moved GCP Terraform code to Tencent Terraform code.
Result
The migration finished in about one week with no downtime. Some systems stayed on GCP while most game servers and databases moved to Tencent, and the firewall policy was fully reviewed and rebuilt along the way.
Up close
Tencent security group resources (related public repository pf-03)
What this code does: The Tencent side that receives the migrated firewall rules. This is code from a related public repository, not the production code of this project.
resource "tencentcloud_security_group" "sg" {
count = local.create ? 1 : 0
name = var.name
description = var.description
project_id = var.project_id
tags = merge(var.tags, var.security_group_tags)
}
resource "tencentcloud_security_group_lite_rule" "lite_rule" {
count = var.create_lite_rule ? 1 : 0
security_group_id = local.this_sg_id
ingress = var.ingress_for_lite_rule
egress = var.egress_for_lite_rule
}What I learned
Mapping each role across both clouds first (network, subnet, firewall, server) makes moving the code simple.
What I would improve
Writing the traffic cutover steps down as code and a runbook would let the next migration repeat them exactly.