*Corosync [#a186758c]
[[Corosync>+http://corosync.github.io/corosync/]]
正式名称:The Corosync Cluster Engine
LinuxでHighAvailability(H/A)構成を実現する為に使用する、ノード装置死活監視ソフトウェア。
設定したノード(対向、多対向)のノード監視を行い、ノードが停止した場合に正常系への切り替え処理を実施する。
動作としては、CiscoASAのH/A構成や、VRRPの2IP構成の動きに似ている。
~
*インストール [#bc08d1e1]
&size(16){&font(b){1. ビルド・インストール};};
色々なインストール方法があるが一番楽なのは、yum一発で入れる方法
下記コマンドを打てば、必要なライブラリも全て自動でインストール出来る。
 # yum install corosync

しかし、冗長構成等のシステム基幹部分もyumに頼るのはどうかと思うので、
今回はソースコードからのインストールも実施する。
ソースコードからインストールする時は、prefix指定によるバージョン管理を実施していたのだが、
corosyncの場合、prefix指定をするとライブラリの読込み不良を起こして起動しなかったり、
Pacemakerとの連携も上手くいかない為、prefix指定無しでビルドを実施する。
※ソースコードの取得にgitコマンドが必要なので事前にいれておく
 # git clone hogehoge
 # wget http://build.clusterlabs.org/corosync/releases/corosync-2.3.4.tar.gz
 # tar zxvf corosync-2.3.4.tar.gz
 # cd corosync-2.3.4
 # ./autogen.sh
 # ./configure --prefix=/usr/local/corosync-2.3.4 --sysconfdir=/etc --localstatedir=/var
 # make
 # make install

 # cd /usr/local
 # ln -s /usr/local/corosync-2.3.4 ./corosync
 # cd /usr/bin
 # ln -s /usr/local/corosync/bin/corosync-blackbox .
 # cd /usr/sbin
 # ln -s /usr/local/corosync/sbin/corosync* .
 # cd /usr/include/
 # ln -s /usr/local/corosync/include/corosync .
 # cd /usr/lib64/pkgconfig
 # ln -s /usr/local/corosync/lib/pkgconfig/* .
 # cd /usr/lib64
 # ln -s /usr/local/corosync/lib/lib* .

 # cp ${SOURCE_DIR}/init/corosync.sysconfig.example /etc/sysconfig/corosync
 # cd /etc/init.d
 # mv corosync corosync-
 # sed -e "s/corosync-2.3.4/corosync/g" corosync- > corosync
~
&size(16){&font(b){2. コンフィグ};};
設定ファイルはひな形を元に作成する。
項目については[[GitHub:+https://gist.github.com/inokappa/124b1ee5f3e3fbe6b172]]で解説されているので、そちらを参照
 # cp /etc/corosync/corosync.conf.example.udpu /etc/corosync/corosync.conf
 # vi /etc/corosync/corosync.conf
 =====