적용 대상: SQL Server 2019(15.x)
중요합니다
Microsoft SQL Server 2019 빅 데이터 클러스터 추가 기능이 사용 중지됩니다. SQL Server 2019 빅 데이터 클러스터에 대한 지원은 2025년 2월 28일에 종료됩니다. Software Assurance를 사용하는 SQL Server 2019의 모든 기존 사용자는 플랫폼에서 완전히 지원되며, 소프트웨어는 지원 종료 시점까지 SQL Server 누적 업데이트를 통해 계속 유지 관리됩니다. 자세한 내용은 공지 블로그 게시물 및 Microsoft SQL Server 플랫폼의 빅 데이터 옵션을 참조하세요.
업그레이드 경로는 현재 버전의 SQL Server 빅 데이터 클러스터에 따라 달라집니다. GDR(일반 배포 릴리스), CU(누적 업데이트) 또는 QFE(빠른 수정 엔지니어링) 업데이트를 포함하여 지원되는 릴리스에서 업그레이드하려면 현재 위치에서 업그레이드할 수 있습니다. CTP(커뮤니티 기술 미리 보기) 또는 릴리스 후보 버전의 BDC에서 현재 위치 업그레이드는 지원되지 않습니다. 클러스터를 제거하고 다시 만들어야 합니다. 다음 섹션에서는 각 시나리오에 대한 단계를 설명합니다.
비고
현재 지원되는 가장 오래된 빅 데이터 클러스터 릴리스는 SQL Server 2019 CU8입니다.
업그레이드 릴리스 정보
계속하기 전에 알려진 문제에 대한 업그레이드 릴리스 정보를 확인합니다.
경고
클러스터가 처음 배포되었을 때 배포 프로필 control.json 파일에서와 같이 imagePullPolicy
매개 변수 "Always"
를 설정해야 했습니다. 배포 후에는 이 매개 변수를 변경할 수 없습니다.
다른 값으로 설정된 경우 업그레이드 프로세스 중에 예기치 않은 결과가 발생할 수 있으며 클러스터 다시 배포가 필요합니다.
지원되는 릴리스에서 업그레이드
이 섹션에서는 지원되는 릴리스(SQL Server 2019 GDR1부터)에서 지원되는 최신 릴리스로 SQL Server BDC를 업그레이드하는 방법을 설명합니다.
활성 Livy 세션이 없는지 확인합니다.
Azure Data Studio에서 활성 Livy 세션 또는 일괄 처리 작업이 실행되고 있지 않은지 확인합니다. 명령 또는 브라우저를 통해
curl
이러한 URL을 요청하는 것을 쉽게 확인할 수 있습니다.<your-gateway-endpoint>/gateway/default/livy/v1/sessions
<your-gateway-endpoint>/gateway/default/livy/v1/batches
SQL Server 마스터 인스턴스를 백업합니다.
HDFS를 백업합니다.
azdata bdc hdfs cp --from-path <path> --to-path <path>
다음은 그 예입니다.
azdata bdc hdfs cp --from-path hdfs://user/hive/warehouse/%%D --to-path ./%%D
Azure Data CLI(
azdata
)를 업데이트합니다.Azure Data CLI(
azdata
)를 설치하기 위한 지침을 따릅니다.비고
Azure Data CLI(
azdata
)가pip
로 설치된 경우, Windows 설치 관리자 또는 Linux 패키지 관리자를 사용하여 설치하기 전에 수동으로 제거해야 합니다.빅 데이터 클러스터를 업데이트합니다.
azdata bdc upgrade -n <clusterName> -t <imageTag> -r <containerRegistry>/<containerRepository>
예를 들어 다음 스크립트는 이미지 태그를 사용합니다
2019-CU19-ubuntu-20.04
.azdata bdc upgrade -n bdc -t 2019-CU19-ubuntu-20.04 -r mcr.microsoft.com/mssql/bdc
비고
최신 이미지 태그는 SQL Server 2019 빅 데이터 클러스터 릴리스 정보에서 사용할 수 있습니다.
중요합니다
프라이빗 리포지토리를 사용하여 BDC 배포 또는 업그레이드를 위해 이미지를 미리 끌어오는 경우 현재 빌드 이미지와 >대상 빌드 이미지가 프라이빗 리포지토리에 있는지 확인합니다. 이렇게 하면 필요한 경우 성공적인 롤백이 가능합니다. 또한 원래 배포 이후 프라이빗 리포지토리의 자격 증명을 변경한 >경우 해당 환경 변수를 DOCKER_PASSWORD 업데이트하고 >DOCKER_USERNAME. 현재 및 대상 빌드에 다른 프라이빗 리포지토리를 사용하여 업그레이드하는 것은 지원되지 않습니다.
업그레이드 시간 제한 늘리기
특정 구성 요소가 할당된 시간에 업그레이드되지 않은 경우 시간 제한이 발생할 수 있습니다. 다음 코드는 오류의 모양을 보여줍니다.
>azdata.EXE bdc upgrade --name <mssql-cluster>
Upgrading cluster to version 15.0.4003
NOTE: Cluster upgrade can take a significant amount of time depending on
configuration, network speed, and the number of nodes in the cluster.
Upgrading Control Plane.
Control plane upgrade failed. Failed to upgrade controller.
업그레이드 시간 제한을 늘리려면 --controller-timeout 및 --component-timeout 매개 변수를 사용하여 업그레이드를 실행할 때 더 높은 값을 지정합니다. 이 옵션은 SQL Server 2019 CU2 릴리스부터만 사용할 수 있습니다. 다음은 그 예입니다.
azdata bdc upgrade -t 2019-CU19-ubuntu-20.04 --controller-timeout=40 --component-timeout=40 --stability-threshold=3
--controller-timeout 은 컨트롤러 또는 컨트롤러 db가 업그레이드를 완료할 때까지 대기하는 시간(분)을 지정합니다. --component-timeout 은 업그레이드의 각 후속 단계를 완료해야 하는 시간을 지정합니다.
SQL Server 2019 CU19 릴리스 전에 업그레이드 시간 제한을 늘리려면 업그레이드 구성 맵을 편집합니다. 업그레이드 구성 맵을 편집하려면 다음을 수행합니다.
다음 명령을 실행합니다.
kubectl edit configmap controller-upgrade-configmap
다음 필드를 편집합니다.
controllerUpgradeTimeoutInMinutes 컨트롤러 또는 컨트롤러 db가 업그레이드를 완료할 때까지 대기할 시간(분)을 지정합니다. 기본값은 5입니다. 20개 이상으로 업데이트합니다. totalUpgradeTimeoutInMinutes: 컨트롤러와 컨트롤러 db가 모두 업그레이드를 완료할 때까지의 결합된 시간을 지정합니다(컨트롤러 + 컨트롤러 db 업그레이드). 기본값은 10입니다. 40 이상으로 업데이트합니다. componentUpgradeTimeoutInMinutes: 업그레이드의 각 후속 단계를 완료해야 하는 시간을 지정합니다. 기본값은 30입니다. 45로 업데이트합니다.
저장한 후 종료합니다.
CTP 또는 릴리스 후보 버전의 BDC 배포 업데이트
SQL Server 빅 데이터 클러스터의 CTP 또는 릴리스 후보 빌드에서 현재 위치 업그레이드는 지원되지 않습니다. 다음 섹션에서는 클러스터를 수동으로 제거하고 다시 만드는 방법을 설명합니다.
이전 클러스터 백업 및 삭제
SQL Server 2019 GDR1 릴리스 전에 배포된 빅 데이터 클러스터에 대한 현재 위치 업그레이드는 없습니다. 새 릴리스로 업그레이드하는 유일한 방법은 클러스터를 수동으로 제거하고 다시 만드는 것입니다. 각 릴리스에는 이전 버전과 호환되지 않는 고유한 버전의 Azure Data CLI(azdata
)가 있습니다. 또한 다른 이전 버전으로 배포된 클러스터에서 최신 컨테이너 이미지를 다운로드하는 경우 최신 이미지가 클러스터의 이전 이미지와 호환되지 않을 수 있습니다. 컨테이너 설정에 대한 배포 구성 파일에서 latest
이미지 태그를 사용하는 경우 최신 이미지가 끌어옵니다. 기본적으로 각 릴리스에는 SQL Server 릴리스 버전에 해당하는 특정 이미지 태그가 있습니다. 최신 릴리스로 업그레이드하려면 다음 단계를 사용합니다.
이전 클러스터를 삭제하기 전에 SQL Server 마스터 인스턴스 및 HDFS에서 데이터를 백업합니다. SQL Server 마스터 인스턴스의 경우 SQL Server 백업 및 복원을 사용할 수 있습니다. HDFS의 경우 데이터를 복사할 수 있습니다.
명령을 사용하여 이전 클러스터를 삭제합니다
azdata delete cluster
.azdata bdc delete --name <old-cluster-name>
중요합니다
클러스터와 일치하는 Azure Data CLI(
azdata
) 버전을 사용합니다. 최신 버전의 Azure Data CLI(azdata
)를 사용하여 이전 클러스터를 삭제하지 마세요.비고
azdata bdc delete
명령을 실행하면 빅 데이터 클러스터 이름으로 식별된 네임스페이스 내에서 만들어진 모든 개체가 삭제되지만 네임스페이스 자체는 삭제되지 않습니다. 네임스페이스는 비어 있고 그 안에 다른 애플리케이션이 만들어지지 않는 한 후속 배포에 다시 사용할 수 있습니다.이전 버전의 Azure Data CLI(
azdata
)를 제거합니다.pip3 uninstall -r https://azdatacli.blob.core.windows.net/python/azdata/2019-rc1/requirements.txt
최신 버전의 Azure Data CLI(
azdata
)를 설치합니다. 다음 명령은 최신 릴리스에서 Azure Data CLI(azdata
)를 설치합니다.Windows:
pip3 install -r https://aka.ms/azdata
Linux:
pip3 install -r https://aka.ms/azdata --user
중요합니다
각 릴리스에 대해 Azure Data CLI(
n-1
) 버전에 대한azdata
경로가 변경됩니다. 이전에 Azure Data CLI(azdata
)를 설치한 경우에도 새 클러스터를 만들기 전에 최신 경로에서 다시 설치해야 합니다.
azdata 버전 확인
새 빅 데이터 클러스터를 배포하기 전에 매개 변수와 함께 azdata
최신 버전의 Azure Data CLI(--version
)를 사용하고 있는지 확인합니다.
azdata --version
새 릴리스 설치
이전 빅 데이터 클러스터를 제거하고 최신 Azure Data CLI(azdata
)를 설치한 후 현재 배포 지침을 사용하여 새 빅 데이터 클러스터를 배포합니다. 자세한 내용은 Kubernetes에 SQL Server 빅 데이터 클러스터를 배포하는 방법을 참조하세요. 그런 다음 필요한 데이터베이스 또는 파일을 복원합니다.
다음 단계
빅 데이터 클러스터에 대한 자세한 내용은 SQL Server 빅 데이터 클러스터란?을 참조하세요.