LRS(Log Replay Service)를 사용하여 마이그레이션

완료됨

LRS(Log Replay Service)는 온-프레미스 SQL Server에서 클라우드의 SQL Managed Instance로 데이터베이스를 사용자 지정하여 마이그레이션할 수 있는 도구입니다. 이 기술은 로그 전달 기술을 사용하며, 더 많은 제어가 필요한 경우, 가동 중지 시간에 대한 허용 범위가 좁은 경우 또는 Azure Data Migration Service를 사용할 수 없는 경우에 유용합니다.

LRS(Log Replay Service)의 작동 방식을 보여 주는 LRS(Log Replay Service)의 작동 방식을 보여 주는 다이어그램.

LRS는 PowerShell, CLI cmdlet 또는 API와 함께 직접 사용하여 SQL Managed Instance로의 데이터베이스 마이그레이션을 수동으로 빌드하고 오케스트레이션할 수 있습니다. LRS 사용을 고려해야 하는 이유는 다음과 같습니다.

  • 데이터베이스 마이그레이션 프로젝트에 대한 더 많은 제어
  • 마이그레이션 컷오버 시 가동 중지 시간 허용 범위가 거의 없음
  • 환경에 DMS 실행 파일을 설치할 수 없음
  • 데이터베이스 백업에 대한 파일 액세스 부족
  • 환경에서 Azure로 네트워킹 포트를 열 수 없음

마이그레이션 형식 이해

LRS에는 두 가지 마이그레이션 모드가 있습니다.

모드 설명 권장 대상 백업 체인 가용성
자동 완성 마지막 백업 파일이 복원되면 자동으로 마이그레이션을 완료합니다. 수동 워크로드 전체 백업 체인은 미리 사용 가능해야 합니다.
연속 새로운 백업 파일을 지속적으로 검사하고 복원하여 데이터를 캐치업 수 있습니다. 활성 워크로드 백업 체인은 마이그레이션 중에 추가될 수 있습니다.

모드에 관계없이 30일 이내에 마이그레이션을 완료하도록 계획합니다. 이 기간이 지나면 LRS 작업이 자동으로 취소됩니다.

마이그레이션 프로세스 보안

LRS를 실행하려면 다음 Azure RBAC(역할 기반 액세스 제어) 역할 중 하나가 있어야 합니다. 구독 소유자, SQL Managed Instance 기여자 또는 권한이 Microsoft.Sql/managedInstances/databases/*인 사용자 지정 역할입니다.

Azure Blob Storage 계정이 필요하며 SQL Server 인스턴스와 SQL Managed Instance 간의 백업 파일을 위한 중간 스토리지 역할을 합니다. 방화벽과 함께 Azure Blob Storage를 사용하려면 또 다른 구성이 필요합니다. MI 서브넷 위임과 스토리지 서비스 엔드포인트를 사용하여 SQL Managed Instance 서브넷을 스토리지 계정의 가상 네트워크 방화벽 규칙에 추가해야 합니다. 또한 SAS 토큰이나 관리 ID를 사용하여 Azure Blob Storage 계정에 액세스할 수 있지만 둘 다 사용할 수는 없습니다.

백업 및 복원 성능 개선

단일 파일을 사용하는 대신, 전체 및 차등 백업을 여러 파일로 분할하면 백업 및 복원 성능을 개선할 수 있습니다. 이는 여러 파일을 병렬로 읽거나 쓸 수 있으므로 백업이나 복원 작업을 완료하는 데 걸리는 시간이 줄어들기 때문입니다.

또한 백업 압축을 사용하도록 설정하면 네트워크 전송 속도를 개선하는 데 도움이 될 수 있습니다. 압축 백업은 크기가 더 작기 때문에 네트워크를 통해 전송하는 데 걸리는 시간도 짧습니다. 이 기능은 Azure에서 대용량 백업을 전송하거나 Azure로 대용량 백업을 전송할 때 특히 유용할 수 있습니다.

필수는 아니지만 백업을 위해 CHECKSUM을 사용하도록 설정하는 것이 좋습니다. SQL Managed Instance는 CHECKSUM이 없는 백업에 대해 무결성 검사를 수행하므로 데이터베이스를 복원하는 데 걸리는 시간이 늘어날 수 있습니다. CHECKSUM을 사용하도록 설정하면 복원 작업 속도를 높일 수 있습니다.