Nexentastor Community EditionでFCストレージ

XenServerおよびESXiで使用できるFCストレージの簡単(?)な作り方

 

cloudstackを使う上で欠かせない共有ディスク

iSCSI接続は比較的よく見るので、FC接続ストレージを作ってみました。 

 

(1) 準備編

PCI-Express x8が使用できるPCまたはサーバ

Qlogic製Fibre Channel Adapter (QLE2460/QLE2462など)

Intel製ネットワークアダプタ (9301CT等で可)

HDDたくさん

メモリたくさん

 

私は以下のような環境を準備しました。

CPU:Intel Core i7-870

M/B:ML110 G6

MEM:16GB

HBA:Qlogic QLE2462 DualPort 4Gbps Fibre Channel Adapter

HDD:Seagate ST2000DM001×8 (LSILogic 9260-8i接続)

   WD20EARX×5 (チップセットに接続)

NIC:Intel 9301CT

SSDPlextor PX-128M5P (L2ARCで使用)

 

(2) Nexentastor Community Editionのインストール

インストール用にLSILogic 9260-8iで10GBのLUを切り出し、OSをインストール

手順は省略します。。。

 

(3) FCストレージとしてのセットアップ

sshでNexentastor Community Editionに接続し、セットアップしていきます。

 

以下でエキスパートモードになります

$ option expert_mode=1 -s
$ !bash
Unix (「raw」) シェルを入力して低レベルの Unix コマンドを実行しようとしています。 警告: 低レベルの Unix コマンドの使用は推奨されません! 実行しますか?  Yes

 

ZFS ストレージプールの作成と確認

# zpool create -f fc-vol00 c1t1d0
# zpool create -f fc-vol01 raidz c2t0d0 c2t1d0 c2t2d0 c2t3d0 c2t4d0

 

ZFS ストレージプールの確認

# zpool list
NAME       SIZE  ALLOC   FREE    CAP  DEDUP  HEALTH  ALTROOT
fc-vol00  10.9T   548K  10.9T     0%  1.00x  ONLINE  -
fc-vol01  9.06T  1.17M  9.06T     0%  1.00x  ONLINE  -
syspool   19.9G  12.6G  7.26G    63%  1.00x  ONLINE  -

 

LUNとして使用するZFSボリュームの作成と確認

# zfs create -V 10T fc-vol00/lu00
# zfs create -V 10G fc-vol00/lu01
# zfs create -V 10G fc-vol00/lu02
# zfs create -V 10G fc-vol00/lu03
# zfs create -V 100G fc-vol00/lu04
# zfs create -V 100G fc-vol00/lu05
# zfs create -V 100G fc-vol00/lu06

# zfs create -V 6144G fc-vol01/lu00
# zfs create -V 10G fc-vol01/lu01
# zfs create -V 10G fc-vol01/lu02
# zfs create -V 10G fc-vol01/lu03
# zfs create -V 100G fc-vol01/lu04
# zfs create -V 100G fc-vol01/lu05

 

# zfs list
NAME                     USED  AVAIL  REFER  MOUNTPOINT
fc-vol00                10.6T  59.1G   144K  /fc-vol00
fc-vol00/lu00           10.3T  10.3T  25.5G  -
fc-vol00/lu01           10.3G  69.4G    72K  -
fc-vol00/lu02           10.3G  69.4G    72K  -
fc-vol00/lu03           10.3G  69.4G    72K  -
fc-vol00/lu04            103G   162G    72K  -
fc-vol00/lu05            103G   162G    72K  -
fc-vol00/lu06            103G   162G    72K  -
fc-vol01                6.42T   723G   230K  /fc-vol01
fc-vol01/lu00           6.19T  6.88T  19.7G  -
fc-vol01/lu01           10.3G   733G   115K  -
fc-vol01/lu02           10.3G   733G   115K  -
fc-vol01/lu03           10.3G   733G   115K  -
fc-vol01/lu04            103G   826G   115K  -
fc-vol01/lu05            103G   826G   115K  -
syspool                 13.8G  5.76G   164K  legacy
syspool/.nza-reserve     144K  5.86G   144K  none
syspool/dump            11.2G  5.76G  11.2G  -
syspool/rootfs-nmu-000  1.47G  5.76G  1.04G  legacy
syspool/rootfs-nmu-001    92K  5.76G   966M  legacy
syspool/swap            1.03G  6.79G    72K  -

 

