Azure Arc 지원 SQL Server에 대한 자동 연결 관리

적용 대상:SQL Server

Azure Arc 지원 SQL Server는 Azure Arc 지원 서버에서 실행되는 SQL Server 인스턴스의 관리, 보호 및 거버넌스를 간소화하기 위해 Microsoft에서 제공하는 클라우드 네이티브 솔루션입니다. 이 솔루션은 SQL Server가 설치된 모든 Arc 지원 서버에 SQL Server용 Azure 확장을 자동으로 설치하여 SQL Server 인스턴스를 Azure에 연결하는 환경을 간소화합니다. 자세한 내용은 Azure Arc 지원 SQL Server를 방문하세요. 모든 SQL Server 인스턴스 리소스는 Azure에서 자동으로 만들어지고 모든 SQL Server 인스턴스에 대한 중앙 집중식 관리 플랫폼을 제공합니다.

Important

Arc 서버 리소스가 Azure Arc 지원 SQL Server가 제공되는 지역 중 하나에 있는 경우에만 Microsoft는 Arc 서버를 SQL Server에 설치된 상태로 자동으로 연결합니다.

이 문서에서는 SQL Server를 Azure에 연결하는 간소화된 프로세스가 어떻게 작동하는지 자세히 설명합니다.

필수 조건

필수 조건을 완료합니다.

라이선스 유형 지정

필요에 따라 SQL Server의 각 인스턴스에 대한 라이선스 유형을 지정합니다.

원하는 라이선스 유형을 지정하려면 라이선스 유형 값 태그를 제공합니다. 자동 연결 워크플로에는 해당 태그가 필요합니다. 자세한 내용은 논리적 조직의 리소스, 리소스 그룹 및 구독 태그를 참조하세요.

구독, 리소스 그룹 또는 Arc Server 리소스에 다음 태그 및 값 중 하나를 추가합니다.

태그
ArcSQLServerExtensionDeployment Paid
ArcSQLServerExtensionDeployment PAYG
ArcSQLServerExtensionDeployment LicenseOnly

Microsoft는 자동 연결 워크플로가 SQL Server 확장을 배포할 때 이 값을 사용합니다.

Important

SQL Server 고객용 Azure Arc의 값을 최대화하기 위해 Microsoft는 ArcSQLServerExtensionDeployment 태그를 사용하여 기본값을 설정하지 않은 경우 라이선스 유형 값을 결정하는 자동화된 프로세스를 사용합니다. SQL Server에 SA(Software Assurance) 또는 구독 및 지원이 적용되고 구매한 라이선스 수가 Azure 하이브리드 혜택을 사용하기 위해 Azure에 이미 커밋한 라이선스 수보다 큰 경우 이 프로세스는 선착순으로 온보딩된 SQL Server 인스턴스에 대해 라이선스 유형 값을 유료로 설정합니다. 따라서 SA 고객에게 제공되는 중요한 관리 기능에 자동으로 액세스할 수 있습니다.

Arc에 연결된 새 서버에 SQL Server용 Azure 확장 자동 설치

Microsoft는 설치된 SQL Server 인스턴스가 있는 경우 Azure Arc에 연결된 각 Arc 지원 서버에 SQL Server용 Azure 확장을 자동으로 설치합니다. 이 자동화된 프로세스는 다음 작업을 포함합니다.

  1. 아직 등록되지 않은 경우 Microsoft.AzureArcData 리소스 공급자를 등록합니다.

  2. 라이선스 유형을 설정합니다.

  3. SQL Server용 Azure 확장을 설치합니다.

    참고 항목

    ArcSQLServerExtensionDeployment 태그 값이 설정된 경우 라이선스 유형이 설정됩니다.

  4. Azure에 Arc 지원 SQL Server 인스턴스를 만듭니다.

Azure Arc 지원 SQL Server를 자동으로 연결하려면 SQL Server를 Azure Arc에 자동으로 연결 요구 사항을 충족하는 제공된 방법 중 하나를 사용합니다.

연결이 완료되면 SQL Server용 Azure 기능을 활용할 수 있습니다. 자세한 내용은 SQL Server 라이선스 및 청구 옵션 관리를 참조하세요.

