다음을 통해 공유


Azure SQL Managed Instance 연결 형식

적용 대상: Azure SQL Managed Instance

이 문서에서는 클라이언트가 연결 형식에 따라 Azure SQL Managed Instance에 연결하는 방법을 설명합니다. 연결 형식을 변경하는 스크립트 샘플은 기본 연결 설정 변경과 관련된 고려 사항과 함께 아래에 제공됩니다.

연결 유형

Azure SQL Managed Instance의 VNet 로컬 엔드포인트는 다음 두 가지 연결 형식을 지원합니다.

  • 리디렉션(권장): SQL 클라이언트가 Managed Instance에 연결하는 기본 방법입니다. 리디렉션을 사용하면 클라이언트가 데이터베이스를 호스팅하는 노드에 직접 연결을 설정합니다. 리디렉션을 사용하려면 포트 1433 및 포트 범위 11000-11999에서 인바운드 액세스할 수 있도록 방화벽 및 NSG(네트워크 보안 그룹)를 구성해야 합니다. 리디렉션은 프록시에 비해 뛰어난 대기 시간 및 처리량 성능을 보여 줍니다. 또한 리디렉션은 설정된 리디렉션 연결이 게이트웨이에 종속되지 않으므로 게이트웨이 구성 요소의 계획된 유지 관리 이벤트의 영향을 최소화합니다. 리디렉션 기능은 TDS(테이블 형식 데이터 스트림) 7.4 이상에 대해 이해하기 위해 SQL 드라이버에 따라 달라집니다. TDS 7.4는 Microsoft SQL Server 2012와 함께 처음 게시되었으므로 이보다 최신 클라이언트가 작동합니다.
  • 프록시(기본값): 7.4보다 오래된 TDS 버전을 구현하는 SQL 드라이버를 지원하기 위한 레거시 연결 메커니즘입니다. 이 모드에서는 모든 연결이 내부 게이트웨이를 통해 프록시되며 포트 1433만 열어야 합니다. 프록시 메서드에서 게이트웨이는 연결을 전달할 주 SQL 복제본 노드를 찾는 명령을 처리합니다. 이 워크로드의 특성에 따라 게이트웨이는 연결에 병목 현상이 발생할 수 있습니다. 프록시 모드는 게이트웨이 구성 요소의 계획된 유지 관리 이벤트로 인해 라이브 연결 손실에 더 취약하기 때문에 대기 시간을 심각하게 저하시키고 리디렉션에 비해 처리량을 낮출 수 있습니다. 이러한 이유로 SQL 클라이언트가 TDS 리디렉션을 지원하지 않는 한 모든 관리되는 인스턴스에서 리디렉션 연결 정책을 사용하도록 구성하는 것이 좋습니다.

리디렉션 옵션은 VNet-로컬 엔드포인트에만 적용됩니다. Azure SQL Managed Instance에 대한 퍼블릭 및 프라이빗 엔드포인트는 항상 프록시 모드에서 작동합니다.

Important

SQL 클라이언트가 TDS 리디렉션을 지원하지 않는 경우를 제외하고 리디렉션 연결 정책을 사용하도록 모든 관리되는 인스턴스를 구성하는 것이 좋습니다.

리디렉션 연결 형식

리디렉션 연결 형식에서는 SQL 엔진에 대한 TCP 세션이 설정된 후 클라이언트 세션이 부하 분산 장치에서 가상 클러스터 노드의 대상 가상 IP를 가져옵니다. 후속 패킷은 게이트웨이를 우회하고 가상 클러스터 노드로 직접 이동됩니다. 아래 다이어그램은 이 트래픽 흐름을 보여줍니다.

Azure 가상 네트워크의 게이트웨이에 연결된 redirect-find-db와 가상 네트워크의 데이터베이스 주 노드에 연결된 redirect-query가 있는 온-프레미스 네트워크를 보여 주는 다이어그램

Important

리디렉션 연결 형식은 현재 VNet 로컬 엔드포인트에만 영향을 미칩니다. 연결 형식 설정에 관계없이 퍼블릭 또는 프라이빗 엔드포인트를 통해 들어오는 연결은 항상 프록시 연결 형식을 사용하여 처리됩니다.

프록시 연결 형식

Warning

프록시 연결 유형은 TDS(테이블 형식 데이터 스트림) 표준 7.4 최신 버전을 지원하지 않는 이전 클라이언트 및 애플리케이션에만 권장됩니다(SQL Server 2012 이후 사용 가능). 가능하면 리디렉션 연결 형식을 사용하도록 Managed Instance를 구성해야 합니다.

프록시 연결 형식에서는 게이트웨이를 사용하여 TCP 세션이 설정되고 모든 후속 패킷이 게이트웨이를 통과합니다. 아래 다이어그램은 이 트래픽 흐름을 보여줍니다.

Azure 가상 네트워크의 게이트웨이에 연결된 프록시가 다음에는 가상 네트워크의 데이터베이스 주 노드에 연결하는 온-프레미스 네트워크를 보여 주는 다이어그램

연결 형식 변경

  • Portal 사용: Azure Portal을 사용하여 연결 형식을 변경하려면 Virtual Network 페이지를 열고 연결 형식 설정을 사용하여 연결 형식을 변경한 다음, 변경 내용을 저장합니다.

  • PowerShell을 사용하여 연결 형식 설정을 변경하는 스크립트:

참고

이 문서에서는 Azure와 상호 작용하는 데 권장되는 PowerShell 모듈인 Azure Az PowerShell 모듈을 사용합니다. Az PowerShell 모듈을 시작하려면 Azure PowerShell 설치를 참조하세요. Az PowerShell 모듈로 마이그레이션하는 방법에 대한 자세한 내용은 Azure PowerShell을 AzureRM에서 Azure로 마이그레이션을 참조하세요.

다음 PowerShell 스크립트는 관리형 인스턴스의 연결 형식을 Redirect로 변경하는 방법을 보여 줍니다.

Install-Module -Name Az
Import-Module Az.Accounts
Import-Module Az.Sql

Connect-AzAccount
# Get your SubscriptionId from the Get-AzSubscription command
Get-AzSubscription
# Use your SubscriptionId in place of {subscription-id} below
Select-AzSubscription -SubscriptionId {subscription-id}
# Replace {rg-name} with the resource group for your managed instance, and replace {mi-name} with the name of your managed instance
$mi = Get-AzSqlInstance -ResourceGroupName {rg-name} -Name {mi-name}
$mi = $mi | Set-AzSqlInstance -ProxyOverride "Redirect" -force

다음 단계