Azure SQL Managed Instance の接続の種類

適用対象:Azure SQL Managed Instance

この記事では、接続の種類に応じて、クライアントがどのように Azure SQL Managed Instance に接続するかについて説明します。 接続の種類を変更するためのスクリプト サンプルと、既定の接続設定の変更に関連する考慮事項を以下に示します。

接続の種類

Azure SQL Managed Instance の VNet ローカル エンドポイントでは、次の 2 種類の接続がサポートされています。

  • リダイレクト (推奨): クライアントは、データベースをホストしているノードへの直接接続を確立します。 リダイレクトを使用して接続を有効にするには、ファイアウォールとネットワーク セキュリティ グループ (NSG) を開き、ポート 1433 と 11000 から 11999 でのアクセスを許可する必要があります。 パケットはデータベースに直接送信されるため、プロキシ経由のリダイレクトを使用すると、待機時間とスループットのパフォーマンスが向上します。 ゲートウェイ コンポーネントの計画メンテナンス イベントの影響も、リダイレクト接続の種類によっては、プロキシと比べて最小限に抑えられます。これは、接続が確立されるとゲートウェイに依存しなくなるためです。
  • プロキシ (既定値): このモードでは、すべての接続でプロキシ ゲートウェイ コンポーネントが使用されます。 接続を有効にするには、プライベート ネットワーク用のポート 1433、およびパブリック接続用のポート 3342 のみを開く必要があります。 このモードを選択すると、ワークロードの性質によっては待機時間が長くなり、スループットが低下する可能性があります。 また、ゲートウェイ コンポーネントの計画メンテナンス イベントは、プロキシ モードのすべてのライブ接続を中断させます。 最短の待機時間と最高のスループットを実現し、計画メンテナンスの影響を最小限に抑えるために、プロキシ接続ポリシーを使用したリダイレクト接続ポリシーを強くお勧めします。

Azure SQL Managed Instance へのパブリックとプライベートのどちらのエンドポイントも、設定された接続の種類に関係なく、常にプロキシ モードで動作します。

リダイレクトの接続の種類

リダイレクトの接続の種類では、TCP セッションが SQL エンジンに対して確立された後、クライアント セッションによってロード バランサーから仮想クラスター ノードの接続先の仮想 IP が取得されます。 後続のパケットは、ゲートウェイを使用せずに、仮想クラスター ノードに直接送信されます。 次の図にこのトラフィックの流れを示します。

Diagram shows an on-premises network with redirect-find-db connected to a gateway in an Azure virtual network and a redirect-query connected to a database primary node in the virtual network.

重要

現在、リダイレクトの接続の種類は、VNet ローカル エンドポイントに対してのみ機能します。 接続の種類の設定に関係なく、パブリックまたはプライベート エンドポイント経由の接続は、プロキシ接続の種類を使って処理されます。

プロキシの接続の種類

プロキシの接続の種類では、TCP セッションがゲートウェイを使用して確立され、すべての後続パケットがゲートウェイ経由で送信されます。 次の図にこのトラフィックの流れを示します。

Diagram shows an on-premises network with a proxy connected to a gateway in an Azure virtual network, connect next to a database primary node in the virtual network.

接続の種類を変更する

  • ポータルの使用: Azure portal を使って接続の種類を変更するには、Virtual Network のページを開き、[接続の種類] の設定を使って接続の種類を変更して、変更を保存します。

  • PowerShell を使用して接続の種類の設定を変更するスクリプト:

Note

この記事では、Azure と対話するために推奨される PowerShell モジュールである Azure Az PowerShell モジュールを使用します。 Az PowerShell モジュールの使用を開始するには、「Azure PowerShell をインストールする」を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

次の 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

次のステップ