実演!Pacemakerで楽々クラスタリング

Similar documents
まずは、Pacemakerを使ってみよう!

実演!Pacemakerで楽々クラスタリング OSC2011Tokyo/Spring

Pacemakerでかんたんクラスタリング体験してみよう

スライド 1

Pacemaker + KVMで仮想化クラスタリング ~仮想化連携機能のご紹介~ OSC2011Tokyo/Fall

挑戦!Pacemakerで自由自在にHAクラスタリング

HAクラスタをフェイルオーバ失敗から救おう!

HAクラスタでPostgreSQLを高可用化(前編)

Heartbeat + Xenで仮想化クラスタリングしてみよう!

自己紹介 名前 所属 飯田雄介 ( いいだゆうすけ ) 主な活動 Linux-HA Japan プロジェクト Pacemaker 本体の機能改善や 外部ツールの開発を行っています Linux-HA Japan から pm_logconv や pm_crmgen といったツールを提供しています 2

別紙 : 検証環境の構築手順 ( 章 ) 1. サーバ設定 1.1 IP アドレス設定 サーバは以下の 6 台を用いる pgpool-ii サーバ 2 台 DB サーバ 3 台 上位サーバ 1 台 OS は全サーバで CentOS 6.4 x86_64 とする pgpool-ii のサー

目次 Pacemaker ってなに? Pacemaker の設定とは? Pacemaker のリソース設定 リソース定義 パラメータ設定 リソース種類選択 リソース制約 クラスタ設定 さいごに Linux-HA Japan の紹介 Linux-HA Japan Project 2

2

