次の方法で共有


Azure Arc によって有効化された SQL Server の自動接続を管理する

適用対象:SQL Server

SQL Server インスタンスは、Azure Arc 対応サーバーにインストールされ、Arc サーバー リソースがサポートされているリージョンにある場合に、Azure Arc に自動的に接続されます。 すべての SQL Server インスタンス リソースが Azure に自動的に作成され、すべての SQL Server インスタンスに対して一元化された管理プラットフォームが提供されます。 詳細については、「Azure Arc で有効になっている SQL Server」を参照してください。

この記事では、Azure への SQL Server の接続の合理化されたプロセスがどのように機能するのかを詳しく説明します。

現時点では、最小特権構成は既定では適用されません。

拡張機能バージョンが 1.1.2859.223 以上の既存のサーバーでは、最終的に最小限の特権構成が適用されます。 この拡張機能は、2024 年 11 月にリリースされました。 最小特権の自動適用を防ぐには、 1.1.2859.223後に拡張機能のアップグレードをブロックします。

前提条件

Azure Arc で有効になっている前提条件 - SQL Server を完了します。

ライセンスの種類を指定する

必要に応じて、SQL Server の各インスタンスのライセンスの種類を指定します。

目的のライセンスの種類を指定するには、ライセンスの種類の値のタグを指定します。 自動接続のワークフローには、そのタグが必要です。 詳細については、「論理的な組織化のためにリソース、リソース グループ、サブスクリプションにタグを付ける」を参照してください。

タグ値は、サブスクリプション、リソース グループ、またはリソース レベルで設定できます。 サブスクリプション レベルで設定されたタグ値は、リソース グループとリソース レベルで設定された値よりも優先されます。 リソース グループ レベルで設定されたタグ値は、リソース レベルで設定された値よりも優先されます。

以下のいずれかのタグと値を、サブスクリプション、リソース グループ、または Arc Server リソースに追加します。

タグ
ArcSQLServerExtensionDeployment Paid
ArcSQLServerExtensionDeployment PAYG
ArcSQLServerExtensionDeployment LicenseOnly

この値は、自動接続ワーク フローによって SQL Server 拡張機能がデプロイされるときに使用されます。

重要

Azure Arc for SQL Server のお客様の価値を最大限に高めるために、Microsoft では、 ArcSQLServerExtensionDeployment タグを使用して既定値を設定していない場合は、ライセンスの種類の値を決定する自動化されたプロセスを使用します。 SQL Server がソフトウェア アシュアランス (SA) またはサブスクリプションとサポートの対象であり、購入したライセンスの数が、Azure ハイブリッド特典を使用するために Azure に既にコミットしたライセンスの数を超えている場合、このプロセスでは、オンボードされた SQL Server インスタンスのライセンスの種類の値が順番に 有料 に設定されます。 その結果、SA の顧客に提供される評価の高い管理機能に自動的にアクセスできます。

ライセンスの種類の設定の優先順位

Arc に接続されている新しいサーバーに SQL Server 用 Azure 拡張機能を自動的にインストールする

SQL Server インスタンスがインストールされている場合、Azure Arc に接続されている Arc 対応の各サーバーに、SQL Server 用 Azure 拡張機能が自動的にインストールされます。 この自動プロセスには以下のタスクが含まれます。

  1. Microsoft.AzureArcData リソース プロバイダーがまだ登録されていない場合は、登録します。

  2. ライセンスの種類を設定する

  3. SQL Server 用 Azure 拡張機能をインストールします。

    ArcSQLServerExtensionDeployment タグの値が設定されている場合は、ライセンスの種類を設定します。

  4. Arc 対応 SQL Server インスタンス リソースを Azure に作成します。

Azure Arc によって有効になっている SQL Server を自動的に接続するには、Azure Arc で 有効になっている SQL Server のデプロイ オプションの要件を満たす方法のいずれかを使用します。

接続が完了すると、SQL Server 用の Azure の機能を利用できます。 詳細については、「 Azure Arc で有効になっている 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

'Configuration needed' の値は、オンボード プロセスにライセンスの種類を自動的に設定するための十分な情報がなかったことを示します。 欠損値を設定する方法、または自動的に構成された値を変更する方法の詳細については、「 Azure Arc で有効になっている SQL Server の構成」を参照してください。

ライセンスの種類を有料または PAYG に設定すると、SA のお客様に提供される重要な管理機能のロックが解除されます。

自動接続をオプトアウトする

SQL Server 用 Azure 拡張機能の自動インストールをオプトアウトするには、サブスクリプション、リソース グループ、Arc Server リソースに次のタグと値を追加します。 サブスクリプションまたはリソース グループに既存の Arc 対応サーバーがある場合は、タグ値がキャッシュされるため、タグ値の変更が有効になるまでに最大 8 時間かかる場合があります。

タグ
ArcSQLServerExtensionDeployment Disabled

または、サーバーにインストールできる拡張機能を制限することもできます。 サーバーで許可およびブロックする拡張機能の一覧を構成できます。 詳しくは、「拡張機能の許可リストとブロックリスト」をご覧ください。

SQL Server 用 Azure 拡張機能が自動的にインストールされる方法を理解する

Arc 対応サーバーへの拡張機能のインストールは、Windows サービス ゲスト構成拡張機能サービス (ExtensionService) を使って実行できます。 サーバーが Arc に接続されると、Windows サービス ゲスト構成拡張機能サービス (ExtensionService) がインストールされます。 このサービスは、マシン上の拡張機能 (エージェント、スクリプト、またはその他のソフトウェア) のインストール、アップグレード、削除を担当します。 ゲスト構成と拡張サービスは、Windows ではローカル システムとして、Linux ではルートとして実行されます。 Arc エージェント サービスとサービス アカウントについて詳しくは、「エージェントのセキュリティとアクセス許可」をご覧ください

API を呼び出して SQL Server 用 Azure 拡張機能をデプロイし、Arc 対応 SQL Server に自動的に接続できます。

また、Azure portal、Azure Resource Manager (ARM) API、Azure Policy、ARM テンプレート、Azure CLI、または Azure PowerShell モジュールを使って、拡張機能をインストールすることもできます。 Azure Arc によって有効化された SQL Server のデプロイ オプション

Arc に接続されているが、SQL Server 用 Azure 拡張機能がない SQL Server インスタンスを見つける

SQL Server はインストールされているが、SQL Server 用 Azure 拡張機能がない Arc Server を含むマシンとサブスクリプションの ID の一覧を表示するには、次の Azure Graph クエリを使います。

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

拡張機能のバージョンをアップグレードする

SQL Server 用 Azure 拡張機能のアップグレードの詳細については、「 拡張機能のアップグレード」を参照してください。

現在の拡張機能のバージョンを取得するには、 リリース ノート (Azure Arc で有効になっている SQL Server) を確認してください。