ラベル iSCSI の投稿を表示しています。 すべての投稿を表示
ラベル iSCSI の投稿を表示しています。 すべての投稿を表示


2012年5月5日土曜日

RHEL6 iSCSI target(scsi-target-utils)の基本的な設定


このエントリーをはてなブックマークに追加


tgtadm を使ってiSCSIターゲット構成のメモ。

■iSCSIイニシエータを構成する場合はこちらを参照
仮想環境を使って簡単にRHEL6のiscsiマルチパスを検証する
RedHat Enterprise Linux iSCSIコマンドまとめ(iscsiadm)
RedHat における iSCSI 設定とマルチパス

■Solarisでのターゲット構成はこちらを参照
Solaris11 + COMSTAR で iSCSIホストの構築



2011年5月15日日曜日

仮想環境を使って簡単にRHEL6のiscsiマルチパスを検証する


このエントリーをはてなブックマークに追加


iscsi + multipath は仮想環境を使うと簡単にテストできるので、初めて本番環境で触ることになる人とか、触ったことないけどどんなものか知りたいって人はこの方法を試してみてください。

Table of Contents
=================
1 準備するもの
 1.1 仮想化ソフト
 1.2 Solaris10の環境
 1.3 このテストで構築している環境
2 ストレージサーバの準備
 2.1 仮想マシンの作成
 2.2 仮想マシンのネットワーク構成
 2.3 Solaris10のインストール
 2.4 Solaris10の準備
3 iscsi クライアント
 3.1 RHEL6でのテスト
  3.1.1 準備
  3.1.2 iscsiセッションを張る
  3.1.3 補足
  3.1.4 マルチパスを構成する準備
  3.1.5 マルチパスの設定
  3.1.6 マルチパス化されたストレージを使う
  3.1.7 テストしてみる



2011年5月3日火曜日

iSCSIとFCoE関連の資料をまとめ


このエントリーをはてなブックマークに追加


似て非なるモノ。どっちを使えばいいのっと、迷う事も多いので関連する資料を集めてみたのでまとめておきます。



2011年2月20日日曜日

Solaris11 で ZFS Dedpue が想像以上に効く


このエントリーをはてなブックマークに追加


以前行ったNexentaでのDeDupe検証ではやり方がまずかったのかいまいち効果が見られなかった。これをSolaris11で再度試す。
参考>> Nexenta で ZFS De-Dupeを試す(うまくいかない)

Table of Contents
=================
1 テスト内容 
    1.1 CIFS経由でのDeDepe効果の確認 
    1.2 iscsi経由でzvolへのDeDupe効果の確認 
    1.3 zfs send -D での転送量削減効果の確認 
2 zpool で De-Dupe を有効にする。 
3 共有設定 
    3.1 CIFS領域 
    3.2 iscsi領域 
4 テスト結果 
    4.1 CIFS経由でのDeDepe効果 
    4.2 iscsi経由でzvolへのDeDupe効果 
    4.3 zfs send -D での転送量削減効果 
5 まとめ 
6 その他注意事項 


2011年2月19日土曜日

Solaris11 + COMSTAR で iSCSIホストの構築


このエントリーをはてなブックマークに追加


Oracle Solaris11 Express をiSCSIホストにしてみる。

Solaris10、OpenSolarisまで iSCSIホスト機能は、zfsのshareiscsiと連動した、iscsitgtというデーモンが提供していたが、Solaris11、OpenIndianaでは、COMSTARというカーネルに組み込まれた機能を使って実現することになる。カーネルで実行されるためより動作が高速化している。

またiSCSIだけでなく、FCoEホストとして外部にストレージを提供できる。
Table of Contents
=================
1 Solaris11では shareiscsi が無くなっている 
2 COMSTARをインストール 
3 iSCSI ターゲットの作成 
4 initiatorからの接続 
5 その他 


2010年10月18日月曜日

RedHat Cluster Suite を使った2node Oracle クラスタ


このエントリーをはてなブックマークに追加



(この文書は未完成)

RHEL 標準のクラスタソフトである、RedHat Cluster Suite(RHCS)を使って、Active-StandbyなOracleクラスタサーバを構築する。
CentOSでもほとんど同じ手順でクラスタ構築が可能。

CentOSサーバー


価格:3,150円(税込、送料別)
  
KVM徹底入門


