다음을 통해 공유


Azure Arc 지원 SQL Managed Instance에 대한 업그레이드 기능 분야

Azure Arc 지원 데이터 서비스를 사용하면 Arc 지원 SQL Managed Instance에서만 사용할 수 있는 에버그린 버전의 SQL을 가져올 수 있습니다. 에버그린의 속성상 Arc 지원 SQL Managed Instance는 관리되는 서비스 기반 업그레이드 기능을 제공하므로 온-프레미스 설치 또는 다중 클라우드 환경과는 다르게 제공되는 즉시 Azure 인프라 혁신의 이점을 누릴 수 있습니다.

이 문서에서는 Azure Arc 지원 데이터 서비스에 대한 업그레이드 프로세스를 구성하고 관리하기 위한 주요 디자인 고려 사항 및 권장 사항을 제공합니다.

아키텍처

직접 연결 모드

다음 다이어그램은 데이터 서비스 업그레이드 흐름을 직접 연결 모드로 표시합니다.

직접 연결 모드에서 데이터 서비스 업그레이드 흐름을 보여 주는 스크린샷.

간접적으로 연결된 모드

다음 다이어그램은 간접 연결 모드에서 데이터 서비스 업그레이드 흐름을 표시합니다.

간접 연결 모드에서 데이터 서비스 업그레이드 흐름을 보여 주는 스크린샷.

범용 서비스 계층

다음 다이어그램은 범용 서비스 계층에서 Arc 지원 SQL Managed Instance에 대한 업그레이드 프로세스를 보여 줍니다.

범용 서비스 계층에서 Arc 지원 SQL Managed Instance의 업그레이드 이전 프로세스를 보여 주는 스크린샷.

범용 서비스 계층에서 Arc 지원 SQL Managed Instance의 업그레이드 프로세스를 보여 주는 스크린샷.

중요 비즈니스 서비스 계층

다음 다이어그램은 중요 비즈니스용 서비스 계층에서 Arc 지원 SQL Managed Instance에 대한 업그레이드 프로세스를 보여 줍니다.

중요 비즈니스용 서비스 계층에서 Arc 지원 SQL Managed Instance의 업그레이드 이전 프로세스를 보여 주는 스크린샷.

중요 비즈니스용 서비스 계층에서 Arc 지원 SQL Managed Instance의 업그레이드 프로세스를 보여 주는 스크린샷.

중요 비즈니스용 서비스 계층 업그레이드의 나머지 보조 복제본 업그레이드 출시를 보여 주는 스크린샷.

중요 비즈니스용 서비스 계층 업그레이드에서 SQL 수준 장애 조치(failover) 및 마지막 Pod 인스턴스화를 보여 주는 스크린샷.

디자인 고려 사항

Azure Arc 데이터 컨트롤러 업그레이드

  • Azure CLI, Azure Portal 또는 Kubernetes와 같은 다양한 도구를 사용하여 업그레이드를 수행할 수 있습니다. 직접 또는 간접 연결 모드 중에서 사용 중인 연결 모드 및 사용하기 가장 편한 도구에 따라 어떤 도구를 사용할지 고려합니다.
  • Azure Arc 데이터 컨트롤러를 검토하여 Arc 지원 SQL Managed Instance와 함께 배포된 Azure Arc 지원 PostgreSQL과 같은 미리 보기 데이터 서비스가 있는지 확인합니다. 동일한 데이터 컨트롤러에 미리 보기와 일반 공급 서비스가 혼합되어 배포된 경우 현재 위치 업그레이드를 수행할 수 없습니다.
  • 업그레이드를 수행하기 전에 데이터 컨트롤러에서 사용하는 모든 Arc 지원 SQL Managed Instance의 버전을 검토하여 데이터 컨트롤러와 동일한 버전에 있는지 확인합니다.
  • 지원되는 업그레이드 경로를 고려하여 업그레이드 전에 데이터 컨트롤러에 대한 다음 올바른 버전을 결정합니다.

참고

Azure Arc 데이터 컨트롤러를 업그레이드해도 Arc 지원 SQL Managed Instance에 대한 가동 중지 시간이 발생하지 않습니다.

직접 연결 모드

