Azure で SQL Server をデプロイするための IaaS のオプションについて説明する

完了

多くのアプリケーションでは、SQL Server を VM で実行する必要があります。 このオプションには、次のような理由があります。

  • 古いバージョンの SQL Server — ベンダーのサポートのためにアプリケーションで古いバージョンの SQL Server が必要な場合、VM の内部で実行すと、そのベンダーがアプリケーションをサポートできるので、それらのアプリケーションにとって最適なオプションです。

  • 他の SQL Server サービスの使用 — Analysis Services と (Azure Data Factory の使用により) ある程度の Integration Services は PaaS オファリングとして使用できますが、多くのユーザーは、SQL Server Analysis Services、Integration Services、または Reporting Services をデータベース エンジンと同じマシンで実行することにより、ライセンスを最大限に活用します。

  • 一般的なアプリケーションの非互換性 — この理由は、やや包括的なものです。 たとえば、Azure SQL Database では複数のデータベースにまたがるクエリはサポートされていませんが、マネージド インスタンスではサポートされています。 アプリケーションによっては、PaaS オファリングと互換性のない方法で、追加のサービスをデータベース インスタンスと併置することが必要になる場合があります。

サービスとしてのインフラストラクチャ (IaaS) を使用すると、管理者は、他の Azure オファリングより細かいレベルまで、基になるインフラストラクチャの特定の設定にアクセスできます。 基になるサーバーとネットワークのハードウェアは Azure Platform によって管理されますが、管理者は、仮想マシン内にインストールされる可能性のある仮想ストレージ、仮想ネットワークの構成、追加のソフトウェアには引き続きアクセスできます。 これには Microsoft SQL Server が含まれます。

SaaS、PaaS、IaaS のオプションの制御の細分性

上の図は、IaaS を使用すると、他の Azure SQL サービスより制御できる範囲が増えることを示しています。 厳密な構成オプションはサービス内容によって異なりますが、通常、SaaS オファリングでは、管理者が担当するのはユーザーのセキュリティとおそらくデータの管理のみです。 PaaS サービスを使用すると、オペレーティング システム (OS) と他のソフトウェアはクラウド プロバイダーによって管理されます。 その好例である Azure データベース プラットフォームの場合、オペレーティング システムと RDBMS のインストールと構成は Microsoft によって行われ、お客様はデータベース アプリケーションの構築をすぐに始めることができます。 IaaS ソリューションは自由度が最も高く、OS への修正プログラムの適用だけでなく、ネットワークやストレージのオプションを最適に構成も、お客様が行う必要があります。 IaaS のデプロイを使用するときは、ソフトウェアの構成もお客様が担当します。

Azure で実行される IaaS ソリューションの場合、Microsoft が管理するのは、物理サーバー、ストレージ、物理ネットワークなど、オペレーティング システムの下にあるすべてのリソースです。 データベース管理者は、オペレーティング システムで実行される SQL Server インスタンスの構成を担当します。

Azure SQL Database など、一部のアプリケーションは、特定の動作条件が必要になるため、他の Azure オファリングには適さない場合があります。 そのような条件としては、ベンダー サポートのための SQL Server と Windows のバージョンの特定の組み合わせや、SQL Server と共にインストールする必要がある追加のソフトウェアなどがあります。 Azure IaaS プラットフォームと組み合わされた SQL Server は、CLR やレプリケーションのような特定の機能、または (Microsoft Entra ID ではなく) Active Directory 認証の使用といった、多くの組織に必要な制御オプションを提供します。 もう 1 つの要件として、アプリケーションによっては、SQL Server と共にインストールされるソフトウェアで、基になるオペレーティング システムに直接アクセスすることが必要な場合があります。 OS への直接アクセスは、PaaS モデルではサポートされていません。 このような組織とそのアプリケーションの場合、組織で必要な重要な機能を失うことなく、クラウド サービスに移行するメリットを得ることができます。

SQL Server IaaS Agent 拡張機能