価格:3,444円(税込、送料別)

Table of Contents
=================
1 参考ドキュメント
2 作業の流れと進捗チェックリスト
3 事前準備
    3.1 IPアドレスの決定
    3.2 ストレージパラメータの決定
    3.3 Oracleパラメータの決定
4 RedHat Enterprise Linuxの設定
    4.1 OSインストール
    4.2 最新パッチの適用
    4.3 ネットワークの二重化
        4.3.1 /etc/modprobe.conf
        4.3.2 ifcfg-eth0
        4.3.3 ifcfg-eth1
        4.3.4 ifcfg-bond0
5 共有ストレージの設定
    5.1 RAID/LUNの作成
    5.2 ホストへのマッピング設定
        5.2.1 もし二つのノードからのデバイスの見え方が違ったら
            5.2.1.1 ストレージの場合
            5.2.1.2 ネットワークの場合
    5.3 ストレージの結線
    5.4 ストレージパスの二重化
    5.5 ファイルシステムの作成
        5.5.1 iSCSIをマウントする例
        5.5.2 認識確認
        5.5.3 ファイルシステムの作成
    5.6 両ノードからのマウント確認
        5.6.1 rhcs-oracle1から
        5.6.2 rhcs-oracle2から
6 RHCSの基本設定
    6.1 クラスタ化されるノードの設定
        6.1.1 yum が使えない場合。
    6.2 クラスタ管理サーバを設定
        6.2.1 yum が使えない場合
        6.2.2 管理画面へのアクセス
    6.3 クラスタノードを管理サーバへ参加
------------------------------------- ここで力尽きてる
    6.4 Fencingの設定
    6.5 Quorumディスクの設定
7 RHCSのリソースとグループの設定
    7.1 リソース 仮想IPの設定
    7.2 リソース 共有ディスクの設定
    7.3 グループ 依存関係の定義
    7.4 グループ 起動と停止の確認
8 単体SPFテスト
    8.1 OS起動・停止
    8.2 手動フェイルオーバー
    8.3 手動フェイルバック
    8.4 ネットワーク切断
    8.5 ストレージパス切断
9 Oracle設定
    9.1 インストール
    9.2 パッチ適用
    9.3 データベースの作成
    9.4 リスナーの作成
    9.5 起動・停止スクリプトの作成
    9.6 設定ファイルを両ノードのコピー
    9.7 両ノードでデータベースとリスナーが起動する事を確認
10 RHCSへのOracle組込み
    10.1 Oracleリソースの作成
    10.2 依存関係の定義
    10.3 起動・停止・フェイルオーバーテスト
11 結合SPFテスト
    11.1 ネットワーク障害
    11.2 ストレージ障害
    11.3 OS障害
    11.4 データベース障害
    11.5 リスナー障害




2010年9月10日金曜日

iSCSIストレージ構築のポイント


このエントリーをはてなブックマークに追加


iSCSIストレージのポイントがいくつか見えてきたのでまとめておく。



2010年7月19日月曜日

RedHat のiSCSI でLUNサイズを変更する手順(未確認)


このエントリーをはてなブックマークに追加


NFSと違って、iSCSIではストレージのLUN上に直接ファイルシステムを構築するため、
動的なサイズ変更が単純ではない。

調べてみたところ、以下の条件で動的にサイズ変更できるようだ。
(未確認、ZFSのiSCSIはサイズを変更すると、一度セッションが切れるようで、再接続したときに新しいサイズを認識してしまうため)

