이 문서에서는 Azure로의 성공적인 마이그레이션을 실행하기 위한 구조적 지침을 제공합니다. 이 지침에서는 서로 다른 비즈니스 요구 사항을 수용하기 위해 거의 0에 가까운 가동 중지 시간과 계획된 가동 중지 시간 접근 방식을 모두 다룹니다.
마이그레이션을 위한 관련자 준비
이해 관계자 준비는 마이그레이션 중에 조정된 실행 및 신속한 문제 해결을 보장합니다. 명확한 통신 및 리소스 할당은 비즈니스 중단을 줄이고 마이그레이션 성공률을 개선합니다. 마이그레이션 작업을 시작하기 전에 통신 프로토콜을 설정하고 지원 가용성을 확인해야 합니다.
자세한 마이그레이션 일정을 모든 관련자에게 배포합니다. 포괄적인 일정은 조직 전체에서 명확성과 맞춤을 만듭니다. 마이그레이션 타이밍, 예상되는 서비스 영향, 책임 및 대체 계획을 지정하는 문서를 만들고 배포합니다. 마이그레이션 팀 및 지원 리소스에 대한 연락처 정보를 포함합니다. 이 준비는 오해를 방지하고 마이그레이션 기간 동안 비즈니스 중단을 줄입니다.
전체 마이그레이션 기간 동안 기술 지원 가용성을 확인합니다. 전용 기술 리소스를 사용하면 마이그레이션 중에 발생하는 문제에 즉시 응답할 수 있습니다. 전체 마이그레이션 기간 동안 관련 전문 지식을 갖춘 특정 기술 담당자가 대기하도록 예약합니다. 중요한 문제에 대한 응답 시간 기대치를 사용하여 명확한 에스컬레이션 경로를 설정합니다. 이 지원 구조는 마이그레이션 성공 또는 비즈니스 운영에 영향을 줄 수 있는 문제에 대한 해결 시간을 줄입니다.
모든 지원 팀과 함께 마이그레이션 전 준비 검토를 수행합니다. 준비 검토는 모든 팀이 자신의 역할을 이해하고 필요한 액세스 권한이 있음을 확인합니다. 각 지원 팀의 담당자와 회의를 열어 마이그레이션 계획, 확인 절차 및 롤백 기준을 검토합니다. 지원 팀에 적절한 시스템 액세스 및 모니터링 도구가 구성되어 있는지 확인합니다. 이 준비는 마이그레이션 중에 발생하는 모든 문제에 대한 조정된 응답을 보장합니다.
변경 고정 구현
변경 동결은 마이그레이션 성공을 방해할 수 있는 수정을 방지합니다. 시스템 안정성은 마이그레이션 위험을 줄이고 데이터 일관성을 보장합니다. 마이그레이션 기간 동안 원본 시스템의 변경을 방지하기 위해 컨트롤을 구현해야 합니다.
배포 파이프라인에서 자동화된 변경 제어를 구현합니다. 자동화된 컨트롤은 프로덕션 시스템에 대한 무단 변경을 방지합니다. 고정 기간 동안 원본 환경에 대한 릴리스를 차단하도록 배포 파이프라인을 구성합니다. CI/CD 도구에 승인 게이트를 추가하여 동결 기간을 적용합니다. 이러한 컨트롤은 결과에 영향을 줄 수 있는 우발적인 배포를 방지합니다.
긴급 변경 절차를 문서화합니다. 응급 절차는 안정성을 유지하면서 중요한 수정을 가능하게 합니다. 긴급 변경에 대한 특정 기준을 만들고 신속한 승인 프로세스를 정의합니다. 승인자 및 문서 필수 테스트에 대한 연락처 정보를 포함합니다. 이러한 절차는 시스템 안정성과 비즈니스 연속성 요구 사항의 균형을 유지합니다.
무단 변경을 모니터링합니다. 변경 검색을 통해 변경 기간 내내 규정 준수가 중지됩니다. 파일 수정, 데이터베이스 스키마 변경 및 애플리케이션 배포에 대한 경고를 구성합니다. 구성 관리 도구를 사용하여 시스템 상태를 추적합니다. 이 모니터링은 문서화되지 않은 변경 내용이 성공에 영향을 주지 않도록 방지합니다.
프로덕션 환경 완료
프로덕션 환경 준비는 마이그레이션된 워크로드에 대한 일관성, 보안 및 운영 준비를 보장합니다. 이 준비는 구성 드리프트를 줄이고 워크로드에 대한 검증된 기반을 제공합니다. 코드 기반 인프라 템플릿을 사용하여 프로덕션 리소스를 만들고 프로덕션 등급 구성을 적용해야 합니다.
코드 기반 인프라 템플릿을 사용하여 프로덕션 리소스를 만듭니다. 코드로서의 인프라는 환경 간에 일관되고 반복 가능한 배포를 보장합니다. 이 방법은 구성 오류를 줄이고 인프라 변경에 대한 버전 제어를 제공합니다. Azure Resource Manager 템플릿, Bicep 또는 Terraform을 사용하여 표준화된 구성으로 리소스를 배포합니다.
Azure 리소스에 프로덕션 등급 구성을 적용합니다. 프로덕션 구성은 워크로드를 보호하고 조직의 요구 사항을 충족하는 보안, 성능 및 규정 준수 기준을 설정합니다. 서비스 간에 필요한 트래픽만 허용하는 제한적인 규칙을 사용하여 네트워크 보안 그룹을 구성합니다. 필요한 통신 경로를 사용하도록 설정하는 동안 무단 액세스를 차단하는 방화벽 규칙을 적용합니다. 최소 권한 원칙을 따르는 ID 및 액세스 관리 컨트롤을 설정합니다. Azure에서 올바른 버전으로 데이터베이스를 프로비전하고 복제에 필요한 사용자 계정, 역할 및 권한을 구성합니다. 네트워크 액세스 제어 및 방화벽 규칙을 구성하여 데이터베이스 연결을 보호합니다. 이러한 구성은 마이그레이션된 워크로드에 대한 보안 기반을 만듭니다.
모든 서비스가 올바르게 실행되고 있는지 확인합니다. 서비스 확인은 Azure 인프라가 마이그레이션된 워크로드를 지원할 수 있도록 합니다. 이 확인은 마이그레이션 프로세스에 영향을 미치기 전에 잠재적인 문제를 식별합니다. 서비스 상태, 리소스 만들기 완료 및 서비스별 상태 검사를 확인합니다.
네트워크 연결이 설정되어 있는지 확인합니다. 네트워크 연결 유효성 검사를 통해 필요한 모든 통신 경로가 작동합니다. 이 유효성 검사는 마이그레이션 또는 애플리케이션 기능을 방해할 수 있는 연결 문제를 방지합니다. 모든 필수 서비스 간의 네트워크 연결을 테스트하고 중요한 엔드포인트에 대한 DNS 확인의 유효성을 검사합니다.
Execute cutover
마이그레이션 실행은 원본 환경에서 Azure로 워크로드 데이터 및 작업을 전송합니다. 다음 단계에서는 계획된 가동 중지 시간을 허용할 수 있는 시나리오를 수용하면서 거의 0에 가까운 가동 중지 시간의 우선 순위를 지정하는 표준화된 접근 방식을 제공합니다. 특정 가동 중지 시간 요구 사항 및 워크로드 특성에 따라 이러한 단계를 조정해야 합니다. 데이터 마이그레이션 도구를 참조하세요.
거의 0에 가까운 가동 중지 시간 마이그레이션 실행
데이터베이스 복제를 설정합니다. 원본과 Azure 대상 시스템 간에 연속 데이터 복제를 설정하도록 데이터베이스 플랫폼의 네이티브 복제 기능을 구성합니다. 초기 데이터 동기화가 성공적으로 완료되고 복제가 정상인지 확인합니다.
복제 지연을 모니터링합니다. 데이터베이스 플랫폼의 모니터링 도구를 사용하여 복제 지연을 모니터링합니다. 대기 시간이 높을수록 중단 위험 및 기간이 증가합니다. 복제 지연 시간이 0이 될 때까지 다음 단계로 진행하지 마세요.
안정적인 복제 중에 구조화되지 않은 데이터 및 파일을 마이그레이션합니다. 최종 중단 전에 구조화되지 않은 데이터 및 파일을 Azure에 복사합니다. 기능을 사용하여 개체 및 파일 마이그레이션을 위한 도구를 사용하여 적절한 Azure Storage 서비스로 파일을 전송합니다. 이 준비는 최종 컷오버 중에 복사해야 하는 데이터의 양을 줄입니다.
최종 동기화 기간 동안 쓰기 작업을 일시 중지합니다. 애플리케이션 팀과 협력하여 쓰기 작업을 중지하거나 미리 결정된 유지 관리 기간 동안 읽기 전용 모드를 사용하도록 설정합니다. 이 단계에서는 최종 중단 중에 데이터 불일치를 방지합니다. 트래픽이 적은 기간 동안 이 일시 중지를 예약하고 타임라인을 모든 관련자에게 전달합니다. 쓰기 작업을 일시 중지하지 않으면 데이터 손실 위험이 높아질 수 있습니다.
최종 데이터 동기화를 완료합니다. AzCopy 또는 유사한 도구를 사용하여 쓰기를 일시 중지한 후 수정된 데이터의 최종 동기화를 완료합니다. 보류 중인 트랜잭션이 원본 시스템에 남아 있지 않고 데이터베이스 복제가 완전히 catch되었는지 확인합니다.
데이터 무결성 및 워크로드 기능의 유효성을 검사합니다. 데이터베이스 행 수는 빠른 검사를 위해 비교할 수 있지만 더 심층적인 유효성 검사를 위해 체크섬 및 해시 함수를 사용하는 것이 좋습니다. 파일 시스템의 경우 MD5 해시 함수를 사용하고 파일 수, 크기 및 타임스탬프의 유효성을 검사합니다. 인증 및 핵심 트랜잭션을 포함한 중요한 워크로드 기능을 확인합니다.
새 Azure 워크로드로 트래픽을 전달합니다. 사용자 트래픽을 Azure 환경으로 보내도록 DNS 레코드 및 부하 분산 장치 구성을 업데이트합니다. 워크로드 상태 및 성능을 모니터링합니다.
단독형 사후 유효성 검사 및 모니터링을 포괄적으로 수행합니다. 자동화된 테스트 제품군을 사용하여 모든 중요한 비즈니스 프로세스의 엔드 투 엔드 기능 테스트를 수행합니다. 원본 및 대상 시스템 간의 체크섬 확인 및 해시 함수 비교를 사용하여 데이터 정확도의 유효성을 검사합니다. 애플리케이션 소유자가 모든 주요 함수가 올바르게 작동하는지 확인합니다. 중단 후 처음 24~48시간 동안 시스템 성능, 오류 비율 및 사용자 액세스 패턴을 모니터링하여 성능 저하 또는 기능 문제를 식별합니다.
가동 중지 시간으로 마이그레이션 실행
원본 시스템에 대한 모든 쓰기 작업을 중지합니다. 이 단계에서는 마이그레이션 중에 새 트랜잭션이 발생하지 않도록 합니다. 계속하기 전에 모든 트랜잭션이 완료되고 사용자가 잠겨 있는지 확인합니다.
모든 데이터를 Azure로 마이그레이션합니다. 데이터베이스, 파일 및 개체 스토리지를 Azure에 복사합니다. 데이터 형식 및 볼륨에 따라 Azure Migrate, AzCopy 또는 Azure DMS(Database Migration Service)와 같은 도구를 사용합니다. 데이터 마이그레이션 도구를 참조하세요.
마이그레이션 후 데이터 무결성의 유효성을 검사합니다. 체크섬, 행 수 및 메타데이터 비교를 수행하여 데이터 정확도를 확인합니다. 사용 가능한 자동화된 도구를 사용하여 수동 작업을 줄이고 안정성을 높입니다.
Azure 환경에서 애플리케이션을 테스트합니다. 엔드 투 엔드 테스트를 실행하여 애플리케이션이 마이그레이션된 데이터와 제대로 작동하는지 확인합니다. 보고, 통합 및 백업 유효성 검사를 포함합니다.
새 Azure 워크로드로 트래픽을 전달합니다. AZURE를 가리키도록 DNS, 부하 분산 장치 및 애플리케이션 구성을 업데이트합니다. 연결 문제를 모니터링하고 성공적인 리디렉션을 확인합니다.
중단 후 워크로드 기능의 유효성을 검사합니다. 최종 검사를 수행하여 애플리케이션이 안정적이고 데이터가 정확한지 확인합니다. 애플리케이션 소유자를 참여시켜 중요 비즈니스용 기능을 확인합니다.
대체 옵션 유지 관리
원본 환경을 대체 옵션으로 유지합니다. 원본 환경 보존을 사용하면 허용되는 기간 내에 해결할 수 없는 중요한 문제가 발생하는 경우 신속하게 되돌릴 수 있습니다. 이 대체 옵션은 안정화 기간 동안 비즈니스 연속성 보험을 제공합니다. 원본 환경을 사용할 수 있도록 유지하고 필요한 경우 DNS 레코드를 되돌리고 이전 구성을 복원하는 기능을 유지 관리합니다.
마이그레이션 성공 유효성 검사
마이그레이션 후 유효성 검사는 워크로드가 올바르게 작동하고 모든 요구 사항을 충족하는지 확인합니다. 이 유효성 검사는 데이터 무결성이 유지 관리되고 마이그레이션이 성공했음을 확인합니다. 마이그레이션 완료를 선언하기 전에 포괄적인 유효성 검사를 수행해야 합니다.
성공적인 사용자 액세스 및 시스템 성능을 확인합니다. 사용자 액세스 유효성 검사를 통해 Azure로의 전환이 투명하고 성능이 기대에 부합하는지 확인합니다. 이 확인은 사용자가 중단 없이 시스템에 액세스할 수 있음을 확인합니다. 초기 마이그레이션 후 기간 동안 사용자 액세스 패턴, 시스템 성능 메트릭 및 오류 비율을 모니터링합니다.
철저한 유효성 검사 후에만 마이그레이션 성공을 발표합니다. 완전한 유효성 검사를 수행하면 모든 관련자가 워크로드가 안정적이고 기능적인지 확인합니다. 이 확인은 나중에 문제가 발생할 수 있는 조기 성공 선언을 방지합니다. 애플리케이션 소유자, 테스터 및 비즈니스 관련자로부터 워크로드가 모든 요구 사항을 충족하고 올바르게 작동한다는 확인을 받습니다.
안정화 중 워크로드 지원
향상된 지원 범위는 중요한 안정화 기간 동안 마이그레이션 후 문제에 대한 신속한 대응을 보장합니다. 이 지원은 마이그레이션 후에 일반적으로 발생하는 문제를 더 빠르게 해결합니다. 전용 지원 모델을 설정하고 운영 설명서를 업데이트해야 합니다.
안정화 기간 동안 향상된 지원 범위를 설정합니다. 전용 지원 모델은 중요한 안정화 기간 동안 마이그레이션 후 문제에 대한 신속한 대응을 보장합니다. 이 지원은 마이그레이션 후에 일반적으로 발생하는 문제를 더 빠르게 해결합니다. 숙련된 IT 직원 또는 마이그레이션 파트너를 할당하여 워크로드를 면밀히 모니터링하고 일반 작업보다 짧은 SLA를 제공합니다.
구성 관리 및 인벤토리 시스템을 업데이트합니다. 구성 관리 업데이트는 운영 도구 및 프로세스가 새 Azure 환경을 반영하도록 합니다. 이 유지 관리는 운영 설명서를 최신 상태로 유지하고 지속적인 관리 활동을 지원합니다. 기존 인벤토리 도구가 IP 주소, CPU, 메모리 및 기타 인프라 세부 정보를 자동으로 업데이트한다고 가정하여 새 호스팅 환경에 대한 CMDB(구성 관리 데이터베이스)를 업데이트합니다.
Azure 도구 및 리소스
Source | Tool | Description |
---|---|---|
Multiple | 데이터베이스 마이그레이션 가이드 | 다양한 데이터베이스 플랫폼, 원본 및 대상에 대한 가이드 |
Multiple | 개체 및 파일 마이그레이션을 위한 도구 | 다른 도구 비교 |
Other clouds | AWS 및 Google Cloud에서 Azure로 | AWS 및 Google Cloud에서 Azure로 마이그레이션하기 위한 가이드 |
On-premises | Azure Database Migration Service | 가동 중지 시간을 최소화하면서 데이터베이스를 Azure로 마이그레이션하기 위한 완전 관리형 서비스 |
On-premises | Azure Migrate | 워크로드를 검색, 평가 및 Azure로 마이그레이션하기 위한 포괄적인 마이그레이션 서비스 |
On-premises | Azure Data Box | 테라바이트 단위의 데이터를 Azure로/외부로 보내기 |
Google Cloud | Google Cloud Storage Transfer Service | 다양한 클라우드 또는 온-프레미스 환경 간에 데이터를 전송합니다. |
Google Cloud | gsutil | Cloud Storage를 관리하기 위한 Google Cloud 명령줄 도구 |
AWS | AWS 데이터 전송 서비스 | 온-프레미스와 AWS 스토리지 서비스 간에 데이터 전송 |
AWS | AWS CLI | AWS 서비스를 관리하기 위한 Amazon Web Services 명령줄 인터페이스 |
Multiple | Java 마이그레이션 가이드 | Java 앱을 Azure로 마이그레이션하기 위한 가이드 |
On-premises | VMWare | VMWare를 Azure로 마이그레이션하기 위한 가이드 |
On-premises | Hyper-V | Hyper-V Azure로 마이그레이션하기 위한 가이드 |