간접적으로 연결된 모드

  • Azure CLI 또는 Kubernetes 도구를 사용하여 간접 연결 모드에서 Azure Arc 데이터 컨트롤러 업그레이드를 구현해야 할지 결정합니다.
  • Kubernetes 도구Azure CLI를 사용하여 업그레이드하기 위한 필수 구성 요소를 검토합니다.
  • 클러스터에 Azure Arc 지원 데이터 서비스 이미지를 끌어오기 위한 에어 갭이 있는 경우 클러스터에 인터넷 연결 또는 프라이빗 레지스트리가 있으면 Microsoft 아티팩트 레지스트리를 사용할지를 결정합니다.
  • Kubernetes 도구를 사용하여 Azure Arc 데이터 컨트롤러를 업그레이드하는 데 사용되는 서비스 계정에 필요한 Kubernetes 권한을 계획합니다.
  • 리포지토리 정보를 점검하여 유효한 새 이미지를 이미 리포지토리에 끌어왔는지 확인합니다.

Azure Arc 지원 SQL Managed Instance 업그레이드

일반적인 고려 사항

  • Arc 지원 SQL Managed Instance를 업그레이드하기 전에 Azure Arc 데이터 컨트롤러로 업그레이드를 수행해야 합니다. arcdata 클러스터 확장 및 SQL Managed Instance 확장 버전은 관련이 있으며 동일해야 합니다.
  • 요구 사항에 따라 Arc 지원 SQL Managed Instance의 자동 또는 수동 업그레이드를 사용할지를 결정합니다.
  • 자동 업그레이드의 경우 데이터 컨트롤러에 대해 단일한 유지 관리 기간만 정의할 수 있습니다. 필요한 데이터 컨트롤러 수를 식별하기 위해 서로 다른 워크로드에 필요한 다양한 유지 관리 기간의 수를 고려합니다.

범용 서비스 계층

  • 범용 서비스 계층 업그레이드 동안 Kubernetes Pod는 종료되고 새 버전으로 다시 프로비저닝됩니다. 새 Pod를 만들 때 짧은 가동 중지 시간이 있는 경우 업그레이드가 애플리케이션 및 클라이언트 측에 미치는 효과를 이해하는 것이 중요합니다.
  • 애플리케이션의 아키텍처를 검토하여 필요한 복원력이 있는지 파악하고 업그레이드 중에 짧은 영향을 지원하기 위한 논리를 다시 시도합니다.

중요 비즈니스 서비스 계층

  • 여러 복제본이 있는 중요 비즈니스용 서비스 계층 업그레이드 중에는 보조 복제본이 먼저 업그레이드됩니다. 업그레이드된 보조 복제본 중 하나가 새로운 주 복제본으로 승격되고 이전 주 복제본은 보조 복제본이 되어 업그레이드됩니다. 이전 주 복제본에서 새로운 주 복제본으로 전환하는 동안 장애 조치(failover)가 발생하는 짧은 가동 중지 시간이 있습니다. 장애 조치(failover)가 발생할 때 업그레이드가 애플리케이션 및 클라이언트 측에 미치는 영향을 이해하는 것이 중요합니다.
  • 애플리케이션의 아키텍처를 검토하여 필요한 복원력이 있는지 파악하고 업그레이드 중에 짧은 영향을 지원하기 위한 논리를 다시 시도합니다.

디자인 권장 사항

Azure Arc 데이터 컨트롤러 업그레이드

  • Azure CLI를 사용하여 업그레이드하는 경우 arcdata Azure CLI 확장 버전이 버전 로그에서 업그레이드하려는 이미지 버전에 해당하는지 확인합니다.

  • 다중 클러스터 환경에서는 테스트/개발 환경에서 먼저 업그레이드를 수행하여 잠재적인 문제 또는 호환성이 손상되는 변경을 검증합니다.

  • 업그레이드 전에 시험 실행을 수행하여 버전 스키마, 프라이빗 리포지토리 권한 부여 토큰(사용되는 경우) 및 실제 업그레이드를 시도하기 전에 레지스트리가 있는지 검증합니다.

  • 새 Azure Arc 데이터 컨트롤러 업그레이드를 모니터링하는 프로세스를 만듭니다.

  • PostgreSQL은 아직 미리 보기 상태이고 Arc 지원 SQL Managed Instance는 일반 공급되므로 동일한 데이터 컨트롤러에서 PostgreSQL과 Arc 지원 SQL Managed Instance를 함께 사용하면 안 됩니다. PostgreSQL을 테스트할 수 있는 자체 데이터 컨트롤러가 있는 별도의 클러스터를 고려합니다.

  • 미리 보기 기능은 프로덕션 환경에서 사용하지 말고 개발/테스트 인스턴스에서 평가 목적으로만 사용합니다.

  • 배포된 데이터 컨트롤러의 현재 버전 인벤토리를 만듭니다. Azure Resource Graph를 사용하여 현재 배포된 데이터 컨트롤러를 쿼리할 수 있습니다.

      resources
      | where type == 'microsoft.azurearcdata/datacontrollers'
      | extend version = tostring(properties.k8sRaw.status.runningVersion)
      | project name,location,resourceGroup,version
    
  • 문제 해결 가이드를 검토하여 업그레이드 문제를 해결하는 데 필요한 로그를 가져오는 방법을 이해합니다.

