oss haクラスタpacemakerを 活用したhaシステム...
TRANSCRIPT
![Page 1: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/1.jpg)
OSS HAクラスタPacemakerを活用したHAシステム構築の勘所 Pacemaker で楽々クラスタリング2011年4月28日
Linux-HA Japan三井 一能
Linux-HA Japan Project 1
![Page 2: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/2.jpg)
こんにちは
![Page 3: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/3.jpg)
本日の内容
![Page 4: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/4.jpg)
本日の内容Pacemakerの歴史コミュニティの動向Pacemakerの概要インストール、設定
![Page 5: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/5.jpg)
講演を機会に
![Page 6: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/6.jpg)
PacemakerでHAクラスタを組めそうだ
![Page 7: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/7.jpg)
PacemakerでHAクラスタを組めそうだ帰ってPacemakerでHAクラスタを組みたくなる
![Page 8: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/8.jpg)
と思っていただきたいと思います
![Page 9: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/9.jpg)
まず
![Page 10: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/10.jpg)
まず自己紹介
![Page 11: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/11.jpg)
名前
![Page 12: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/12.jpg)
みいかずよし
![Page 13: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/13.jpg)
漢字だと
![Page 14: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/14.jpg)
三井一能
![Page 15: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/15.jpg)
三井一能読み方が難しいですが、
「みいかずよし」と読みます
![Page 16: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/16.jpg)
「みついさん」
でも返事します
![Page 17: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/17.jpg)
id:kzmtwよければfollowしてください
![Page 18: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/18.jpg)
家族構成
![Page 19: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/19.jpg)
妻と娘の3人家族です
![Page 20: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/20.jpg)
趣味
![Page 21: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/21.jpg)
ありきたりですが、子育てですかねイクメンの話題は大好きです
![Page 22: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/22.jpg)
さて、Linux-HA Japanについて
![Page 23: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/23.jpg)
HAクラスタ『Heartbeat』の日本における更なる普及展開を目的とし2007年10月5日「Linux-HA (Heartbeat) 日本語サイト」を設立
Linux-HA Japanの経緯
![Page 24: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/24.jpg)
Heartbeat2のrpmバイナリと、オリジナルのHeartbeat機能追加用パッケージを提供
Linux-HA Japanの経緯
![Page 25: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/25.jpg)
Linux-HA Japan Project
http://linux-ha.sourceforge.jp/ (一般向け)
Pacemaker情報の公開用として新しい一般向けウェブサイトが2010/6/25にオープンしました。
本日の資料もこのサイトから公開予定です!
http://sourceforge.jp/projects/linux-ha/ (開発者向け
Webサイト
![Page 26: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/26.jpg)
26Linux-HA Japan Project
• ML登録用URLhttp://linux-ha.sourceforge.jp/の「メーリングリスト」をクリック
• MLアドレス[email protected]
日本におけるHAクラスタについての活発な意見交換の場として「Linux-HA Japan日本語メーリングリスト」 も開設しています。
Linux-HA-Japan MLでは、Pacemaker、Heartbeat3、CorosyncDRBDなど、HAクラスタに関連する話題は歓迎!
※スパム防止のために、登録者以外の投稿は許可制です
メーリングリスト
![Page 27: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/27.jpg)
にて連載中!
『Pacemakerでかんたんクラスタリング体験してみよう!』
http://gihyo.jp/admin/serial/01/pacemaker
合計5回の連載で、Pacemakerの概要説明から構築方法、保守運用にいたるまで紹介しています。
![Page 28: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/28.jpg)
勤務先
![Page 29: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/29.jpg)
NTT研究企画部門 OSSセンタ
![Page 30: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/30.jpg)
疑問
![Page 31: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/31.jpg)
NTTはなぜOSSに取り組んでいるのか
![Page 32: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/32.jpg)
OSSの狙い
![Page 33: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/33.jpg)
コスト削減
![Page 34: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/34.jpg)
コスト削減ベンダロックインの回避
![Page 35: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/35.jpg)
コスト削減ベンダロックインの回避ホワイトボックスであるOSSを使った技術力向上
![Page 36: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/36.jpg)
こういった効果を狙い、社内システムのOSS適用支援を行っています
![Page 38: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/38.jpg)
具体的な取り組みは?
![Page 39: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/39.jpg)
1つめ
![Page 40: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/40.jpg)
OSSVERT
![Page 41: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/41.jpg)
OSSVERT (オズバート)OSs Suites VErified Technically
![Page 42: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/42.jpg)
OSSVERT安心して利用できるOSS製品の選定と技術検証の実施
アクティブ スタンバイ
DBサーバ
APサーバ
Webサーバ
クライアント
Apache
TOMCAT
JBoss
PostgreSQL
MySQL
Pacemaker
UltraMonkey
Amanda
![Page 43: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/43.jpg)
2つめ
![Page 44: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/44.jpg)
OSSVERTを構成するOSS製品の研究開発、コミュニティ活動
![Page 45: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/45.jpg)
主に活動しているOSS製品データベース: PostgreSQLHAクラスタ: PacemakerAPサーバ: JBoss
![Page 46: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/46.jpg)
3つめ
![Page 47: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/47.jpg)
グループ会社のOSS利用をトータルサポート
![Page 48: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/48.jpg)
情報の一元提供OSSの問題解決個別パッチの提供
![Page 49: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/49.jpg)
ここから本題
![Page 50: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/50.jpg)
Pacemakerの話をします
![Page 51: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/51.jpg)
Pacemakerってなに?
![Page 52: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/52.jpg)
PacemakerはOSSのHAクラスタソフトウェアです
![Page 53: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/53.jpg)
アンケートをとります
![Page 54: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/54.jpg)
Pacemakerを知っていますか?
![Page 55: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/55.jpg)
同じくOSSのHAクラスタであるHeartbeatを知っていますか?
![Page 56: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/56.jpg)
Pacemakerは、Heartbeatの後継ソフトウェアです
![Page 57: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/57.jpg)
Pacemakerを導入すると
現用系 待機系
現用系で故障が発生しサービスができなくなったと
きに、待機系でサービスを自動起動し、サービス中断を最小限にすることができます
故障
フェイルオーバ
![Page 58: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/58.jpg)
Pacemakerの歴史
![Page 59: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/59.jpg)
Heartbeatの最初のバージョンから、12年の歴史があります
![Page 60: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/60.jpg)
1998年 Linux-HAプロジェクト発足Heartbeatのアルファ版
![Page 61: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/61.jpg)
2010年 Pacemaker-1.0.10リリース
2009年 CorosyncをサポートするPacemaker-1.0.6
2008年 Pacemaker-1.0.0リリース
2007年 リソース管理機能がPacemakerとして独立
2005年 Heartbeatバージョン2リリース。多ノード構成、リソース監視が可能
1999年 Heartbeatバージョン1リリース。1+1構成、ノード監視可能
1998年 Linux-HAプロジェクト発足 Heartbeatのアルファ版
![Page 62: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/62.jpg)
あれ、Pacemaker-1.1使っているけど
![Page 63: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/63.jpg)
Pacemakerでのバージョンの考え方
![Page 64: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/64.jpg)
Pacemakerでのバージョンの考え方偶数バージョン: 1.0.x, 1.2.x
![Page 65: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/65.jpg)
Pacemakerでのバージョンの考え方偶数バージョン: 1.0.x, 1.2.x長期安定リリースバグフィックスのみ3、4ヶ月周期でリリース1.2系の安定版リリースは、2012-8ごろ
![Page 66: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/66.jpg)
Pacemakerでのバージョンの考え方奇数バージョン: 1.1.x
![Page 67: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/67.jpg)
Pacemakerでのバージョンの考え方奇数バージョン: 1.1.xフィーチャーリリース新規機能追加/削除機能、設定の互換性は低め3、4ヶ月周期でリリースRHEL6にテクノロジープレビューとして同梱
![Page 68: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/68.jpg)
現在の開発コミュニティの状況
![Page 69: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/69.jpg)
現在の開発コミュニティの状況
OSS HAクラスタ関連のプロジェクトが協力し合う関係が進んできている
![Page 70: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/70.jpg)
現在の開発コミュニティの状況集中と選択によるパッケージの再編
Linux-HA Japan Project 70
Pacemaker + Corosync
Pacemaker + Heartbeat3
OpenAIS + Corosync
リソース制御部クラスタ制御部
リソース制御部
リソース制御部
クラスタ制御部
OpenAIS
Heartbeat2
Heartbeat3
Corosync
Pacemaker
OpenAIS
クラスタ制御部
![Page 71: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/71.jpg)
現在の開発コミュニティの状況
2008 2010
![Page 72: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/72.jpg)
2011-4Linux FoundationにHigh Availability Working Groupを設立
同じ傘の下でコミュニティ間の連携活動を強化する動き- コミュニティ間でパッケージ統合
Resource agentsのマージ作業
- 2011-10 mini-summit開催(プラハ)
![Page 73: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/73.jpg)
mini-summitは主要開発者がface-to-faceで議論する場で、毎年開催
![Page 74: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/74.jpg)
前回2010-11 Linux Plumbers Conference(ケンブリッジ)で開催
Pacemaker
DRBDHeartbeat3
Linux-HA
OpenAISCorosync
OCFS2
Linux-HAJapan
Linux-clusterPacemaker1.0パッチメンテナ
![Page 75: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/75.jpg)
Pacemakerってなに?
![Page 76: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/76.jpg)
PacemakerはHAクラスタソフトウェアです
![Page 77: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/77.jpg)
多彩なクラスタ構成が可能です
![Page 78: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/78.jpg)
基本構成
![Page 79: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/79.jpg)
1+1構成
![Page 80: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/80.jpg)
1+1構成
ACT-SBY構成
![Page 81: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/81.jpg)
ACT-SBY構成稼動系でサービスが動作
故障が発生すると待機系でサービスが起動フェイルオーバといいます
Active Standby
故障発生
Active
フェイルオーバ
ユーザ ユーザ
故障
LAN
![Page 82: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/82.jpg)
応用構成
![Page 83: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/83.jpg)
ACT-ACT構成両方のサーバでサービスが動作
故障が発生すると他方のサーバでサービスを起動
Active1 Active2
故障発生 フェイルオーバ
ユーザ ユーザ
故障
LAN
Active1Active2
![Page 84: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/84.jpg)
N+1構成N+M構成
![Page 85: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/85.jpg)
N+1構成N+M構成複数台のサーバでサービスが動作故障が発生するとSBY(待機系)でサービス起動
Active2 Standby
Active2に故障発生
Active1 Active2Active1
Active2 をフェイルオーバ2+1構成例
故障
![Page 86: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/86.jpg)
M/S構成Multi State (Master/Slave)稼動系と連携したサービスが待機系でも動作する構成
停止 起動
start
stop
通常のリソースの状態遷移
![Page 87: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/87.jpg)
M/S構成Multi State (Master/Slave)稼動系と連携したサービスが待機系でも動作する構成
停止 Slave Master
start promote
demotestop
M/Sのリソースの状態遷移
![Page 88: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/88.jpg)
M/S構成M/S機能を持っているサービスDRBD ディスク同期mysql データベースレプリケーション
Master Slave
故障発生
Master
フェイルオーバ
ユーザ ユーザ
故障
LAN
連携
![Page 89: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/89.jpg)
Pacemakerの基本動作
![Page 90: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/90.jpg)
Pacemakerの基本動作
1. ノード監視
2. リソース監視
3. スプリットブレイン対策
![Page 91: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/91.jpg)
基本動作1:ノード監視
![Page 92: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/92.jpg)
基本動作1:ノード監視
相手サーバの生死を確認するため、一定間隔で通信(ハートビート通信)
Linux-HA Japan Project
StandbyノードActiveノード
Pacemaker Pacemaker
OK!元気かい!
ハートビートLAN とかインターコネクトLAN と呼ぶ
![Page 93: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/93.jpg)
基本動作1:ノード監視
ハートビート通信に失敗すると、相手はダウンしたと判断
フェイルオーバなどのクラスタ制御を行う StandbyノードActiveノード
Pacemaker Pacemaker故障
あれ?応答なし!⇒ノード断
![Page 94: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/94.jpg)
基本動作2:リソース制御
![Page 95: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/95.jpg)
基本動作2:リソース制御リソースって?
![Page 96: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/96.jpg)
基本動作2:リソース制御リソース = クラスタが管理するものすべて
![Page 97: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/97.jpg)
基本動作2:リソース制御リソース = クラスタが管理するものすべて大きくは2つ
![Page 98: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/98.jpg)
1つめサービス継続するのに必要なもの
![Page 99: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/99.jpg)
1つめサービス継続するのに必要なもの
•サーバプログラム
•コンピュータ資源
* 仮想IPアドレス
* ファイルシステム
![Page 100: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/100.jpg)
2つめ
故障を検知するために監視が必要なもの
![Page 101: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/101.jpg)
2つめ
故障を検知するために監視が必要なもの
•ネットワーク経路監視
•ディスク監視
![Page 102: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/102.jpg)
リソース制御
![Page 103: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/103.jpg)
リソース制御
サービスを提供するために、Pacemakerがリソースを起動(start)、停止(stop)、監視(monitor)すること
![Page 104: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/104.jpg)
リソースエージェント(RA)
![Page 105: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/105.jpg)
リソースエージェント(RA)Pacemakerがリソース制御するために利用するスクリプト
![Page 106: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/106.jpg)
あらかじめ含まれる標準RA
74個# crm ra list ocfAoEtarget AudibleAlarm CTDB ClusterMon DelayDummy EvmsSCC Evmsd Filesystem HealthCPUHealthSMART ICP IPaddr IPaddr2 IPsrcaddrIPv6addr LVM LinuxSCSI MailTo ManageRAIDManageVE NVclient Pure-FTPd Raid1 RouteSAPDatabase SAPInstance SendArp ServeRAID SphinxSearchDaemonSquid Stateful SysInfo SystemHealth VIPAripVIPcheck VirtualDomain WAS WAS6 WinPopupXen Xinetd anything apache controlddb2 diskd drbd eDir88 exportfsfio iSCSILogicalUnit iSCSITarget ids iscsildirectord mysql mysql-proxy nfsserver o2cboracle oralsnr pgsql ping pingdportblock postfix proftpd rsyncd scsi2reservationsfex syslog-ng tomcat vmware
![Page 107: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/107.jpg)
あらかじめ含まれる標準RA
目的 リソースリソースエージェント名
(/usr/lib/ocf/resource.d/ に存在)
サーバプログラム
データベースインターネットサーバ
pgsql, oracle, oralsnr, mysqlapache, tomcat, jboss, postfix
コンピュータ資源 ファイルシステム Filesystem (複数のファイルシステムに対応)
仮想IPアドレス IPaddr2, IPv6addr
異常監視 ネットワーク経路監視ディスク監視共有ディスク排他仮想IPアドレス排他
pingddiskd (Linux-HA Japan提供)
sfexVIPcheck (Linux-HA Japan提供)
![Page 108: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/108.jpg)
リソースエージェント(RA)クラスとプロバイダで分類
![Page 109: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/109.jpg)
リソースエージェント(RA)クラス = RAの準拠している仕様
lsb と ocf の2つ
![Page 110: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/110.jpg)
リソースエージェント(RA)クラス = RAの準拠している仕様
lsb: LSB仕様のinitscript形式/etc/init.d/* にあるスクリプトを利用
ただし、リターンコードを正しく返却されていることが条件
![Page 111: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/111.jpg)
リソースエージェント(RA)クラス = RAの準拠している仕様
ocf: Open Clustering Framework lsbを拡張し、RAへの引数やコマ
ンドを追加Pacemakerの機能をフルに使う
のはこっち
![Page 112: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/112.jpg)
リソースエージェント(RA)プロバイダ = RAの提供元
heartbeat: Linux-HAプロジェクトが提供pacemaker: Pacemakerが提供
独自のRAを作るときは、専用のプロバイダを作るとよい
![Page 113: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/113.jpg)
リソースエージェント実装例
pgsql_monitor() { ←PostgreSQLの監視のメイン関数……if ! pgsql_status ←PostgreSQLプロセスの存在を確認then ←PostgreSQLプロセスがいなければ
ocf_log info "PostgreSQL is down"return $OCF_NOT_RUNNING ←PostgreSQLは停止していると判断
fi……
runasowner -q $loglevel “$OCF_RESKEY_psql $psql_options -c ‘$OCF_RESKEY_monitor_sql’”
↑実際にSQL(select now())を実行してPostgreSQLの正常性を確認……return $OCF_SUCCESS ←PostgreSQLは動作していると判断
}
PostgreSQL(pgsql RA)監視(monitor)処理の抜粋
$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数
![Page 114: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/114.jpg)
リソースエージェントは自作可能通常のシェルスクリプトで実装でき
ます。
いくつか必須のパラメータ呼び出し
に対する処理と、定義済みの戻り値
を返すように実装する必要がありま
す。
#!/bin/sh
. ${OCF_ROOT}/resource.d/heartbeat/.ocf-shellfuncs
start処理() {
}
stop処理() {
}
monitor処理 {
}
meta-data処理(){
}
validate-all処理(){
}
case $1 in
start) start処理();;
stop) stop処理();;
monitor) monitor処理();;
…
esac
リソース開始・監視・停止の処理
シェルに渡されるパラメータを元にRA処理を振り分け
![Page 115: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/115.jpg)
さらに、HAクラスタとして重要な機能
![Page 116: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/116.jpg)
基本機能3:スプリットブレイン対策
生きてる? 元気だよ
ハートビートLAN
Active Standby
全てのハートビートLANが切れてしまった場合
![Page 117: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/117.jpg)
基本機能3:スプリットブレイン対策
生きてる? しーん
サービス起動しまーす
Active Standby
切断
切断
お互いが相手が故障したと判断し、サービスを引き継ご
うとします。これをスプリットブレインと呼びます。
全てのハートビートLANが切れてしまった場合
![Page 118: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/118.jpg)
両サーバが勝手に動き始めると
(例えば) データを共有していると → データ破壊発生
共有ディスク
mount mount
両系マウント
ネットワークスイッチIP : 192.168.0.10 IP : 192.168.0.10
IPを共有していると → IP競合発生
切断
切断仮にスプリットブレインが発生しても、Pacemakerは複数の対策が用意さ
れています。STONITH機能(強制電源断)sfex(共有ディスク排他制御)
Quorum機能(多数決に基づく制御)
出来る限り回避するため、ハートビートLANは2本以上用意
![Page 119: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/119.jpg)
対策1:STONITH
![Page 120: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/120.jpg)
STONITHShoot-The-Other-Node-In-The-Head絵で表現すると
![Page 121: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/121.jpg)
STONITH
http://ourobengr.com/ha
![Page 122: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/122.jpg)
STONITHサービス継続を邪魔するサーバをクラスタから「強制的に離脱」させる機能用語的には、ノードフェンシング
![Page 123: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/123.jpg)
STONITHいつ発動される?
![Page 124: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/124.jpg)
STONITH発動タイミング
•スプリットブレイン発生時
•リソースの停止処理に失敗したとき
![Page 125: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/125.jpg)
STONITHデバイス実現方法によりさまざまなSTONITHプラグインが用意されている
•サーバ搭載のHW制御ボード
•リモートパワースイッチ
•UPS
•poweroffコマンド
•保守者による手動リセット
![Page 126: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/126.jpg)
対策2:sfex
![Page 127: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/127.jpg)
sfex共有ディスク排他制御機能絵で表現すると
![Page 128: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/128.jpg)
sfex共有ディスク排他制御機能
http://sourceforge.jp/projects/linux-ha/wiki/hb-sfex
![Page 129: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/129.jpg)
sfex共有ディスク排他制御機能
意図しない両系マウントによるファイルシステム破壊を防ぐ
http://sourceforge.jp/projects/linux-ha/wiki/hb-sfex
![Page 130: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/130.jpg)
sfex共有ディスクの所有権を制御するリソース
![Page 131: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/131.jpg)
sfex共有ディスク上に専用パーティションを用意し、所有者を管理
![Page 132: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/132.jpg)
sfexハードウェア依存性が小さいことが特徴
![Page 133: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/133.jpg)
その他の対策Quorum: ノード数に基づくリソース制御(3ノード以上)
VIPcheck: サービス用仮想IPアドレスに基づくリソース制御
などがあります
![Page 134: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/134.jpg)
Pacemakerを構成するコンポーネントを見ていきます
![Page 135: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/135.jpg)
Pacemakerを構成するコンポーネント
![Page 136: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/136.jpg)
Pacemakerを構成するコンポーネント役割分担Pacemaker: リソース制御Heartbeat or Corosync: クラスタ制御
![Page 137: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/137.jpg)
Pacemakerプロセス
•crmd: Pacemakerのメインプロセス•cib: クラスタに関する情報を一元管理•pengine: クラスタ状態に基づきリソース配置を決定し状態遷移を計算•stonithd: STONITHプラグインの管理
![Page 138: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/138.jpg)
Heartbeatプロセス
•ccm: メンバーシップ管理•heartbeat: プロセス間通信、サブプロセス管理
![Page 139: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/139.jpg)
Corosyncプロセス
•corosync: メンバーシップ管理、ノード間通信、サブプロセス管理
![Page 140: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/140.jpg)
いよいよ、HAクラスタをどう構築するかを見ていきます
![Page 141: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/141.jpg)
PostgreSQLのHAクラスタ構成
![Page 142: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/142.jpg)
ハードウェアVMware VM (1CPU, 1GB memory, 8GB HDD) 2個
OSCentOS 5.5 x86_64
HAクラスタPacemaker-1.0.10
クラスタ化するアプリケーションPostgreSQL 9.0.3
ACT-SBY構成
共有ディスクiSCSI
データベース領域として利用
NIC4つ使用(サービスLAN、ハートビートLAN×2、管理LAN)
PostgreSQLのHAクラスタ構成
![Page 143: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/143.jpg)
143
pm01 pm02eth1192.168.32.101
eth1192.168.32.102
eth2192.168.64.101
eth2192.168.64.102
ハートビートLAN1
ハートビートLAN2
eth0192.168.68.101
eth0192.168.68.102
DB領域/dev/sdb2
eth3192.168.128.101
eth3192.168.128.102
仮想IP192.168.68.100
管理用LAN
PostgreSQL
サービスLAN
sfex領域/dev/sdb1
システム構成ルータ192.168.68.2
システム領域
システム領域
![Page 144: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/144.jpg)
リソースの洗い出し
種別 リソース RA / STONITH Pluginフェイルオーバ対象(稼動系で起動)
共有ディスク排他制御共有ディスクのマウント仮想IPアドレスPostgreSQL
sfexFilesystemIPaddr2pgsql
故障検知(すべてのノードで起動)
ネットワーク経路監視内蔵ディスク監視共有ディスク監視
pingddiskddiskd
STONITH(STONITH対象以外のノードで起動)
相打ち防止sshプラグイン(※)保守者介在
stonith-helperexternal/sshmeatware
※テスト用のプラグイン。 cluster-glue-libs-develパッケージに含まれるので、別途インストールしてください
ただし、実運用では使用しないこと
日本コミュニティ提供ツールで出現します
![Page 145: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/145.jpg)
リソース配置サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
グループ
sfex
Filesystem
IPaddr2
pgsql
クローン
pm01 pm02
pm02を強制再起動する。pm02以外に配置。
pm01を強制再起動する。pm01以外に配置。
![Page 146: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/146.jpg)
リソース設定の種類
![Page 147: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/147.jpg)
リソース設定の種類
primitive
clone
group
![Page 148: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/148.jpg)
リソース設定の種類
primitive
![Page 149: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/149.jpg)
リソース設定の種類
primitive
すべてのリソース設定の基本
RAはまずprimitive設定することからはじまる
![Page 150: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/150.jpg)
リソース設定の種類
clone
![Page 151: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/151.jpg)
リソース設定の種類
clone
同じ設定のリソースを複数のノードで動かしたい場合に使用
ネットワーク経路監視やディスク監視で使用
![Page 152: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/152.jpg)
リソース設定の種類
group
![Page 153: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/153.jpg)
リソース設定の種類
group
複数のリソースをまとめてフェイルオーバさせるために使用
グループ
sfex
Filesystem
IPaddr2
pgsql
起動順序 停止順序
![Page 154: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/154.jpg)
フェイルオーバ条件
![Page 155: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/155.jpg)
フェイルオーバ条件ノード監視
![Page 156: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/156.jpg)
フェイルオーバ条件ノード監視ハートビート通信が不通
![Page 157: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/157.jpg)
故障箇所サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
![Page 158: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/158.jpg)
フェイルオーバ条件ノード監視ハートビート通信が不通→ノード故障→ノードフェンシング
![Page 159: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/159.jpg)
フェイルオーバ条件ネットワーク経路監視
![Page 160: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/160.jpg)
フェイルオーバ条件ネットワーク経路監視指定されたIPアドレスまでネットワーク通信ができない
![Page 161: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/161.jpg)
故障箇所サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
![Page 162: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/162.jpg)
フェイルオーバ条件ネットワーク経路監視指定されたIPアドレスまでネットワーク通信ができない→故障が稼動系ならばリソースをフェイルオーバ
![Page 163: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/163.jpg)
フェイルオーバ条件ディスク監視(sfex)
![Page 164: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/164.jpg)
フェイルオーバ条件ディスク監視(sfex)共有ディスクにアクセスできない
![Page 165: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/165.jpg)
故障箇所サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
![Page 166: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/166.jpg)
フェイルオーバ条件ディスク監視(sfex)共有ディスクにアクセスできない→リソースをフェイルオーバ
![Page 167: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/167.jpg)
フェイルオーバ条件ディスク監視(diskd)
![Page 168: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/168.jpg)
フェイルオーバ条件ディスク監視(diskd)内蔵ディスクまたは共有ディスクにアクセスできない
![Page 169: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/169.jpg)
故障箇所サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
![Page 170: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/170.jpg)
フェイルオーバ条件ディスク監視(diskd)内蔵ディスクまたは共有ディスクにアクセスできない→故障が稼動系ならばリソースをフェイルオーバ
![Page 171: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/171.jpg)
フェイルオーバ条件リソース故障
![Page 172: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/172.jpg)
フェイルオーバ条件リソース故障PostgreSQLのmonitor処理に失敗
![Page 173: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/173.jpg)
故障箇所サービスLAN
グループ
sfex
Filesystem
IPaddr2
pgsql
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
pingd
diskd
diskd
グループ
stonith-helper
external/ssh
meatware
![Page 174: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/174.jpg)
フェイルオーバ条件リソース故障PostgreSQLのmonitor処理に失敗→リソースをフェイルオーバ
![Page 175: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/175.jpg)
まずインストール
![Page 176: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/176.jpg)
インストールの方法方法1. 本家(clusterlabs)のyumリポジトリを使用
* 別のyumリポジトリ(EPEL)も必要
![Page 177: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/177.jpg)
インストールの方法方法2. 日本コミュニティのリポジトリパッケージ
こちらを推奨
•yumリポジトリのアーカイブ•ローカルリポジトリとして使用•検証をパスした組み合わせ•Linux-HA Japanオリジナルパッケージも含む
![Page 178: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/178.jpg)
リポジトリパッケージでインストールhttp://sourceforge.jp/projects/linux-ha/ からダウンロード
pacemaker-1.0.10-1.4.1.el5.x86_64.repo.tar.gzをダウンロード(32bit環境の場合は、 pacemaker-1.0.10-1.4.1.el5.i386.repo.tar.gz を選んでください。)
![Page 179: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/179.jpg)
リポジトリパッケージでインストール/tmp にアーカイブファイルを展開し、yumでインストールします
日本コミュニティ提供ツールをインストール
テスト用STONITHプラグインをインストール
# tar zxvf pacemaker-1.0.10-1.4.1.el5.x86_64.repo.tar.gz -C /tmp# cd /tmp/pacemaker-1.0.10-1.4.1.el5.x86_64.repo# yum -c pacemaker.repo install pacemaker heartbeat
# yum –c pacemaker.repo pm_extra pm_crmgen pm_diskd pm_logconv-hb
# yum –c pacemaker.repo cluster-glue-libs-devel
![Page 180: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/180.jpg)
Pacemakerの自動起動をオフにする
オンの場合、サーバ起動後に自動的にクラスタに組み込まれる
オフの場合、手動でPacemakerを起動
※運用で選択
# chkconfig --level 2345 heartbeat off
![Page 181: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/181.jpg)
設定ファイルのたぐい
![Page 182: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/182.jpg)
設定ファイルのたぐい
/etc/ha.d/ha.cfHeartbeatの設定
/etc/ha.d/authkeysハートビート通信の認証用キー
/etc/syslog.confログファイルの分離
/etc/pm_logconv.confログメッセージ変換
![Page 183: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/183.jpg)
/etc/ha.d/ha.cfpacemaker ondebug 0udpport 694keepalive 2warntime 7deadtime 10initdead 10logfacility local1bcast eth1bcast eth2node pm01node pm02watchdog /dev/watchdogrespawn root /usr/lib64/heartbeat/ifcheckd
Pacemakerを使うデバッグログ出力フラグHB通信のUDPポートHB通信送信間隔HB通信断線時の警告までの時間HB通信断線判断までの時間初期起動時の待ち合わせ時間syslog出力時のファシリティ指定HB通信方法の指定
クラスタに参加するノード名
kernel提供のsoftdogデバイス名サブプロセスの起動
![Page 184: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/184.jpg)
/etc/ha.d/authkeysハートビート通信の認証用キー
auth 11 sha1 secret
secretを任意のパスフレーズで書き換える
![Page 185: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/185.jpg)
/etc/ha.d/authkeys
rootのみにread権限を与えてください
# chmod 0600 /etc/ha.d/authkeys
![Page 186: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/186.jpg)
/etc/syslog.confPacemakerのログ量が多いため、ログファイルを分けることが望ましい
慣習として出力先: /var/log/ha-log
![Page 187: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/187.jpg)
/etc/syslog.conf変更点
設定反映
*.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messageslocal1.info /var/log/ha-log
# /etc/init.d/syslog restart
![Page 188: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/188.jpg)
pm_logconv日本コミュニティ提供ツールPacemakerのログを見やすくする
![Page 189: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/189.jpg)
pm_logconv/etc/pm_logconv.conf を編集[Settings]#ha_log_path = /var/log/ha-log#output_path = /var/log/pm_logconv.out#hostcache_path = /var/lib/heartbeat/hostcache#syslogformat = True#reset_interval = 60attribute_pingd = default_ping_set, lt, 100attribute_diskd = diskcheck_status, eq, ERRORattribute_diskd_inner = diskcheck_status_internal, eq, ERROR#logconv_logfacility = daemonact_rsc = prmEx prmPg
![Page 190: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/190.jpg)
pm_logconv
/etc/inittabに起動設定
initを再起動
logc:2345:respawn:/usr/share/pacemaker/pm_logconv/pm_logconv.py
# telinit q
![Page 191: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/191.jpg)
pm_logconv
ログローテーションの設定/etc/logrotate.d/heartbeat に下記を追加/var/log/pm_logconv.out {
missingok}
![Page 192: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/192.jpg)
以上で1台めのセットアップが完了
![Page 193: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/193.jpg)
もう1台のサーバも同じようにセットアップしてください
![Page 194: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/194.jpg)
Pacemakerの起動準備ができました
![Page 195: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/195.jpg)
Pacemakerの起動2台のサーバでコマンドを実行
# /etc/init.d/heartbeat start
![Page 196: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/196.jpg)
Pacemakerの起動確認
いづれかのサーバで状態表示コマンド実行# crm_mon -A
![Page 197: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/197.jpg)
Pacemakerの起動確認状態表示コマンド実行結果
============Last updated: Fri Mar 18 22:31:07 2011Stack: HeartbeatCurrent DC: pm01 (755595f2-7905-4ba3-909e-68c4e74067bf) - partition with quorumVersion: 1.0.10-da7075976b5ff0bee71074385f8fd02f296ec8a32 Nodes configured, unknown expected votes0 Resources configured.============
Online: [ pm02 pm01 ]
Node Attributes:* Node pm02:
+ pm01-eth1 : up+ pm01-eth2 : up
* Node pm01:+ pm02-eth1 : up+ pm02-eth2 : up
2台のサーバがクラスタに組み込まれている
ハートビート通信の状態を表示。ifcheckdによる機能
![Page 198: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/198.jpg)
起動時のログの比較
/var/log/ha-log
v.s.
/var/log/pm_logconv.out
![Page 199: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/199.jpg)
起動時のログの比較/var/log/ha-log (353行)
Apr 22 08:42:45 pm01 heartbeat: [4978]: WARN: Logging daemon is disabled --enabling logging daemon is recommendedApr 22 08:42:45 pm01 heartbeat: [4978]: info: **************************Apr 22 08:42:45 pm01 heartbeat: [4978]: info: Configuration validated. Starting heartbeat 3.0.4Apr 22 08:42:45 pm01 heartbeat: [4979]: info: heartbeat: version 3.0.4Apr 22 08:42:45 pm01 heartbeat: [4979]: info: Heartbeat generation: 1300455432Apr 22 08:42:45 pm01 heartbeat: [4979]: info: glib: UDP Broadcast heartbeat started on port 694 (694) interface eth1Apr 22 08:42:45 pm01 heartbeat: [4979]: info: glib: UDP Broadcast heartbeat closed on port 694 interface eth1 - Status: 1Apr 22 08:42:45 pm01 heartbeat: [4979]: info: glib: UDP Broadcast heartbeat started on port 694 (694) interface eth2Apr 22 08:42:45 pm01 heartbeat: [4979]: info: glib: UDP Broadcast heartbeat closed on port 694 interface eth2 - Status: 1Apr 22 08:42:45 pm01 heartbeat: [4979]: info: G_main_add_TriggerHandler: Added signal manual handlerApr 22 08:42:45 pm01 heartbeat: [4979]: info: G_main_add_TriggerHandler: Added signal manual handlerApr 22 08:42:45 pm01 heartbeat: [4979]: notice: Using watchdog device: /dev/watchdogApr 22 08:42:45 pm01 heartbeat: [4979]: info: G_main_add_SignalHandler: Added signal handler for signal 17Apr 22 08:42:45 pm01 heartbeat: [4979]: info: Local status now set to: 'up'Apr 22 08:42:46 pm01 heartbeat: [4979]: info: Link pm01:eth1 up.Apr 22 08:42:46 pm01 heartbeat: [4979]: info: Link pm01:eth2 up.Apr 22 08:42:49 pm01 heartbeat: [4979]: info: Link pm02:eth1 up.Apr 22 08:42:49 pm01 heartbeat: [4979]: info: Status update for node pm02: status upApr 22 08:42:49 pm01 heartbeat: [4979]: info: Link pm02:eth2 up.Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Comm_now_up(): updating status to activeApr 22 08:42:50 pm01 heartbeat: [4979]: info: Local status now set to: 'active'Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/ccm" (101,105)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/cib" (101,105)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/lrmd -r" (0,0)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/stonithd" (0,0)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/attrd" (101,105)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/crmd" (101,105)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Starting child client "/usr/lib64/heartbeat/ifcheckd" (0,0)Apr 22 08:42:50 pm01 heartbeat: [4989]: info: Starting "/usr/lib64/heartbeat/ccm" as uid 101 gid 105 (pid 4989)Apr 22 08:42:50 pm01 heartbeat: [4990]: info: Starting "/usr/lib64/heartbeat/cib" as uid 101 gid 105 (pid 4990)Apr 22 08:42:50 pm01 heartbeat: [4991]: info: Starting "/usr/lib64/heartbeat/lrmd -r" as uid 0 gid 0 (pid 4991)Apr 22 08:42:50 pm01 heartbeat: [4992]: info: Starting "/usr/lib64/heartbeat/stonithd" as uid 0 gid 0 (pid 4992)Apr 22 08:42:50 pm01 heartbeat: [4993]: info: Starting "/usr/lib64/heartbeat/attrd" as uid 101 gid 105 (pid 4993)Apr 22 08:42:50 pm01 heartbeat: [4994]: info: Starting "/usr/lib64/heartbeat/crmd" as uid 101 gid 105 (pid 4994)Apr 22 08:42:50 pm01 attrd: [4993]: info: Invoked: /usr/lib64/heartbeat/attrdApr 22 08:42:50 pm01 lrmd: [4991]: info: G_main_add_SignalHandler: Added signal handler for signal 15Apr 22 08:42:50 pm01 attrd: [4993]: info: main: Starting upApr 22 08:42:50 pm01 heartbeat: [4995]: info: Starting "/usr/lib64/heartbeat/ifcheckd" as uid 0 gid 0 (pid 4995)Apr 22 08:42:50 pm01 heartbeat: [4979]: info: Status update for node pm02: status activeApr 22 08:42:50 pm01 cib: [4990]: info: Invoked: /usr/lib64/heartbeat/cibApr 22 08:42:50 pm01 stonithd: [4992]: info: G_main_add_SignalHandler: Added signal handler for signal 10Apr 22 08:42:50 pm01 ifcheckd: [4995]: info: Invoked: /usr/lib64/heartbeat/ifcheckdApr 22 08:42:50 pm01 ccm: [4989]: info: Hostname: pm01Apr 22 08:42:50 pm01 cib: [4990]: info: G_main_add_TriggerHandler: Added signal manual handlerApr 22 08:42:50 pm01 stonithd: [4992]: info: G_main_add_SignalHandler: Added signal handler for signal 12Apr 22 08:42:50 pm01 cib: [4990]: info: G_main_add_SignalHandler: Added signal handler for signal 17Apr 22 08:42:50 pm01 lrmd: [4991]: info: G_main_add_SignalHandler: Added signal handler for signal 17Apr 22 08:42:50 pm01 lrmd: [4991]: info: enabling coredumpsApr 22 08:42:50 pm01 lrmd: [4991]: info: G_main_add_SignalHandler: Added signal handler for signal 10Apr 22 08:42:50 pm01 lrmd: [4991]: info: G_main_add_SignalHandler: Added signal handler for signal 12Apr 22 08:42:50 pm01 lrmd: [4991]: info: Started.Apr 22 08:42:50 pm01 cib: [4990]: info: retrieveCib: Reading cluster configuration from: /var/lib/heartbeat/crm/cib.xml (digest: /var/lib/heartbeat/crm/cib.xml.sig)Apr 22 08:42:50 pm01 crmd: [4994]: info: Invoked: /usr/lib64/heartbeat/crmdApr 22 08:42:50 pm01 crmd: [4994]: info: main: CRM Hg Version: da7075976b5ff0bee71074385f8fd02f296ec8a3Apr 22 08:42:50 pm01 crmd: [4994]: info: crmd_init: Starting crmdApr 22 08:42:50 pm01 crmd: [4994]: info: G_main_add_SignalHandler: Added signal handler for signal 17Apr 22 08:42:50 pm01 attrd: [4993]: info: register_heartbeat_conn: Hostname: pm01Apr 22 08:42:50 pm01 attrd: [4993]: info: register_heartbeat_conn: UUID: 8559a0d8-a5c9-4a84-aa7e-1961cad9658cApr 22 08:42:50 pm01 attrd: [4993]: info: crm_cluster_connect: Connecting to HeartbeatApr 22 08:42:50 pm01 attrd: [4993]: info: main: Cluster connection activeApr 22 08:42:50 pm01 attrd: [4993]: info: main: Accepting attribute updatesApr 22 08:42:50 pm01 attrd: [4993]: info: main: Starting mainloop...Apr 22 08:42:50 pm01 heartbeat: [4979]: info: the send queue length from heartbeat to client ccm is set to 1024Apr 22 08:42:50 pm01 heartbeat: [4979]: info: the send queue length from heartbeat to client attrd is set to 1024Apr 22 08:42:50 pm01 cib: [4990]: info: startCib: CIB Initialization completed successfullyApr 22 08:42:50 pm01 stonithd: [4992]: info: register_heartbeat_conn: Hostname: pm01Apr 22 08:42:50 pm01 stonithd: [4992]: info: register_heartbeat_conn: UUID: 8559a0d8-a5c9-4a84-aa7e-1961cad9658cApr 22 08:42:50 pm01 stonithd: [4992]: info: crm_cluster_connect: Connecting to HeartbeatApr 22 08:42:50 pm01 heartbeat: [4979]: info: the send queue length from heartbeat to client stonithd is set to 1024Apr 22 08:42:50 pm01 stonithd: [4992]: notice: /usr/lib64/heartbeat/stonithd start up successfully.Apr 22 08:42:50 pm01 stonithd: [4992]: info: G_main_add_SignalHandler: Added signal handler for signal 17Apr 22 08:42:51 pm01 cib: [4990]: info: register_heartbeat_conn: Hostname: pm01Apr 22 08:42:51 pm01 cib: [4990]: info: register_heartbeat_conn: UUID: 8559a0d8-a5c9-4a84-aa7e-1961cad9658cApr 22 08:42:51 pm01 cib: [4990]: info: crm_cluster_connect: Connecting to HeartbeatApr 22 08:42:51 pm01 cib: [4990]: info: ccm_connect: Registering with CCM...Apr 22 08:42:51 pm01 cib: [4990]: WARN: ccm_connect: CCM Activation failedApr 22 08:42:51 pm01 cib: [4990]: WARN: ccm_connect: CCM Connection failed 1 times (30 max)Apr 22 08:42:51 pm01 heartbeat: [4979]: info: the send queue length from heartbeat to client cib is set to 1024Apr 22 08:42:51 pm01 crmd: [4994]: info: do_cib_control: Could not connect to the CIB service: connection failedApr 22 08:42:51 pm01 crmd: [4994]: WARN: do_cib_control: Couldn't complete CIB registration 1 times... pause and retryApr 22 08:42:51 pm01 crmd: [4994]: info: crmd_init: Starting crmd's mainloop
Apr 22 08:42:53 pm01 ccm: [4989]: info: G_main_add_SignalHandler: Added signal handler for signal 15Apr 22 08:42:53 pm01 crmd: [4994]: info: crm_timer_popped: Wait Timer (I_NULL) just popped!Apr 22 08:42:54 pm01 cib: [4990]: info: ccm_connect: Registering with CCM...Apr 22 08:42:54 pm01 cib: [4990]: info: cib_init: Requesting the list of configured nodesApr 22 08:42:54 pm01 cib: [4990]: info: cib_init: Starting cib mainloopApr 22 08:42:54 pm01 cib: [4990]: info: cib_client_status_callback: Status update: Client pm01/cib now has status [join]Apr 22 08:42:54 pm01 cib: [4990]: info: crm_new_peer: Node 0 is now known as pm01Apr 22 08:42:54 pm01 cib: [4990]: info: crm_update_peer_proc: pm01.cib is now onlineApr 22 08:42:54 pm01 cib: [4990]: info: cib_client_status_callback: Status update: Client pm02/cib now has status [join]Apr 22 08:42:54 pm01 cib: [4990]: info: crm_new_peer: Node 0 is now known as pm02Apr 22 08:42:54 pm01 cib: [4990]: info: crm_update_peer_proc: pm02.cib is now onlineApr 22 08:42:54 pm01 cib: [4990]: info: cib_client_status_callback: Status update: Client pm01/cib now has status [online]Apr 22 08:42:54 pm01 crmd: [4994]: info: do_cib_control: CIB connection establishedApr 22 08:42:54 pm01 cib: [5002]: info: write_cib_contents: Archived previous version as /var/lib/heartbeat/crm/cib-90.rawApr 22 08:42:54 pm01 cib: [5002]: info: write_cib_contents: Wrote version 0.244.0 of the CIB to disk (digest: d0cf804b2a297ae9841f7b172f2a18fe)Apr 22 08:42:54 pm01 cib: [5002]: info: retrieveCib: Reading cluster configuration from: /var/lib/heartbeat/crm/cib.cId1zN (digest: /var/lib/heartbeat/crm/cib.6Fjral)Apr 22 08:42:55 pm01 heartbeat: [4979]: WARN: 1 lost packet(s) for [pm02] [16:18]Apr 22 08:42:55 pm01 heartbeat: [4979]: info: No pkts missing from pm02!Apr 22 08:42:55 pm01 cib: [4990]: info: cib_client_status_callback: Status update: Client pm02/cib now has status [online]Apr 22 08:42:55 pm01 crmd: [4994]: info: register_heartbeat_conn: Hostname: pm01Apr 22 08:42:55 pm01 crmd: [4994]: info: register_heartbeat_conn: UUID: 8559a0d8-a5c9-4a84-aa7e-1961cad9658cApr 22 08:42:55 pm01 crmd: [4994]: info: crm_cluster_connect: Connecting to HeartbeatApr 22 08:42:55 pm01 heartbeat: [4979]: info: the send queue length from heartbeat to client crmd is set to 1024Apr 22 08:42:55 pm01 crmd: [4994]: info: do_ha_control: Connected to the clusterApr 22 08:42:55 pm01 crmd: [4994]: info: do_ccm_control: CCM connection established... waiting for first callbackApr 22 08:42:55 pm01 crmd: [4994]: info: do_started: Delaying start, CCM (0000000000100000) not connectedApr 22 08:42:55 pm01 crmd: [4994]: notice: crmd_client_status_callback: Status update: Client pm01/crmd now has status [online] (DC=false)Apr 22 08:42:55 pm01 attrd: [4993]: info: cib_connect: Connected to the CIB after 1 signon attemptsApr 22 08:42:55 pm01 attrd: [4993]: info: cib_connect: Sending full refreshApr 22 08:42:55 pm01 crmd: [4994]: info: crm_new_peer: Node 0 is now known as pm01Apr 22 08:42:55 pm01 crmd: [4994]: info: crm_update_peer_proc: pm01.crmd is now onlineApr 22 08:42:55 pm01 crmd: [4994]: info: crmd_client_status_callback: Not the DCApr 22 08:42:55 pm01 crmd: [4994]: notice: crmd_client_status_callback: Status update: Client pm01/crmd now has status [online] (DC=false)Apr 22 08:42:56 pm01 crmd: [4994]: info: crmd_client_status_callback: Not the DCApr 22 08:42:56 pm01 crmd: [4994]: notice: crmd_client_status_callback: Status update: Client pm02/crmd now has status [offline] (DC=false)Apr 22 08:42:56 pm01 crmd: [4994]: info: crm_new_peer: Node 0 is now known as pm02Apr 22 08:42:56 pm01 crmd: [4994]: info: crmd_client_status_callback: Not the DCApr 22 08:42:56 pm01 crmd: [4994]: info: do_started: Delaying start, CCM (0000000000100000) not connectedApr 22 08:42:56 pm01 crmd: [4994]: info: config_query_callback: Checking for expired actions every 900000msApr 22 08:42:56 pm01 crmd: [4994]: info: do_started: Delaying start, CCM (0000000000100000) not connectedApr 22 08:42:57 pm01 crmd: [4994]: notice: crmd_client_status_callback: Status update: Client pm02/crmd now has status [online] (DC=false)Apr 22 08:42:57 pm01 cib: [4990]: info: mem_handle_event: Got an event OC_EV_MS_NEW_MEMBERSHIP from ccmApr 22 08:42:57 pm01 cib: [4990]: info: mem_handle_event: instance=2, nodes=2, new=2, lost=0, n_idx=0, new_idx=0, old_idx=4Apr 22 08:42:57 pm01 cib: [4990]: info: cib_ccm_msg_callback: Processing CCM event=NEW MEMBERSHIP (id=2)Apr 22 08:42:57 pm01 cib: [4990]: info: crm_get_peer: Node pm02 now has id: 1Apr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer: Node pm02: id=1 state=member (new) addr=(null) votes=-1 born=1 seen=2 proc=00000000000000000000000000000100Apr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer_proc: pm02.ais is now onlineApr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer_proc: pm02.crmd is now onlineApr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer: Node pm01: id=0 state=member (new) addr=(null) votes=-1 born=2 seen=2 proc=00000000000000000000000000000100Apr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer_proc: pm01.ais is now onlineApr 22 08:42:57 pm01 cib: [4990]: info: crm_update_peer_proc: pm01.crmd is now onlineApr 22 08:42:57 pm01 crmd: [4994]: info: crm_update_peer_proc: pm02.crmd is now onlineApr 22 08:42:57 pm01 crmd: [4994]: info: crmd_client_status_callback: Not the DCApr 22 08:42:57 pm01 crmd: [4994]: info: mem_handle_event: Got an event OC_EV_MS_NEW_MEMBERSHIP from ccmApr 22 08:42:57 pm01 crmd: [4994]: info: mem_handle_event: instance=2, nodes=2, new=2, lost=0, n_idx=0, new_idx=0, old_idx=4Apr 22 08:42:57 pm01 crmd: [4994]: info: crmd_ccm_msg_callback: Quorum (re)attained after event=NEW MEMBERSHIP (id=2)Apr 22 08:42:57 pm01 crmd: [4994]: info: ccm_event_detail: NEW MEMBERSHIP: trans=2, nodes=2, new=2, lost=0 n_idx=0, new_idx=0, old_idx=4Apr 22 08:42:57 pm01 crmd: [4994]: info: ccm_event_detail: CURRENT: pm02 [nodeid=1, born=1]Apr 22 08:42:57 pm01 crmd: [4994]: info: ccm_event_detail: CURRENT: pm01 [nodeid=0, born=2]Apr 22 08:42:57 pm01 crmd: [4994]: info: ccm_event_detail: NEW: pm02 [nodeid=1, born=1]Apr 22 08:42:57 pm01 crmd: [4994]: info: ccm_event_detail: NEW: pm01 [nodeid=0, born=2]Apr 22 08:42:57 pm01 crmd: [4994]: info: crm_get_peer: Node pm02 now has id: 1Apr 22 08:42:57 pm01 crmd: [4994]: info: crm_update_peer: Node pm02: id=1 state=member (new) addr=(null) votes=-1 born=1 seen=2 proc=00000000000000000000000000000200Apr 22 08:42:57 pm01 crmd: [4994]: info: crm_update_peer_proc: pm02.ais is now onlineApr 22 08:42:57 pm01 crmd: [4994]: info: crm_update_peer: Node pm01: id=0 state=member (new) addr=(null) votes=-1 born=2 seen=2 proc=00000000000000000000000000000200Apr 22 08:42:57 pm01 crmd: [4994]: info: crm_update_peer_proc: pm01.ais is now onlineApr 22 08:42:57 pm01 crmd: [4994]: info: do_started: The local CRM is operationalApr 22 08:42:57 pm01 crmd: [4994]: info: do_state_transition: State transition S_STARTING -> S_PENDING [ input=I_PENDING cause=C_FSA_INTERNAL origin=do_started ]Apr 22 08:42:58 pm01 heartbeat: [4979]: WARN: 1 lost packet(s) for [pm02] [23:25]Apr 22 08:42:58 pm01 heartbeat: [4979]: info: No pkts missing from pm02!Apr 22 08:43:58 pm01 crmd: [4994]: info: crm_timer_popped: Election Trigger (I_DC_TIMEOUT) just popped!Apr 22 08:43:58 pm01 crmd: [4994]: WARN: do_log: FSA: Input I_DC_TIMEOUT from crm_timer_popped() received in state S_PENDINGApr 22 08:43:58 pm01 crmd: [4994]: info: do_state_transition: State transition S_PENDING -> S_ELECTION [ input=I_DC_TIMEOUT cause=C_TIMER_POPPED origin=crm_timer_popped ]Apr 22 08:43:59 pm01 crmd: [4994]: info: do_state_transition: State transition S_ELECTION -> S_PENDING [ input=I_PENDING cause=C_FSA_INTERNAL origin=do_election_count_vote ]
まだまだ続く
![Page 200: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/200.jpg)
起動時のログの比較/var/log/pm_logconv.out (41行)Apr 22 08:42:45 pm01 info: Starting Heartbeat 3.0.4.Apr 22 08:42:46 pm01 info: Link pm01:eth1 is up.Apr 22 08:42:46 pm01 info: Link pm01:eth2 is up.Apr 22 08:42:49 pm01 info: Link pm02:eth1 is up.Apr 22 08:42:49 pm01 info: Link pm02:eth2 is up.Apr 22 08:42:50 pm01 info: Start "ccm" process. (pid=4989)Apr 22 08:42:50 pm01 info: Start "cib" process. (pid=4990)Apr 22 08:42:50 pm01 info: Start "lrmd" process. (pid=4991)Apr 22 08:42:50 pm01 info: Start "stonithd" process. (pid=4992)Apr 22 08:42:50 pm01 info: Start "attrd" process. (pid=4993)Apr 22 08:42:50 pm01 info: Start "crmd" process. (pid=4994)Apr 22 08:42:50 pm01 info: Start "ifcheckd" process. (pid=4995)Apr 22 08:44:04 pm01 info: Set DC node to pm02.Apr 22 08:44:10 pm01 info: Resource prmStonith2-1 tries to start.Apr 22 08:44:10 pm01 info: Resource prmStonith2-1 started. (rc=0)Apr 22 08:44:11 pm01 info: Attribute "pm02-eth1" is updated to "up".Apr 22 08:44:11 pm01 info: Attribute "pm02-eth2" is updated to "up".Apr 22 08:44:11 pm01 info: Resource prmStonith2-2 tries to start.Apr 22 08:44:11 pm01 info: Resource prmDiskd1:1 tries to start.Apr 22 08:44:11 pm01 info: Resource prmDiskd2:1 tries to start.Apr 22 08:44:11 pm01 info: Resource prmPingd:1 tries to start.Apr 22 08:44:12 pm01 info: Attribute "diskcheck_status" is updated to "normal".Apr 22 08:44:12 pm01 info: Resource prmDiskd2:1 started. (rc=0)Apr 22 08:44:12 pm01 info: Attribute "diskcheck_status_internal" is updated to "normal".Apr 22 08:44:12 pm01 info: Resource prmStonith2-2 started. (rc=0)Apr 22 08:44:12 pm01 info: Resource prmDiskd1:1 started. (rc=0)Apr 22 08:44:12 pm01 info: Attribute "default_ping_set" is updated to "100".Apr 22 08:44:12 pm01 info: Resource prmPingd:1 started. (rc=0)Apr 22 08:44:12 pm01 info: Attribute "diskcheck_status" is updated to "normal".Apr 22 08:44:12 pm01 info: Attribute "diskcheck_status_internal" is updated to "normal".Apr 22 08:44:12 pm01 info: Attribute "default_ping_set" is updated to "100".Apr 22 08:44:12 pm01 info: Resource prmEx tries to start.Apr 22 08:44:12 pm01 info: Resource prmStonith2-3 tries to start.Apr 22 08:44:13 pm01 info: Resource prmStonith2-3 started. (rc=0)Apr 22 08:44:14 pm01 info: Resource prmEx started. (rc=0)Apr 22 08:44:14 pm01 info: Resource prmFs tries to start.Apr 22 08:44:15 pm01 info: Resource prmFs started. (rc=0)Apr 22 08:44:16 pm01 info: Resource prmIp tries to start.Apr 22 08:44:16 pm01 info: Resource prmIp started. (rc=0)Apr 22 08:44:18 pm01 info: Resource prmPg tries to start.Apr 22 08:44:21 pm01 info: Resource prmPg started. (rc=0)
Pacemakerのログ
から、特に運用に関係のあるものを抽出、メッセージ変換するツール
![Page 201: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/201.jpg)
リソース設定
![Page 202: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/202.jpg)
Crmコマンド (統合シェル)を使用
![Page 203: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/203.jpg)
Crmコマンド (統合シェル)を使用
Pacemakerで導入され
リソース設定からノード・リソース管理なども行える
![Page 204: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/204.jpg)
Crmコマンド (統合シェル)を使用
リソース設定をファイル(例:pg.crm)で作成して、コマンドを実行
# crm configure load update pg.crm
![Page 205: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/205.jpg)
リソース設定
![Page 206: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/206.jpg)
リソース設定
クラスタオプション
リソースデフォルトオプション
個別のリソース設定
リソース制約条件
![Page 207: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/207.jpg)
リソース設定
クラスタオプションproperty no-quorum-policy="ignore" ¥
stonith-enabled="true" ¥startup-fencing="false" ¥stonith-timeout="740s"
![Page 208: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/208.jpg)
リソース設定
リソースデフォルトオプションrsc_defaults resource-stickiness="INFINITY" ¥
migration-threshold="1"
![Page 209: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/209.jpg)
リソース設定
PostgreSQLのフェイルオーバグループのprimitive宣言
primitive prmEx ocf:heartbeat:sfex ¥params ¥
device="/dev/sdb1" ¥index="1" ¥collision_timeout="1" ¥lock_timeout="10" ¥monitor_interval="10" ¥
op start interval="0s" timeout="300s" on-fail="restart" ¥op monitor interval="10s" timeout="90s" on-fail="restart" ¥op stop interval="0s" timeout="60s" on-fail="fence"
primitive prmFs ocf:heartbeat:Filesystem ¥params ¥
fstype="ext3" ¥device="/dev/sdb2" ¥directory="/var/lib/pgsql/9.0/data" ¥
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="fence"
primitive prmIp ocf:heartbeat:IPaddr2 ¥params ¥
ip="192.168.68.100" ¥nic="eth0" ¥cidr_netmask="24" ¥
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="fence"
primitive prmPg ocf:heartbeat:pgsql ¥params ¥
pgctl="/usr/pgsql-9.0/bin/pg_ctl" ¥start_opt="-p 5432 -h 192.168.68.100" ¥psql="/usr/pgsql-9.0/bin/psql" ¥pgdata="/var/lib/pgsql/9.0/data" ¥pgdba="postgres" ¥pgport="5432" ¥pgdb="template1" ¥
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="fence"
![Page 210: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/210.jpg)
リソース設定
PostgreSQLのフェイルオーバグループのグループ宣言
group grpPg ¥prmEx ¥prmFs ¥prmIp ¥prmPg
![Page 211: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/211.jpg)
リソース設定
ネットワーク経路監視のprimitive宣言primitive prmPingd ocf:pacemaker:pingd ¥
params ¥name="default_ping_set" ¥host_list="192.168.68.2" ¥multiplier="100" ¥dampen="0" ¥
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="ignore"
![Page 212: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/212.jpg)
リソース設定
ディスク監視のprimitive宣言primitive prmPingd ocf:pacemaker:pingd ¥
params ¥name="default_ping_set" ¥host_list="192.168.68.2" ¥multiplier="100" ¥dampen="0" ¥
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="ignore"
primitive prmDiskd1 ocf:pacemaker:diskd ¥params ¥
name="diskcheck_status" ¥device="/dev/sdb" ¥interval="10" ¥
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="ignore"
![Page 213: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/213.jpg)
リソース設定
ネットワーク経路監視、ディスク監視のclone化
clone clnPingd ¥prmPingd
clone clnDiskd1 ¥prmDiskd1
clone clnDiskd2 ¥prmDiskd2
![Page 214: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/214.jpg)
リソース設定
PostgreSQLリソースグループの配置制約
location rsc_location-grpPg-1 grpPg ¥rule 200: #uname eq pm01 ¥rule 100: #uname eq pm02 ¥rule -INFINITY: not_defined default_ping_set or
default_ping_set lt 100 ¥rule -INFINITY: not_defined diskcheck_status or
diskcheck_status eq ERROR ¥rule -INFINITY: not_defined diskcheck_status_internal or
diskcheck_status_internal eq ERROR
![Page 215: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/215.jpg)
STONITH設定
STONITH Pluginのprimitive宣言primitive prmStonith1-1 stonith:external/stonith-helper ¥
params ¥priority="1" ¥stonith-timeout="70" ¥hostlist="pm01" ¥dead_check_target="192.168.68.101 192.168.32.101 192.168.64.101 192.168.128.101" ¥standby_wait_time="15" ¥standby_check_command="/usr/sbin/crm_resource -r prmEx -W | grep -q `hostname`" ¥
op start interval="0s" timeout="60s" on-fail="restart" ¥op monitor interval="3600s" timeout="60s" on-fail="restart" ¥op stop interval="0s" timeout="60s" on-fail="ignore"
primitive prmStonith1-2 stonith:external/ssh ¥params ¥
priority="2" ¥stonith-timeout="300" ¥hostlist="pm01" ¥
op start interval="0s" timeout="60s" on-fail="restart" ¥op monitor interval="3600s" timeout="60s" on-fail="restart" ¥op stop interval="0s" timeout="60s" on-fail="ignore"
primitive prmStonith1-3 stonith:meatware ¥params ¥
priority="3" ¥stonith-timeout="600" ¥hostlist="pm01" ¥
op start interval="0s" timeout="60s" ¥op monitor interval="3600s" timeout="60s" ¥op stop interval="0s" timeout="60s"
![Page 216: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/216.jpg)
STONITH設定
STONITH Pluginのgroup宣言group grpStonith1 ¥
prmStonith1-1 ¥prmStonith1-2 ¥prmStonith1-3
![Page 217: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/217.jpg)
STONITH設定
pm02用の設定も同じように実施
![Page 218: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/218.jpg)
STONITH設定
STONITH Pluginの配置制約location rsc_location-grpStonith1-2 grpStonith1 ¥
rule -INFINITY: #uname eq pm01location rsc_location-grpStonith2-3 grpStonith2 ¥
rule -INFINITY: #uname eq pm02
![Page 219: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/219.jpg)
リソース設定の反映
リソース設定をエディタ(例:pg.crm)で作成して、次のコマンドを実行
# crm configure load update pg.crm
![Page 220: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/220.jpg)
Pacemakerのクラスタ状態表示
# crm_mon -A
![Page 221: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/221.jpg)
Pacemakerのクラスタ状態表示============(省略)============Online: [ pm02 pm01 ]Resource Group: grpPg
prmEx (ocf::heartbeat:sfex): Started pm01prmFs (ocf::heartbeat:Filesystem): Started pm01prmIp (ocf::heartbeat:IPaddr2): Started pm01prmPg (ocf::heartbeat:pgsql): Started pm01
Resource Group: grpStonith1prmStonith1-1 (stonith:external/stonith-helper): Started pm02prmStonith1-2 (stonith:external/ssh): Started pm02prmStonith1-3 (stonith:meatware): Started pm02
Resource Group: grpStonith2prmStonith2-1 (stonith:external/stonith-helper): Started pm01prmStonith2-2 (stonith:external/ssh): Started pm01prmStonith2-3 (stonith:meatware): Started pm01
Clone Set: clnDiskd1Started: [ pm02 pm01 ]
Clone Set: clnDiskd2Started: [ pm02 pm01 ]
Clone Set: clnPingdStarted: [ pm02 pm01 ]
Node Attributes:* Node pm02:
+ default_ping_set : 100+ diskcheck_status : normal+ diskcheck_status_internal : normal+ pm01-eth1 : up+ pm01-eth2 : up
PostgreSQL関連の設定
STONITHの設定
ネットワーク経路監視、ディスク監視の設定
pm02における各種監視情報の値(ネットワーク経路監視、ディスク監視、ハートビートLAN監視)
![Page 222: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/222.jpg)
デモビデオ
![Page 223: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/223.jpg)
デモビデオ1
リソースがなにも設定されていない状態から、PostgreSQLのHAクラスタ設定をロードします# crm configure load update pg.crm
![Page 224: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/224.jpg)
デモビデオ2
リソース故障(PostgreSQL)を発生させます
Pacemakerが故障を検知し、リソースをフェイルオーバさせます
故障復旧後、次のコマンドで故障状態をクリアします# crm resource cleanup prmPg
![Page 225: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/225.jpg)
デモビデオ3
ネットワーク経路監視でエラーを発生させます
Pacemakerが故障を検知し、リソースをフェイルオーバさせます
![Page 226: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/226.jpg)
デモビデオ4
ハートビートLANをすべて断線し、スプリットブレインを発生させます
STONITHが発動されます。stonith-helperにより、待機ノードがリブートされます
![Page 227: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/227.jpg)
pm_crmgen
ExcelまたはOpenOfficeで編集したテンプレートファイルからcrmコマンド
の入力ファイルを生成するツールです
![Page 228: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/228.jpg)
Linux-HA Japan Project 228
1) Excelのテンプレートファイルにリソース定義を記載
/usr/share/pacemaker/pm_crmgen/pm_crmgen_env.xls ファイルを
Excel が使用できるPCにコピーします。テンプレートは青枠の中に値を記入していきます。
監視間隔やタイムアウト値、故障時の動作などを入力
デモビデオ環境は、このExcelの設定例シートのみで作成
pm_crmgen
![Page 229: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/229.jpg)
どのサーバを稼動系にするかといった
リソース配置制約の設定も、サーバ名を記述するだけで可能です。
稼動系と待機系サーバを指定
リソースID
pm_crmgen
![Page 230: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/230.jpg)
2) CSV形式でファイルを保存
「crm_sample.csv」などとしてCSV形式で保存
CSVファイル保存後、SCPやFTP等でpm_crmgenがインストールされたサーバへ転送
3) CSVファイルをサーバへ転送
crm用設定ファイルに変換pm_crmgen
![Page 231: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/231.jpg)
231
4) pm_crmgenコマンドでcrmファイルを生成
# pm_crmgen –o crm_sample.crm crm_sample.csv
生成する設定ファイル名 3)で転送したCSVファイル
crm用設定ファイルに変換
5) crmコマンドを実行してリソース設定を反映
# crm configure load update crm_sample.crm
pm_crmgen
![Page 232: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/232.jpg)
最後に皆さんへのメッセージ
![Page 233: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/233.jpg)
Pacemakerは商用製品にも負けない機能と信頼性を持ったHAクラスタソフトウェアです
![Page 234: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/234.jpg)
まずは、Pacemakerを使ってみてください
![Page 235: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/235.jpg)
皆さんが使うことが、OSSの力になります
![Page 236: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/236.jpg)
できることからOSSへの貢献を始めてみませんか?
![Page 237: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/237.jpg)
できることからOSSへの貢献を始めてみませんか?
質問
バグ報告
新規RAの提案
エンハンスメントの提案
![Page 238: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/238.jpg)
自己のスキルレベルアップを確認したくなったら、
![Page 239: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/239.jpg)
自己のスキルレベルアップを確認したくなったら、
LPIC304を受けてみましょう!
![Page 240: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/240.jpg)
ご静聴ありがとうございました!
![Page 241: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/241.jpg)
新ロゴ誕生の裏話
![Page 242: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/242.jpg)
昨年、Pacemakerをプロモーションし
ていこうとなったとき、どうしても気になったこと
![Page 243: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/243.jpg)
Pacemakerのロゴ
医療用のPacemakerっぽいのをどうにかしたい!
![Page 244: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/244.jpg)
Linux-HA Japanで投票で新しいロゴを作りました
![Page 245: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/245.jpg)
Linux-HA Japanで投票で新しいロゴを作りました
これって、うさぎ?
![Page 246: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/246.jpg)
Linux-HA Japanで投票で新しいロゴを作りました
はいそうです。続きは、Web(↓)でhttp://gihyo.jp/admin/serial/01/pacemaker/0001
コラム:Pacemakerロゴあれこれ
![Page 247: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/247.jpg)
調子にのって、本家の開発者にも新ロゴを提案
Linux Plumbers Conference 2010
![Page 248: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/248.jpg)
意外にも好印象!
![Page 249: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/249.jpg)
公開投票でどっちがいいか決めようということに
![Page 250: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/250.jpg)
公開投票の結果は?
![Page 251: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/251.jpg)
公開投票の結果は?
![Page 252: OSS HAクラスタPacemakerを 活用したHAシステム …linux-ha.osdn.jp/wp/wp-content/uploads/LPI-seminor...$OCF_SUCCESS, $OCF_NOT_RUNNINGはPacemakerで定義済みの変数](https://reader031.vdocuments.net/reader031/viewer/2022012311/5ab665907f8b9ab7638d9fbd/html5/thumbnails/252.jpg)
というわけで、本家のロゴにも採用
でも、カラーにこだわりが