SQL IaaS 拡張機能を使用して Windows SQL Server VM を登録する

適用対象: Azure VM 上の SQL Server

SQL Server VM をSQL IaaS Agent 拡張機能に登録して、Windows Azure VM での SQL Server の豊富な機能の特典を解除します。

この記事では、SQL IaaS Agent 拡張機能に 1 つの SQL Server VM を登録する方法について説明します。 または、スクリプトを使用して、サブスクリプション内のすべての SQL Server vm を自動的に登録することも、複数の vm を一括で登録することもできます。

Note

2021 年 9 月以降は、SQL IaaS 拡張機能をフル モードで登録しても、SQL Server サービスを再起動する必要はありません。

概要

SQL Server IaaS Agent 拡張機能に登録すると、仮想マシン リソースとは "別の" リソースである、SQL 仮想マシン "リソース" がサブスクリプション内に作成されます。 拡張機能から SQL Server VM を登録解除すると、SQL 仮想マシン "リソース" は削除されますが、実際の仮想マシンは削除されません。

Azure portal を介して SQL Server VM の Azure Marketplace イメージをデプロイすると、その SQL Server VM が自動的に拡張機能に登録されます。 ただし、Azure 仮想マシンに SQL Server を自分でインストールすること、またはカスタム VHD から Azure 仮想マシンをプロビジョニングすることを選択する場合は、機能面のすべての利点と管理の容易性を活用できるようにするために、SQL Server VM を SQL IaaS Agent 拡張機能に登録する必要があります。

SQL IaaS Agent 拡張機能を利用するには、最初にサブスクリプションを Microsoft.SqlVirtualMachine プロバイダーに登録する必要があります。これにより、SQL IaaS 拡張機能は、その特定のサブスクリプション内にリソースを作成できます。 その後、SQL Server VM を拡張機能に登録できます。

既定で、SQL Server 2016 以降がインストールされている Azure VM は、CEIP サービスによって検出されると、SQL IaaS Agent 拡張機能に自動的に登録されます。 詳細については、「SQL Server のプライバシーの補足情報」を参照してください。

重要

SQL IaaS Agent 拡張機能を使用すると、Azure 仮想マシン内で SQL Server を使用する際に、お客様に追加のメリットを提供するという明確な目的のためにデータが収集されます。 Microsoft は、お客様の事前の同意なく、ライセンスの監査にこのデータを使用することはありません。 詳細については、「SQL Server のプライバシーの補足情報」を参照してください。

前提条件

SQL Server VM を拡張機能に登録するには、以下のものが必要になります。

リソースプロバイダーを使用してサブスクリプションを登録する

SQL Server VM を SQL IaaS Agent 拡張機能に登録するには、最初にサブスクリプションを Microsoft.SqlVirtualMachine リソース プロバイダー (RP) に登録する必要があります。 これにより、SQL IaaS Agent 拡張機能は、サブスクリプション内にリソースを作成できます。 これは Azure portal、Azure CLI、または Azure PowerShell を使用して実行できます。

Azure portal

Azure portal を使用して、サブスクリプションをリソース プロバイダーに登録します。

  1. Azure portal を開き、 [すべてのサービス] に移動します。

  2. [サブスクリプション] に移動し、目的のサブスクリプションを選択します。

  3. [サブスクリプション] ページで、 [設定][リソース プロバイダー] を選択します。

  4. フィルター内に「sql」と入力し、SQL 関連のリソースプロバイダーを表示します。

  5. 必要なアクションに応じて、Microsoft.SqlVirtualMachine プロバイダーで [登録][再登録]、または[登録解除] を選択します。

    Modify the provider

コマンド ライン

Azure CLI または Azure PowerShell を使用して、Azure サブスクリプションを Microsoft.SqlVirtualMachine プロバイダーに登録します。

Azure CLI を使用して、サブスクリプションをリソース プロバイダーに登録します。

# Register the SQL IaaS Agent extension to your subscription 
az provider register --namespace Microsoft.SqlVirtualMachine 

フル モード

Azure CLI と Azure PowerShell を使用して、SQL Server VM を完全モードで直接登録することも、Azure portal、Azure CLI、または Azure PowerShell を使用して簡易モードからフルモードにアップグレードすることもできます。 noagentモードでの vm のアップグレードは、OS が Windows 2008 R2 以降にアップグレードされるまではサポートされていません。

2021年9月以降、SQL Server VM をフルモードで登録するには、SQL Server サービスを再起動する必要がなくなりました。