ZFSボリューム用のLUN作成と確認

# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu00
Logical unit created: 600144F0504B830000005295FF6D0001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu01
Logical unit created: 600144F0504B830000005295FF6F0002
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu02
Logical unit created: 600144F0504B830000005295FF710003
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu03
Logical unit created: 600144F0504B830000005295FF720004
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu04
Logical unit created: 600144F0504B830000005295FF740005
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu05
Logical unit created: 600144F0504B83000000529F10F90001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol00/lu06
Logical unit created: 600144F0504B83000000529F19F00001

# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu00
Logical unit created: 600144F0504B83000000529B22120001
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu01
Logical unit created: 600144F0504B83000000529F110C0002
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu02
Logical unit created: 600144F0504B83000000529F110F0003
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu03
Logical unit created: 600144F0504B83000000529F11100004
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu04
Logical unit created: 600144F0504B83000000529F11110005
# stmfadm create-lu /dev/zvol/rdsk/fc-vol01/lu05
Logical unit created: 600144F0504B83000000529F11130006

# stmfadm list-lu
LU Name: 600144F0504B830000005295FF6D0001
LU Name: 600144F0504B830000005295FF6F0002
LU Name: 600144F0504B830000005295FF710003
LU Name: 600144F0504B830000005295FF720004
LU Name: 600144F0504B830000005295FF740005
LU Name: 600144F0504B83000000529B22120001
LU Name: 600144F0504B83000000529F10F90001
LU Name: 600144F0504B83000000529F110C0002
LU Name: 600144F0504B83000000529F110F0003
LU Name: 600144F0504B83000000529F11100004
LU Name: 600144F0504B83000000529F11110005
LU Name: 600144F0504B83000000529F11130006
LU Name: 600144F0504B83000000529F19F00001

 

ホストグループ作成
# stmfadm create-hg esxi01
# stmfadm create-hg esxi02
# stmfadm create-hg vcenter

 

ホストグループにWWN登録

wwnはストレージに接続するXenServer/ESXiホストのFCアダプタを指定します。
# stmfadm add-hg-member -g esxi01 wwn.10000000c9695686
# stmfadm add-hg-member -g esxi01 wwn.10000000c96955c0
# stmfadm add-hg-member -g esxi02 wwn.10000000c976c1c0
# stmfadm add-hg-member -g esxi02 wwn.10000000c9769a8c
# stmfadm add-hg-member -g vcenter wwn.10000000c960ae93

 

ホストグループの確認

# stmfadm list-hg -v
Host Group: esxi01
        Member: wwn.10000000C9695686
        Member: wwn.10000000C96955C0
Host Group: esxi02
        Member: wwn.10000000C976C1C0
        Member: wwn.10000000C9769A8C
Host Group: vcenter

        Member: wwn.10000000c960ae93

 

ホストグループにLUN ビューを追加

※追加したLUNから順にHost-LUNが0~で割り当てられます
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF6D0001
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF6F0002
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF710003
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF720004
# stmfadm add-view --host-group esxi01 600144F0504B830000005295FF740005
# stmfadm add-view --host-group esxi01 600144F0504B83000000529B22120001

# stmfadm add-view --host-group esxi01 600144F0504B83000000529F10F90001
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F110C0002
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F110F0003
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11100004
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11110005
# stmfadm add-view --host-group esxi01 600144F0504B83000000529F11130006

# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF6D0001
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF6F0002
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF710003
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF720004
# stmfadm add-view --host-group esxi02 600144F0504B830000005295FF740005
# stmfadm add-view --host-group esxi02 600144F0504B83000000529B22120001

