서버 마이그레이션이란? 기본 절차 정리

작성자

카테고리:

서버 마이그레이션의 정의

서버 마이그레이션(Server Migration)은 서버의 데이터, 애플리케이션, 설정을 기존 환경에서 새로운 환경으로 이전하는 작업이다. 물리 서버에서 클라우드로 이전하거나, 클라우드 제공자를 변경하거나, 노후화된 하드웨어를 교체하거나, 데이터센터를 이전할 때 발생한다. 서비스 중단을 최소화하면서 데이터 무결성을 유지하는 것이 마이그레이션의 핵심 과제다.

마이그레이션 유형

크게 세 가지 유형으로 나뉜다. 리호스팅(Rehosting)은 기존 시스템을 그대로 새 환경으로 옮기는 방식이다. 리프트 앤 시프트(Lift and Shift)라고도 부르며, 애플리케이션 코드를 수정하지 않고 인프라만 변경한다. 가장 빠르고 위험이 낮지만 새 환경의 기능을 충분히 활용하지 못한다. 리플랫포밍(Replatforming)은 핵심 아키텍처는 유지하되 일부를 새 환경에 맞게 최적화하는 방식이다. 데이터베이스를 자체 운영에서 RDS 같은 매니지드 서비스로 전환하는 것이 대표적인 예다. 리팩터링(Refactoring)은 애플리케이션 자체를 클라우드 네이티브 아키텍처로 재설계하는 방식이다. 비용과 시간이 가장 많이 들지만 장기적으로 가장 큰 효율을 얻을 수 있다.

사전 준비 단계

마이그레이션의 성공은 사전 준비에 달려 있다. 첫째, 현재 인벤토리를 정리한다. 서버 수, 각 서버의 역할, OS 버전, 설치된 소프트웨어, 데이터 용량, 네트워크 구성을 빠짐없이 문서화한다. 둘째, 의존성을 매핑한다. 서버 간 통신 관계, 외부 API 연동, 데이터베이스 연결 정보, 공유 스토리지 참조 관계를 파악한다. 이 의존성을 놓치면 마이그레이션 후 특정 서비스가 동작하지 않는 사고가 발생한다. 셋째, 마이그레이션 전 반드시 전체 백업을 수행하고 복구 테스트를 완료한다.

데이터 마이그레이션

가장 신경 써야 할 영역이다. 데이터 용량이 크면 전체 복사에 수 시간에서 수일이 걸릴 수 있다. 초기 풀 카피를 먼저 수행하고, 전환 시점에 변경분만 동기화하는 증분 동기화 방식이 일반적이다. rsync는 파일 시스템 동기화에 가장 널리 사용되는 도구다. 데이터베이스는 논리적 덤프(mysqldump, pg_dump)와 물리적 복제(XtraBackup, pg_basebackup)를 상황에 맞게 선택한다. 실시간 서비스 중이라면 마스터-슬레이브 복제를 설정하여 무중단에 가까운 전환이 가능하다.

전환과 검증

데이터 동기화가 완료되면 DNS를 새 서버의 IP로 변경하여 트래픽을 전환한다. DNS TTL을 사전에 짧게 설정해두어야 전환이 빠르게 반영된다. 전환 직후에는 모든 서비스의 정상 동작을 확인하는 체크리스트를 순서대로 점검한다. 웹페이지 로딩, API 응답, 데이터베이스 쿼리 결과, 파일 접근, SSL 인증서 적용 상태, 로그 기록 정상 여부를 모두 확인한다. 문제가 발생하면 DNS를 원래 서버로 되돌려 롤백할 수 있어야 하므로, 기존 서버는 최소 1~2주간 유지한다.

서버마이그레이션 #클라우드이전 #리호스팅 #데이터이전 #rsync #DNS전환 #서버이전 #백업 #인프라관리 #클라우드

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다