Adachinですっ。
よく障害がてらLBから外したり、戻したりする作業あるので、メモしときます。
そもそもKeepalivedやipvsadmについて説明していきます。(簡単に)
■Keepalivedとは
LVS と組み合わせて使う、ロードバランサの冗長性確保用デーモン。
ロードバランサがパケットを振り分ける相手、バックエンドのサーバ群が落ちたときにどうするか、
ロードバランサそのものが故障したらどうするかという2点について考えないといけないが、
keepalived は両方とも解決してしまう。
keepalived は LVS の API を用いて LVS の設定を行うようになっており、
keepalived.conf を編集して keepavlied を立ち上げると、LVS のエントリが自動で設定される。
keepalived が LVS のフロントエンドとしての役割も果たします。
以下LB + keepalivedの構成より
参考画像:http://rksz.hateblo.jp/entry/2013/03/19_keepalived_lvs_load_balancer_2013
で、ロードバランサーから切り離したり、戻したりするコマンドが
「ipvsadm」を駆使してコントロールするわけです。
・冗長化→keepalived
・ロードバランサー→ipvsadm
■切り離し
1 |
# ipvsadm -d -t GIP:port -r localIP |
例)
1 |
# ipvsadm -d -t 118.xxx.xxx.xxx:80 -r 192.xxx.xxx.xxx |
■戻す
1 |
# ipvsadm -a -t GIP:port -r localIP -g -w 10 |
例)
1 |
# ipvsadm -a -t 118.xxx.xxx.xxx:80 -r 192.xxx.xxx.xxx -g -w 10 |
■確認
1 |
# ipvsadm -Ln |
切り離ししているか、ちゃんと戻っているか対象のIPを確認
■他のやり方
LBのMasterからkeepalived.conf内にある
各LBのファイルより、対象のIPをコメントアウトをする。
以下のコマンドで読み込みをする
1 |
# /etc/init.d/keepalived restart |
■まとめ
LBから外すのは毎回めっちゃ緊張しまくるので、
いつも自分で声がけしていますw(ひとりごと)
ここらへんミスすると全サービスに影響出てしまうので、
きをつけましょう!
0件のコメント