前提条件
・対象のLUNの全体がLVMで管理されていること(パーティションを使わない)
- 必須ではないが、ほぼ必須に近い(パーティションで区切ってしまうと、実質的に動的拡張は無理
- ほんとはできなくはないけど、非常にリスキー。

手順
1. ストレージのLUNサイズを拡張する

2. iSCSIのセッションを再スキャンする
iscsiadm -m session -R

3. 認識したLUNを pvresize で拡張する。


動的にサイズ変更できるストレージがあれば試してみたい。

*でも実際、こんなリスクの高い作業せずに、新しい領域として認識させて、LVMで結合した方が安全だし手っ取り早い。
*本番でこんな運用はしない方がよい。


2010年6月5日土曜日

ZFS cifs/iscsiベンチマーク 簡易版


このエントリーをはてなブックマークに追加


■ストレージ:
SunOS sol10-u24 5.10 Generic_142901-07 i86pc i386 i86pc
Intel(R) Core(TM)2 Extreme CPU X9650  @ 3.00GHz CPU 1
8GBメモリ
Hitachi DeskStar 2TB 7200rpm x4

----------------
NAME        STATE     READ WRITE CKSUM
spool       ONLINE       0     0     0
raidz1    ONLINE       0     0     0
c2t1d0  ONLINE       0     0     0
c2t2d0  ONLINE       0     0     0
c2t3d0  ONLINE       0     0     0
c2t4d0  ONLINE       0     0     0
----------------
このspool から、領域を切り出し、samba と iscsi で Windows XP へ参照させる。

■クライアント:
Win XP pro SP3, Core2Duo E8600、2GBメモリ、Hitachi 500GB 7200rpm x2(RAID0)
 Microsoft iSCSI Initiator 2.08

■2台のつなぎは1GbpsのLAN(スイッチはProcurve)経由

■実行コマンド
iozone -i 0 -i 1 -i 2 -f z:\testfile -Rab c:\test_cifs__1.xls

結果
----------------------------------------------------
Writer Report

Re-writer Report

Reader Report

Re-reader Report

Random Write Report

Random Read Report

どう分析してよいかわからない。。。まだまだ修行不足。
とりあえずiSCSIの方が早いという事だけわかった。




2010年5月16日日曜日

RedHat Enterprise Linux iSCSIコマンドまとめ(iscsiadm)


このエントリーをはてなブックマークに追加


iSCSIクライアントとして操作する場合の操作方法。

iscsiadm コマンドの使い方



2010年5月15日土曜日

RedHat における iSCSI 設定とマルチパス


このエントリーをはてなブックマークに追加


こちらも参考にしてみてください。
---------------------------------------------
参考>> 仮想環境を使って簡単にRHEL6のiscsiマルチパスを検証する
---------------------------------------------

Linux で iSCSI を使う方法と、マルチパス化する方法について記載する。

クライアント:RedHat Enterprise Linux 5.3
ストレージ:Solaris10 ZFS iSCSI


Solaris10側でのiSCSIの準備

(1) ネットワーク環境

テストするSolaris10環境がNIC1枚しかないので少々工夫する。

>ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
e1000g0: flags=1000843 mtu 1500 index 2
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        ether 0:14:4f:4a:bb:6a
vboxnet0: flags=1000843 mtu 1500 index 3
        inet 192.168.56.1 netmask ffffff00 broadcast 192.168.56.255
        ether 8:0:27:79:a1:e4

論理インターフェースを作成し、IPを割り当てる。iSCSIはこの論理IPに対してアクセスする。

>ifconfig e1000g0:1 plumb
>ifconfig e1000g0:2 plumb
>ifconfig e1000g0:3 plumb
>ifconfig e1000g0:4 plumb
>ifconfig e1000g0:1 192.168.1.201 netmask 255.255.255.0 up
>ifconfig e1000g0:2 192.168.1.202 netmask 255.255.255.0 up
>ifconfig e1000g0:3 192.168.1.203 netmask 255.255.255.0 up
>ifconfig e1000g0:4 192.168.1.204 netmask 255.255.255.0 up

>ifconfig -a
lo0: flags=2001000849 mtu 8232 index 1
        inet 127.0.0.1 netmask ff000000
e1000g0: flags=1000843 mtu 1500 index 2
        inet 192.168.1.10 netmask ffffff00 broadcast 192.168.1.255
        ether 0:14:4f:4a:bb:6a
e1000g0:1: flags=1000843 mtu 1500 index 2
        inet 192.168.1.201 netmask ffffff00 broadcast 192.168.1.255
e1000g0:2: flags=1000843 mtu 1500 index 2
        inet 192.168.1.202 netmask ffffff00 broadcast 192.168.1.255
e1000g0:3: flags=1000843 mtu 1500 index 2
        inet 192.168.1.203 netmask ffffff00 broadcast 192.168.1.255
e1000g0:4: flags=1000843 mtu 1500 index 2
        inet 192.168.1.204 netmask ffffff00 broadcast 192.168.1.255
vboxnet0: flags=1000843 mtu 1500 index 3
        inet 192.168.56.1 netmask ffffff00 broadcast 192.168.56.255
        ether 8:0:27:79:a1:e4


(2)iSCSIターゲットの起動

>svcs -a |grep iscsi
disabled       18:17:06 svc:/system/iscsitgt:default

>svcadm enable svc:/system/iscsitgt:default

>svcs -a |grep iscsi
online         18:17:13 svc:/network/iscsi/initiator:default


(3)iSCSIボリュームの作成

>zfs create spool/iscsi
>zfs create -V 10gb spool/iscsi/iscsi01
>zfs list |grep iscsi
spool/iscsi                                 10.0G  4.22T  31.4K  /spool/iscsi
spool/iscsi/iscsi01                           10G  4.22T  23.9K  -


(4)iSCSIの基本設定

>iscsitadm modify admin -d /spool/iscsi
>iscsitadm show admin
iscsitadm:
    Base Directory: /spool/iscsi
    CHAP Name: Not set
    RADIUS Access: Not set
    RADIUS Server: Not set
    iSNS Access: Not set
    iSNS Server: Not set
    iSNS Server Status: Not applicable
    Fast Write ACK: Not set

(5)iSCSIボリュームの有効化
>iscsitadm show stats
                        operations    bandwidth
device                 read  write   read  write
--------------------  -----  -----  -----  -----

>iscsitadm list target
表示なし

>zfs set shareiscsi=on spool/iscsi/iscsi01
>iscsitadm show stats
                        operations    bandwidth
device                 read  write   read  write
--------------------  -----  -----  -----  -----
spool/iscsi/iscsi01       0      0     0K     0K

>iscsitadm list target -v
Target: spool/iscsi/iscsi01
    iSCSI Name: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
    Alias: spool/iscsi/iscsi01
    Connections: 0
    ACL list:
    TPGT list:
    LUN information:
        LUN: 0
            GUID: 0
            VID: SUN
            PID: SOLARIS
            Type: disk
            Size:   10G
            Backing store: /dev/zvol/rdsk/spool/iscsi/iscsi01
            Status: online



Linux側の作業

# uname -a
Linux rhel5-xvm 2.6.18-128.el5 #1 SMP Wed Dec 17 11:42:39 EST 2008 i686 i686 i386 GNU/Linux

# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 5.3 (Tikanga)


(1)事前パッケージの準備

iscsiイニシエータ
# rpm -qa |grep iscsi
iscsi-initiator-utils-6.2.0.868-0.18.el5

マルチパス
# rpm -qa |grep multi
device-mapper-multipath-0.4.7-23.el5


インストールメディアに含まれているので、インストールされていない場合はインストールしておく。


(2) LinuxからiSCSIターゲットを認識させる

初期は何も登録されていない。
# iscsiadm -m node
iscsiadm: no records found!

一つのIPを認識させると、付属する他のIPポータルも検索してくれる(余分なもののついてくる
# iscsiadm --mode discovery --type sendtargets --portal 192.168.1.201
192.168.1.10:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.201:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.202:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.203:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.204:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.56.1:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562

余分なターゲットポータルを削除する。
# iscsiadm -m node -o delete -T iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562 -p 192.168.56.1:3260,1
# iscsiadm -m node -o delete -T iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562 -p 192.168.1.10:3260,1
# iscsiadm -m node
192.168.1.203:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.201:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.204:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
192.168.1.202:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562


(3)ターゲットへログインする

最初は何もログインしていない
# iscsiadm -m session
iscsiadm: No active sessions.

ログインする
# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.203,3260]
Logging in to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.201,3260]
Logging in to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.204,3260]
Logging in to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.202,3260]
Login to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.203,3260]: successful
Login to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.201,3260]: successful
Login to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.204,3260]: successful
Login to [iface: default, target: iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562, portal: 192.168.1.202,3260]: successful

