Microsoft SQL Server の Always On 可用性グループ(AG)を使用すると、複数の SQL Server Enterprise インスタンス間でデータベースを複製できます。
SQL Server フェイルオーバー クラスタ インスタンスと同様に、Always On 可用性グループは Windows Server フェイルオーバー クラスタリング(WSFC)を使用して高可用性を実装します。ただし、この 2 つの機能には次のような違いがあります。
| Always On 可用性グループ | フェイルオーバー クラスタ インスタンス | |
|---|---|---|
| フェイルオーバーのスコープ | データベースのグループ | インスタンス |
| ストレージ | 共有なし | 共有 |
詳細な比較については、フェイルオーバー クラスタ インスタンスと可用性グループの比較をご覧ください。
Always On 可用性グループは、複数の可用性モードをサポートしています。このチュートリアルでは、Always On 可用性グループを同期 commit モードでデプロイして、1 つ以上のデータベースの高可用性を実装する方法について説明します。
この設定では、3 つの VM インスタンスを作成します。2 つの VM インスタンス(node-1 と node-2)がクラスタノードとして機能し、SQL Server を実行します。3 番目の VM インスタンス witness は、フェイルオーバー シナリオでクォーラムを達成するために使用されます。3 つの VM インスタンスは 3 つのゾーンに分散され、共通のサブネットを共有します。
SQL Server Always On 可用性グループを使用して、サンプル データベース bookshelf が、2 つの SQL Server インスタンス間で同期的に複製されます。
オンプレミスの Windows Server フェイルオーバー クラスタリング環境では、ARP 通知によって IP アドレスのフェイルオーバーがトリガーされます。ただし、Google Cloudは ARP のアナウンスメントを無視します。そのため、2 つのオプション、内部ロードバランサの使用、または分散ネットワーク名(DNN)の使用のいずれかを実装する必要があります。この記事は、 Google Cloud に Active Directory がデプロイされており、SQL Server、Active Directory、Compute Engine の基本的な知識があることを前提としています。 Google Cloudの Active Directory の詳細については、始める前にセクションをご覧ください。