フル モードの詳細については、「管理モード」を参照してください。

フルモードで登録する

SQL Server のライセンスの種類として、使用した分を支払う従量課金制 (PAYG)、独自のライセンスを使用する Azure ハイブリッド特典 (AHUB)、または 無料の DR レプリカ ライセンスをアクティブ化するディザスター リカバリー (DR) のいずれかを指定します。

Azure CLI を使用して、SQL Server VM をフルモードで登録します。

# Register Enterprise or Standard self-installed VM in full mode
az sql vm create --name <vm_name> --resource-group <resource_group_name> --location <vm_location> --license-type <license_type> --sql-mgmt-type Full

フルへのアップグレード

"軽量" モードで拡張機能に登録された SQL Server VM は、Azure portal、Azure CLI、または Azure PowerShell を使用して "フル" にアップグレードできます。 "No-Agent" モードの SQL Server VM は、OS が Windows 2008 R2 以上にアップグレードされた後、"フル" にアップグレードできます。 ダウングレードすることはできません。それを行うには、SQL Server VM を SQL IaaS Agent 拡張機能から登録解除する必要があります。 それにより、SQL 仮想マシンの "リソース" が削除されますが、実際の仮想マシンは削除されません。

Azure portal

Azure portal を使用して拡張機能をフルモードにアップグレードします。

  1. Azure portal にサインインします。

  2. SQL 仮想マシン リソースに移動します。

  3. SQL Server VM を選択し、 [概要] ページに移動します。

  4. IaaS 拡張機能モードが NoAgent または軽量である SQL Server VM では、SQL IaaS 拡張機能の現在のモードで利用できるのはライセンスの種類とエディションの更新のみという内容のメッセージを選択します。

    Selections for changing the mode from the portal

  5. [Confirm](確定) を選択して、SQL Server IaaS 拡張機能モードを "フル" にアップグレードします。

Select Confirm to upgrade your SQL Server IaaS extension mode to full.

コマンド ライン

Azure CLI を使用して拡張機能をフルモードにアップグレードします。

# Update to full mode
az sql vm update --name <vm_name> --resource-group <resource_group_name> --sql-mgmt-type full  

軽量モード

機能が制限される軽量モードで SQL Server VM を拡張機能に登録するには、Azure CLI または Azure PowerShell を使用します。

SQL Server のライセンスの種類として、使用した分を支払う従量課金制 (PAYG)、独自のライセンスを使用する Azure ハイブリッド特典 (AHUB)、または 無料の DR レプリカ ライセンスをアクティブ化するディザスター リカバリー (DR) のいずれかを指定します。

複数のインスタンスを持つフェールオーバークラスターインスタンスと SQL Server vm は、簡易モードで SQL IaaS エージェント拡張機能にのみ登録できます。

軽量モードの詳細については、「管理モード」を参照してください。

Azure CLI を使用して軽量モードで SQL Server VM を登録します。

# Register Enterprise or Standard self-installed VM in Lightweight mode
az sql vm create --name <vm_name> --resource-group <resource_group_name> --location <vm_location> --license-type <license_type> 

NoAgent モード

Windows Server 2008 ("R2 ではない") にインストールされている SQL Server 2008 および 2008 R2 は、NoAgent モードでのみ SQL IaaS Agent 拡張機能に登録できます。 このオプションにより、コンプライアンスが確保され、SQL Server VM を Azure portal の限られた機能で監視できるようになります。

[ライセンスの種類] には、AHUBPAYG、または DR を指定します。 [image offer]\(イメージ オファー\) には、SQL2008-WS2008 または SQL2008R2-WS2008 を指定します。

Azure CLI または Azure PowerShell を使用して、SQL Server 2008 ( SQL2008-WS2008 ) または 2008 R2 ( SQL2008R2-WS2008 ) インスタンスを Windows Server 2008 VM に登録します。

Azure CLI を使用して NoAgent モードで SQL Server 仮想マシンを登録します。

az sql vm create -n sqlvm -g myresourcegroup -l eastus |
--license-type <license type>  --sql-mgmt-type NoAgent 
--image-sku Enterprise --image-offer <image offer> 

管理モード

Azure PowerShell を使用して、SQL Server IaaS エージェント拡張機能がどの管理モードにあるかを確認します。

Azure PowerShell の拡張機能のモードを確認します。

# Get the SqlVirtualMachine
$sqlvm = Get-AzSqlVM -Name $vm.Name  -ResourceGroupName $vm.ResourceGroupName
$sqlvm.SqlManagementType

登録状態を確認する

