다음을 통해 공유


Azure SQL Managed Instance의 관리 작업 개요

적용 대상:Azure SQL Managed Instance

이 문서에서는 Azure SQL Managed Instance를 관리할 때 발생하는 다양한 작업에 대한 개요를 제공합니다. 관리 작업은 인스턴스를 만들거나 업데이트하거나 삭제할 때 백 엔드에서 수행되는 작업입니다.

각 관리 작업의 단계 및 예상 기간에 대한 자세한 설명은 관리 작업 기간을 검토하세요.

관리 작업이란?

Azure SQL Managed Instance 관리에는 다음 작업이 포함됩니다.

  • 만들기: 새 SQL 관리형 인스턴스를 처음 만들 때 발생하는 작업입니다. 여기에는 기본 VM(가상 머신) 그룹 만들기 및 SQL Database 엔진 프로세스 배포가 포함됩니다.
  • 업데이트: 컴퓨팅 또는 스토리지 크기 조정, 서비스 계층 변경 또는 인스턴스 구성 업데이트와 같은 기존 SQL 관리형 인스턴스의 속성을 변경할 때 발생하는 작업입니다. 업데이트를 수행하려면 VM 그룹의 크기를 조정하고 데이터를 시드하며, 그런 다음 새 SQL Database 엔진 프로세스로 장애 조치(failover)를 수행하는 과정이 필요합니다.
  • 삭제: 인스턴스와 연결된 VM 그룹과 같은 리소스 정리를 포함하여 기존 SQL 관리형 인스턴스를 삭제할 때 발생하는 작업입니다.

각 관리 작업의 단계 및 예상 기간에 대한 자세한 설명은 관리 작업 기간을 검토하세요.

SQL Managed Instance 관리 작업은 다음 기본 프로세스를 통해 수행됩니다.

  • VM(가상 머신) 그룹 작업: SQL 관리형 인스턴스를 호스트하는 기본 VM 그룹을 만들고 관리하는 작업을 수행합니다. 여기에는 VM 그룹 크기 조정, 새 VM 그룹 만들기 및 해당 그룹 내의 가상 머신 관리가 포함됩니다.
  • 시딩: 보통 장애 조치(failover)를 대비하여 SQL 데이터베이스 엔진 프로세스에서 데이터를 초기화하고 동기화하는 것입니다.
  • 장애 조치: 동일한 VM 그룹이나 새 VM 그룹에서 다른 SQL Database 엔진 프로세스로 트래픽을 전환하는 작업과 관련된 운영입니다.

VM 그룹 작업

Azure 가상 네트워크 내에서 배포를 지원하고 고객에게 격리 및 보안을 제공하기 위해 SQL Managed Instance는 가상 클러스터를 사용합니다. 가상 클러스터는 가상 네트워크 서브넷 내에 배포되고 VM 그룹 내에서 구성된 격리된 VM(가상 머신)의 전용 집합을 나타냅니다. 기본적으로 빈 서브넷에 배포된 모든 SQL 관리형 인스턴스는 첫 번째 VM 그룹을 빌드하는 새 가상 클러스터를 생성합니다.

SQL 관리되는 인스턴스에 대한 후속 관리 작업은 기본 VM 그룹에 영향을 줄 수 있습니다. 가상 클러스터에 더 많은 가상 머신을 배포하는 경우 기존 인스턴스에 대한 새 배포 또는 업데이트를 계획할 때 고려해야 하는 오버헤드가 발생하므로 기본 VM 그룹에 영향을 주는 변경 내용은 관리 작업 기간에 영향을 줄 수 있습니다.

가상 클러스터 아키텍처에 대한 자세한 내용은 가상 클러스터 아키텍처를 참조하세요.

시드

시드는 특히 데이터베이스를 설치하고 복제하는 동안 Azure SQL Managed Instance 작업에서 중요한 역할을 합니다. 시드는 인스턴스 관리의 중요한 부분인 SQL Database 엔진 프로세스 간에 데이터를 초기화하고 동기화하는 프로세스입니다. 시간이 오래 걸리지만 성공적인 작업에서 시간이 가장 많이 걸리는 단계인 경우가 많지만, 시드는 정상적이고 기능적인 SQL 관리형 인스턴스 환경을 설정하는 초석 역할을 합니다.

시드 작업의 예상 기간은 관리 작업 기간을 참조하세요.

시드 프로세스는 일반적으로 서비스 계층에 관계없이 다음 단계를 포함합니다.

  • 초기화: 시스템은 원본 및 대상 데이터베이스를 식별하고 데이터 전송을 위해 SQL Database 엔진 프로세스를 준비하는 여러 작업을 시작합니다.
  • 데이터 전송: 실제 데이터 패키지는 시나리오에 따라 데이터베이스의 전체 또는 부분 복사본을 포함하는 원본에서 대상 SQL Database 엔진 프로세스로 전송됩니다.
  • 동기화: 초기 데이터 전송이 완료되면 시스템은 트랜잭션 로그 블록의 복제를 통해 후속 업데이트 또는 변경 내용을 동기화하여 데이터 무결성을 보장합니다.
  • 유효성 검사 및 종료: 프로세스가 완료되고 대상 SQL Database 엔진 프로세스의 유효성을 검사하여 성공적인 복제 및 시드를 확인합니다. 트래픽이 새 SQL 데이터베이스 엔진 프로세스로 라우팅되도록 장애 조치가 발생합니다.

