冗長化

heartbeatのSTONITHにfence_xvmを使ってみた

Fedora12のfence-virtパッケージ, CentOS5のcmanパッケージには、Fedora12 ホストOSのfence-virtdパッケージと連携し、他のゲストOSをFenceできるfence_xvmが付属している。このパッケージはRHCSのFenceDeviceとして使用できるが、合わせてheartbeatのSTONIT…

Fedora12でfence-virtを使ってみた

RHCSを使う際には、フェイルオーバーを試すときに、Fence Deviceが必要になる。これまで、XenのノードのFencingにはfence_xvmなどが使用できたのだが、KVMのFencingとしては、SSH経由でVMの停止を行うfence_virshぐらいしかツールがなく、SSHのrootアクセス…

Fedora12でApache Qpidを使ってみた

MRGにはqpidというパッケージが含まれていたのだが、こちらもCondorと合わせて、使ってみた。 Apache Qpid(http://qpid.apache.org/index.html)は、AMQP( http://ja.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol )に従っており、商用MQと同種の機…

1台のPCでLiveMigrationをやってみた(1)

LiveMigrationは物理ノード間で共有しているVMを、VMを停止すること無く移動する技術で、LinuxでもXen, KVMを通じて機能を提供している。通常、LiveMigrationには少なくとも2台の物理ノードが必要だが、PCが1台しか調達できない場合でも、1台のPCにKVMを導入…

LPIC 304の参考資料(仮) (1)

まだ試験として始まっておらず、少々気が早いのだが、LPIC304 "Virtualization and High Availability" のシラバスを見て、参考リンクを探してみようと思う。 304はクラスタリングと仮想化に関する試験となるらしく、Linuxの資格のうちでも需要が高い資格と…

Red Hat Summit, JBoss World の内容を確認してみた(5)

何故かプレゼン資料が見当たらなかったのだが、KVM, RHEV-M の現状について一番まとまっていそうなのが、この発表になる。 http://www.linux-kvm.com/content/intro-rhev-video-redhat-summit-2009 同じページで詳しくポイントがまとめてあるので、気になっ…

GFSの機能を組み合わせて、CLVMのスナップショットを取ってみた(1.1)

前回の最後に、PostgreSQLを使う場合にはsnapshotを使う必要はないかも、、と書いたのだが、よく考えると、MySQLの古めの版(コミュニティ版)などはオンラインバックアップが取れなかったり等の事情により、OSコマンドによるバックアップ取得が基本になってい…

GFSの機能を組み合わせて、CLVMのスナップショットを取ってみた(1)

Red Hat Cluster Suite の CLVMでは、クラスタリングを行った状態でのsnapshotには対応しておらず、バックアップのためにはストレージ側の機能などを使用する必要がある、というのは、リンク先の話などからも間違いないようなのだが、 http://www.jp.redhat.…

Func: Fedora Unified Network Controller を使ってみた(4)

確実にバッチジョブを実施するためには、Funcの管理ノードを2台構成にしたいが、そのためにはCAの証明書などを共有しておく必要がある。筆者が試したところ、 /etc/pki/certmaster /var/lib/certmaster をコピーしておいたら、 行き先のノードでも他サーバ…

Ubuntu-8.04+Slony-I 1.2 でinit.dスクリプトを使ってみた

以前 slon_start でslonを起動していると書いたが、slonの稼働中によく確認してみると、psコマンドの結果にDBへの接続パスワードが表示されてしまっていた。 orzコマンド中にパスワードが表示されないようにするには、各slon向けにslon.conf を書く必要があ…

Slony-I 1.2でslonik_merge_set,slonik_drop_setを使ってみた

Slony-Iでレプリケーションを実施中に、レプリケーション対象のテーブルを追加するため、slonik_merge_setを使ってみた。slonik_merge_set は、直接テーブルを追加するのではなく、テーブルの集合としての setを作成し、既存のsetに追加する。このため、slon…

Slony-I使用時にWALログが頻繁に出力される(解決)

Ubuntu-8.04にて、PostgreSQL8.3 + Slony-I 1.2を使用していた際、archive_mode をオンにしておくと、10秒ごとにWALログ(16MB)が出力されており、ディスク領域を消費していた。 slonの設定のためと思っていたのだが、色々と設定を変更してみたところ、postgr…

Slony-I 1.2を使う上で役に立ったコマンド

箇条書きでslony-Iを使う際に使ったコマンドを書いていく。・マスターと同一のテーブルをスレーブ側に作るとき(クラスタ名はsloncluster1 とする) $ pg_dump -N _sloncluster1 -s repldb1 | psql repldb2 ・slonyが上手く動かず、クラスタで使用しているデー…

Slony-I 1.2でslonがOS起動時に起動されるようにしてみた

CentOS5.3にPGDG (https://projects.commandprompt.com/public/pgcore) からのパッケージで、slony-I をインストールすると、slonデーモンの起動スクリプトとして、 /etc/init.d/slony1 がついてくる。ただし、このスクリプトは slon_tools.conf 形式の設定…

Slony-I 1.2で複数DBのレプリケーションをやってみた

前回の例では、単一DBを複数のノードにレプリケートしたが、複数のDBを別個のノードにレプリケートする際には、複数のセットを定義する必要がある。 例えば、 set1: 1: repldb1: 1 ==> repldb2: 2 set11: 11: slmaster: 11 ==>slslave: 12 set21: 21: pgbenc…

Slony-I 1.2でカスケード接続をやってみた

Slony-I ( http://www.slony.info/ )はPostgreSQLで利用できる、マスター・スレーブ型のレプリケーション・ソフトで、既に何度か取り上げている。( http://d.hatena.ne.jp/aaabbb_200904/20090625/1245941363 ) Slony-Iでは、カスケード接続(単純なマスター…

PGDG配布のslony-Iのバージョン

以前Slony1をCentOS5.3 上で試したとき、PGDGのyumを使って各種のツールを導入した。最近またSlony-Iを使ってみようかと思い、確認してみたところ、置いてあるバージョンが1.2になっている。http://yum.pgsqlrpms.org/8.3/redhat/rhel-5-i386/以前は最新の2.…

OpenSUSEで11.1で heartbeat2 を使ってみた(1)

これまで何度かCentOS, FedoraのRedHat Cluster について書いてきたが、Red Hat Cluster と同様に、 OpenSUSEでは、heartbeat を使って、冗長性を確保している。以前Ubuntuでheartbeatを使ったことがあったので、これまで先延ばしにしてきた(基本的に設定は…

OpenSUSE11.1でdevice mapper multipathを使ってみた (1)

OpenSUSEでも同様にmultipathを使ってみた。設定には、こちらの資料を参考にした。 http://support.novell.com/techcenter/sdb/en/2005/04/sles_multipathing.html まず、yastからmultipath-tools を導入する。デフォルトでは/etc/multipath.conf が出来ない…

Fedora11でdevice mapper multipathを使ってみた (2)

この状態で、OpenFiler にて、 # iptables -I INPUT -p tcp -d xx.xx.xx.xx -j REJECT などを実施すると、 # multipath -l の結果が、 enabled ==> failed となり、接続を止めた側のパスが使用されなくなる。 # iptables -F などにより設定を削除すると、ま…

Fedora11でdevice mapper multipathを使ってみた (1)

確実に外部ストレージへの接続を行うため、外部ストレージを利用する際には複数のHBAにより、multipathを使いたいのだが、CentOSやFedoraにもクライアント側のmultipathの機能がある。 既にopenfiler を使って、iSCSI target が使えるようになっているので、…

OpenSUSEで11.1で heartbeat2 を使ってみた(2)

pacemaker パッケージをyast で導入した後、haresources からxmlファイルを作成 ==> ha.cf に crm yes を追加 ==> /etc/init.d/heartbeat start を実施してみたのだが、上手く起動しなかった。 どうもopenais に関連するエラーのようだが、すぐに解決できな…

CentOS5.3 + Red Hat Cluster + PostgreSQL + Slony-I でテイクオーバーをやってみた (2)

slon についても、RHCSに組み込みたかったのだが、個別に init スクリプトとしてまとめる必要があり、面倒なため、RHCSを使わず、手動で起動することにしておいた。 wこの後、サービスとして、テイクオーバーをスクリプト化するのだが、基本的にはRHCSでテイ…

CentOS5.3 + Red Hat Cluster + PostgreSQL + Slony-I でテイクオーバーをやってみた

前回まででSlony-I のテイクオーバー、フェイルオーバーの方法が分かったので、CentOS 5 のRed Hat Cluster と組み合わせて、冗長化を行ってみた。CentOS 5 で使えるフェンスデバイスを持っていないため、フェイルオーバーの方はまだ試していない。 あくまで…

CentOS5.3: Slony-I 2.0を使ってみた (3)

前回slony-2.0 で $ slon_start 1; $ slon_start 2; の両方をマスターノードで実施したと書いたが、slon_start 2; をスレーブノードで実施しても問題なく動作した。また、スレーブ側でも slonik_subscribe_set, slonik_unsubscribe_set を実施して見たところ…

CentOS5.3: Slony-I 2.0を使ってみた (3.1)

(3) のテイクオーバー(Slonyの用語ではスイッチオーバー)に続いて、フェイルオーバーも試してみた。フェイルオーバーは一度行うと落ちた側のデータを全て削除しないと復旧が難しいらしい。基本的には行いたくないが、ハードウェア障害などの時にはフェイルオ…

CentOS5.3: Slony-I 2.0を使ってみた (1)

Slony-I (http://www.slony.info/) はPostgreSQL用のマスタースレーブ型のレプリケーションサービスであり、MySQLのレプリケーションと同様、 1. スケールアウト 2. ディスク引き継ぎ無しでのフェイルオーバー などに使用できる。また、MySQLでは、ある時点…

CentOS 5.3: Slony-I 2.0を使ってみた (2.1)

2. レプリケーションを一時的に止める方法 3. テーブル追加の方法 については、 slonのデーモンが起動しており、 既に特定のset (idは1とする。) でレプリケーションが行われている状態とする。2. については、 $ slonik_unsubscribe_set 1 2 | slonik でレ…

CentOS5.3: Slony-I 2.0を使ってみた (2)

(1)に引き続き、CentOS5.3 のVMx2 を使って、slony-I のレプリケーションを実施してみた。手順としては、基本的にこちらに従った。(Slony-I の公式ドキュメントのgetting started) http://www.slony.info/documentation/firstdb.html当初、ドキュメントの前…

Red Hat Cluster: fence_xvmd, fence_virsh の使い分け

https://bugzilla.redhat.com/show_bug.cgi?id=496629リンク先の議論でもある通り、ClusterFileSystem にVMを置くような機能 { VMWare HA的な機能( Red Hat Cluster では、 vm.sh で実現 ) やLive Migration など } を利用したい時には、fence_virsh ではな…

Red Hat Cluster: フェンス設定の確認方法

フェンスデバイスが正しく設定されているかどうかや、そもそもfence agent (fence_virsh )などが正しくインストールされているかは、フェイルオーバーを起こさなくても確認できる。 fence_virshを例に取ると、 1. インストールされているか # which fence_vi…

Fedora11: Red Hat Cluster: fence_virsh の使い方

Red Hat Cluster Suite (以下 RHCS) を試す上で問題になるのが、RHCSがフェイルオーバーを行うためにフェンスデバイス (正しく作動していない筐体を強制的に停止する機能。IPMIなど外部から電源断できるハードウェアなどがサポートされる。) を必要とするこ…

Red Hat Cluster: GFSでPostgreSQL ディスク引き継ぎ

Fedora 11 のVM x 2 を使い、Red Hat Cluster + GFS + PostgreSQL 8.3 でディスク引き継ぎを行った。既存のiSCSIに、GFS2 (GFSはFedora11では作成できないらしい…) を作成し、 /var/lib/pgsql にマウントし、 片方のノードで、# service postgresql initdb …

Fedora 11: Red Hat Cluster

Fedora 10の Linux KVMを使って、Fedora 11 guest を導入してみた。Fedora10ではRed Hat Cluster が上手く動作しない (cman_tool のパスが /sbin/cman_tool ではなく、 /usr/sbin/cman_tool になっている… など) 状態だったのだが、 Fedora 11ではその状態も…

system-config-cluster を使った際のmanual fencing について

manual fencing はfencing発生時に/tmp にファイルが作成され、 fence_ack_manual コマンドでfenceを終了させる仕組みのようなのだが、system-config-cluster による設定では、上手く動作しなかった。 元々 Fedora の新しめの版では、manual fencing 自体が…

CentOS 5.3でcmirrorを使ってみた (3)

前置きが長かったが、cmirrorを使ってみる。 ww 前回までの構成に加えて、cmirror を使うには、まずiSCSIで2つの同じ大きさのディスクを用意しておく。 ( /dev/hda, /dev/hdb とする)ここで、前回はまずclvmd までを起動したのだが、今回はこれに加えて # se…

GFSの作成

clvmdの起動まで実施したら、次はGFSの作成を行う。 GFSは基本的には、Ext3等と同じファイルシステムの一種なのだが、ファイルロックの情報をcman経由で他のノードに伝えるため、ファイルの変更がすぐに他ノードにも反映される点が普通のファイルシステムと…

Red Hat Cluster とGFSによるストレージ共有

Red Hat Cluster は、HA用にも使えるのだが、同時にclvmdというCluster 対応のLVMデーモンを使って、ストレージの共有にも利用出来る。 この際、IPアドレスなどのリソースは設定しなくてもよい。こちらは、Webサーバーなど、LVSによる冗長化が可能なノードで…

LVMによるストレージミラーリング

LinuxのLVMではミラーリングが行えるので、cmirrorの準備として、まず通常のミラーリングを行っておく。まあ、テストの際には、作成したLVMは後で一旦削除したのだが、ww まず1台でLVMを作っておき、後でサーバー側をスケールアウトすることも一応可能なよう…

CentOS5.3でLVM cmirror を使ってみた (1)

CentOS 5.3 で新規に使えるようになった、LVM cmirror は、Red Hat Cluster との組み合わせで、ストレージの冗長化に使える機能だ。普通のLVM mirroring はローカルディスクに対して行うことで、ディスクの不具合時にもサービスを止めないようにできるのだが…

LVM cmirror を使ってみた (2)

微妙に動作が分かり辛い LVM cmirrorなのだが、分かり辛さの原因は、ノード x 1, 外部ストレージ x 2 の構成に慣れないためだと思う。 普通、IAサーバーで構成できるノードよりもSAN向けの外部ストレージの方が高価で、かつ壊れにくいため、冗長化のためにス…

Openfiler のストレージ冗長化について

Openfiler (http://www.openfiler.com/) はストレージに特化したLinuxベースのアプライアンスでiSCSI、CIFS, NFSなどのストレージ関係プロトコルが使用出来る。(FCoEは現在対応中らしい。)Linuxであることを生かして、DRBDなどでストレージ冗長化ができない…

Piranha のテスト方法について

piranha はfailover 機能がついたsoftware load balancer で、CentOS 5ではyumでインストールできる。 # yum groupinstall Clustering ロードバランサーという性質、基本はpiranhaノード x 2, origin ノード x 2 (webサーバーなど) を使ってテストするのだが…