Symfoware Serverでは、それぞれのシステムにおけるフェイルオーバの運用方式について、以下の2つの方式を提供します。
共有ディスク方式
ログシッピング方式
クラスタソフトウェアであるPRIMECLUSTERと連携します。PRIMECLUSTERが提供する共有ディスク(GDS)を用います。クラスタシステム内の1台が、アクティブなサーバ(運用系)としてアプリケーションの処理を受け付けます。
例えば、運用系がダウンした場合には、他の1台(待機系)が共有ディスクの内容を引き継いで運用系となります。PRIMECLUSTERの機能によって、データベースの運用系側で動作させたいアプリケーションもデータベースと連動して切り替えることができます。また、運用系におけるデータベースの更新内容を待機系に送信する必要がないため、運用中の処理性能は非クラスタシステムと同等です。
注意
Symfoware ServerのPRIMECLUSTER連携では、待機系でディスクを参照しないため負荷分散の用途で用いることはできません。
PostgreSQLのストリーミングレプリケーションに基づいた運用方式です。クラスタソフトウェアなどの他のソフトウェアを必要としません。
この方式では、クラスタシステムを構成するすべてのサーバで複製されたデータベースを持ちます。更新を受け付けるサーバ(プライマリサーバ)から、データベースの更新トランザクションログをその他のサーバ(スタンバイサーバ)へと送信してスタンバイサーバでその更新トランザクションログを反映することで、これらの複製データベースを維持します。
また、クライアントドライバがプライマリサーバやスタンバイサーバを自動的に識別することで、アプリケーションは物理的なサーバを意識せずに透過的に接続できます。これによって、参照しか行わない接続をスタンバイサーバにオフロードするなどの柔軟なシステムを容易に構築できます。
注意
Symfoware Server Enterprise EditionおよびStandard Editionでは、1つのプライマリサーバに対して1つのスタンバイサーバの構成だけをサポートしています。
ログシッピング方式には、以下の3つの機能があります。
ストリーミングレプリケーション機能
PostgreSQLのストリーミングレプリケーション機能をそのまま利用できます。
データベースの複製方法として、スタンバイサーバ側でトランザクションログの同期受信を行わないことで非クラスタシステムと同等の性能を実現する非同期モードを選択することが可能です。
この場合、スタンバイサーバ側の複製データベースが厳密には少し遅れることに注意してください。
データベース多重化機能
データベースプロセス、ディスク、ネットワークなどのデータベース運用の継続に不可欠な要素の障害を検知する機能、プライマリサーバの切り替えを手動で行うスイッチオーバ機能、スタンバイサーバの切り離し機能などを提供します。ただし、スタンバイサーバでは、SQL文は実行できません。
データベースの複製方法には、同期モードを用います。
Mirroring Controllerオプション
データベース多重化機能におけるプライマリサーバの切り替えおよび切り離しを自動的に行うフェイルオーバ機能を提供します。
スタンバイサーバでは、参照系SQL文を実行できます。
参照
共有ディスク方式の詳細は、“第2部 共有ディスク方式のフェイルオーバ運用”を参照してください。
本マニュアルでは、ストリーミングレプリケーション機能については説明しません。
ストリーミングレプリケーション機能の詳細は、”PostgreSQL文書”の“高可用性、負荷分散およびレプリケーション”を参照してください。
データベース多重化機能の詳細は、“第3部 データベース多重化運用”を参照してください。
Mirroring Controllerオプションを使用する場合においても、“第3部 データベース多重化運用”を参照してください。
また、Mirroring Controllerオプションでだけ必要となる説明や手順については、各章および節の“Mirroring Controllerオプションを使用する場合”を参照してください。