岩崎@サードウェア
iwasa****@3ware*****
2011年 1月 17日 (月) 09:58:50 JST
岩崎@サードウェアです 構成を拝見すると、iSCSIのターゲットをフェイルオーバさせる際に多少テクが 必要だと思います。 チェックポイントは以下の2つ ・仮想IPアドレスはエイリアスを使わないIPaddr2を使う (NICにアドレスを追加する形となります。# ip addr show で見えます。) ・スイッチオーバに対応するため切り替え時はiSCSIパケットをDROPする。 (切り替わる最初と最後にportblock、portunblockを行う。) iSCSIはエラーが返ってくると切断してしまうため、そのままだとエラーを受け 取ってしまい、ホストサーバからデバイスがアクセス不能になってしまいます。 パケットをDROPするとあら不思議返事が返ってくるまでイニシエータがパケット を送信続けて返事を待ったりします。 待っている間に切り替えを行って通信を再開するとデバイスへのアクセスは切り 替わり時は「すごく重たいデバイス」となるだけで接続が切れない状態にできる 事があります。 LINBIT社のドキュメント(サポート加入者向け)にもPM+DRBDでiSCSIを使う例が 出ていますが、portblockを使う構成になっています。 (2011年01月14日 19:39), nemo****@zuku***** wrote: > 根本です。 > > 岩崎さん早速のご返事ありがとうございます。 > > 私が構成しようとしているのは、コンテナ単位ではなく > 全てのコンテナがiSCSI上にある構成を考えています。 > 例えば、4つのコンテナがVPSとして起動している場合 > (それぞれのCTIDを1,2,3,4とした場合) > /vz1/private/1/ > /vz1/private/2/ > /vz1/private/3/ > /vz1/private/4/ > のディレクトリがあることになります。 > > イメージが掴みにくいと言うことなので、参考になるかわかりませんが > 取り急ぎ簡単な構成図を作成しました。 > (こんなポンチ絵でイメージが掴めるか不安ですが…) > MLでファイルを添付していいものかわかりませんが、容量が100k無いので > 大丈夫だと思います。(多分) > > また、このような構成を取りたい場合、コンテナ1つに対してiSCSIターゲットが > 1つというのが一般的なのでしょうか。 > > > 以上、よろしくお願い致します。 > > > > 岩崎@サードウェア<iwasa****@3ware*****>さん: >> 岩崎@サードウェアです。 >> >> OpenVZネタが来て嬉しい限りです。 >> >> 根本さんの構成は、コンテナ単位でフェイルオーバができるような構成でしょう >> か。それでコンテナ1つに対して1iSCSIターゲットという感じでしょうかね。 >> 少しイメージが掴みにくかったのでもうすこし情報いただけますか? >> >> エラーの症状を見ると何やら読み取り専用のデバイスになっているというより >> は、アクセス不能になってそうですね。 >> >> >> >> >> (2011年01月14日 17:03), Toshiya Nemoto wrote: >>> はじめまして、根本と申します。 >>> >>> iSCSI Target の冗長化構成を構築しており、数点不明な点があるので >>> 質問させて頂ければと存じます。 >>> >>> iSCSI Target側のOSは、CentOS5.5(64bit)、targetは、rpm付属 >>> ではなく、iscsitarget-1.4.20.2をソースからコンパイルし、 >>> pacemaker-1.0.10-1.4.el5 を使用しています。 >>> また、DRBDする領域を2つ用意して、お互いがPrimary且つSecondary >>> という構成です。 >>> >>> Primary /vz1 Secondary >>> ServerA ----> ServerB >>> >>> Secondary /vz2 Primary >>> ServerA<---- ServerB >>> >>> ServerAが落ちた場合、ServerBがPrimaryを2つ持構成です。 >>> 各ServerA,Bには、iSCSI Initiatorから接続される仮想IPを >>> 割り振っています。 >>> >>> iSCSI Initiator側のOSは、OpenVZのKernel(2.6.18-194.26.1.el5.028stab079.2 x86_64)を >>> 2台用意して、それぞれのTargetである ServerA(/vz1)、ServerB(/vz2)をマウントしており、 >>> (ファイスシステムはLVM上のext3)Initiatorは、rpmでiscsi-initiator-utilsを利用しています。 >>> >>> /vz1、/vz2 には、OpenVZのイメージ(ファイル群)が保存されおり、そこからVPSを起動しています。 >>> この状態で、例えば、ServerAからServerBへiSCSI Targetのリソースを切り替えると、 >>> (crm → resource → でリソースをmigrate) >>> その領域(/vz1)が、読み込み専用ファイルシステムとなってしまい、VPSとホストOSからの書き >>> 込みが一切できなくなります。 >>> >>> # touch /vz1/a >>> touch: cannot touch `/vz1/a': 読み込み専用ファイルシステムです >>> >>> Initiatorのkernelのログには >>> Jan 13 17:07:39 v00a kernel: connection1:0: detected conn error (1011) >>> Jan 13 17:07:51 v00a kernel: end_request: I/O error, dev sdb, sector 81251114 >>> Jan 13 17:07:51 v00a kernel: printk: 73 messages suppressed. >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 10156337 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: end_request: I/O error, dev sdb, sector 81251138 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 10156340 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: end_request: I/O error, dev sdb, sector 76797826 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599676 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599677 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599678 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599679 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599680 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599681 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599682 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> Jan 13 17:07:51 v00a kernel: Buffer I/O error on device dm-5, logical block 9599683 >>> Jan 13 17:07:51 v00a kernel: lost page write due to I/O error on dm-5 >>> >>> と記述されており、切り替え後の書き込みがうまくできてない用です。 >>> OpenVZのPVSは、KVMやVmwareのようなイメージファイルではなく、 >>> /vz1/private/<CTID>/ 以下にVPS用のファイル群(bin,sbin,rootディレクトリ等)が >>> あるようなので、ファイル数が多い場合この構成は取れないのでしょうか。 >>> また、VPSのほとんどがメールサーバとして動作しており、データ常時読み書きされて >>> います。 >>> iSCSI Target(pacemaker)側の問題と言うよりは、Initiator側の問題のような気がしますが… >>> pacemaker(Heartbeat)+DRBD+iSCSI+OCFSの例は、たまに聞くのですが、そもそも、この構成自体 >>> 可能なのでしょうか。 >>> >>> 自分なりに試行錯誤してみましたが、行く詰まってしまったので、質問させて頂きました。 >>> >>> >>> >>> 以上、よろしくお願い致します。 >>> >>> >>> >>> ━━━━━━━━━━━━━━━━━━━━━━━━ >>> 根本 稔也 >>> E-mail nemo****@zuku***** >>> ━━━━━━━━━━━━━━━━━━━━━━━━ >>> >>> _______________________________________________ >>> Linux-ha-japan mailing list >>> Linux****@lists***** >>> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan >> >> >> -- >> ---------------------------------------------------------------------- >> 岩崎 登 (株)サードウェア >> >> Noboru Iwasaki 274-0815 千葉県船橋市西習志野3-39-8 >> iwasa****@3ware***** URL: http://www.3ware.co.jp/ >> Phone: 047-496-3341 Fax: 047-496-3370 >> >> _______________________________________________ >> Linux-ha-japan mailing list >> Linux****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan >> >> >> _______________________________________________ >> Linux-ha-japan mailing list >> Linux****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/linux-ha-japan -- ---------------------------------------------------------------------- 岩崎 登 (株)サードウェア Noboru Iwasaki 274-0815 千葉県船橋市西習志野3-39-8 iwasa****@3ware***** URL: http://www.3ware.co.jp/ Phone: 047-496-3341 Fax: 047-496-3370