幹事な感じ

3月にプロジェクトの懇親会を企画していて幹事をやってます。
あんまり文句言いたくないけど
参加率悪すぎ。しかも返信しないとかありえねえ。
前の会社ではお客さんの誘いは仕事だと思え的な
考えがありこのギャップがどうにも消化できません。
返信がない人らはただの作業者であって共通の目的に向かって
仕事していく仲間ではないと割り切り始めました。
以上文句終わり。

ちなみに今回の企画の目的は
・プロジェクトの成果を振り返る、ゴールを再認識する。
・協力一致で目標に向かってがんばる。

実現するためのイベント(商品付き!!)
・紙芝居風プレゼン
・チーム対抗ストロータワー
・恒例のクイズショー

ただの飲み会じゃないですよ?
ちゃんと明確な目的をもって企画してます。


さて、pacemakerの記事を載せたら健さんが同じことやろうとしている
と知ってちょっとうれしい。
今はPGしない環境になっちゃったけどやっぱり根は技術者だ。
技術的な調査は楽しいね。

ぺーすめーかー

フェールオーバーする契機がわからなかったのでいろいろ実験。
heartbeatを落とす→フェールオーバー
サーバを落とす→フェールオーバー
RAのどれかを落とす→落としたサービスの再起動(再起動できなかったらフェールオーバーする)
インターコネクト線を落とす→たいへんなことになるw(スプリットブレイン)

ってなわけでハートビート監視するインターコネクト線は冗長化しておけよというのと
RAのサービスがフェールオーバーするかテストするときには注意しろってことさ。

オラクルなはなし

Oracle+Pacemaker+heartbeat
active/stanbyなクラスタ構成を実現したいと思って検証してる。
ライセンスの形態上、共通ディスクタイプである必要がある。
また、アプリケーションはフェールオーバーした際も同じホスト名(IP)
で動作し続けるため、仮想IPを付与する必要がある。
で手順↓

vmwareで共通ディスクの作成する。(ここが一番嵌った)
パーティションを作成する。
共有ディスクのアクセス権を管理してくれるパーティション作成コマンド
sfex_init -n 1 /dev/sdb1
両ノードからマウントできることを確認。(同時にはマウントしないこと!)
heartbeatの設定をしましょう。
vi /etc/ha.d/ha.cf

pacemaker on
logfacility local0
debug 0
udpport 694
keepalive 2
warntime 20
deadtime 24
initdead 48
bcast eth1
bcast eth2
node example
node example2
watchdog /dev/watchdog

できたら
rm -f /var/lib/heartbeat/crm/*
で設定をクリア。
heartbeatを両ノードとも起動。
/etc/init.d/heartbeat start

crm configure

property $id="cib-bootstrap-options" \
no-quorum-policy="ignore" \
stonith-enabled="false" \
startup-fencing="false"

primitive sfex ocf:heartbeat:sfex \
params \
index="1" \
device="/dev/sdb1" \
op start interval="0s" timeout="120s" on-fail="restart" \
op monitor interval="10s" timeout="60s" on-fail="restart" \
op stop interval="0s" timeout="60s" on-fail="block"

primitive filesystem ocf:heartbeat:Filesystem \
params \
fstype="ext3" \
device="/dev/sdb2" \
directory="/opt" \
op start interval="0s" timeout="60s" on-fail="restart" \
op monitor interval="10s" timeout="60s" on-fail="restart" \
op stop interval="0s" timeout="60s" on-fail="block"

primitive vip ocf:heartbeat:IPaddr2\
params ip="192.168.XXX.XXX" cidr_netmask="24" nic="eth0" \
op monitor interval="10s"

group group1 sfex filesystem vip
commit

ここまでくればあとは動作確認。
どちらかのノードでモニタリングしつつ、
heartbeatのサービスを停止してみましょう。
フェールオーバーが確認できるはず!

crm_mon

もーたーしょー

札幌モーターショーの招待券をもらったので土曜日に行ってきた。
午後に行ったんだけどやっぱり人が多いね。
おにぎりを連れて行ったんで自由に行動できず。
ブーブーはそんなに興味がないため、主にバイクをメインに回った。
ハーレーのハンドタオルもらった。
大型免許とりたいなあ。雪溶けてから考えよう。
ちなみに自分の老後の夢はハーレーを乗り回す元気なじいさんだ。
せっかく北海道にいるんだからツーリングを楽しむべきだよね。

なにかがおかしい

アプリケーションのつくりがおかしい。
設定で自分が稼働しているホストアドレスを持つ仕様。
稼働するホストやらサービスのドメインが変わったらどうするんだろう。
たぶん設定を環境に合わせて変更するのだろうけど
なにかがおかしい。