Pacemaker
データベース や 仮想IP(VIP) をはじめとしたさまざまなリソースのHAクラスタを実現するためのOSS。
Cluster Resource Manager と呼ばれる区分のソリューション。排他制御として STONITH を実装し スプリットブレイン (両系稼働) を回避する仕組みを備えている。
ネットワーク接続の監視、ディスクの監視と、クラスタに参加しているノードを相互に、あるいは自分自身も監視を行う。
元は Heartbeat のリソース制御機能が分離したもの。そのため Pacemaker 単体では動作できないので Heartbeat や Corosync と併用する。MySQL や PostgreSQL などのデータベースをはじめとした取り扱い可能なリソースのHAクラスタを構築できる。
Pacemaker そのものの概要は下記のページが詳しい。
http://linux-ha.osdn.jp/wp/manual/pacemaker_outline
リソースエージェント
Pacemaker で管理するリソースの監視と制御を行うスクリプト。
PostgreSQL なら pgsql、MySQL なら mysql など対応したものが存在し、必要なものを設定して利用する。
同梱されてるものに加えて自作して新たなリソースを扱えるように拡張できる。
リソースグループ
ref: Pacemaker を使用した Red Hat High Availability Add-On の設定 - 6.5. リソースグループ
Pacemaker のリソースをグルーピングして管理する仕組み。
データベースとVIPを対応する1つのグループにまとめておくと、データベースが切り替わったときにMasterに昇格したノードにVIPも移動するといったような使い方ができる。
関連コマンド
pcs
クラスタを設定・確認するコマンド
crm
pcs が同梱される以前から実装されているクラスタを設定・確認するコマンド
いまは pcs を使えば基本的にOK。
pgsql
Pacemaker で PostgreSQL をクラスタのリソースとして扱うリソースエージェント、もしくはコマンド
参考
https://linux-ha.osdn.jp/wp/wp-content/uploads/pacemaker_20120526JPUG.pdf
構成例
https://ha-cluster.jp/system/pacemaker/ を確認してみると良さそう