AirVergo

Web製作にまつわる雑記帳です。たまに更新してます。

CentOS6.5+Heartbeat+Pacemakerでクラスタ構成(Redmine編)

2014/4/22

前回のAipo(Tomcat+PostgreSQL)に続いて、

Redmine(Apache+Passenger+MySQL)をクラスタ化します。

Redmineのインストール方法についてはこちらを参照してください。

http://blog.redmine.jp/articles/2_5/installation_centos/

aipoと同じように、DRBDの領域にredmineをインストールします。

一番のポイントはMySQLのデータディレクトリを/var/lib/mysqlから/home/mysqlに変更するところです。

vi /etc/my.cnf

#datadir=/var/lib/mysql

datadir=/home/mysql

のようにして、/home/mysqlの所有権を変更します。

chown mysql:mysql /home/mysql

あともう一つポイントがあって、RubyやRails、Passengerのインストール(Passengerは設定ファイルも)を両方のマシンで行わなければならないです。設定ファイルはコピーして送ればOKです。

Pacemaker設定

apacheとMySQLの用意ができたら、Pacemakerへのリソース追加を行っていきます。

追加の前にMySQLは停止します。

まず現在の設定をファイルに落とします。

pcs cluster cib mysql_cfg

リソースを追加していきます。

pcs -f mysql_cfg resource create MySQL ocf:heartbeat:mysql datadir=/home/mysql pid=/home/mysql/mysqld.pid test_passwd=<mysql root password>

datadirectoryを/home/mysql以下に変更した部分のみ設定しています。ちなみにモニターするユーザはデフォルトではroot、モニターするテーブルはmysqlデータベースのuserテーブルです。

詳しくは/usr/lib/ocf/resource.d/heartbeat/mysqlのリソースエージェントファイルをご覧ください。

次に起動順を指定します。

pcs -f mysql_cfg constraint order DataFS then MySQL

さらにサービスIPと関連付けを行います。

pcs -f mysql_cfg constraint colocation add ClusterIP MySQL INFINITY

最後に適用します。

pcs cluster cib-push mysql_cfg

MySQLがPacemakerから自動起動されればOKです。

ステータスはこんなかんじです。

============
Last updated: Tue Apr 22 21:30:51 2014
Stack: Heartbeat
Current DC: mx2.kvm.midalort.com (393f8808-c94e-4604-ab9d-907e9f7d0797) – partition with quorum
Version: 1.0.13-30bb726
2 Nodes configured, unknown expected votes
8 Resources configured.
============

Online: [ mx1.kvm.midalort.com mx2.kvm.midalort.com ]

ClusterIP (ocf::heartbeat:IPaddr2): Started mx1.kvm.midalort.com
WebSite (ocf::heartbeat:apache): Started mx1.kvm.midalort.com
Master/Slave Set: DataClone
Masters: [ mx1.kvm.midalort.com ]
Slaves: [ mx2.kvm.midalort.com ]
DataFS (ocf::heartbeat:Filesystem): Started mx1.kvm.midalort.com
Ldap (ocf::heartbeat:slapd): Started mx1.kvm.midalort.com
Postgres (ocf::heartbeat:pgsql): Started mx1.kvm.midalort.com
Tomcat (ocf::heartbeat:tomcat): Started mx1.kvm.midalort.com
MySQL (ocf::heartbeat:mysql): Started mx1.kvm.midalort.com

ノードを切り替えてもredmineが表示されてログインできればOKです。

facebooktwittergoogle_plusredditpinterestlinkedinmail