アクティブ / アクティブ設定は、異なるデータベースインスタンスを実行し、互いにバックアップの役割を果たす 2 台以上のサーバで構成されます。各データベースインスタンスは、別々の共有物理ディスク上に置かれていなければなりません。複数の MySQL データーベースインスタンス (同じバージョンもしくは異なるバージョン) をサポートする LifeKeeper の設定のために、SIOS では mysqld グループ 機能をサポートするバージョンの MySQL を使用することを推奨しています。これらの設定では my.cnf 設定ファイルは /etc に存在します。mysqld グループ機能をサポートしないバージョンの MySQL では、 my.cnf 設定ファイルは各データベースインスタンスの共有ファイルシステムの MySQL データディレクトリに存在している必要があります(例: 下記図 2 では /shr1/mysql および /shr2/mysql)。

図 2.アクティブ / アクティブ設定、例 2

設定に関する注記:

  • 各サーバは異なる共有ディスク上にある異なる MySQL データディレクトリ(データベースインスタンス database A と database B を含む)を使用します。
  • MySQL データディレクトリへのパスは、サーバ上に定義されているインスタンスごとに異なります。
  • my.cnf 設定ファイルは /etc に配置され、各データベースインスタンスの mysqld グループセクションを含んでいます。各セクションはデータベースインスタンスに対する一意の MySQL データディレクトリ、ポート、ソケットを定義します。   my.cnf 設定ファイルはクラスタの全ノードで常に同一の内容であることに留意してください。mysqld グループをサポートしないバージョンの MySQL が起動しているシステムでは、各データベースインスタンスに対する my.cnf 設定ファイルは共有ドライブ上のデータディレクトリに配置されています。各設定ファイルはデータベースインスタンスに対する一意の MySQL データディレクトリ、ポート、ソケット定義を定義します。
  • MySQL 実行ファイルは各サーバのローカルドライブの /usr/bin にあります。
  • 最初は、Server 1 で databaseA が、Server 2 で databaseB が稼動します。スイッチオーバが発生した場合は、1 台のサーバで両方のデータベースが稼動できます。

Server 1 での 1 つ目のリソース階層の作成

サーバ: Server1
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /usr/bin
データベースタグ: mysql-shared.example.instance1

 

1 つ目のリソース階層の Server 2 への拡張

テンプレートサーバ: Server1
拡張するタグ: mysql-shared.example.instance1
ターゲットサーバ: Server2
ターゲットの優先順位: 10
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /usr/bin
データベースタグ: mysql-shared.example.instance1

 

Server 2 での 2 つ目のリソース階層の作成:

サーバ: Server2
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /usr/bin
データベースタグ: mysql-shared.example.instance2

 

2 つ目のリソース階層の Server 1 への拡張:

テンプレートサーバ: Server2
拡張するタグ: mysql-shared.example.instance2
ターゲットサーバ: Server1
ターゲットの優先順位: 10
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /usr/bin
データベースタグ: mysql-shared.example.instance2

 

図 3.アクティブ / アクティブ設定、例 2

設定に関する注意:

  • 各サーバは異なる共有ディスク上にある異なる MySQL データディレクトリ(データベースインスタンス database A と database B を含む)を使用します。
  • MySQL データディレクトリへのパスは、サーバ上に定義されているデータベースインスタンスごとに異なります。
  • my.cnf 設定ファイルは /etc に配置され、各データベースインスタンスの mysqld グループセクションを含んでいます。各セクションはデータベースインスタンスに対する一意の MySQL データディレクトリ、ポート、ソケットを定義します。   my.cnf 設定ファイルはクラスタの全ノードで常に同一の内容であることを留意してください。mysqld グループをサポートしないバージョンの MySQL が起動しているシステムでは、各データベースインスタンスに対する my.cnf 設定ファイルがデータベースのデータディレクトリの共有ドライブ上に配置されています。各設定ファイルはデータベースインスタンスに対する一意の MySQL データディレクトリ、ポート、ソケットを定義します。
  • データディレクトリを含む共有ディスクのそれぞれに MySQL 実行可能ファイルのコピーがあります。
  • 最初は、Server 1 で databaseA が、Server 2 で databaseB が稼動します。スイッチオーバが発生した場合は、1 台のサーバで両方のデータベースが稼動します。

Server 1 での 1 つ目のリソース階層の作成

サーバ: Server1
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /shr1/mysqlbin
データベースタグ: mysql-shared.example.instance1

1 つ目のリソース階層の Server 2 への拡張:

テンプレートサーバ: Server1
拡張するタグ: mysql-shared.example.instance1
ターゲットサーバ: Server2
ターゲットの優先順位: 10
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /shr1/mysqlbin
データベースタグ: mysql-shared.example.instance1

 

Server 2 での 2 つ目のリソース階層の作成:

サーバ: Server2
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /shr2/mysqlbin
データベースタグ: mysql-shared.example.instance2

 

2 つ目のリソース階層の Server 1 への拡張

テンプレートサーバ: Server2
拡張するタグ: mysql-shared.example.instance2
ターゲットサーバ: Server1
ターゲットの優先順位: 10
my.cnf ファイルがあるディレクトリ: /etc
MySQL 実行可能ファイルがあるディレクトリ: /shr2/mysqlbin
データベースタグ: mysql-shared.example.instance2

フィードバック

フィードバックありがとうございました

このトピックへフィードバック

送信