お使いの SQL Server VM が既に SQL IaaS Agent 拡張機能に登録されているかどうかは、Azure portal、Azure CLI、または Azure PowerShell を使用して確認できます。

Azure portal

次の手順で登録の状態Azure portal。

  1. Azure portal にサインインします。

  2. ご利用の SQL Server VM にアクセスします。

  3. 一覧から SQL Server VM を選択します。 お使いの SQL Server VM がここに表示されていない場合は、SQL IaaS Agent 拡張機能に登録されていない可能性があります。

  4. [状態] の値を確認します。 [状態][成功] の場合は、その SQL Server VM が正常に SQL IaaS Agent 拡張機能に登録されています。

    Verify status with SQL RP registration

または、 [SQL 仮想マシン] リソースの [サポートとトラブルシューティング] ウィンドウで [修復] を選択して状態を確認することもできます。 SQL IaaS エージェント拡張機能のプロビジョニング状態は、 [成功] または [失敗] になります。

コマンド ライン

Azure CLI または Azure PowerShell を使用して現在の SQL Server VM の登録状態を確認します。 登録が成功していれば、ProvisioningStateSucceeded と表示されます。

次の手順で登録の状態を確認Azure CLI。

az sql vm show -n <vm_name> -g <resource_group>

エラーは、SQL Server VM が拡張機能に登録されていないことを示します。

拡張機能の修復

SQL IaaS エージェント拡張機能が失敗状態になる可能性があります。 SQL IaaS エージェント拡張機能を修復するには、Azure portal を使用を使用します。

次の方法で拡張機能を修復Azure portal。

  1. Azure portal にサインインします。

  2. ご利用の SQL Server VM にアクセスします。

  3. 一覧から SQL Server VM を選択します。 お使いの SQL Server VM がここに表示されていない場合は、SQL IaaS Agent 拡張機能に登録されていない可能性があります。

  4. [SQL 仮想マシン] リソース ページの [サポートとトラブルシューティング] の下にある [修復] を選択します。

    Select **Repair** under **Support + Troubleshooting** in the **SQL virtual machine** resource page

  5. プロビジョニングの状態が [失敗] と表示されている場合は、 [修復] を選択して拡張機能を修復します。 状態が [成功] の場合は、 [強制修復] の横にあるチェックボックスをオンにして、状態に関係なく拡張機能を修復できます。

    If your provisioning state shows as Failed, choose Repair to repair the extension. If your state is Succeeded you can check the box next to Force repair to repair the extension regardless of state.

拡張機能から登録を解除する

SQL IaaS Agent 拡張機能との SQL Server VM の登録を解除するには、Azure portal または Azure CLI を使用して、SQL 仮想マシン "リソース" を削除します。 SQL 仮想マシン "リソース" を削除しても、SQL Server VM は削除されません。 SQL IaaS Agent 拡張機能との SQL 仮想マシンの登録を解除するには、管理モードをフルからダウングレードする必要があります。

注意

拡張機能から VM の登録を解除する場合SQL Server注意してください。 リソース を削除しようとするときに 仮想 マシンを誤って削除する可能性がある場合は、慎重に手順に従 ってください

Azure portal

拡張機能から SQL Server VM の登録を解除するには、次のコマンドをAzure portal。

  1. Azure Portal にサインインします。

  2. SQL VM リソースに移動します。

    SQL virtual machines resource

  3. [削除] を選択します。

    Select delete in the top navigation

  4. SQL 仮想マシンの名前を入力し、仮想マシンの横にあるチェック ボックスをオフにします

    Uncheck the VM to prevent deleting the actual virtual machine and then select Delete to proceed with deleting the SQL VM resource

    警告

    仮想マシン名の横にあるチェックボックスをオフにしないと、仮想マシンが完全に "削除" されます。 拡張機能から SQL Server VM の登録を解除する一方で、"実際の仮想マシンを削除しない" 場合は、このチェックボックスをオフにしてください。

  5. [削除] を選択して、SQL Server VM ではなく、SQL 仮想マシン "リソース" の削除を確認します。

コマンド ライン

拡張機能から SQL Server VM の登録を解除するには、Azure CLI az sql vm delete コマンドを使用します。 これにより、VM SQL Serverが削除されますが、仮想マシンは削除されます。

次のコマンドを使用SQL Server VM の登録を解除Azure CLI。

az sql vm delete 
  --name <SQL VM resource name> |
  --resource-group <Resource group name> |
  --yes 

次の手順

詳細については、次の記事を参照してください。