SQL 리소스 공급자 업데이트Update the SQL resource provider

중요

리소스 공급자를 업데이트 하기 전에 릴리스 정보를 검토 하 여 배포에 영향을 줄 수 있는 새로운 기능, 수정 사항 및 알려진 문제에 대해 알아보세요.Before updating the resource provider, review the release notes to learn about new functionality, fixes, and any known issues that could affect your deployment. 또한 릴리스 정보는 리소스 공급자에 필요한 최소 Azure Stack 허브 버전을 지정 합니다.The release notes also specify the minimum Azure Stack Hub version required for the resource provider.

Azure Stack 허브가 새 빌드로 업데이트 되 면 새 SQL 리소스 공급자가 릴리스될 수 있습니다.A new SQL resource provider might be released when Azure Stack Hub is updated to a new build. 기존 리소스 공급자가 계속 작동 하지만 가능한 한 빨리 최신 빌드로 업데이트 하는 것이 좋습니다.Although the existing resource provider continues to work, we recommend updating to the latest build as soon as possible.

지원 되는 Azure Stack 허브 버전Supported Azure Stack Hub version SQL RP 버전SQL RP version RP 서비스가 실행 되 고 있는 Windows ServerWindows Server that RP service is running on
2008, 20052008, 2005 SQL RP 버전 1.1.93.1SQL RP version 1.1.93.1 Microsoft AzureStack 추가 기능 RP Windows ServerMicrosoft AzureStack Add-on RP Windows Server
2005, 2002, 19102005, 2002, 1910 SQL RP 버전 1.1.47.0SQL RP version 1.1.47.0 Windows Server 2016 Datacenter-Server CoreWindows Server 2016 Datacenter - Server Core
19081908 SQL RP 버전 1.1.33.0SQL RP version 1.1.33.0 Windows Server 2016 Datacenter-Server CoreWindows Server 2016 Datacenter - Server Core

SQL 리소스 공급자 업데이트는 누적 됩니다.SQL resource provider update is cumulative. 이전 버전에서 업데이트 하는 경우 최신 버전으로 직접 업데이트할 수 있습니다.When updating from an old version, you can directly update to the latest version.

리소스 공급자를 업데이트 하려면 UpdateSQLProvider.ps1 스크립트를 사용 합니다.To update the resource provider, use the UpdateSQLProvider.ps1 script. 로컬 관리자 권한으로 서비스 계정을 사용 하 고 구독의 소유자 입니다.Use your service account with local administrative rights and is an owner of the subscription. 이 업데이트 스크립트는 리소스 공급자를 다운로드 하는 경우에 포함 됩니다.This update script is included with the download of the resource provider.

업데이트 프로세스는 리소스 공급자를 배포하는 데 사용 되는 프로세스와 유사 합니다.The update process is similar to the process used to Deploy the resource provider. 업데이트 스크립트는 DeploySqlProvider.ps1 스크립트와 동일한 인수를 사용 하므로 인증서 정보를 제공 해야 합니다.The update script uses the same arguments as the DeploySqlProvider.ps1 script, and you'll need to provide certificate information.

스크립트 프로세스 업데이트Update script processes

UpdateSQLProvider.ps1 스크립트는 최신 OS 이미지를 사용 하 여 새 VM (가상 머신)을 만들고, 최신 리소스 공급자 코드를 배포 하 고, 이전 리소스 공급자의 설정을 새 리소스 공급자로 마이그레이션합니다.The UpdateSQLProvider.ps1 script creates a new virtual machine (VM) with the latest OS image, deploy the latest resource provider code, and migrates the settings from the old resource provider to the new resource provider.

참고

Marketplace 관리에서 최신 Windows Server 2016 핵심 이미지 또는 Microsoft AzureStack 추가 기능 RP Windows Server 이미지를 다운로드 하는 것이 좋습니다.We recommend that you download the latest Windows Server 2016 Core image or Microsoft AzureStack Add-on RP Windows Server image from Marketplace Management. 업데이트를 설치 해야 하는 경우 단일 MSU 패키지를 로컬 종속성 경로에 저장할 수 있습니다.If you need to install an update, you can place a single MSU package in the local dependency path. 이 위치에 둘 이상의 MSU 파일이 있는 경우 스크립트가 실패 합니다.The script will fail if there's more than one MSU file in this location.

UpdateSQLProvider.ps1 스크립트가 새 vm을 만든 후이 스크립트는 이전 리소스 공급자 VM에서 다음 설정을 마이그레이션합니다.After the UpdateSQLProvider.ps1 script creates a new VM, the script migrates the following settings from the old resource provider VM:

  • 데이터베이스 정보database information
  • 호스팅 서버 정보hosting server information
  • 필요한 DNS 레코드required DNS record

