MySQL – フレキシブル サーバーを可用性ゾーンのサポートに移行する

このガイドでは、MySQL – フレキシブル サーバーを可用性ゾーンのサポートなしから可用性ゾーンのサポートありに移行する方法について説明します。

2 つの高可用性 (HA) アーキテクチャ モデルのいずれかを使うように、Azure Database for MySQL フレキシブル サーバーを構成できます。

  • 同一ゾーン HA アーキテクチャ (ゾーン ベース)。 このオプションは、プライマリ サーバーとスタンバイ サーバーが同じ可用性ゾーンに存在するので、ネットワーク待機時間が短いインフラストラクチャの冗長性に適しています。 高可用性を実現するのに、ゾーンをまたいでアプリケーションの冗長性を構成する必要がありません。 単一の可用性ゾーン内で、ネットワーク待機時間が最も短い最高レベルの可用性を実現する必要がある場合は、同一ゾーン HA が推奨されます。 同一ゾーン HA は、Azure Database for MySQL - フレキシブル サーバーを使用できるすべての Azure リージョンで使用できます。 同一ゾーン HA アーキテクチャについて詳しくは、「同一ゾーン HA のアーキテクチャ」をご覧ください。

  • ゾーン冗長 HA アーキテクチャ。 このオプションは、複数の可用性ゾーンにわたるインフラストラクチャの完全な分離と冗長性を実現する場合に適しています。 最高レベルの可用性が提供されますが、複数のゾーンにわたってアプリケーションの冗長性を構成する必要があります。 可用性ゾーン内のインフラストラクチャ障害に対して最高レベルの可用性を実現する必要があり、可用性ゾーン全体の待機時間を許容できる場合は、ゾーン冗長 HA が推奨されます。 サーバーを作成するときにのみ有効にすることができます。 ゾーン冗長 HA は、リージョンで複数の可用性ゾーンがサポートされていて、ゾーン冗長 Premium ファイル共有が利用可能な Azure リージョンのサブセットで利用できます。 ゾーン冗長 HA アーキテクチャについて詳しくは、「ゾーン冗長 HA のアーキテクチャ」をご覧ください。

既存のワークロードをゾーン ベース (同一ゾーン HA) からゾーン冗長 HA に移行するには、次のことを行う必要があります。

  1. ゾーン冗長 HA 用に構成された新しいサーバーをデプロイして構成します。

  2. このドキュメントの移行ガイダンスに従って、リソースを新しいサーバーに移動します。

前提条件

可用性ゾーン サポートに移行するには:

  1. 次の 2 つのサーバーのうち少なくとも 1 つが必要です。

    • 可用性ゾーンをサポートしていないリージョンで Azure Database for MySQL フレキシブル サーバーを実行している移行元サーバー。

    • 作成時に HA が有効にされなかった Azure Database for MySQL フレキシブル サーバー。

    重要

    もともと Azure Database for MySQL フレキシブル サーバーを非 HA サーバーとしてプロビジョニングした場合は、同一ゾーン HA アーキテクチャを有効にするだけで済みます。 一方、ゾーン冗長 HA アーキテクチャを有効にしたい場合は、この記事で示されている使用可能な移行オプションのいずれかを実装する必要があります。

  2. 可用性ゾーンをサポートしているリージョンで Azure Database for MySQL フレキシブル サーバーを実行するターゲット サーバーを作成する必要があります。 Azure Database for MySQL フレキシブル サーバーの作成方法について詳しくは、Azure portal を使用した Azure Database for MySQL フレキシブル サーバーの作成に関する記事をご覧ください。 HA を有効にして、"ゾーン冗長" オプションを選び、作成されるサーバーがゾーン冗長用に構成されるようにします。

ヒント

将来的にゾーン ベース (同一ゾーン) とゾーン冗長 HA の間を柔軟に移動できるようにしたい場合は、サーバーの作成時にゾーン冗長 HA を有効にして Azure Database for MySQL フレキシブル サーバーをプロビジョニングできます。 サーバーがプロビジョニングされたら、HA を無効にしてかまいません。