ログインしたセッションを確認
# iscsiadm -m session
tcp: [6] 192.168.1.203:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
tcp: [7] 192.168.1.201:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
tcp: [8] 192.168.1.204:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562
tcp: [9] 192.168.1.202:3260,1 iqn.1986-03.com.sun:02:46de72a8-5705-ec14-c178-9fe760cbf562

ここで余分なセッションへログインしている場合は以下でログオフしておく
# iscsiadm -m node -p 192.168.XX.XX:3260,1 --logout

* iSCSI のセッションタイムアウトについて
パスにエラーが発生した場合、ターゲットポータルから何秒応答がなかったらエラーとみなすかを設定する必要がある。
ここでエラーをハンドルし、マルチパスデーモンに渡され、上位でパスの切り替えが行われる。
標準で120秒でエラーとなるように設定されている。
これを変更するには、
/etc/iscsi/iscsid.conf を編集

node.session.timeo.replacement_timeout = 120

デフォルトで120秒。ここを短くすることでフェイルオーバー速度を上げることができる。
ただし、短くしすぎると高負荷時に頻繁にパスの切り替えが発生してしまうので注意が必要。


(4)ディスクの確認

認識したディスクを確認
# fdisk -l
----------------------------------
Disk /dev/hda: 2199.0 GB, 2199022206976 bytes
255 heads, 63 sectors/track, 267349 cylinders
Units = シリンダ数 of 16065 * 512 = 8225280 bytes