改版履歴 版数改版履歴改版年月日 1 新規作成 2013/3/29 2 TESTIO_MODE を追加 OVER_ACTION VG_STALL_ACTION の設定値を変更 2013/9/30 3 CLUSTERPRO MC StorageSaver for BootDisk (for Linux

3 検証結果 3.1 ソフトウェアのインストール Red Hat Enterprise Linux 5.7 は最小構成でインストールし 最新バージョンにアップデートした Thirdware Linux-HA を構成するパッケージ (DRBD Heartbeat Pacemaker) は LINBIT

<MW-400k > InterSec/MW400k アップデート適用手順書 2017 年 8 月 1 版

SRA OSS, Inc. ホワイトペーパー IBM Power Systems (Linux) における PaceMaker/DRBD/PostgreSQL/pgpool-II 動作検証 2011 年 10 月 1 日 SRA OSS,Inc. 日本支社 Copyright 2011SRA OSS

HAクラスタで PostgreSQLを高可用化 (後編) ~ レプリケーション編 ~

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

スライド 1

スライド 1

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

目次 1 環境 バージョン インストール環境 インストール手順 前提条件 CentOS SSHD の設定 VSFTPD の設定 コンテンツ管理 CGI のイ

Confidential

CLUSTERPRO MC RootDiskMonitor 1.0 for Windows FAQ 集 2013(Mar) NEC Corporation 導入に関する質問 運用に関する質問 動作環境に関する質問

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

CLUSTERPRO MC StorageSaver 1.2 for Linux パラメータシート 第 4 版 2014 年 3 月 31 日 日本電気株式会社

テーマ Pacemaker-1.1 を味わうための 便利 な使い方 ~ 保守運用に活用しよう ~ Pacemaker で対応する 故障 ケースの起こし方と復旧手順 ~ 事前に動作検証しよう ~ 実際の構築運用シーンで起きる問題の 解決 方法 ~ よくある問題を理解しよう ~ 2

XEN 仮想マシンの移植 Islandcenter.jp 2009/04/14 既に作成済みの XEN 仮想マシンを移植する方法を説明します 仮想マシンイメージは 通常 /var/lib/xen/image/myvmachine に作成されていますが このファイルを tar 圧縮してリムーバブルメデ

Microsoft Word - HAクラスタ構築手順書.doc

Microsoft Word - クライアントのインストールと接続設定

Cuoreテンプレート

HAクラスタで PostgreSQLを高可用化 (後編) ~ レプリケーション編 ~

人と地球にやさしい情報社会を イノベーションで実現する グローバルリーディングカンパニー NEC グループビジョン 2017 Page 2

SAMBA Remote(Mac) 編 PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP

目次 1. 動作環境チェック 動作必要環境 Java のインストール Java のインストール Firebird のインストール Firebird のインストール Adobe Reader のインストール

ServerView RAID Manager VMware vSphere ESXi 6 インストールガイド

Microsoft Word - ssVPN MacOS クライアントマニュアル_120版.doc

改版履歴 版数改版履歴改版年月日 1.0 新規作成 2015/03/31 Page 2 NEC Corporation 2015

スライド 1

Microsoft Word - SE第15回.doc

CLUSTERPRO MC StorageSaver 2.0 for Windows 導入ガイド 第 1 版 2015 年 3 月 日本電気株式会社

Symantec AntiVirus の設定


共有フォルダ接続手順 1 共有フォルダ接続ツールのダウンロード 展開 CSVEX のトップページから共有フォルダ接続ツールの zip ファイルをダウンロードします ダウンロードした zip ファイルを右クリックして すべて展開 を選択します (Windows 環境では zip ファイルを解凍しなくて

Windows Server 2003 Service Pack 適用手順書

ESMPRO/ServerManager Ver. 6 変更履歴

スキルブレイン株式会社 LPI-Japan 主催 LPIC 304 技術解説セミナー LPI-Japan アカデミック認定校スキルブレイン株式会社河原木忠司 LPI-Japan All rights reserved.

Pacemakerでお手軽Dockerクラスタリング!

CLUSTERPRO MC ProcessSaver 1.2 for Windows 導入ガイド 第 4 版 2014 年 3 月 日本電気株式会社

CLUSTERPRO MC ProcessSaver 2.3 for Windows 導入ガイド 第 5 版 2018 年 6 月 日本電気株式会社

音声認識サーバのインストールと設定

平成22年度「技報」原稿の執筆について

AutoSlideGenerator

CLUSTERPRO MC StorageSaver 1.1 for Linux リリースメモ 2015(Jun) NEC Corporation ライセンス パッケージのインストール セットアップ マニュアル 補足事項 注意事項

改版履歴 版数改版履歴改版年月日 1.0 新規作成 2013/03/ OverAction と DiskStallAction の値変更 (ActionNone ServiceCmdDisable ProcessOfRdmstatKillEnable ServiceCmdEnable)

スライド 1

Mobile Access簡易設定ガイド

ServerView Resource Orchestrator V3.0 ネットワーク構成情報ファイルツール(Excel形式)の利用方法

2-3- 基 Linux のシステム管理に関する知識 1 独立行政法人情報処理推進機構

ユーザーライセンス管理ツール操作マニュアル

iExpressソフトフォン TE20-ST-EX

Airwave_upgrade.pdf

CLUSTERPRO/システム構築ガイド

SIOS Protection Suite for Linux v9.3.2 AWS Direct Connect 接続クイックスタートガイド 2019 年 4 月

<48554C46545F F A5490E08E9197BF2E786C73>

CLUSTERPRO MC RootDiskMonitor 1.1 for Linux リリースメモ 2013(Sep) NEC Corporation ライセンス パッケージのインストール セットアップ マニュアル

ServerView RAID Manager VMware vSphere ESXi 5 インストールガイド

PowerPoint Presentation

CLUSTERPRO MC StorageSaver 2.2 for Linux リリースメモ 2017(Apr) NEC Corporation ライセンス パッケージのインストール セットアップ マニュアル 補足事項 注意事項

zabbix エージェント インストールマニュアル [Windows Server] 第 1.2 版 2018 年 05 月 18 日 青い森クラウドベース株式会社

防災マップ作成システムの開発業務基本設計書

スライド 1

スライド 0

PowerPoint Presentation

オフラインメンテナンス説明書-ver5.0.0

URoad-TEC101 Syslog Guide

2013年『STSSスキルコミュニティ』 テーマ別Kickoff資料

Administration of Veritas Cluster Server 6.0 for UNIX の管理練習問題 例題 1. installvcs -installonly が正常に実行されたことが記録されるテキストファイルは次のどれですか (2 つ選択 ) a. インストールログ b.

目次 メールの基本設定内容 2 メールの設定方法 Windows Vista / Windows 7 (Windows Live Mail) Windows 8 / Windows 10 (Mozilla Thunderbird) 3 5 Windows (Outlook 2016) メ

Pacemake-1.0とは違うのだよ、1.0とは! ~Pacemaker-1.1新機能のご紹介~

クラスタ構築手順書

目次 1. 概要 製品構成 用語集 SECUDRIVE Device Control Basic インストールUSBメモリの構成 プログラムのインストール 体験版から正規版への変更

PowerPoint プレゼンテーション

目次 はじめに フリープラグインリスト マイグレーションツール Cobalt Migration Utility Web サーバーの帯域制御プラグイン データベースプラグイン

OpenAM 9.5 インストールガイド オープンソース ソリューション テクノロジ ( 株 ) 更新日 : 2013 年 7 月 19 日 リビジョン : 1.8

PowerPoint プレゼンテーション

Microsoft Word - Setup_Guide

PostgreSQL Plus 管理者ガイド

MIRACLE MH for SNMP サポート SLA( サービスレベルアグリーメント ) ML-CS-0747 本書は サイバートラスト株式会社 ( 以下 サイバートラスト ) が MIRACLE MH for SNMP サポート ( 以下当サポートサービス ) の内容について説明するものである

Active Directory フェデレーションサービスとの認証連携

第一章 LPC2478 ボードの概要...3 第二章 uclinux の初体験 SD カードのテスト USB メモリのテスト USB Devices のテスト network のテスト...6 第三章 uclinux のコンパイル...

WebView のハング:- java.lang.OutOfMemoryError

Maser - User Operation Manual

CLUSTERPRO X IIJ GIO インフラストラクチャー P2 動作検証報告 2017 年 11 月日本電気株式会社クラウドプラットフォーム事業部 CLUSTERPROグループ 1 NEC Corporation 2017

Helix Swarm2018.1アップグレード手順

目次 1. はじめに 準備 機器構成 やさしく名刺ファイリング Pro v.14.0 セットアップと動作確認 やさしく名刺ファイリング Pro v.14.0 セットアップ... 5 Windows Windows 8.

日医特定健康診査システム ORCA PROJECT Linux 対応版インストールマニュアル (Version 対応 ) Ubuntu Trusty 用 版 2017 年 2 月 23 日 Copyright (C) Japan Medical

Microsoft Word - バーチャルクラス(Blackboard)ログイン方法ガイド.docx

はしがき 本書は CLUSTERPRO MC ProcessSaver 1.0 for Linux ( 以後 ProcessSaver と記載します ) に よるプロセス監視の基本的な動作について記載したものです (1) 商標および商標登録 Linux は Linus Torvalds 氏の米国およ

Transcription:

実演! Pacemaker で 楽々クラスタリング 2011 年 4 月 16 日 OSC2011 Kansai@Kobe Linux-HA Japan 田中崇幸 Linux-HA Japan Project 1

本日のお話 1 Linux-HA Japanについて 2 本日のPacemakerデモ環境 3 インストール 設定方法を実演します! 4 フェイルオーバ 系切り替えを実演します! Linux-HA Japan Project 2

1 Linux-HA Japan について Linux-HA Japan Project 3

Linux-HA Japan の経緯 Heartbeat( ハートビート ) の日本における更なる普及展開を目的として 2007 年 10 月 5 日 Linux-HA (Heartbeat) 日本語サイト を設立しました その後 日本での Linux-HA コミュニティ活動として Heartbeat2 の rpm バイナリと オリジナルの Heartbeat 機能追加用パッケージを提供してきました Linux-HA Japan Project 4

Linux-HA Japan URL http://linux-ha.sourceforge.jp/ ( 一般向け ) http://sourceforge.jp/projects/linux-ha/ ( 開発者向け ) Pacemaker 情報の公開用として新しい一般向けウェブサイトが 2010/6/25 にオープンしました 本日の資料もこのサイトから公開予定です! Linux-HA Japan Project 5

Linux-HA Japan メーリングリスト 日本における HA クラスタについての活発な意見交換の場として Linux-HA Japan 日本語メーリングリスト も開設しています Linux-HA-Japan ML では Pacemaker Heartbeat3 Corosync DRBD など HA クラスタに関連する話題は歓迎! ML 登録用 URL http://linux-ha.sourceforge.jp/ の メーリングリスト をクリック ML アドレス linux-ha-japan@lists.sourceforge.jp スパム防止のために 登録者以外の投稿は許可制です Linux-HA Japan Project 6

にて連載中! Pacemaker でかんたんクラスタリング 体験してみよう! http://gihyo.jp/admin/serial/01/pacemaker 合計 4 回の連載で Pacemaker の概要説明から構築方法 保守運用にいたるまで紹介しています Linux-HA Japan Project 7

2 本日の Pacemaker デモ環境 Linux-HA Japan Project 8

本日の Pacemaker デモ環境 ハードウェア ノート PC (Core2Duo 2.26MHz メモリ 2G) OS CentOS 5.6 x86_64 HA クラスタ Pacemaker-1.0.10 ( インストールの実演を行います ) クラスタ化するアプリケーション PostgreSQL 9.0.3 ( インストール済み ) 仮想環境 Xen (CentOS 5.6 同梱版 ) Domain-U は 2 ドメインで構成 各ドメインには CPU 1 メモリ 480M を割り当て Linux-HA Japan Project 9

Pacemaker デモ構成 demo (Domain-0) サービス LAN 仮想 IP 192.168.0.100 pm1 eth0 192.168.0.22 eth1 192.168.10.22 インターコネクト LAN1 eth0 192.168.0.23 eth1 192.168.10.23 pm2 PostgreSQL eth2 192.168.20.22 インターコネクト LAN2 eth2 192.168.20.23 HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 DB 領域 /dev/xvdb2 管理用 LAN Linux-HA Japan Project 10

Pacemaker デモ機構成 (Xen 仮想 NW) demo (Domain-0) pm1 (Domain-U) eth0 eth1 eth2 eth3 xenbr0 ( サービス LAN 用ブリッジ ) pdummy0 xenbr1 ( インターコネクト LAN1 用ブリッジ ) pdummy1 eth0 eth1 eth2 eth3 pm2 (Domain-U) xenbr2 ( インターコネクト LAN2 用ブリッジ ) pdummy2 xenbr3 ( 管理 LAN 用ブリッジ ) peth0 dummy0 dummy1 dummy2 eth0 Linux-HA Japan Project 11

Pacemaker デモ機構成 (Xen 仮想ディスク ) pm1 (Domain-U) demo (Domain-0) pm2 (Domain-U) /dev/xvda1 (OS 領域 ) /dev/xvda2 (swap) /dev/xvda pm1 OS 領域 /dev/lvm/pm1 pm2 OS 領域 /dev/lvm/pm2 /dev/xvda /dev/xvda1 (OS 領域 ) /dev/xvda2 (swap) /dev/xvdb1 ( 排他制御 ) /dev/xvdb2 (DB 領域 ) /dev/xvdb 共有データ領域 /dev/lvm/vol03 /dev/xvdb /dev/xvdb1 ( 排他制御 ) /dev/xvdb2 (DB 領域 ) Linux-HA Japan Project 12

Pacemaker デモ リソース構成 これら 4 つのリソースはグループ設定します ディスク排他制御 (sfex) 共有ディスクの排他制御を行います DB データ領域マウント (Filesystem) 共有ディスクにある DB データ領域のマウント制御を行います 仮想 IP 割り当て (IPaddr2) サービス提供用の仮想 IP を割り当てます PostgreSQL 制御 (pgsql) PostgreSQL 9.0.3 の制御を行います Linux-HA Japan Project 13

本日は STONITH のデモも行います STONITH (stonith-helper, xen0, meatclient) STONITH は Shoot The Other Node In The Head の略で 監視対象サーバの異常を検出したときに 強制的にそのサーバをダウンさせるノードフェンシングを行います ネットワーク監視 (pingd) 指定した IP アドレスに ping 送信し ネットワーク疎通があるかどうかの監視を行います ディスク監視 (diskd) 指定したディスクデバイスにアクセスし ディスクの正常性確認を行います Linux-HA Japan Project 14

Pacemaker デモ機フェンシング (STONITH) 構成 demo (Domain-0) pm1 (Domain-U) STONITH eth0 eth1 eth2 eth3 xenbr0 ( サービス LAN 用ブリッジ ) pdummy0 xenbr1 ( インターコネクト LAN1 用ブリッジ ) eth0 eth1 eth2 eth3 pm2 (Domain-U) pdummy1 xenbr3 経由で STONITH を実行する xenbr2 ( インターコネクト LAN2 用ブリッジ ) pdummy2 xenbr3 ( 管理 LAN 用ブリッジ ) peth0 dummy0 xm destroy dummy1pm2 dummy2 SSH eth0 Linux-HA Japan Project 15

3 インストール 設定方法を 実演します! Linux-HA Japan Project 16

インストール方法の種類 1. yum を使ってネットワークインストール Pacemaker 本家 (clusterlabs) の yum のリポジトリを使用 サーバにインターネット接続必須 2. ローカルリポジトリ + yum を使ってインストール Linux-HA Japan 提供のリポジトリパッケージを使用 Linux-HA Japan オリジナルパッケージも含まれる 3. rpm を手動でインストール 沢山の rpm を個別にダウンロードする必要あり 4. ソースからインストール 最新の機能をいち早く試せる コンポーネントが多いので コンパイルは面倒 本日は 2 の構築デモを行います Linux-HA Japan Project 17

~ ローカルリポジトリ + yum を使ってインストール ~ ( サーバにインターネット接続環境がなくても OK!) 1. Pacemaker リポジトリパッケージをダウンロード Linux-HA Japan 提供の Pacemaker リポジトリパッケージを sourceforge.jp からダウンロードしておきます pacemaker-1.0.10-1.4.1.el5.x86_64.repo.tar.gz をダウンロード Pacemaker-1.0.10 版は 11/26 リリース Linux-HA Japan Project 18

~ ローカルリポジトリ + yum を使ってインストール ~ 2. Pacemaker リポジトリパッケージを展開 sourceforge.jp からダウンロードしたリポジトリパッケージを /tmp で展開します # cd /tmp # tar zxvf pacemaker-1.0.10-1.4.1.el5.x86_64.repo.tar.gz : pacemaker-1.0.10-1.4.1.el5.x86_64.repo/rpm/pacemaker-1.0.10-1.4.1.el5.x86_64.rpm pacemaker-1.0.10-1.4.1.el5.x86_64.repo/pacemaker.repo pacemaker-1.0.10-1.4.1.el5.x86_64.repo/repodata/ pacemaker-1.0.10-1.4.1.el5.x86_64.repo/repodata/primary.xml.gz pacemaker-1.0.10-1.4.1.el5.x86_64.repo/repodata/other.xml.gz pacemaker-1.0.10-1.4.1.el5.x86_64.repo/repodata/filelists.xml.gz pacemaker-1.0.10-1.4.1.el5.x86_64.repo/repodata/repomd.xml インストールする RPM ファイルと repo ファイル等が展開されます Linux-HA Japan Project 19

~ ローカルリポジトリ + yum を使ってインストール ~ 3. yum でインストール! Linux-HA Japan オリジナルパッケージも同時にインストールします # cd /tmp/pacemaker-1.0.10-1.4.1.el5.x86_64.repo/ # yum c pacemaker.repo install pacemaker pm_crmgen pm_diskd pm_logconv-hb pm_extras pm_crmgen-1.0-1.el5.noarch.rpm crm 用設定ファイル編集ツール pm_diskd-1.0-1.el5.x86_64.rpm ディスク監視アプリとRA pm_logconv-hb-1.0-1.el5.noarch.rpm ログ変換ツール pm_extras-1.0-1.el5.x86_64.rpm その他オリジナル RA 等 ぜひぜひ使ってみてください! Linux-HA Japan Project 20

ここでやっと Pacemaker インストールを 実演します! Linux-HA Japan Project 21

クラスタ制御部基本設定 /etc/ha.d/ha.cf クラスタ制御部の基本設定ファイル クラスタ内の全サーバに同じ内容のファイルを設置 pacemaker on debug 0 udpport 694 keepalive 2 warntime 7 deadtime 10 initdead 48 logfacility local1 bcast eth1 bcast eth2 node pm1 node pm2 watchdog /dev/watchdog respawn root /usr/lib64/heartbeat/ifcheckd pm_extras をインストールし この ifcheckd の設定を追加すればインターコネクト LAN の接続状況も確認可能です Linux-HA Japan Project 22

クラスタ制御部基本設定 /etc/ha.d/authkeys サーバ間の 認証キー を設定するファイル クラスタ内の全サーバに 同じ内容のファイルを配置 所有ユーザ / グループ パーミッションは root/root rw---- に設定 auth 1 1 sha1 hogehoge これも基本的に Heartbeat2 と設定は同じです 認証キー : 任意の文字列 認証キーの計算方法 :sha1, md5, crc を指定可 Linux-HA Japan Project 23

クラスタ制御部基本設定 /etc/syslog.conf 必須の設定ではないが 多くのログが /var/log/messages に出力されるため出力先を個別のファイルに変更するのがお勧め 以下は /var/log/ha-log への出力例 設定変更後は syslog の再起動が必要 *.info;mail.none;authpriv.none;cron.none;local1.none /var/log/messages : ( 省略 ) : local1.info /var/log/ha-log ha.cf で設定した logfacility 名 Linux-HA Japan Project 24

ここまでいけば Pacemaker が起動できます! # /etc/init.d/heartbeat start 2 サーバで実行 Starting High-Availability services: [ OK ] Linux-HA Japan Project 25

ということで Pacemaker を起動してみます! Linux-HA Japan Project 26

起動確認 Pacemaker の状態表示コマンドである crm_mon コマンドを利用します # crm_mon ============ Last updated: Wed Nov 10 14:28:55 2010 Stack: Heartbeat Current DC: pm2 (a59a9306-d6e7-4357-bb0c-a5aea0615e61) - partition with quorum Version: 1.0.10-da7075976b5ff0bee71074385f8fd02f 2 Nodes configured, unknown expected votes 0 Resources configured. ============ Online: [ pm2 pm1 ] クラスタに組み込まれているサーバ名が表示されます Linux-HA Japan Project 27 Linux-HA Japan Project

-fa オプションを付与すると インターコネクト LAN の接続状況も確認可能です # crm_mon -fa ============ ~ 省略 ~ ============ Online: [ pm2 pm1 ] Node Attributes: * Node pm2: + pm1-eth1 : up + pm1-eth2 : up * Node pm1: + pm2-eth1 : up + pm2-eth2 : up インターコネクトが UP されているのが確認可能 Linux-HA Japan Project 28

ここで Pacemaker 状態表示と インターコネクト LAN 故障を 実演します! デモ例は次ページ Linux-HA Japan Project 29

インターコネクト LAN1 を故障させてみる サービス LAN pm1 eth0 192.168.0.22 eth1 192.168.10.22 疑似故障 # ifdown eth1 故障 eth0 192.168.0.23 eth1 192.168.10.23 pm2 DC eth2 192.168.20.22 eth2 192.168.20.23 HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 DB 領域 /dev/xvdb2 管理用 LAN Linux-HA Japan Project 30

これだけでは リソース設定が無いのでなーんにもアプリケーションは起動していません Linux-HA Japan Project 31

リソース計画 リソース制御するには事前に計画が必要 リソースの選択 Apache PostgreSQL NW 監視など 何を使用するか? リソースエージェント (RA) がなければ 予め自作してみるか? リソースの動作の定義 リソースの監視 (monitor) 間隔は何秒にするか? タイムアウトは? 故障時はどのように動作させるか? リソースエージェント (RA) に与えるパラメータは? リソース配置 連携の定義 リソースをどのサーバで起動させるか? リソースの起動順番は? Linux-HA Japan Project 32

共有ディスク排他制御機能 sfex (Shared Disk File EXclusiveness Control Program) sfex は共有ディスクの所有権を制御するリソースです 共有ディスク上のデータパーティションを使うリソースと一緒にリソースグループを作ります 所有権を持ったサーバのリソースのみがデータパーティションにアクセスできます pm1 リソースグループ sfex Filesystem IPaddr2 pgsql 所有権読み書き 接続 OK pm1 sfex 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 所有権読み書き 接続 NG pm2 リソースグループ sfex Filesystem IPaddr2 pgsql Linux-HA Japan Project 33

共有ディスク排他制御機能 (sfex) 排他制御領域の初期化 共有ディスク排他制御機能 (sfex) を使用するためには 排他制御領域を初期化する必要性があります # sfex_init n 1 /dev/xvdb1 排他制御領域のデバイス名を指定する ext3 などのファイルシステムを作成する必要性はありません Linux-HA Japan Project 34

リソース設定方法 主に 2 通り cib.xml ファイルに XML 形式で設定を記述 従来の Heartbeat 2 での方法 XML を手で書く必要があり面倒 crm コマンドで設定 Pacemaker からの新機能 crm ファイル編集ツールは Linux-HA Japan より提供 本日は crm ファイル編集ツールを使用して構築デモを行います Linux-HA Japan Project 35

crm ファイル編集ツール pm_crmgen 11/26 に pm_crmgen 1.0 版をリリース Linux-HA Japan で crm ファイル編集ツールを開発! Excel のテンプレートファイルから簡単に crm 用設定ファイルを生成してくれるツールです リポジトリパッケージに含まれていますし 個別にダウンロードも可能です http://sourceforge.jp/projects/linux-ha/ Linux-HA Japan Project 36

どのサーバが優先的にActive? NW 監視は? NWが壊れた時の挙動は? STONITHの設定は? など細かい挙動の設定も可能です! Linux-HA Japan Project 37

crm ファイル編集ツール 設定イメージ 1) Excel のテンプレートファイルにリソース定義を記載 /usr/share/pacemaker/pm_crmgen/pm_crmgen_env.xls Excel が使用できる PC にコピーします テンプレートは青枠の中に値を記入していきます ファイルを 本日の仮想デモ環境は この Excel の設定例シートでほとんど構築が可能です! 監視間隔やタイムアウト値 故障時の動作などを入力 Linux-HA Japan Project 38

crm ファイル編集ツール どのサーバを Active にするかといったリソース配置制約の設定も サーバ名を記述するだけで可能です リソース ID Active と Standby サーバを指定 Linux-HA Japan Project 39

crm ファイル編集ツール crm 用設定ファイルに変換 2) CSV 形式でファイルを保存 crm_sample.csv などとして CSV 形式で保存 3) CSV ファイルをサーバへ転送 CSVファイル保存後 SCPやFTP 等でpm_crmgenがインストールされたサーバへ転送 Linux-HA Japan Project 40