# stmfadm add-view --host-group esxi02 600144F0504B83000000529F10F90001
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F110C0002
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F110F0003
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11100004
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11110005
# stmfadm add-view --host-group esxi02 600144F0504B83000000529F11130006

# stmfadm add-view --host-group vcenter 600144F0504B83000000529F19F00001

 

LUN の構成を確認

# stmfadm list-view -l 600144F0504B830000005295FF6D0001
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 0
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 0
# stmfadm list-view -l 600144F0504B830000005295FF6F0002
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 1
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 1
# stmfadm list-view -l 600144F0504B830000005295FF710003
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 2
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 2
# stmfadm list-view -l 600144F0504B830000005295FF720004
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 3
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 3
# stmfadm list-view -l 600144F0504B830000005295FF740005
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 4
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 4
# stmfadm list-view -l 600144F0504B83000000529B22120001
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 5
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 5
# stmfadm list-view -l 600144F0504B83000000529F10F90001
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 6
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 6
# stmfadm list-view -l 600144F0504B83000000529F110C0002
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 7
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 7
# stmfadm list-view -l 600144F0504B83000000529F110F0003
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 8
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 8
# stmfadm list-view -l 600144F0504B83000000529F11100004
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 9
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 9
# stmfadm list-view -l 600144F0504B83000000529F11110005
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 10
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 10
# stmfadm list-view -l 600144F0504B83000000529F11130006
View Entry: 0
    Host group   : esxi01
    Target group : All
    LUN          : 11
View Entry: 1
    Host group   : esxi02
    Target group : All
    LUN          : 11
# stmfadm list-view -l 600144F0504B83000000529F19F00001
View Entry: 0
    Host group   : vcenter
    Target group : All
    LUN          : 0

 

FCアダプタドライバのモードを確認します

# mdb -k
Loading modules: [ unix genunix specfs dtrace mac cpu.generic uppc pcplusmp scsi_vhci zfs mr_sas sd sockfs ip hook neti sctp arp usba qlc stmf_sbd stmf lofs idm random nfs crypto sata cpc smbsrv logindmux ptm nsctl sdbc ufs nsmb sv rdc ii ]
> ::devbindings -q qlc
ffffff04e606c020 pciex1077,2432, instance #0 (driver name: qlc)
ffffff04e606a7c0 pciex1077,2432, instance #1 (driver name: qlc)
> $q

 

全てのFCポートをターゲットモードに変更する
現在のバインドを削除する
# update_drv -d -i 'pciex1077,2432' qlc
Cannot unload module: qlc
Will be unloaded upon reboot.


新しいバインドを確立する
# update_drv -a -i 'pciex1077,2432' qlt
devfsadm: driver failed to attach: qlt
Warning: Driver (qlt) successfully added to system but failed to attach


システムをリブートして新しいドライバをロードする
# init 6

 

ターゲットモードフレームワークが HBA ポートにアクセスできることを確認

# stmfadm list-target -v
Target: wwn.210000E08B854AE2
    Operational Status: Online
    Provider Name     : qlt
    Alias             : qlt1,0
    Protocol          : Fibre Channel
    Sessions          : 1
        Initiator: wwn.10000000C976C1C0
            Alias: Emulex LPe1150-F4-N FV2.72A2 DV10.0.100.1
            Logged in since: Wed Nov 27 23:35:22 2013
Target: wwn.210000E08B8557DE
    Operational Status: Online
    Provider Name     : qlt
    Alias             : qlt0,0
    Protocol          : Fibre Channel
    Sessions          : 1
        Initiator: wwn.10000000C9769A8C
            Alias: Emulex LPe1150-F4-N FV2.72A2 DV10.0.100.1
            Logged in since: Wed Nov 27 23:35:21 2013

 

 

ESXiから認識させた例

LUNが細かく分かれてるのは・・・RDMで使うからですハイ。 

 

f:id:vtechnical:20131227005159j:plain