デバイス Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1          65      522081   83  Linux
/dev/hda2              66         326     2096482+  82  Linux swap / Solaris
/dev/hda3             327      267349  2144862247+  83  Linux

Disk /dev/sda: 10.7 GB, 10737418240 bytes
64 heads, 32 sectors/track, 10240 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes


ディスク /dev/sda は正常な領域テーブルを含んでいません


Disk /dev/sdb: 10.7 GB, 10737418240 bytes
64 heads, 32 sectors/track, 10240 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes


ディスク /dev/sdb は正常な領域テーブルを含んでいません


Disk /dev/sdc: 10.7 GB, 10737418240 bytes
64 heads, 32 sectors/track, 10240 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes


ディスク /dev/sdc は正常な領域テーブルを含んでいません


Disk /dev/sdd: 10.7 GB, 10737418240 bytes
64 heads, 32 sectors/track, 10240 cylinders
Units = シリンダ数 of 2048 * 512 = 1048576 bytes


ディスク /dev/sdd は正常な領域テーブルを含んでいません
----------------------------------
一つのディスクが複数の経路で見えていることが分かる。


(5)マルチパスの設定

ここからの設定は基本的にFC-SANでのマルチパス設定と変わらない。
device-mapper multipathを使用する。詳細は以前のエントリーを参照してください。

マルチパス対象となるデバイスのwwidを識別する。

二つの方法がある
[1.by-idを確認する]
# ls -l /dev/disk/by-id/
合計 0
lrwxrwxrwx 1 root root  9  5月 16  2010 ata-VBOX_CD-ROM_VB2-01700376 -> ../../hdc
lrwxrwxrwx 1 root root  9  5月 16  2010 ata-VBOX_HARDDISK_VB2b054e7c-64e79e01 -> ../../hda
lrwxrwxrwx 1 root root 10  5月 16  2010 ata-VBOX_HARDDISK_VB2b054e7c-64e79e01-part1 -> ../../hda1
lrwxrwxrwx 1 root root 10  5月 16  2010 ata-VBOX_HARDDISK_VB2b054e7c-64e79e01-part2 -> ../../hda2
lrwxrwxrwx 1 root root 10  5月 16  2010 ata-VBOX_HARDDISK_VB2b054e7c-64e79e01-part3 -> ../../hda3
lrwxrwxrwx 1 root root  9  5月 15 19:46 scsi-3600144f04bee77860000144f4abb6a00 -> ../../sdc

ここの表示は、fdisk -l で表示される全てのパスは表示されないので注意。
ただし、fdiskで表示されたデバイス名(sda, sdb, sdc, sdd)のどれかが、by-idに表示されるので、
ここでは 3600144f04bee77860000144f4abb6a00 がwwid だとわかる(scsi- の部分はいらない)

[2.scsiコマンドで確認する]
# /sbin/scsi_id -g -u -s /block/sda
3600144f04bee77860000144f4abb6a00

# /sbin/scsi_id -g -u -s /block/sdb
3600144f04bee77860000144f4abb6a00

# /sbin/scsi_id -g -u -s /block/sdc
3600144f04bee77860000144f4abb6a00

# /sbin/scsi_id -g -u -s /block/sdd
3600144f04bee77860000144f4abb6a00


/etc/multipath.conf を編集する。
------------------------------------
blacklist {
        devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*"
        devnode "^hd[a-z]"
}