스크립트 매개 변수 업데이트Update script parameters

UpdateSQLProvider.ps1 PowerShell 스크립트를 실행 하면 명령줄에서 다음 매개 변수를 지정할 수 있습니다.You can specify the following parameters from the command line when you run the UpdateSQLProvider.ps1 PowerShell script. 그렇지 않으면 매개 변수 유효성 검사에 실패 하는 경우 필수 매개 변수를 제공 하 라는 메시지가 표시 됩니다.If you don't, or if any parameter validation fails, you're prompted to provide the required parameters.

매개 변수 이름Parameter name DescriptionDescription 설명 또는 기본값Comment or default value
CloudAdminCredentialCloudAdminCredential 권한 있는 끝점에 액세스 하는 데 필요한 클라우드 관리자에 대 한 자격 증명입니다.The credential for the cloud admin, necessary for accessing the privileged endpoint. 필수Required
AzCredentialAzCredential Azure Stack 허브 서비스 관리자 계정에 대 한 자격 증명입니다.The credentials for the Azure Stack Hub service admin account. Azure Stack 허브를 배포 하는 데 사용한 것과 동일한 자격 증명을 사용 합니다.Use the same credentials that you used for deploying Azure Stack Hub. AzCredential와 함께 사용 하는 계정에 MFA (multi-factor authentication)가 필요한 경우 스크립트가 실패 합니다.The script will fail if the account you use with AzCredential requires multi-factor authentication (MFA). 필수Required
VMLocalCredentialVMLocalCredential SQL 리소스 공급자 VM의 로컬 관리자 계정에 대 한 자격 증명입니다.The credentials for the local admin account of the SQL resource provider VM. 필수Required
PrivilegedEndpointPrivilegedEndpoint 권한 있는 끝점의 IP 주소 또는 DNS 이름입니다.The IP address or DNS name of the privileged endpoint. 필수Required
AzureEnvironmentAzureEnvironment Azure Stack 허브를 배포 하는 데 사용한 서비스 관리자 계정의 Azure 환경입니다.The Azure environment of the service admin account which you used for deploying Azure Stack Hub. Azure AD 배포에만 필요 합니다.Required only for Azure AD deployments. 지원 되는 환경 이름은 Azurecloud, azureus정부 또는 중국 Azure AD ( AzureChinaCloud)를 사용 하는 경우입니다.Supported environment names are AzureCloud, AzureUSGovernment, or if using a China Azure AD, AzureChinaCloud. AzureCloudAzureCloud
DependencyFilesLocalPathDependencyFilesLocalPath 또한 인증서 .pfx 파일을이 디렉터리에 저장 해야 합니다.You must also put your certificate .pfx file in this directory. 단일 노드의 경우 선택 사항 이지만 다중 노드에는 필수 항목입니다.Optional for single node, but mandatory for multi-node
DefaultSSLCertificatePasswordDefaultSSLCertificatePassword .Pfx 인증서의 암호입니다.The password for the .pfx certificate. 필수Required
MaxRetryCountMaxRetryCount 오류가 있는 경우 각 작업을 다시 시도 하는 횟수입니다.The number of times you want to retry each operation if there's a failure. 22
RetryDurationRetryDuration 재시도 사이의 제한 시간 간격 (초)입니다.The timeout interval between retries, in seconds. 120120
제거Uninstall 리소스 공급자와 관련 된 모든 리소스를 제거 합니다.Removes the resource provider and all associated resources. 아니요No
DebugModeDebugMode 오류가 발생 해도 자동 정리가 수행 되지 않습니다.Prevents automatic cleanup on failure. 아니요No

스크립트 PowerShell 업데이트 예제Update script PowerShell example

SQL 리소스 공급자 버전을 1.1.33.0 또는 이전 버전으로 업데이트 하는 경우 AzureRm의 특정 버전을 설치 하 고 PowerShell에서 Azure Stack 허브 모듈을 설치 해야 합니다.If you are updating the SQL resource provider version to 1.1.33.0 or previous versions, you need to install specific versions of AzureRm.BootStrapper and Azure Stack Hub modules in PowerShell.

SQL 리소스 공급자를 1.1.47.0 이상 버전으로 업데이트 하는 경우이 단계를 건너뛸 수 있습니다.If you are updating the SQL resource provider to version 1.1.47.0 or later, you can skip this step. 배포 스크립트는 C:\Program Files\SqlMySqlPsh. 경로에 필요한 PowerShell 모듈을 자동으로 다운로드 하 여 설치 합니다.The deployment script will automatically download and install the necessary PowerShell modules for you to path C:\Program Files\SqlMySqlPsh.

참고

