Azure Database for PostgreSQL - フレキシブル サーバーで高可用性を管理する
適用対象: Azure Database for PostgreSQL - フレキシブル サーバー
この記事では、ゾーン冗長と同一ゾーンの両方のデプロイ モデルの Azure Database for PostgreSQL フレキシブル サーバー インスタンスで高可用性構成を有効または無効にする方法について説明します。
高可用性機能により、デプロイ モデルに応じて、同じゾーンまたはゾーン間で、物理的に分離されたプライマリ レプリカとスタンバイ レプリカがプロビジョニングされます。 詳細については、高可用性の概念に関するドキュメントを参照してください。 Azure Database for PostgreSQL フレキシブル サーバー インスタンスの作成時、または作成後に、高可用性を有効にすることを選択できます。
このページでは、高可用性を有効または無効にする方法に関するガイドラインを示します。 この操作では、VNET 構成、ファイアウォール設定、バックアップ保有期間などの他の設定は変更されません。 同様に、高可用性の有効化と無効化はオンライン操作であり、アプリケーションの接続と操作には影響しません。
重要
Azure Database for PostgreSQL フレキシブル サーバー (v5 HA) の課金モデル更新プログラム: 高可用性 (HA) が有効なサーバーを使用する v5 SKU 向け課金モデル更新プログラムが 4 月に実装されました。 この変更の目的は、プライマリ サーバーとスタンバイ サーバーの両方を考慮して、料金が正しく反映されるようにすることです。 この変更の前は、プライマリ サーバーのみが考慮され、お客様に対する課金が誤って行われていました。 HA が有効なサーバーで v5 SKU を使用しているお客様には現在、課金数量に 2 を掛けたものが表示されます。 この更新プログラムは、v4 および v3 SKU には影響しません。
前提条件
重要
ゾーン冗長の高可用性をサポートするリージョンの一覧については、 こちらでサポートされているリージョンを確認してください。
サーバーの作成時に高可用性を有効にする
このセクションでは、特に HA に関連するフィールドの詳細について説明します。 次の手順に従って、Azure Database for PostgreSQL フレキシブル サーバー インスタンスの作成中に高可用性を展開できます。
Azure portal で、Azure Database for PostgreSQL フレキシブル サーバーを選び、[作成] を選びます。 [サブスクリプション]、[リソース グループ]、[サーバー名]、[リージョン] などのフィールドに詳細を入力する方法について詳しくは、Azure Database for PostgreSQL - フレキシブル サーバーの作成方法に関するページを参照してください。
可用性ゾーンを確認します。 これは、待機時間を短縮するために、データベースと同じ可用性ゾーンにアプリケーションを併置する場合に便利です。 Azure Database for PostgreSQL フレキシブル サーバー インスタンスでプライマリ サーバーを任意の可用性ゾーンに展開する場合は、[優先なし] を選びます。 ゾーン冗長 HA 展開でプライマリの可用性ゾーンを選択した場合にのみ、スタンバイ可用性ゾーンの選択が許可されることに注意してください。
[高可用性を有効にする] チェック ボックスをオンにします。 これにより、高可用性モードを選択するオプションが開きます。 リージョンが AZ をサポートしない場合は、同じゾーン モードのみが有効になります。
手順 2 で可用性ゾーンを選択し、ゾーン冗長 HA を選択した場合は、スタンバイ ゾーンを選択できます。
デフォルトのコンピューティングとストレージを変更する場合は、[サーバーを構成] を選びます。
[高可用性] オプションをオンにすると、バースト可能レベルは選択できなくなります。 [汎用] または [メモリ最適化] のどちらかのコンピューティング レベルを選択できます。 次に、ドロップダウン リストから選択したコンピューティング サイズを選択できます。
スライディング バーを使用して GiB 単位でストレージ サイズを選択し、7 日から 35 日の範囲でバックアップ保持期間を選択します。
[保存] を選択します。
サーバーの作成後に高可用性を有効にする
次の手順に従って、既存のAzure Database for PostgreSQL フレキシブル サーバー インスタンスの高可用性を有効にします。
Azure portal で、既存の Azure Database for PostgreSQL - フレキシブル サーバー インスタンスを選択します。
Azure Database for PostgreSQL フレキシブル サーバー インスタンスのページで、左のパネルから [高可用性] を選択して、[高可用性] ページを開きます。
[高可用性を有効にする] チェックボックスをオンにして、オプションを有効にします。 同じゾーン HA とゾーン冗長 HA のオプションを示します。 ゾーン冗長 HA を選択した場合は、スタンバイ AZ を選択できます。
高可用性を有効にすると、サーバーの追加と記憶域の展開によってコストが増大することを示す確認ダイアログが表示されます。
[HA を有効にする] ボタンをオンにして、高可用性を有効にします。
高可用性の展開が進行中であることを示す通知が表示されます。
高可用性を無効にする
次の手順に従って、既に高可用性で構成されている Azure Database for PostgreSQL フレキシブル サーバー インスタンスの高可用性を無効にします。
Azure portal で、既存の Azure Database for PostgreSQL - フレキシブル サーバー インスタンスを選択します。
Azure Database for PostgreSQL フレキシブル サーバー インスタンスのページで、前面のパネルから [高可用性] を選択して、[高可用性] ページを開きます。
[高可用性] チェックボックスをオンにして、オプションを無効にします。 次に [保存] を選択して変更を保存します。
高可用性を無効にすることを確定できる確認ダイアログが表示されます。
[Disable HA](高可用性を無効にする) ボタンを選択して、高可用性を無効にします。
高可用性の展開の使用停止が進行中であることを示す通知が表示されます。
強制フェールオーバー
次の手順に従って、プライマリの Azure Database for PostgreSQL フレキシブル サーバー インスタンスをスタンバイに強制的にフェールオーバーします。 これにより、すぐにプライマリがダウンし、スタンバイ サーバーへのフェールオーバーがトリガーされます。 これは、ワークロードの計画外の停止フェールオーバー時間をテストする場合に便利です。
Azure portal で、高可用性機能が既に有効になっている既存の Azure Database for PostgreSQL フレキシブル サーバー インスタンスを選択します。
Azure Database for PostgreSQL フレキシブル サーバー インスタンスのページで、前面のパネルから [高可用性] を選択して、[高可用性] ページを開きます。
プライマリ可用性ゾーンとスタンバイ可用性ゾーンを確認します
[強制フェールオーバー] を選択して、手動フェールオーバーの手順を開始します。 フェールオーバーが完了するまでの潜在的なダウンタイムがポップアップで通知されます。 メッセージを確認し、[OK] を選びます。
フェールオーバーが進行中であることを示す通知が表示されます。
スタンバイ サーバーへのフェールオーバーが完了すると、通知がポップアップ表示されます。
新しいプライマリ可用性ゾーンとスタンバイ可用性ゾーンを確認します。
重要
フェールオーバーは、すぐに連続して実行しないでください。 次のフェールオーバーまで少なくとも 15 分から 20 分待つと、新しいスタンバイ サーバーも完全に確立されます。
ポータルで報告されるエンドツーエンドの全体的な操作時間は、アプリケーションで発生する実際のダウンタイムよりも長くなる場合があります。 アプリケーションの観点からダウンタイムを測定してください。
計画されたフェールオーバー
次の手順に従って、プライマリの Azure Database for PostgreSQL フレキシブル サーバー インスタンスからスタンバイへの計画フェールオーバーを実行します。 これにより、まずスタンバイ サーバーが準備され、フェールオーバーが実行されます。 これにより、フェールオーバー イベントの後にプライマリを優先可用性ゾーンに戻したい場合などに、スタンバイ サーバーへの正常なフェールオーバーが実行されるため、ダウンタイムが最小限に抑えられます。
- Azure portal で、高可用性機能が既に有効になっている既存の Azure Database for PostgreSQL フレキシブル サーバー インスタンスを選択します。
- Azure Database for PostgreSQL フレキシブル サーバー インスタンスのページで、前面のパネルから [高可用性] を選択して、[高可用性] ページを開きます。
- プライマリ可用性ゾーンとスタンバイ可用性ゾーンを確認します
- 計画フェールオーバーを選択して、手動フェールオーバーの手順を開始します。 プロセスについて通知するポップアップが表示されます。 メッセージを確認し、[OK] を選びます。
- フェールオーバーが進行中であることを示す通知が表示されます。
- スタンバイ サーバーへのフェールオーバーが完了すると、通知がポップアップ表示されます。
- 新しいプライマリ可用性ゾーンとスタンバイ可用性ゾーンを確認します。
重要
フェールオーバーは、すぐに連続して実行しないでください。 次のフェールオーバーまで少なくとも 15 分から 20 分待つと、新しいスタンバイ サーバーも完全に確立されます。
計画フェールオーバーは、アクティビティの少ない時間に実行することをお勧めします。
エンドツーエンドの全体的な操作時間は、アプリケーションで発生する実際のダウンタイムよりも長くなる場合があります。 アプリケーションの観点からダウンタイムを測定してください。
リージョンで AZ がサポートされた後にゾーン冗長 HA を有効にする
Azure リージョンの中には、可用性ゾーンがサポートされていないリージョンもあります。 HA 以外のサーバーを既に展開している場合、そのサーバーでゾーン冗長 HA を直接有効にすることはできません。ただし、復元を実行し、そのサーバーで HA を有効にすることはできます。 そのサーバーに対してゾーン冗長 HA を有効にする方法を次の手順に示します。
- サーバーの概要ページで、[復元] を選択して PITR を実行します。 [最新の復元ポイント] を選択します。
- サーバー名 (可用性ゾーン) を選択します。
- [確認と作成] を選びます。
- バックアップから新しい Azure Database for PostgreSQL フレキシブル サーバー インスタンスが作成されます。
- 新しいサーバーが作成されたら、サーバーの概要ページから、ガイドに従って HA を有効にします。
- データ検証の後、必要に応じて古いサーバーを削除することもできます。
- クライアントの接続文字列が、新しい HA 対応サーバーを指すように変更されていることを確認します。
次のステップ
- ビジネス継続性について確認する
- ゾーン冗長による高可用性について確認する