blacklist_exceptions {
        wwid    "3600144f04bee77860000144f4abb6a00"
}

defaults {
        user_friendly_names yes
}
multipaths {
        multipath {
                wwid                    "3600144f04bee77860000144f4abb6a00"
                alias                   zfs-iscsi01
                path_grouping_policy    multibus
                path_checker            readsector0
                path_selector           "round-robin 0"
                failback                manual
                rr_weight               priorities
                no_path_retry           5
        }
}
----------------------------------------

# multipath -ll
zfs-iscsi01 (3600144f04bee77860000144f4abb6a00) dm-0 SUN,SOLARIS
[size=10G][features=1 queue_if_no_path][hwhandler=0][rw]
\_ round-robin 0 [prio=4][enabled]
 \_ 0:0:0:0 sda 8:0   [active][ready]
 \_ 1:0:0:0 sdb 8:16  [active][ready]
 \_ 2:0:0:0 sdc 8:32  [active][ready]
 \_ 3:0:0:0 sdd 8:48  [active][ready]

これでマルチパスが設定されていることが確認できる。

# multipath -v 3
dm-0: blacklisted
fd0: blacklisted
hda: blacklisted
hdc: blacklisted
md0: blacklisted
ram0: blacklisted
ram10: blacklisted
ram11: blacklisted
ram12: blacklisted
ram13: blacklisted
ram14: blacklisted
ram15: blacklisted
ram1: blacklisted
ram2: blacklisted
ram3: blacklisted
ram4: blacklisted
ram5: blacklisted
ram6: blacklisted
ram7: blacklisted
ram8: blacklisted
ram9: blacklisted
sda: not found in pathvec
sda: mask = 0x1f
sda: bus = 1
sda: dev_t = 8:0
sda: size = 20971520
sda: vendor = SUN
sda: product = SOLARIS
sda: rev = 1
sda: h:b:t:l = 0:0:0:0
sda: serial =
sda: path checker = readsector0 (config file default)
sda: state = 2
sda: getprio = NULL (internal default)
sda: prio = 1
sda: getuid = /sbin/scsi_id -g -u -s /block/%n (config file default)
sda: uid = 3600144f04bee77860000144f4abb6a00 (callout)
sdb: not found in pathvec
sdb: mask = 0x1f
sdb: bus = 1
sdb: dev_t = 8:16
sdb: size = 20971520
sdb: vendor = SUN
sdb: product = SOLARIS
sdb: rev = 1
sdb: h:b:t:l = 1:0:0:0
sdb: serial =
sdb: path checker = readsector0 (config file default)
sdb: state = 2
sdb: getprio = NULL (internal default)
sdb: prio = 1
sdb: getuid = /sbin/scsi_id -g -u -s /block/%n (config file default)
sdb: uid = 3600144f04bee77860000144f4abb6a00 (callout)
sdc: not found in pathvec
sdc: mask = 0x1f
sdc: bus = 1
sdc: dev_t = 8:32
sdc: size = 20971520
sdc: vendor = SUN
sdc: product = SOLARIS
sdc: rev = 1
sdc: h:b:t:l = 2:0:0:0
sdc: serial =
sdc: path checker = readsector0 (config file default)
sdc: state = 2
sdc: getprio = NULL (internal default)
sdc: prio = 1
sdc: getuid = /sbin/scsi_id -g -u -s /block/%n (config file default)
sdc: uid = 3600144f04bee77860000144f4abb6a00 (callout)
sdd: not found in pathvec
sdd: mask = 0x1f
sdd: bus = 1
sdd: dev_t = 8:48
sdd: size = 20971520
sdd: vendor = SUN
sdd: product = SOLARIS
sdd: rev = 1
sdd: h:b:t:l = 3:0:0:0
sdd: serial =
sdd: path checker = readsector0 (config file default)
sdd: state = 2
sdd: getprio = NULL (internal default)
sdd: prio = 1
sdd: getuid = /sbin/scsi_id -g -u -s /block/%n (config file default)
sdd: uid = 3600144f04bee77860000144f4abb6a00 (callout)
===== paths list =====
uuid                              hcil    dev dev_t pri dm_st  chk_st  vend/pr
3600144f04bee77860000144f4abb6a00 0:0:0:0 sda 8:0   1   [undef][ready] SUN,SOL
3600144f04bee77860000144f4abb6a00 1:0:0:0 sdb 8:16  1   [undef][ready] SUN,SOL
3600144f04bee77860000144f4abb6a00 2:0:0:0 sdc 8:32  1   [undef][ready] SUN,SOL
3600144f04bee77860000144f4abb6a00 3:0:0:0 sdd 8:48  1   [undef][ready] SUN,SOL
params = 1 queue_if_no_path 0 1 1 round-robin 0 4 1 8:0 1000 8:16 1000 8:32 1000 8:48 1000
status = 2 0 0 0 1 1 E 0 4 0 8:0 A 0 8:16 A 0 8:32 A 0 8:48 A 0
3600144f04bee77860000144f4abb6a00: exception-listed
sda: ownership set to zfs-iscsi01
sda: not found in pathvec
sda: mask = 0xc
sda: state = 2
sda: prio = 1
sdb: ownership set to zfs-iscsi01
sdb: not found in pathvec
sdb: mask = 0xc
sdb: state = 2
sdb: prio = 1
sdc: ownership set to zfs-iscsi01
sdc: not found in pathvec
sdc: mask = 0xc
sdc: state = 2
sdc: prio = 1
sdd: ownership set to zfs-iscsi01
sdd: not found in pathvec
sdd: mask = 0xc
sdd: state = 2
sdd: prio = 1
zfs-iscsi01: pgfailback = -1 (LUN setting)
zfs-iscsi01: pgpolicy = multibus (LUN setting)
zfs-iscsi01: selector = round-robin 0 (LUN setting)
zfs-iscsi01: features = 0 (internal default)
zfs-iscsi01: hwhandler = 0 (internal default)
zfs-iscsi01: rr_weight = 2 (LUN setting)
zfs-iscsi01: minio = 1000 (config file default)
zfs-iscsi01: no_path_retry = 5 (multipath setting)
pg_timeout = NONE (internal default)
zfs-iscsi01: set ACT_NOTHING (map unchanged)
3600144f04bee77860000144f4abb6a00: exception-listed
3600144f04bee77860000144f4abb6a00: exception-listed
3600144f04bee77860000144f4abb6a00: exception-listed