crm ファイル編集ツール crm 用設定ファイルに変換 4) pm_crmgen コマンドで crm ファイルを生成 # pm_crmgen o crm_sample.crm crm_sample.csv 生成する設定ファイル名 3) で転送した CSV ファイル 5) crm コマンドを実行してリソース設定を反映 # crm configure load update crm_sample.crm Linux-HA Japan Project 41

リソース設定をして サービスの起動と 本当にサービス が起動しているか実演します! デモ例は次ページ Linux-HA Japan Project 42

PostgreSQL に接続してみる demo# pgsql -U postgres -h 192.168.0.100 -l demo (Domain-0) サービス LAN 仮想 IP 192.168.0.100 pm1 eth0 192.168.0.22 eth1 192.168.10.22 インターコネクト LAN1 eth0 192.168.0.23 eth1 192.168.10.23 pm2 DC PostgreSQL eth2 192.168.20.22 インターコネクト LAN2 eth2 192.168.20.23 HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 DB 領域 /dev/xvdb2 管理用 LAN Linux-HA Japan Project 43

3 フェイルーバ 系切り替えを 実演します! Linux-HA Japan Project 44

pm1 を強制停止してみる demo# xm destroy pm1 サービス LAN 仮想 IP 192.168.0.100 pm1 eth0 192.168.0.22 eth1 192.168.10.22 インターコネクト LAN1 eth0 192.168.0.23 eth1 192.168.10.23 pm2 DC PostgreSQL eth2 192.168.20.22 インターコネクト LAN2 eth2 192.168.20.23 HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 DB 領域 /dev/xvdb2 管理用 LAN Linux-HA Japan Project 45

