Com2us Platform · Migration
GCP → Tencent Cloud 무중단 마이그레이션
서머너즈워: 크로니클의 서버 80대·DB 20개를 약 1주일 만에 서비스 중단 없이 GCP에서 Tencent Cloud로 옮긴 프로젝트입니다.
- 역할
- Cloud Engineer · 메인 엔지니어
- 기간
- 2023.02 – 2026.02
- CSP
- GCP · Tencent
- 규모
- 서버 80대 · DB 20개
- 핵심 기술
- Terraform · GCP · Tencent Cloud · Online Migration
- 80
- 이관한 서버
- 20
- 이관한 DB
- 0
- 서비스 중단
한눈에 보기
문제
라이브 게임의 인프라를 클라우드 간에 옮기면서 서비스를 멈출 수 없었고, 옮기는 과정에서 방화벽 정책이 다르게 적용되면 안 됐습니다.
접근
네트워크와 방화벽 규칙을 Tencent에 GCP와 동일하게 먼저 구성했습니다. 서버는 Online Migration 도구로 옮기고 같은 인프라를 구성한 뒤, 비공개로 운영하며 개발팀과 이슈를 확인하고 트래픽을 단계적으로 전환했습니다. 전 과정은 GCP Terraform 코드를 Tencent Terraform 코드로 옮기는 방식으로 진행했습니다.
결과
약 1주일 만에 서비스 중단 없이 이관을 끝냈습니다. 일부는 GCP에 남기고 대부분의 게임 서버와 DB를 Tencent로 옮겼으며, 방화벽 정책은 전부 검토해 다시 세운 상태로 운영했습니다.
자세히 보기
Tencent 보안그룹 리소스 (관련 공개 저장소 pf-03)
이 코드가 하는 일: 이관 대상인 방화벽 규칙을 받는 Tencent 쪽 구조입니다. 이 프로젝트의 운영 코드가 아니라 관련 공개 저장소의 코드입니다.
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
}배운 점
네트워크, 서브넷, 방화벽, 서버처럼 역할별로 두 클라우드의 리소스 대응표를 먼저 정리하면 코드 이관이 단순해집니다.
다음에 개선할 점
트래픽 전환 절차도 코드와 런북으로 남겨 두면 다음 이관에서 그대로 재현할 수 있습니다.