(6)フォーマットしてマウントする

# ll /dev/mpath/
合計 0
lrwxrwxrwx 1 root root 7  5月 15 20:23 mpath0 -> ../dm-0

# parted /dev/mpath/mpath0
GNU Parted 1.8.1
/dev/dm-0 を使用
GNU Parted へようこそ! コマンド一覧を見るには 'help' と入力してください。

(parted) print
エラー: /dev/dm-0 を開けません。ディスクラベルが認識できません。

(parted) mklabel gpt
(parted) print

モデル: Linux device-mapper (dm)
ディスク /dev/dm-0: 10.7GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt

番号  開始  終了  サイズ  ファイルシステム  名前  フラグ

(parted) mkpart primary 0 10G
(parted) print

モデル: Linux device-mapper (dm)
ディスク /dev/dm-0: 10.7GB
セクタサイズ (論理/物理): 512B/512B
パーティションテーブル: gpt

番号  開始    終了    サイズ  ファイルシステム  名前     フラグ
 1    17.4kB  10.7GB  10.7GB                    primary

(parted) quit


# kpartx -a /dev/mpath/mpath0
# ll /dev/mpath/
合計 0
lrwxrwxrwx 1 root root 7  5月 15 20:23 mpath0 -> ../dm-0
lrwxrwxrwx 1 root root 7  5月 15 21:11 mpath0p1 -> ../dm-2


# mkfs -t ext3 /dev/mpath/mpath0p1
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
1310720 inodes, 2621431 blocks
131071 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per group
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.


# mkdir /mnt/mpath0
# mount -t ext3 /dev/mpath/mpath0p1 /mnt/mpath0

# df -h
Filesystem          サイズ  使用  残り 使用% マウント位置
/dev/hda3             2.0T  2.6G  1.9T   1% /
/dev/hda1             494M   16M  453M   4% /boot
tmpfs                 506M     0  506M   0% /dev/shm
/dev/dm-2             9.9G  151M  9.2G   2% /mnt/mpath0

以上で手順は終了。
後は、パス切断を行ってテストを行ってください。

CentOS徹底入門第2版

CentOS徹底入門第2版

価格:4,494円(税込、送料別)