서비스 계층을 중요 비즈니스용 서비스 계층으로 변경하는 경우를 제외하고 범용 서비스 계층에는 데이터 시드가 없습니다. 범용 서비스 계층의 관리 작업에는 이전 SQL Database 엔진 프로세스에서 원격 스토리지를 분리하고 새 SQL Database 엔진 프로세스에 연결하는 작업이 포함됩니다.

반대로 고성능 워크로드용으로 설계된 중요 비즈니스용 서비스 계층에는 로컬 스토리지와 컴퓨팅 및 스토리지 계층의 코드 종속성이 필요합니다. 따라서 이 서비스 계층의 거의 모든 작업 및 시나리오에서는 데이터 가용성 및 일관성을 보장하기 위해 시드가 필요합니다.

시드가 트리거되는지 여부는 다음과 같은 특정 시나리오 및 서비스 계층에 따라 달라집니다.

  • 범용 및 차세대 범용 서비스 계층:
    • 중요 비즈니스용 서비스 계층으로 변경 – 데이터는 원격 스토리지에서 범용 서비스 계층에 사용되는 로컬 스토리지로 전송되어야 합니다.
    • 영역 중복을 사용하거나 사용하지 않도록 설정 – 영역 중복 지역 간 데이터를 복사해야 합니다.
  • 중요 비즈니스용 서비스 계층:
    • 스토리지 크기 조정: 스토리지가 로컬 컴퓨터에 물리적으로 연결되므로 모든 스토리지를 변경하려면 새 VM 그룹을 만들어야 하므로 데이터를 이전 컴퓨터에서 새 컴퓨터(4개 복제본 모두)로 전송해야 합니다.
    • vCore 크기 조정: 모든 컴퓨팅 크기 조정 작업을 수행하려면 새 VM 그룹을 만들어야 하므로 이전 컴퓨터에서 새 컴퓨터(4개 복제본 모두)로 데이터를 복사해야 합니다.
    • 하드웨어 또는 유지 관리 기간 변경: 일치하는 구성을 사용하여 서브넷 내에 VM 그룹이 이미 있는 경우 해당 VM 그룹의 크기가 조정됩니다. 새 구성인 경우 새 VM 그룹이 만들어집니다. 데이터는 이전 VM 그룹에서 새 VM 그룹(모든 4개 복제본)으로 복사되어야 합니다.
    • 서비스 계층 변경: 범용 서비스 계층에서 사용되는 원격 스토리지로 데이터를 로컬 스토리지에서 복사해야 합니다.
    • 영역 중복을 사용하거나 사용하지 않도록 설정 – 영역 중복 지역 간 데이터를 복사해야 합니다.

시드 속도

다음 요소는 시드 프로세스의 기간에 영향을 줍니다.

  • 데이터베이스 크기: 데이터베이스가 클수록 데이터를 전송하고 SQL Database 엔진 프로세스 간에 동기화하는 데 더 많은 시간이 필요합니다.
  • 네트워크 종속성: 네트워크 대역폭 및 대기 시간은 시드 속도에 큰 영향을 줄 수 있습니다.
  • 백업 및 복원 작업: 원본 SQL Database 엔진 프로세스에서 진행 중인 백업 작업은 다른 SQL Database 엔진 프로세스로 보낼 데이터를 준비하는 데 영향을 줄 수 있습니다.
  • 인스턴스 워크로드: 시드 과정 중에 인스턴스 워크로드는 제한을 초래하여 프로세스를 크게 지연시킬 수 있습니다.

이러한 요소의 대부분은 제어할 수 없지만 인스턴스 트래픽을 관리하여 시드 속도를 크게 최적화할 수 있습니다. 시드는 인스턴스 트래픽을 관리하는 동일한 인스턴스 컴퓨팅 리소스를 사용합니다. 트래픽이 많은 시드 작업에서는 vCore 가용성이 감소하여 시드 작업에 필요한 용량이 충분치 않아 처리 제한이 발생할 수 있습니다.

시드는 현재 저장된 모든 데이터를 단일 작업으로 패키지하고 전송하도록 설계되었으므로 시드하는 동안 트래픽이 많을 경우 동기화에 영향을 미칠 수 있습니다. 시드가 시작된 후 도착하는 이전 SQL Database 엔진 프로세스에 대한 후속 데이터 변경 내용은 장애 조치(failover)가 발생하기 전에 트랜잭션 로그 블록 복제를 통해 새 SQL Database 엔진 프로세스에 증분 방식으로 동기화되어야 합니다. 인스턴스가 부하가 많은 경우 시드는 들어오는 데이터를 따라가는 데 어려움을 겪을 수 있으므로 동기화 단계에서 지연 및 잠재적 오류가 발생할 수 있습니다. 시드 시작 후 이전 SQL Database 엔진 프로세스의 트래픽이 지속적으로 많으면 새 데이터가 계속 도착하여 전송되어야 하므로 동기화 단계가 완료되지 않는 상황이 발생할 수 있습니다. 이로 인해 새 SQL 데이터베이스 엔진 프로세스로의 장애 조치를 방해하는 지속적 데이터 전송 주기가 발생할 수 있습니다.