pm2 をスタンバイ化してみる # crm node standby pm2 サービス LAN pm1 eth0 192.168.0.22 eth1 192.168.10.22 eth2 192.168.20.22 インターコネクト LAN1 インターコネクト LAN2 仮想 IP 192.168.0.100 eth0 192.168.0.23 eth1 192.168.10.23 standby eth2 192.168.20.23 pm2 DC PostgreSQL HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 管理用 LAN Linux-HA Japan Project 46

pm2 をスタンバイ解除してみる # crm node online pm2 サービス LAN pm1 PostgreSQL eth0 192.168.0.22 仮想 IP 192.168.0.100 eth1 192.168.10.22 eth2 192.168.20.22 インターコネクト LAN1 インターコネクト LAN2 eth0 192.168.0.23 eth1 192.168.10.23 eth2 192.168.20.23 pm2 DC standby Online へ HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 管理用 LAN Linux-HA Japan Project 47

リソース故障させてみる 擬似故障 # kill -9 postgresql 親プロセス サービス LAN pm1 eth0 192.168.0.22 仮想 IP 192.168.0.100 eth1 192.168.10.22 インターコネクト LAN1 eth0 192.168.0.23 eth1 192.168.10.23 pm2 DC PostgreSQL 故障 eth2 192.168.20.22 インターコネクト LAN2 eth2 192.168.20.23 HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 eth3 172.20.24.23 HW 制御ボード 172.20.24.21 DB 領域 /dev/xvdb2 管理用 LAN Linux-HA Japan Project 48