PowerShell 모듈이 다운로드 된 C:\Program Files\SqlMySqlPsh 폴더가 이미 있는 경우 업데이트 스크립트를 실행 하기 전에이 폴더를 정리 하는 것이 좋습니다.If folder C:\Program Files\SqlMySqlPsh already exists with PowerShell module downloaded, it is recommended to clean up this folder before running the update script. PowerShell 모듈의 올바른 버전을 다운로드 하 여 사용 하는지 확인 하는 것입니다.This is to make sure the right version of PowerShell module is downloaded and used.

# Run the following scripts when updating to version 1.1.33.0 only.
# Install the AzureRM.Bootstrapper module, set the profile, and install the AzureStack module.
# Note that this might not be the most currently available version of Azure Stack Hub PowerShell.
Install-Module -Name AzureRm.BootStrapper -Force
Use-AzureRmProfile -Profile 2018-03-01-hybrid -Force
Install-Module -Name AzureStack -RequiredVersion 1.6.0

참고

연결 되지 않은 시나리오에서는 필수 PowerShell 모듈을 다운로드 하 고 필수 구성 요소로 수동으로 리포지토리를 등록 해야 합니다.In disconnected scenario, you need to download the required PowerShell modules and register the repository manually as a prerequisite. SQL 리소스 공급자 배포 에서 자세한 정보를 볼 수 있습니다.You can get more information in Deploy SQL resource provider

다음은 관리자 권한 PowerShell 콘솔에서 실행할 수 있는 UpdateSQLProvider.ps1 스크립트를 사용 하는 예입니다.The following is an example of using the UpdateSQLProvider.ps1 script that you can run from an elevated PowerShell console. 필요에 따라 변수 정보 및 암호를 변경 해야 합니다.Be sure to change the variable information and passwords as needed:

# Use the NetBIOS name for the Azure Stack Hub domain. On the Azure Stack Hub SDK, the default is AzureStack but this might have been changed at installation.
$domain = "AzureStack"

# For integrated systems, use the IP address of one of the ERCS VMs.
$privilegedEndpoint = "AzS-ERCS01"

# Provide the Azure environment used for deploying Azure Stack Hub. Required only for Azure AD deployments. Supported values for the <environment name> parameter are AzureCloud, AzureChinaCloud, or AzureUSGovernment depending which Azure subscription you're using.
$AzureEnvironment = "<EnvironmentName>"

# Point to the directory where the resource provider installation files were extracted.
$tempDir = 'C:\TEMP\SQLRP'

# The service admin account (this can be Azure AD or AD FS).
$serviceAdmin = "admin@mydomain.onmicrosoft.com"
$AdminPass = ConvertTo-SecureString "P@ssw0rd1" -AsPlainText -Force
$AdminCreds = New-Object System.Management.Automation.PSCredential ($serviceAdmin, $AdminPass)

# Set the credentials for the new resource provider VM.
$vmLocalAdminPass = ConvertTo-SecureString "P@ssw0rd1" -AsPlainText -Force
$vmLocalAdminCreds = New-Object System.Management.Automation.PSCredential ("sqlrpadmin", $vmLocalAdminPass)

# Add the cloudadmin credential required for privileged endpoint access.
$CloudAdminPass = ConvertTo-SecureString "P@ssw0rd1" -AsPlainText -Force
$CloudAdminCreds = New-Object System.Management.Automation.PSCredential ("$domain\cloudadmin", $CloudAdminPass)

# Change the following as appropriate.
$PfxPass = ConvertTo-SecureString "P@ssw0rd1" -AsPlainText -Force

# For version 1.1.47.0 or later, the PowerShell modules used by the RP deployment are placed in C:\Program Files\SqlMySqlPsh
# The deployment script adds this path to the system $env:PSModulePath to ensure correct modules are used.
$rpModulePath = Join-Path -Path $env:ProgramFiles -ChildPath 'SqlMySqlPsh'
$env:PSModulePath = $env:PSModulePath + ";" + $rpModulePath

# Change directory to the folder where you extracted the installation files.
# Then adjust the endpoints.
. $tempDir\UpdateSQLProvider.ps1 -AzCredential $AdminCreds `
  -VMLocalCredential $vmLocalAdminCreds `
  -CloudAdminCredential $cloudAdminCreds `
  -PrivilegedEndpoint $privilegedEndpoint `
  -AzureEnvironment $AzureEnvironment `
  -DefaultSSLCertificatePassword $PfxPass `
  -DependencyFilesLocalPath $tempDir\cert

리소스 공급자 업데이트 스크립트가 완료 되 면 현재 PowerShell 세션을 닫습니다.When the resource provider update script finishes, close the current PowerShell session.

다음 단계Next steps

SQL 리소스 공급자 유지 관리Maintain the SQL resource provider