SQL IaaS Agent 拡張機能への自動登録
適用対象: Azure VM 上の SQL Server
既定では、SQL Server 2016 以降が存在する Azure VM は、CEIP サービスによって検出されると自動的に SQL IaaS Agent 拡張機能に登録されます。 サブスクリプションの自動登録機能を有効にすることで、旧バージョンの SQL Server など、CEIP サービスで取得されなかった SQL Server VM を簡単かつ自動的に登録できます。
この記事では、自動登録機能を有効にする方法について説明します。 また、SQL IaaS Agent 拡張機能に 1 つの VM を登録することや、複数の VM を一括で登録することもできます。
Note
2022 年 10 月より後に Azure Marketplace からデプロイされた SQL Server VM では、最小特権モデルが既定で有効になります。 SQL IaaS Agent 拡張機能の管理モードは、2023 年 3 月に廃止されました。
概要
ご使用の SQL Server VM を SQL IaaS Agent 拡張機能に登録すると、特典の完全な機能セットがロック解除されます。
既定では、SQL Server 2016 以降が存在する Azure VM は、CEIP サービスによって検出されると、機能が制限された状態で自動的に SQL IaaS Agent 拡張機能に登録されます。 自動登録機能を使うと、CEIP サービスによって特定されなかった SQL Server VM を自動的に登録できます。 ライセンスの種類は、自動的に VM イメージの既定値に設定されます。 VM に従量課金イメージを使用する場合、ライセンスの種類は PAYG
になります。それ以外の場合、ライセンスの種類は既定で AHUB
になります。 プライバシーについては、SQL IaaS Agent 拡張機能のプライバシー ステートメントに関する記事を参照してください。
サブスクリプションに対して自動登録を有効にすると、SQL Server が既にインストールされている、または今後インストールされる VM が SQL IaaS Agent 拡張機能に登録されます。 これを行うには、サブスクリプション内のすべての未登録 VM に SQL Server がインストールされているかどうかを検出する月次ジョブを実行します。 未登録 VM の場合、このジョブにより、SQL IaaS Agent 拡張機能のバイナリが VM にコピーされ、SQL Server レジストリ ハイブを確認するユーティリティが 1 回だけ実行されます。 SQL Server ハイブが検出された場合、仮想マシンは拡張機能に登録されます。 レジストリに SQL Server ハイブが存在しない場合は、バイナリが削除されます。
自動登録の場合、ライセンス管理など、拡張機能の限られた機能が提供されます。 その他の機能は、Azure portal の SQL 仮想マシン リソースから有効にすることができます。
注意事項
- SQL Server ハイブがレジストリに存在しない場合にリソース ロックが存在すると、バイナリの削除に影響を与えることがあります。
- SQL IaaS Agent 拡張機能がプレインストールされたマーケットプレース イメージを使って SQL Server VM をデプロイし、拡張機能が失敗状態になるか、削除された場合、自動登録によってレジストリが調べられて VM に SQL Server がインストールされているかどうかが確認され、拡張機能に登録されます。
- 一元管理 AHB (CM-AHB) を有効にした後で自動登録がアクティブ化されると、Azure VM ワークロードの SQL Server に対して、不要な従量課金制の料金が発生するリスクがあります。 このリスクを軽減するには、自動登録後に SQL IaaS Agent 拡張機能によって報告される追加の使用量を考慮して、CM-AHB のライセンス割り当てを調整します。 SQL IaaS エージェント拡張機能にまだ登録されていない Azure Virtual Machines 上の SQL Server の使用率など、SQL Server ライセンスの使用率に関する分析情報を提供するオープンソース ツールを公開しました。
前提条件
SQL Server VM の拡張機能の自動登録を有効にするには、以下が必要です。
- Azure サブスクリプション。
- 仮想マシンの登録に使用されるクライアント資格情報は、Azure ロールの仮想マシンの共同作成者、共同作成者、または所有者のいずれかに存在します。
自動登録を有効にすると、SQL Server VM は以下を条件として登録されます。
- VVM が、Azure Resource モデルを使用して、サポートされている Windows Server 仮想マシンにデプロイされていること。
- SQL Server がインストールされていること。
- VM がパブリック クラウドまたは Azure Government クラウドにデプロイされていること。 現在、他のクラウドはサポートされていません。
- VM が実行されていること。
Note
Azure では、Ubuntu Linux VM の自動登録がサポートされています。
自動登録を有効にする
Azure portal で SQL Server VM の自動登録を有効にするには、これらの手順を実行します。
Azure portal にサインインします。
[SQL 仮想マシン] リソース ページに移動します。
[Automatic SQL Server VM registration](自動 SQL Server VM 登録) を選択して [Automatic registration](自動登録) ページを開きます。
[サブスクリプション] ボックスの一覧で、サブスクリプションを選びます。
条項を読み、同意する場合は [同意する] を選択します。
[登録] を選択すると、この機能が有効になり、既存および今後のすべての SQL Server VM が SQL IaaS Agent 拡張機能に自動的に登録されるようになります。 これにより、どの VM 上の SQL Server サービスも再起動されません。
自動登録を無効にする
自動登録機能を無効にするには、Azure CLI または Azure PowerShell を使用します。 自動登録機能が無効になっている場合、サブスクリプションに追加された SQL Server VM は、SQL IaaS Agent 拡張機能に手動で登録する必要があります。 これにより、既に登録されている既存の SQL Server VM の登録が解除されることはありません。
Azure CLI を使用して自動登録を無効にするには、次のコマンドを実行します。
az feature unregister --namespace Microsoft.SqlVirtualMachine --name BulkRegistration
複数のサブスクリプションに対して有効にする
PowerShell を使用すると、複数の Azure サブスクリプションの自動登録機能を有効にすることができます。
これを行うには、次の手順に従います。
このスクリプトを保存します。
管理コマンド プロンプトまたは PowerShell ウィンドウを使用して、スクリプトを保存した場所に移動します。
Azure に接続します (
az login
)。スクリプトを実行し、パラメーターとして SubscriptionIds を渡します。 サブスクリプションが指定されていない場合、スクリプトによって、ユーザー アカウント内のすべてのサブスクリプションの自動登録が有効になります。
次のコマンドを実行すると、2 つのサブスクリプションの自動登録が有効になります。
.\EnableBySubscription.ps1 -SubscriptionList a1a1a-aa11-11aa-a1a1-a11a111a1,b2b2b2-bb22-22bb-b2b2-b2b2b2bb
次のコマンドを実行すると、すべてのサブスクリプションの自動登録が有効になります。
.\EnableBySubscription.ps1
登録の失敗エラーは、.ps1
スクリプトの保存と実行に使用したものと同じディレクトリ内にある RegistrationErrors.csv
に格納されます。
次のステップ
- SQL IaaS Agent 拡張機能が提供するベネフィットを確認します。
- 1 台の VM を手動で登録します
- 拡張機能に関する既知の問題のトラブルシューティング。
- SQL IaaS Agent 拡張機能のプライバシー ステートメントを確認します。
- パフォーマンスとセキュリティを最適化するためのベスト プラクティスのチェックリストを確認します。
詳細については、次の記事を参照してください。