직접 연결 모드

  • Azure Portal, Azure CLI 또는 Azure Data Studio를 사용하여 업그레이드 프로세스를 모니터링하는 프로세스를 만듭니다.
  • Azure Arc 데이터 컨트롤러 자체를 업그레이드하기 전에 arcdata 클러스터 확장을 업그레이드합니다.

간접적으로 연결된 모드

Azure Arc 지원 SQL Managed Instance 업그레이드

일반 권장 사항

  • 최신 패치, 버그 수정 및 기능을 받기 위해 사용 가능한 최신 버전을 사용해 Arc 지원 SQL Managed Instance를 최신 상태로 유지합니다. 현재 Arc 데이터 서비스는 업그레이드 중에 릴리스 건너뛰기를 지원하지 않습니다. 따라서 업그레이드할 여러 개의 릴리스가 있는 경우 순서대로 릴리스를 업그레이드하여 최신 버전을 받아야 합니다. 최신 릴리스에서 너무 떨어지는 것은 좋지 않습니다.

  • 업그레이드 중에 문제가 있는 경우 복구할 수 있도록 “특정 시점 복원” 백업 정책을 구성해야 합니다. 비즈니스 연속성 및 재해 복구 중요 디자인 영역을 검토하고 인스턴스에 대한 kubectl describe sqlmi 명령을 사용하여 현재 보존 설정을 확인합니다.

  • 다중 클러스터 환경 또는 다양한 환경을 나타내는 Arc 지원 SQL Managed Instance의 다중 배포 시나리오에서는 개발 환경과 같은 개발/테스트 환경에서 먼저 업그레이드를 수행하여 잠재적인 문제 또는 호환성이 손상되는 변경을 검증합니다.

  • 업그레이드 전에 시험 실행을 수행하여 버전 스키마, 프라이빗 리포지토리 권한 부여 토큰(사용되는 경우) 및 실제 업그레이드를 시도하기 전에 레지스트리가 있는지 검증합니다.

  • Azure CLI를 사용하여 Arc 지원 SQL Managed Instance의 대규모 업그레이드를 수행합니다.

  • 즉시 업그레이드를 허용할 수 있는 워크로드에 대해 자동 업그레이드를 사용하고, 업그레이드를 수행하기 위해 사용량 피크 시간을 피해서 예약해야 하는 워크로드에 대해 자동 업그레이드를 옵트아웃합니다.

  • 자동 업그레이드를 사용하는 경우 사용량 피크 시간을 피해서 업그레이드가 수행되도록 적절한 유지 관리 기간을 정의해야 합니다.

  • 수동 업그레이드의 경우 지원되는 버전 내에서 유지되도록 업그레이드를 수행하는 정기적인 주기를 설정해야 합니다.

    참고

    새 컨테이너 이미지 버전에 대해 Microsoft 아티팩트 레지스트리를 폴링할 수도 있습니다.

  • Azure CLI 또는 Kubernetes 도구를 사용하여 업그레이드 프로세스를 모니터링하는 프로세스를 만듭니다.

  • 업그레이드를 수행하기 전에 서로 다른 구성 요소의 해당 버전을 검토하여 올바른 버전의 구성 요소가 있는지 확인합니다.

범용 서비스 계층

중요 비즈니스 서비스 계층

  • 업그레이드 및 장애 조치(failover) 작업 중에 고가용성과 가동 중지 시간을 달성하기 위해 2개가 아닌 3개의 복제본이 있는 중요 비즈니스용 인스턴스를 배포합니다.
  • 중요하지 않은 시간 동안 업그레이드를 수행하여 사용자 및 조직 데이터에 미치는 영향을 최소화합니다.

다음 단계

하이브리드 클라우드 및 다중 클라우드 경험에 대한 자세한 내용은 다음 문서를 참조하세요.