시드 작업의 예상 기간은 관리 작업 기간을 참조하세요.

Azure 인프라 및 알림

시드는 공유 Azure 서비스를 사용하므로 정확하게 정량화되거나 엄격하게 예측할 수 없는 프로세스입니다. 데이터 전송 및 시드 작업은 전체 Azure 에코시스템에서 공유되는 다양한 내부 Azure 서비스 및 인프라에 따라 달라집니다. 이러한 서비스는 Azure 내의 수많은 관련 없는 서비스에서 활용됩니다. Azure 에코시스템 내의 모든 서비스는 사용 가능한 리소스를 두고 경쟁하며, 이로 인해 여러 요인의 영향을 받는 순간적인 가용성이 변동하게 됩니다. Microsoft는 인프라 용량이 작동하는 범위를 제공할 수 있지만 정확한 예측을 수행하는 것은 어렵습니다.

장애 조치 (페일오버)

인스턴스 장애 조치(failover)는 이전 SQL Database 엔진 프로세스에서 SQL 관리형 인스턴스를 포함하는 VM 그룹의 노드 그룹 내에서 새 SQL Database 엔진 프로세스로 트래픽이 라우팅되는 순간입니다. 장애 조치(failover)는 특히 인스턴스를 업데이트할 때 대부분의 관리 작업의 중요한 부분입니다. 트래픽이 새 SQL Database 엔진 프로세스로 리디렉션되는 동안 연결이 끊기는 짧은 순간을 장애 조치( failover)라고 합니다.

트래픽이 새 SQL Database 엔진 프로세스로 다시 라우팅되는 경우 장애 조치(failover) 중에만 인스턴스를 사용할 수 없습니다. 중요 비즈니스용 서비스 계층에서는 인스턴스를 최대 20초 동안 사용할 수 없지만 범용 서비스 계층에서는 최대 2분 동안 인스턴스를 사용할 수 없습니다. 중요 비즈니스용 서비스 계층의 데이터베이스 다시 저장과 같은 관리 작업으로 인해 장애 조치(failover)를 준비하기 위해 발생하는 모든 백 엔드 작업은 백그라운드에서 발생하며 인스턴스의 가용성에 영향을 주지 않습니다.

서비스 계층 간의 아키텍처 차이는 가용성에 대해 자세히 설명 합니다.

관리 작업 상호 영향

SQL 관리형 인스턴스의 관리 작업은 동일한 서브넷 내에 배치된 다른 인스턴스의 관리 작업에 영향을 줄 수 있습니다.

  • 가상 클러스터의 장기 실행 복원 작업은 만들기 또는 크기 조정 작업과 같은 동일한 가상 클러스터의 다른 작업을 보류합니다.

    본보기: 장기 실행 복원 작업과 VM 그룹을 축소하는 크기 조정 요청이 있는 경우 복원 작업이 완료되기를 기다리는 동안 축소 요청이 완료되는 데 시간이 더 오래 걸립니다.

  • VM 그룹의 크기를 조정하기 시작한 이전에 시작된 인스턴스 만들기 또는 인스턴스 확장에 의해 후속 인스턴스 만들기 또는 크기 조정 작업이 보류됩니다.

    본보기: 동일한 VM 그룹 아래에 동일한 서브넷에 여러 개의 만들기 및/또는 크기 조정 요청이 있고 그 중 하나가 VM 그룹 크기를 시작하는 경우 초기 작업 요청 후 5분 이상 제출된 모든 요청은 다시 시작하기 전에 크기 조정이 완료될 때까지 기다려야 하므로 예상보다 오래 지속됩니다.

  • 1분 창에 제출된 만들기/크기 조정 작업은 일괄 처리되고 병렬로 실행됩니다.

    본보기: 1분 동안 제출된 모든 작업에 대해 하나의 가상 클러스터 크기 조정만 수행됩니다(첫 번째 작업 요청이 제출된 순간부터 측정됨). 첫 번째 요청이 제출된 후 1분 이상 다른 요청이 제출되면 실행이 시작되기 전에 가상 클러스터 크기 조정이 완료될 때까지 기다립니다.

중요합니다

진행 중인 다른 작업으로 인해 보류된 관리 작업은 진행 조건이 충족되면 자동으로 다시 시작됩니다. 일시 중지된 관리 작업을 다시 시작하는 데 필요한 사용자 작업은 없습니다.

관리 작업 모니터링

관리 작업의 진행 상황 및 상태를 모니터링하는 방법을 배우려면 Azure SQL Managed Instance의 관리 작업 모니터링 를 참조하세요.

관리 작업 취소

관리 작업을 취소하는 방법을 알아보려면 Azure SQL Managed Instance 관리 작업 취소참조하세요.