Windows SQL Server IaaS Agent 拡張機能を使用して管理を自動化する
適用対象: Azure VM 上の SQL Server
SQL Server IaaS Agent 拡張機能 (SqlIaasExtension) は、管理タスクを自動化するために Azure Windows Virtual Machines (VM) 上の SQL Server で実行されます。
この記事では、この拡張機能の概要について説明します。 SQL Server IaaS Agent 拡張機能を Azure VM 上の SQL Server にインストールするには、「自動登録」、「単一の VM の登録」、「複数の VM の一括登録」の記事を参照してください。
Azure VM 上の SQL Server の展開と管理エクスペリエンスの詳細については、次の Data Exposed ビデオをご覧ください。
概要
SQL Server IaaS Agent 拡張機能を使うと、Azure portal と統合し、Azure VM 上の SQL Server に関する多くのベネフィットのロックを解除できます。
機能面の利点: この拡張機能では、ポータル管理、ライセンスの柔軟性、自動バックアップ、自動修正といった、自動化機能のさまざまな利点を活用できます。 詳細については、この記事の後半にある「機能面の利点」を参照してください。
コンプライアンス: この拡張機能では、製品の条件に指定されているとおりに Azure ハイブリッド特典が有効になっていることを Microsoft に通知するという要件を満たすための簡単な方法が提供されます。 このプロセスにより、リソースごとにライセンス登録フォームを管理する必要がなくなります。
無料: この拡張機能は完全に無料です。 拡張機能に関連する追加コストはありません。
一元管理された Azure ハイブリッド特典との統合: この拡張機能に登録した SQL Server VM を一元管理された Azure ハイブリッド特典と統合できます。こうすることで、大規模な SQL Server VM でも Azure ハイブリッド特典を簡単に管理できます。
ライセンス管理の簡素化: この拡張機能によって SQL Server ライセンス管理が簡単になります。また、以下を使って Azure ハイブリッド特典が有効な SQL Server VM をすばやく特定できます。
Azure portal の SQL 仮想マシン リソースを使って Azure ハイブリッド特典を使っている SQL Server VM をすばやく特定することができます。
自動アップグレードを有効にして、拡張機能の最新の更新プログラムが毎月確実に取得されるようにします。
機能面の利点
SQL Server IaaS Agent 拡張機能を使うと、SQL Server VM を管理するための多くの機能面のベネフィットのロックを解除し、ビジネス ニーズに合ったベネフィットを選択できます。 拡張機能を最初に登録した時点では、機能は SQL IaaS Agent に依存しないいくつかの機能に限定されています。 必要な機能を有効にすると、エージェントが SQL Server VM にインストールされます。
SQL IaaS Agent 拡張機能を介して使用できるベネフィットと、エージェントが必要かどうかの詳細を次の表に示します。
機能 | 説明 |
---|---|
Azure portal の管理 | ポータルでの管理のロックを解除し、このため、すべての SQL Server VM を 1 か所に表示でき、ポータルから SQL 固有の機能を直接有効または無効にすることができます。 基本登録に含まれています。 |
自動バックアップ | VM 上の SQL Server の既定のインスタンスまたは適切にインストールされた名前付きインスタンスについて、すべてのデータベースのバックアップを自動的にスケジュールします。 詳細については、Azure 仮想マシンでの SQL Server の自動バックアップ (Resource Manager) に関する記事を参照してください。 SQL IaaS Agent 拡張機能が必要です。 |
自動修正 | ワークロードのピーク時に更新されるのを回避するために、構成されたメンテナンス期間中に Windows と SQL Server のセキュリティ アップデート プログラム (SQL Server の累積的な更新プログラムを含む) を仮想マシンに自動的にインストールします。 詳細については、「Azure Update Manager による自動修正」を参照してください。 SQL IaaS Agent 拡張機能が必要です。 |
Azure Key Vault の統合 | SQL Server VM に Azure Key Vault を自動的にインストールして構成できます。 詳細については、「Azure Virtual Machines 上の SQL Server 向け Azure Key Vault 統合の構成 (Resource Manager)」をご覧ください。 SQL IaaS Agent 拡張機能が必要です。 |
tempdb の構成 | ファイルの番号、その初回サイズ、場所、自動増加率を指定するなどして、Azure portal から直接 tempdb を構成できます。 変更を有効にするには SQL Server サービスを再起動します。 SQL IaaS Agent 拡張機能が必要です。 |
Defender for Cloud ポータル統合 | Microsoft Defender for SQL を有効にすると、Azure portal の SQL 仮想マシン リソースで Defender for Cloud 推奨事項を直接閲覧できます。 詳細については、セキュリティのベスト プラクティスを参照してください。 SQL IaaS Agent 拡張機能が必要です。 |
拡張セキュリティ更新プログラム | 長期の SQL Server ライフサイクルのサポートが終了してから最大 3 年間、Azure VM 上の SQL Server のセキュリティ アップデートを自動的に受け取ります。 |
柔軟なライセンス | ライセンス持ち込み (「Azure ハイブリッド特典」とも呼ばれます) から従量課金制のライセンス モデルに、またはその逆にシームレスに移行することで、コストを節約できます。 基本登録に含まれています。 |
柔軟なバージョン/エディション | SQL Server のバージョンまたはエディションを変更する場合は、SQL Server VM 全体を再デプロイすることなく、Azure portal 内のメタデータを更新できます。 基本登録に含まれています。 |
I/O パフォーマンス分析 | Azure VM 上での SQL Server の I/Oパフォーマンスを分析します。 現在、この機能はプレビュー段階にあります。 SQL IaaS Agent 拡張機能が必要です。 |
Microsoft Entra 認証 | SQL Server VM への認証に Microsoft Entra ID を使用して、SQL Server VM のセキュリティを強化します。 SQL IaaS Agent 拡張機能が必要です。 |
I/O 分析 (プレビュー) | Azure portal で I/O パフォーマンスの分析を確認し、仮想マシンとデータ ディスクの制限を超えた結果として発生する問題を見つけます。 現在、この機能はプレビュー段階にあります。 SQL IaaS Agent 拡張機能が必要です。 |
SQL ベスト プラクティス評価 | 構成のベストプラクティスを使用すると、SQL Server vm の正常性を評価できます。 詳細については、「SQL ベスト プラクティス評価」を参照してください。 SQL IaaS Agent 拡張機能が必要です。 |
ポータルでディスク使用率を表示する | Azure portal 内の SQL データ ファイルのディスク使用率をグラフィカルに表示できます。 SQL IaaS Agent 拡張機能が必要です。 |
アクセス許可モデル
既定では、SQL IaaS Agent 拡張機能では、最小特権モードのアクセス許可モデルが使用されます。 最小特権のアクセス許可モデルとは、有効にする各機能に必要な最小限のアクセス許可を付与するものです。 使う各機能には、SQL Server のカスタム ロールが割り当てられます。また、カスタム ロールには、その機能に関連するアクションを実行するために必要なアクセス許可のみが付与されます。
2022 年 10 月より前にデプロイされた SQL Server VM では、SQL IaaS Agent 拡張機能が既定で sysadmin 権限を使用する以前の古い sysadmin モデルが使用されます。 2022 年 10 月よりも前にプロビジョニングされた SQL Server VM の場合は、SQL 仮想マシン リソースに移動し、[セキュリティ] で [セキュリティ構成] を選択してから、[最小特権モードの有効化] の横にあるボックスにチェックを入れると、最小特権の権限モデルを有効にできます。
最小特権の権限モデルを有効にするには、お使いの SQL 仮想マシン リソースに移動し、次のように [セキュリティ] で [セキュリティ構成] を選択してから、[最小特権モードの有効化] の横にあるボックスにチェックを入れます。
次の表では、拡張機能の各機能で使われるアクセス許可とカスタム ロールを定義します。
機能 | アクセス許可 | カスタム ロール (サーバー/DB) |
---|---|---|
SQL ベスト プラクティス評価 | サーバーのアクセス許可 - CONTROL SERVER | SqlIaaSExtension_Assessment |
自動バックアップ | サーバーのアクセス許可 - CONTROL SERVER データベースのアクセス許可 - master 上の db_ddladmin 、msdb 上の db_backupoperator |
SqlIaaSExtension_AutoBackup |
Azure Backup サービス | [sysadmin] | |
資格情報の管理 | サーバーのアクセス許可 - CONTROL SERVER | SqlIaaSExtension_CredentialMgmt |
可用性グループ ポータルの管理 | [sysadmin] | |
R Services | サーバーのアクセス許可 - ALTER SETTINGS | SqlIaaSExtension_RService |
SQL 認証 | [sysadmin] | |
SQL Server のインスタンスの設定 | サーバーのアクセス許可 - ALTER ANY LOGIN、ALTER SETTINGS | SqlIaaSExtension_SqlInstanceSetting |
ストレージの構成 | サーバーのアクセス許可 - ALTER ANY DATABASE | SqlIaaSExtension_StorageConfig |
ステータス レポート | サーバーのアクセス許可 - VIEW ANY DEFINITION、VIEW SERVER STATE、ALTER ANY LOGIN、CONNECT SQL | SqlIaaSExtension_StatusReporting |
インストール
SQL Server VM を SQL IaaS Agent 拡張機能に登録すると、バイナリがその VM にコピーされます。 これに依存する機能を有効にすると、SQL IaaS Agent 拡張機能が VM にインストールされ、SQL Server にアクセスできるようになります。 既定では、エージェントは最小特権モデルに従い、有効にした機能に関連付けられた SQL Server 内のアクセス許可のみが付与されます。ただし、自分で SQL Server を VM にインストールするか、2022 年 10 月より前にマーケットプレースから SQL Server イメージをデプロイした場合は、エージェントには SQL Server 内でシステム管理者アクセス許可が付与されます。
Azure portal を介して SQL Server VM の Azure Marketplace イメージをデプロイすると、その SQL Server VM が自動的に拡張機能に登録されます。 ただし、Azure 仮想マシンに SQL Server を自分でインストールすること、またはカスタム VHD から Azure 仮想マシンをプロビジョニングすることを選ぶ場合、機能面のベネフィットのロックを解除するには、SQL Server VM を SQL IaaS Agent 拡張機能に登録する必要があります。 既定では、SQL Server 2016 以降がデプロイされている自己インストールされた Azure VM が CEIP サービスによって検出されると、自動的に SQL IaaS Agent 拡張機能に登録されます。 CEIP で検出されない SQL Server VM は手動で登録する必要があります。
SQL IaaS Agent 拡張機能に登録すると、バイナリが仮想マシンにコピーされますが、既定ではエージェントはインストールされません。 エージェントがインストールされるのは、それを必要とするいずれかの SQL IaaS Agent 拡張機能を有効にしたときのみです。このとき、次の 2 つのサービスが仮想マシン上で実行されます:
- Microsoft SQL Server IaaS Agent は、SQL IaaS Agent 拡張機能のメイン サービスであり、ローカル システム アカウントで実行する必要があります。
- Microsoft SQL Server IaaS Query Service は、SQL Server 内で拡張機能がクエリを実行するのを支援するヘルパー サービスであり、NT サービス アカウント
NT Service\SqlIaaSExtensionQuery
で実行する必要があります。
拡張機能に登録する方法は 3 つあります。
SQL Server IaaS Agent 拡張機能を使って SQL Server VM を登録して、お使いのサブスクリプション内に SQL 仮想マシン "リソース" を作成します。これは、仮想マシンリソースとは "別の" リソースです。 SQL Server VM から拡張機能を削除すると、サブスクリプションから SQL 仮想マシンのリソースは削除されますが、基の仮想マシンはドロップされません。
複数インスタンスのサポート
SQL IaaS Agent 拡張機能では、次の環境がサポートされています。
- 1 つの既定のインスタンス。
- 複数のインスタンスがある場合は、Azure portal の拡張機能によって既定のインスタンスのみがサポートおよび管理されます。 既定のインスタンスのない名前付きインスタンスが複数ある環境はサポートされていません。
- インストールされているインスタンスが 1 つのみの場合は、名前付きインスタンスが 1 つになります。
名前付きインスタンスのサポート
Azure portal で単一の名前付きインスタンスを管理する場合は、既定以外の名前の SQL Server を Azure 仮想マシンにインストールし、SQL IaaS Agent 拡張機能で登録します。
Azure Marketplace から SQL Server イメージ内の単一の名前付きインスタンスを管理する場合は、まず既存の SQL Server インスタンスをアンインストールし、名前付きインスタンスと共に SQL Server をインストールしてから、SQL IaaS Agent 拡張機能に登録する必要があります。
Azure VM 上の SQL Server と共に単一の名前付きインスタンスを使用するには、次の手順を実行します。
- Azure Marketplace から SQL Server VM をデプロイします。
- SQL Server VM から SQL IaaS Agent 拡張機能を削除します。
- 仮想マシンに接続し、SQL Server を完全にアンインストールします。
- 仮想マシンを再起動します。
- 仮想マシンに接続し、セットアップ メディア (通常は
C:\SQLServerFull
にあります) を使用して、 名前付き SQL Server インスタンスをインストールします。 - 仮想マシンを再起動します。
- SQL IaaS Agent 拡張機能に VM を登録します。
フェールオーバー クラスター インスタンスのサポート
SQL Server フェールオーバー クラスター インスタンス (FCI) の登録は、限られた機能でサポートされています。 機能が限定されているため、拡張機能に登録されている SQL Server FCI は、自動バックアップ、修正プログラムの適用、Microsoft Entra 認証、高度なポータル管理など、エージェントを必要とする機能をサポートしていません。
SQL Server VM が SQL IaaS Agent 拡張機能に既に登録されていると同時にエージェントを必要とする機能を有効にしている場合は、 SQL Server VM から拡張機能を削除し、FCI のインストール後に再登録する必要があります。
拡張機能の状態を確認する
Azure portal、Azure PowerShell、または Azure CLI を使って、拡張機能の状態を確認します。
Azure portal に拡張機能がインストールされていることを確認します。
Azure portal で [仮想マシン] リソースに移動します ( [SQL 仮想マシン] リソースではなく、お使いの VM のリソースです)。 [設定] で [拡張機能] を選択します。 次の例のように、SqlIaasExtension 拡張機能が一覧に表示されます。
管理モード
2023 年 3 月より前の SQL IaaS Agent 拡張機能は、管理モードを利用してセキュリティ モデルを定義し、機能面のベネフィットのロックを解除していました。 2023 年 3 月、拡張機能のアーキテクチャが更新され、管理モードが完全に削除されました。代わりに、最小特権の原則に基づいて、お客様が機能ごとに拡張機能を使う方法を制御できるようになりました。
2023 年 3 月以降に拡張機能を初めて登録した場合、バイナリは仮想マシンに保存され、ライセンス管理などの基本機能を利用できるようになります。 エージェントに依存する機能を有効にすると、SQL IaaS Agent を仮想マシンにインストールするためにバイナリが使われます。アクセス許可は、有効にした各機能の必要に応じて SQL IaaS Agent サービスに割り当てられます。
制限事項
SQL IaaS Agent 拡張機能では、以下のみがサポートされます。
- Azure Resource Manager を介してデプロイされた SQL Server VM。 クラシック モデルを介してデプロイされた SQL Server VM はサポートされません。
- パブリック クラウドまたは Azure Government クラウドにデプロイされた SQL Server VM。 その他のプライベート クラウドや政府機関向けクラウドにデプロイされている場合はサポートされません。
- 拡張機能が Azure VM 上の SQL Server と連携するには、SQL Server 構成マネージャーで TCP/IP を有効にする必要があります。
- 機能が制限された SQL Server FCI。 拡張機能に登録された SQL Server FCI は、自動バックアップ、修正プログラムの適用、高度なポータル管理など、エージェントを必要とする機能をサポートしません。
- 既定のインスタンスを持つ VM、または既定のインスタンスが存在しない場合は単一の名前付きインスタンス。
- VM に複数の名前付きインスタンスがある場合、SQL IaaS Agent 拡張機能を操作するには、いずれかのインスタンスが既定のインスタンスである必要があります。
- SQL Server インスタンスのイメージのみ。 SQL IaaS Agent の拡張機能では、SQL Server Reporting Services、Power BI Report Server、SQL Server Analysis Services などの Reporting Services または Analysis Services はサポートされていません。
プライバシーに関する声明
Azure VM 上の SQL Server と SQL IaaS Agent 拡張機能を使う場合は、次のプライバシーに関する声明を考慮してください。
自動登録: 既定では、SQL Server 2016 以降が存在する Azure VM は、CEIP サービスによって検出されると自動的に SQL IaaS Agent 拡張機能に登録されます。 詳細については、「SQL Server のプライバシーの補足情報」を参照してください。
データ収集: SQL IaaS Agent 拡張機能を使用すると、Azure Virtual Machines 上の SQL Server を使用するお客様に追加のメリットを提供するという明確な目的のために、データが収集されます。 Microsoft は、お客様の事前の同意なく、ライセンスの監査にこのデータを使用することはありません。 詳細については、「SQL Server のプライバシーの補足情報」を参照してください。
リージョン内のデータの所在: Azure VM 上の SQL Server と SQL IaaS Agent 拡張機能によって、VM がデプロイされているリージョン外に顧客データが移動されたり、保存されたりすることはありません。
関連するコンテンツ
SQL Server IaaS 拡張機能を Azure VM 上の SQL Server にインストールする方法については、自動インストール、 単一の VM の登録、または VM の一括登録 に関する記事を参照してください。 問題の解決については、拡張機能に関する既知の問題のトラブルシューティングに関するページを参照してください。
さらに学習するには、次の記事を参照してください。