チュートリアル: DH2i DxEnterprise を使用して 3 ノード Always On 可用性グループを設定する

適用対象:Azure VM 上の SQL Server

このチュートリアルでは、Linux ベースの Azure 仮想マシン (VM) 上で実行される DH2i DxEnterprise を使用して、SQL Server Always On 可用性グループを構成する方法について説明します。

DxEnterprise の詳細については、DH2i DxEnterprise に関するページを参照してください。

Note

Microsoft では、データ移動、可用性グループ、および SQL Server コンポーネントをサポートしています。 クラスターとクォーラムの管理については、DH2i DxEnterprise クラスターのドキュメントに関するサポートについて、DH2i にお問い合わせください。

このチュートリアルでは、DxAdmin Client UI を使用して DxEnterprise クラスターを設定します。 必要に応じて、DxCLI コマンド ライン インターフェイスを使用してクラスターを設定することもできます。 この例では、4 つの VM を使用しています。 これらの VM のうち 3 つは Ubuntu 18.04 を実行し、3 ノード クラスターに参加します。 4 つ目の VM では、クラスターの管理と構成を行うための DxAdmin ツールがインストールされた Windows 10 を実行します。

このチュートリアルは、以下の手順から構成されています。

  • 可用性グループに含めるすべての仮想マシンに SQL Server をインストールします。
  • すべての仮想マシンに DxEnterprise をインストールし、DxEnterprise クラスターを構成します。
  • フェールオーバーのサポートと高可用性を提供する仮想ホストを作成し、可用性グループを追加して、その可用性グループにデータベースを追加します。
  • 可用性グループ リスナーの内部 Azure Load Balancer を作成します (省略可)。
  • 手動フェールオーバーまたは自動フェールオーバーを実行します。

前提条件

可用性グループの Azure VM 上に SQL Server をインストールする

このチュートリアルでは、可用性グループを実行する 3 ノードの Linux ベース クラスターを作成します。 選択した Linux プラットフォームに応じて、Linux への SQL Server のインストールに関するドキュメントに従ってください。 このチュートリアルでは、SQL Server ツールもインストールするようお勧めします。

Note

選択した Linux OS が、DH2i DxEnterprise、「最小システム要件」Microsoft SQL Server の両方でサポートされる一般的なディストリビューションであることを確認してください。

このチュートリアルでは、DH2i DxEnterprise と Microsoft SQL Server の両方でサポートされている Ubuntu 18.04 を使用します。

このチュートリアルでは、Windows VM に SQL Server はインストールしません。このノードはクラスターには参加せず、DxAdmin を使用してクラスターを管理する目的でのみ使用されるためです。

この手順が完了した時点で、可用性グループに参加している Linux ベースの 3 つの VM すべてに SQL Server と SQL Server ツール (任意) がインストールされているはずです。  

VM に DxEnterprise をインストールしてクラスターを構成する

この手順では、DH2i DxEnterprise for Linux を 3 つの Linux VM にインストールします。 次の表では、各サーバーがクラスターで果たすロールについて説明します。

[Number of VMs](VM の数) DH2i DxEnterprise ロール Microsoft SQL Server 可用性グループのレプリカ ロール
1 クラスター ノード - Linux ベース プライマリ
1 クラスター ノード - Linux ベース セカンダリ - 同期コミット
1 クラスター ノード - Linux ベース セカンダリ - 同期コミット
1 DxAdmin クライアント NA

Linux ベースの 3 つのノードに DxEnterprise をインストールする方法については、選択した Linux オペレーティング システムに応じて、DH2i DxEnterprise のドキュメントに従ってください。 次のいずれかの方法を使用して DxEnterprise をインストールします。

Windows VM に DxAdmin クライアント ツールだけをインストールする場合は、DxAdmin Client UI クイック スタート ガイドに従ってください。

この手順を終えた時点で、Linux VM 上には DxEnterprise クラスターが作成され、Windows クライアント マシンには DxAdmin クライアントがインストールされているはずです。

Note

いずれか 1 つのノードを "構成のみモード" として追加して自動フェールオーバーを有効にした 3 ノード クラスターを作成することもできます。 詳細については、「サポートされる可用性モード」を参照してください。

フェールオーバーのサポートと高可用性のための仮想ホストを作成する

この手順では、仮想ホストと可用性グループを作成した後、データベースを追加します。いずれの作業も DxAdmin UI を使用して行います。

Note

この手順の途中で、可用性グループを有効にするために SQL Server インスタンスが再起動されます。

DxAdmin を実行する Windows クライアント マシンに接続し、前の手順で作成したクラスターに接続します。 「DxAdmin での MSSQL 可用性グループ」に記載の手順に従って Always On を有効にし、仮想ホストと可用性グループを作成します。

ヒント

データベースを追加する前に、SQL Server のプライマリ インスタンスにデータベースが作成されてバックアップされていることを確認してください。

リスナー用の内部 Azure Load Balancer を作成する (省略可)

この手順 (省略可) では、可用性グループ リスナーの IP アドレスを保持する Azure ロード バランサーを作成して構成できます。 Load Balancer の詳細については、Azure Load Balancer に関するページを参照してください。 DxAdmin を使用して Load Balancer と可用性グループ リスナーを構成する場合は、Azure Load Balancer クイック スタート ガイドを参照してください。

この手順を終えた時点で、可用性グループ リスナーが作成されて、内部ロード バランサーにマップされているはずです。

手動フェールオーバーまたは自動フェールオーバーをテストする

自動フェールオーバーのテストを行うために、Azure portal から仮想マシンをオフにして、プライマリ レプリカを停止します。 このテストにより、プライマリ ノードが突然利用できなくなった状態が再現されます。 予期される動作は次のとおりです。

  • クラスター マネージャーにより、可用性グループ内のいずれかのセカンダリ レプリカがプライマリに昇格します。
  • 失敗したプライマリ レプリカは、バックアップされた後に自動的にクラスターに参加します。 これは、クラスター マネージャーによってセカンダリ レプリカに昇格します。

以下の手順に従って手動フェールオーバーを実行することもできます。

  1. DxAdmin を使用してクラスターに接続します。
  2. 可用性グループの仮想ホストを展開します。
  3. ターゲット ノードまたはセカンダリ レプリカを右クリックし、[Start Hosting on Member] (メンバーでのホスティングを開始する) を選択してフェールオーバーを開始します。

DxEnterprise 内での操作について詳しくは、DxEnterprise 管理者ガイドおよび DxEnterprise DxCLI ガイドを参照してください。

次の手順