この状態で pm2 をスタンバイしてみる # crm node standby pm2 サービス LAN pm1 フェイルカウント eth0 192.168.0.22 eth1 192.168.10.22 eth2 192.168.20.22 インターコネクト LAN1 インターコネクト LAN2 仮想 IP 192.168.0.100 eth0 192.168.0.23 eth1 192.168.10.23 eth2 192.168.20.23 pm2 DC PostgreSQL HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 standby eth3 172.20.24.23 HW 制御ボード 172.20.24.21 管理用 LAN Linux-HA Japan Project 49

切り替わらないのは ミスではありません! Linux-HA Japan Project 50

フェイルカウントがカウントアップされているため クリアしなければ切り替わりません # crm_mon -fa ============ ~ 省略 ~ ============ Migration summary: * Node pm1: prmpg: migration-threshold=1 fail-count=1 * Node pm2: Failed actions: prmpg_monitor_10000 (node=pm1, call=34, rc=7, status=complete): not running Linux-HA Japan Project 51

フェイルカウントをクリアしてみる # crm resource cleanup prmpg pm1 サービス LAN pm1 フェイルカウント クリア HW 制御ボード 172.20.24.21 eth0 192.168.0.22 仮想 IP 192.168.0.100 eth1 192.168.10.22 eth2 192.168.20.22 eth3 172.20.24.22 インターコネクト LAN1 インターコネクト LAN2 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 eth0 192.168.0.23 eth1 192.168.10.23 eth2 192.168.20.23 eth3 172.20.24.23 pm2 DC standby HW 制御ボード 172.20.24.21 管理用 LAN Linux-HA Japan Project 52

pm2 Online 後に スプリットブレインにしてみる サービス LAN DC? pm1 PostgreSQL eth0 192.168.0.22 仮想 IP 192.168.0.100 eth1 192.168.10.22 eth2 192.168.20.22 擬似故障 # ifdown eth1 # ifdown eth2 インターコネクト LAN1 インターコネクト LAN2 故障 eth0 192.168.0.23 eth1 192.168.10.23 eth2 192.168.20.23 pm2 DC? HW 制御ボード 172.20.24.21 eth3 172.20.24.22 排他制御領域 /dev/xvdb1 DB 領域 /dev/xvdb2 eth3 HW 制御ボード 172.20.24.23 172.20.24.21 ダブルマウントでデータ破壊!? 管理用 LAN Linux-HA Japan Project 53