ダウンタイムの要件

移行はオフラインまたはオンラインに分類できます。

オフライン移行。 アプリケーションである程度のダウンタイムを許容できる場合は、シンプルで実行しやすいオフライン移行を選択することを常にお勧めします。 オフライン移行では、移行元サーバーがオフラインになり、移行先サーバーでデータベースのダンプと復元が実行されます。 このオプションを選ぶと、最も多くのダウンタイムが必要になります。 ダウンタイムの長さは、移行先サーバーで復元を実行するのにかかる時間によって決まります。

オンライン移行。 このオプションはダウンタイムが最小限であり、ダウンタイムを短くしたい場合に最適な選択肢です。 移行元サーバーを更新することができ、最初のダンプと移行先での復元と併せて、移行元と移行先サーバーの間での実行中の変更のレプリケーションが、移行ソリューションによって処理されます。

移行オプション 1: オフライン移行

次のいずれかのツールを使って、1 つの Azure Database for MySQL フレキシブル サーバーから別のサーバーに移行できます。 どちらのオプションでもダウンタイムが必要です。

  1. データ移行サービス (DMS)。 DMS を使って MySQL フレキシブル サーバーを別のサーバーに移行する方法については、「Azure portal を介して DMS を使用してオフラインで Azure Database for MySQL - 単一サーバーをフレキシブル サーバーに移行する」をご覧ください。 このチュートリアルでは、Azure MySQL 単一サーバーからフレキシブル サーバーに移行する手順の概要が示されていますが、可用性ゾーンをサポートしていない Azure Database for MySQL フレキシブル サーバーから、可用性ゾーンをサポートする別のサーバーへのデータの移行にも、同じ手順を使用できます。

  2. オープンソース ツールMySQL Workbenchmydumper/myloadermysqldump などのオープンソース ツールを使って、データベースのバックアップと復元を行い、オフラインで移行できます。 これらのツールの使い方については、「Azure Database for MySQL - 単一サーバーからフレキシブル サーバーへの移行に関するオプション」をご覧ください。 このチュートリアルでは、Azure MySQL 単一サーバーからフレキシブル サーバーに移行する手順の概要が示されていますが、可用性ゾーンをサポートしていない Azure Database for MySQL フレキシブル サーバーから、可用性ゾーンをサポートする別のサーバーへのデータの移行にも、同じ手順を使用できます。

移行オプション 2: オンライン移行

次のいずれかのツールを使い、アプリケーションのダウンタイムを最小限にして、1 つの Azure Database for MySQL フレキシブル サーバーから別のサーバーに移行できます。

  1. データ移行サービス (DMS)。 DMS を使って MySQL フレキシブル サーバーを別のサーバーに移行する方法については、「Azure portal を介して DMS を使用してオンラインで Azure Database for MySQL - 単一サーバーをフレキシブル サーバーに移行する」をご覧ください。 このチュートリアルでは、Azure MySQL 単一サーバーからフレキシブル サーバーに移行する手順の概要が示されていますが、可用性ゾーンをサポートしていない Azure Database for MySQL フレキシブル サーバーから、可用性ゾーンをサポートする別のサーバーへのデータの移行にも、同じ手順を使用できます。

  2. オープンソース ツール。 mydumper/myloader などのオープンソース ツールをデータイン レプリケーションと組み合わせて使用できます。 データイン レプリケーションの設定方法については、「Azure Database for MySQL のデータイン レプリケーションを構成する方法」をご覧ください。

重要

HA が有効なサーバーのデータイン レプリケーションはサポートされていません。 これを回避するには、移行先サーバーを最初にゾーン冗長 HA でプロビジョニングした後、データイン レプリケーションを構成する前に HA を無効にします。 レプリケーションが完了したら、移行先サーバーでゾーン冗長 HA を再び有効にします。

次のステップ

各項目の詳細情報