Azure Marketplace から SQL Server VM をデプロイすると、プロセスの一部として、IaaS Agent 拡張機能がインストールされます。

Azure Marketplace からの SQL Server VM の作成

拡張機能は、通常、VM がデプロイされた後でデプロイ後の構成を行うために実行されるコードです。 たとえば、ウイルス対策機能のインストールや、Windows 機能のインストールなどです。 SQL Server の IaaS Agent 拡張機能には、管理オーバーヘッドを減らすことができる次の主な機能が用意されています。

  • 自動バックアップ
  • 自動修正
  • Azure Key Vault の統合
  • Defender for Cloud ポータル統合
  • ポータルのディスク使用率のビュー
  • 柔軟なライセンス
  • 柔軟なバージョンまたはエディション
  • SQL ベスト プラクティス評価

拡張機能を使用すると、これらの機能に加えて、SQL Server の構成とストレージの使用状況に関する情報を表示できます。

Azure portal での SQL 仮想マシンの構成の画像

SQL Server のライセンス モデル

Azure IaaS オファリングを使用するときの SQL Server のライセンス方法に関連するオプションがいくつかあります。

Microsoft ソフトウェア アシュアランス (SA) プログラムに参加していない場合は、事前構成済みの SQL Server が含まれるイメージを Azure Marketplace からデプロイし、SQL Server の使用に対して分単位で料金を支払うことができます。 このオプションは従量課金制モデルと呼ばれ、SQL Server のライセンスのコストは仮想マシンのコストに含まれます。

Microsoft ソフトウェア アシュアランス (SA) プログラムに参加している場合は、SQL Server のライセンスをさらに柔軟に管理できます。

  • Azure Marketplace から SQL Server が含まれる仮想マシン イメージをデプロイすることにより、以前の方法と分単位の料金を使用することができます

  • 事前構成済みの SQL Server インスタンスが含まれない仮想マシンをデプロイするときは、ライセンス持ち込み (BYOL) を行うことができます。 このオプションは、オンプレミスのインフラストラクチャ用に有効な SQL Server ライセンスを既に購入している場合に使用できます。 このライセンスを仮想マシンに適用して、ライセンスが適切に付与されるようにすることができます。 仮想マシンを実装してから 10 日以内にライセンス モビリティ確認フォームを使用して、ライセンスの使用状況を Microsoft に報告する必要があります。

この方法を選択すると、入手したメディアを使用して手動で SQL Server をインストールすることも、Azure に仮想マシン イメージをアップロードすることもできます。

SQL Server の柔軟なライセンス オプションに加えて、利用できる Windows Server ライセンス オプションもあります。 これらの Windows Server オプションは、Azure ハイブリッド特典 (AHB) と呼ばれています。 購入済みの SQL Server ライセンスを適用するのと同様に、既に所有している Windows Server ライセンスを利用することができます。

コストを節約できるもう 1 つのオプションとして、仮想マシンを 1 から 3 年間予約することができます。 このコミットメントには事前の支払いは不要で、月単位の請求を利用できます。 ワークロードが長く続くことがわかっている場合は、予約オプションを使用すると便利です。 かなりのコスト削減になり、大きい VM では特にそうです。

仮想マシン ファミリ

Azure 仮想マシンにデプロイする場合、選択できる仮想マシンのサイズにはいくつかのシリーズ ("ファミリ") があります。 各シリーズは、特定の要件を満たすメモリ、CPU、ストレージの組み合わせです。 たとえば、コンピューティングに最適化されたシリーズの場合は、メモリに対する CPU の比率が高くなります。 複数のオプションがあるので、予想されるワークロードに適したハードウェア構成を選択できます。 次の 6 つのシリーズのそれぞれで、さまざまなサイズを使用できます。詳細については、各オプションの VM サイズを選択するときに Azure portal で確認できます。

汎用 - これらの VM からは、CPU とメモリがバランスの取れた比率で提供されます。 この VM クラスは、テストや開発、小規模から中規模のデータベース サーバー、低から中程度のトラフィックの Web サーバーに最適です。

