ググッてみながらいろいろしてみたが、
結論、
「とっちでもいつものマニュアルでしか見えない」
ということはたぶんページのオーナーは自分なりの一番分かりやすい方法で書いているからだろう。
一応、やってみながら必要な部分に関して誰も言わなくて結構苦労したのでこれから書いてみる。
大体DBサーバはグローバルIPとローカルIPをもって、グローバルIPは外部とのConnectionはOSパッチなど以外にはFWにブロックされているはず。
MySQL-MMMの特徴上、Monitor用のIPセットがもう一セット必要だった。
ローカルIPにしてみたらIPがL2側で変わったりして接続ができない危険性があった!
サーバ4台を利用してmulti-master設定をするには次のIPが必要。
Global IP 4.. -> 設定には要らない。
Local IP 4 -> Replication及び接続用
Monitor IP 4 -> 4つ全て要らないかもしれないが、用意したほうが・・・・
そしてモニター用のサーバは必ずほかのサーバーを用意する必要はないが、設定変えたりするためにはあったほうをお勧めします。
障害発生時IPが勝手に変わるけど、そのときpingを投げたら変わったサーバからpingがくるのでご注意!
本当に設定通りのサーバからpingが帰ってきたのかを確認するためには
ping後にarp -aを利用して正しいMAC Addressが登録されていたのかを確認。
mmm_control showから割り当ててサーバに接続して
ip addr show
を入れてみる。
設定の覚えがないIPが登録されたりするのはMMMのやつがいじってたからだ。
この場合IPが返却できないので次の手順で解除する。
1. mmm monitorサーバから
root@mon> service mysql-mmm-monitor stop
2.変なIPが割り当てられたサーバからは
root@db02> service network restart
3. 正常のIPが入っているはずのサーバからping check..
もしリブートなどをしてしまい、IPがなくなった場合は1,2の作業後、このサーバのネットワークをリスタート
root@db01> service network restart
4. モニター再起動
root@mon> service mysql-mmm-monitor start
そして基本設定は次の通り。(ほかのウェブサイトがもっと詳しく説明されているだろう)
1.my.cnfに Replication設定を行う。
(http://www.onlamp.com/pub/a/onlamp/2006/04/20/advanced-mysql-replication.html?page=2 設定だけ参考)
2.ユーザー権限追加
GRANT REPLICATION CLIENT ON *.* TO 'mmm_monitor'@'10.10.40.%' IDENTIFIED BY 'monitorpwd';
mmm_monitor 用のアカウント
GRANT SUPER, REPLICATION CLIENT, PROCESS ON *.* TO 'mmm_agent'@'10.10.40.%' IDENTIFIED BY 'agentpwd';
mmm_agent用
GRANT REPLICATION SLAVE ON *.* TO 'replication'@'10.10.30.%' IDENTIFIED BY 'replicationpwd';
replication用アカウント
mmm_agentとmmm_monitor用IPを区分した理由は障害時勝手にagent用IPが変わってしまうからReplicationと同じネットワークを持っているとReplicationが切れてしまうからだ。
たまにsame-server-idなちゃらするのも全てこの設定のせいだ。
3.Replication設定
一般的なリプリケーションのため省略
4.Multi-master Replication設定
5.MMMインストール
6.mmm_common.conf ファイルの修正
7.mmm_agent.confファイル修正
8.mmm_mon.confファイル修正
コメント
コメントを投稿