라이선스 유형 구성 확인 및 수정

온보딩 프로세스에서 만든 라이선스 유형 구성을 확인하려면 이 리소스 그래프 쿼리를 실행합니다.

resources
| where type == "microsoft.hybridcompute/machines"
| extend
    joinID = toupper(id)
| join kind = inner (
    resources
    | where type == "microsoft.hybridcompute/machines/extensions"
    | extend machineId = toupper(substring(id, 0, indexof(id, '/extensions')))
    | where properties.type in ("WindowsAgent.SqlServer","LinuxAgent.SqlServer")
    | extend licenseType = iff(properties.settings.LicenseType == '', 'Configuration needed', properties.settings.LicenseType)
    | project  machineId, licenseType
) on $left.joinID == $right.machineId
| project id, licenseType

'구성 필요' 값은 온보딩 프로세스에 라이선스 유형을 자동으로 구성하기에 충분한 정보가 없음을 나타냅니다. 누락된 값을 설정하거나 자동으로 구성된 값을 변경하는 방법에 대한 자세한 내용은 SQL Server 라이선스 및 청구 옵션 관리를 참조하세요.

참고 항목

라이선스 유형을 유료 또는 PAYG로 설정하면 SA 고객에게 제공되는 중요한 관리 기능으로 잠금이 해제됩니다.

자동 연결을 옵트아웃

SQL Server용 Azure 확장의 자동 설치를 옵트아웃하려면 구독, 리소스 그룹 또는 Arc 서버 리소스에 다음 태그와 값을 추가할 수 있습니다.

태그
ArcSQLServerExtensionDeployment Disabled

또는 서버에 설치할 수 있는 확장을 제한할 수 있습니다. 서버에서 허용 및 차단하려는 확장 목록을 구성할 수 있습니다. 자세한 내용은 확장 허용 목록 및 차단 목록을 참조하세요.

Microsoft에서 SQL Server용 Azure 확장을 자동으로 설치하는 방법 알아보기

Microsoft는 Windows 서비스 게스트 구성 확장 서비스(ExtensionService)를 통해 Arc 지원 서버에서 확장 설치를 실행할 수 있습니다. 서버가 Arc에 연결되면 Windows 서비스 게스트 구성 확장 서비스(ExtensionService)가 설치됩니다. 이 서비스는 컴퓨터에서 확장(에이전트, 스크립트 또는 기타 소프트웨어)을 설치, 업그레이드 및 삭제하는 역할을 합니다. 게스트 구성 및 확장 서비스는 Windows에서는 로컬 시스템으로 실행되고 Linux에서는 루트로 실행됩니다. Arc 에이전트 서비스 및 서비스 계정에 대한 자세한 내용은 에이전트 보안 및 사용 권한 | 에이전트 보안 및 사용 권한을 검토하세요.

Microsoft는 API를 호출하여 SQL Server용 Azure 확장을 배포하고 Arc 지원 SQL Server에 자동으로 연결할 수 있습니다.

Azure Portal, ARM(Azure Resource Manager) API, Azure Policy, ARM 템플릿, Azure CLI 또는 Azure PowerShell 모듈을 사용하여 확장을 설치할 수도 있습니다. Azure Arc 지원 SQL Server에 대한 배포 옵션

Arc에 연결되었지만 SQL Server용 Azure 확장이 누락된 SQL Server 인스턴스 찾기

다음 Azure 그래프 쿼리를 사용하여 SQL Server가 설치되었지만 SQL Server용 Azure 확장이 누락된 Arc 서버가 포함된 컴퓨터 및 구독 ID를 나열합니다.

resources
| where type == "microsoft.hybridcompute/machines" and properties['detectedProperties']['mssqldiscovered'] has "true"
| extend
    joinID = toupper(id)
| join kind= inner  (
    resources
    | where type == "microsoft.hybridcompute/machines/extensions"
    | extend machineId = toupper(substring(id, 0, indexof(id, '/extensions')))
    | project machineId, name
    | summarize allExtensions = make_list(name) by machineId
    | where allExtensions !has ("SqlServer")
) on $left.joinID == $right.machineId
| project id, subscriptionId, tenantId

다음 단계