コンピューティング最適化 - コンピューティングに最適化された VM で、メモリより CPU の方が高い対比になり、トラフィックの量が中程度の Web サーバー、ネットワーク アプライアンス、バッチ処理、アプリケーション サーバーに適しています。 これらの VM を使用すると、GPU ベースの VM ではメリットが得られない機械学習ワークロードをサポートすることもできます。

メモリ最適化 - これらの VM では、CPU よりメモリの方が高い比率になります。 広範な CPU とメモリのオプション (最大 4 TB の RAM までのすべて) がこれらの VM でカバーされており、ほとんどのデータベース ワークロードに適しています。

ストレージ最適化 - ストレージに最適化された VM で、一時的な高速のローカル NVMe ストレージが提供されます。 Cassandra などのスケールアウト データ ワークロードに適しています。 SQL Server で使用することもできますが、ストレージが一時的なものであるため、Always On 可用性グループやログ配布などの機能を使用して、データ保護を構成する必要があります。

GPU - GPU を備える Azure VM の対象となる 2 つの主なワークロードの種類は、動画のレンダリングや処理などの自然なグラフィック処理操作と、GPU を利用できる超並列機械学習ワークロードです。

ハイ パフォーマンス コンピューティング - ハイ パフォーマンス コンピューティング ワークロードを使用すると、数千の CPU コアまで水平にスケーリングできるアプリケーションがサポートされます。 このサポートは、高パフォーマンスの CPU とリモート ダイレクト メモリ アクセス (RDMA) ネットワークによって実現され、VM 間の低遅延通信が提供されます。

各シリーズ内でのサイズ設定オプションを確認する最も簡単な方法は、Azure portal を使用することです。 VM を作成するためのブレードで [サイズの選択] オプションをクリックすると、一覧が表示されます。

Azure portal で表示される使用可能な VM サイズの一覧の一部

上の図は、使用できるシリーズとサイズのセットのほんの一部を示したものです。 オプションごとに、仮想 CPU の数、RAM の量、データ ディスクの数、最大 IOPS、提供される一時ストレージ、Premium Storage がサポートされるかどうかを確認できます。

VM サイズのベスト プラクティスの詳細については、「Azure VM 上の SQL Server のベスト プラクティス」を参照してください。

Azure Marketplace

Azure Marketplace は、基本的に、設計済みのテンプレートを基にして Azure リソースを作成する機能が提供される一元化された場所です。 たとえば、いくつかの基本的な情報 (仮想マシン名や SQL Server の構成情報など) を使用して、マウスを何回かクリックするだけで、Windows Server 2019 上に SQL Server 2019 のインスタンスをすばやく作成できます。 指定が済むと、Azure Resource Manager によって仮想マシンの作成が開始され、数分以内に稼働状態になります。

Azure Marketplace での Windows Server 2019 上の SQL Server 2019 のブレードを次に示します。 このブレードには、OLTP またはデータ ウェアハウスのワークロードをサポートする設定済みの構成のオプションがあり、ストレージ、修正プログラム、バックアップのオプションを指定できます。

Azure portal での SQL Server VM の作成

ポータルを使用して Azure リソースを作成する場合の欠点は、簡単に反復できるプロセスではないということです。 ただし、ポータルを使い始めるのは簡単で、リソースをすぐに稼働させることができます。

SQL Server の構成

Azure 仮想マシンに SQL Server をプロビジョニングする場合は、セキュリティとネットワーク、SQL 認証の基本設定、SQL インスタンス設定、その他のいくつかのオプションなど、特定の SQL Server 設定を構成することもできます。 これらのオプションは、次の図に示すように、[SQL Server 設定] タブにあります。

SQL Server 仮想マシンの作成時の SQL Server の [設定] タブ

仮想マシンの作成時に使用できる SQL Server 設定の詳細については、「Azure VM での SQL Server のプロビジョニング (Azure portal)」を参照してください。