Osc2012 tokyo fall_home_san_nayamaguti

48
オオオオオオオオオオオオオオ 2012 Tokyo/Fall オオ オオオ SAN (#jitakusan) Noriyuki Yamaguchi(@n_yamaguti) Solaris 11 11/11 オ FC オオオオオオオオオオオ

description

 

Transcript of Osc2012 tokyo fall_home_san_nayamaguti

Page 1: Osc2012 tokyo fall_home_san_nayamaguti

オープンソースカンファレンス2012 Tokyo/Fall自宅SAN友の会 (#jitakusan)Noriyuki Yamaguchi(@n_yamaguti)

Solaris 11 11/11 でFC ターゲットを作ってみる

Page 2: Osc2012 tokyo fall_home_san_nayamaguti

自己紹介富士通関西中部ネットテックという会社に勤務して

ます基本ネットワークSEです。CCIE R&S 持ってますISPのネットワークが得意なんですが。。仮想化

方面も少々。。基本愛知県在住ですが。。最近関東に召喚されぎみ

です。。。セキュリティ方面も少々。。このへんに出没してます

ISACA 名古屋支部 (www.isaca-nagoya.org)産学連携 IPv6 実験地域ネットワーク研究会 (v6tokai)

Page 3: Osc2012 tokyo fall_home_san_nayamaguti

F C ターゲットとはファイバーチャネル( FC )で繋がる DISK アレイ装

置のこと有名どころですと富士通とか、EMCとかNetA

ppとかから専用装置がでてますが、高価です。

今回は、廉価に FC ストレージをPC サーバで作ってしまうお話です。

Page 4: Osc2012 tokyo fall_home_san_nayamaguti

ORACLE Solaris 11 11/11

2011 年 11 月 11 日にリリース?ORACLE になっちゃいました最新ストレージシステム ZFSv33 搭載 ( ファイルシ

ステムバージョン 5 、ストレージプールバージョン33) 。 ZFS 暗号化、重複排除機能、仮想化対応、フラッシュストレージ対応。

COMSTERで iSCSI,FC などのターゲットになれる

けっこう昔の Solaris と使い勝手が違います。。。OTNっていうライセンスで配布されてます。。残

念ながら商用ライセンスです。個人で遊びで使う分には無償でいいはず。。です(自己の判断でお願いします)

Page 5: Osc2012 tokyo fall_home_san_nayamaguti

ZFS  ( Zetta byte File System )世界初の128bitファイルシステム

ファイルシステムの上限  25 京 6000 兆 ZB !!

ストレージプールにより物理的なデバイス構成から完全に独立 物理ディスク、ディスクパーティション、実ファイルなどをまとめて、

1つの仮想的なストレージデバイスである「ストレージプール」を構成

CPU パワー必要メモリーいっぱいあったほうが幸せ

Page 6: Osc2012 tokyo fall_home_san_nayamaguti

Hybrid Storage Pool

SSD ( Solid State Drive )をファイルシステムのキャッシュとして扱う 「 Hybrid Storage Pool 」を構成することが可能

• ARC ( Adaptive Replacement Cache )は、サーバの DRAM 上にある ZFS のメモリキャッシュで、 1 次キャッシュとして動作

• L2ARC ( Level 2 Adaptive Replacement Cache )は、 ARC の Read 用拡張 2 次キャッシュであり、 SSD を適用することで Read 速度の向上を促します。

• ZIL ( ZFS Intent Log )は、 ZFS の Write ログ領域であり、 SSD を適用することでWrite 速度の向上を促します。

• Disk Storage Pool は、 HDD 群で構成

Page 7: Osc2012 tokyo fall_home_san_nayamaguti

ZFS でサポートされるディスクの冗長構成

非冗長

ストレージプールにディスクを登録するときに冗長構成を指定

ミラー

RAID-Z

RAID-Z2

RAID-Z3

ストレージプール

物理DISK

物理DISK

物理DISK

• ストライピング (RAID-0)

• 複数麺ミラーも可能 (RAID-1)

• シングルパリティ (RAID-5 に類似 )

• ダブルパリティ (RAID-6 に類似 )

• トリプルパリティ

Page 8: Osc2012 tokyo fall_home_san_nayamaguti

COMSTER ( Common Multiprotocol SCSI TARget)

Oracle Solaris 11 ホストを SCSI ターゲットデバイスに変換可能なソフトウェアフレームワーク

サポートされるストレージプロトコルは、 iSCSI 、FC 、 iSER 、および SRP

カーネルで処理するので早い

これで、 FC ターゲットが作れます !!

Page 9: Osc2012 tokyo fall_home_san_nayamaguti

QLogic 4G HBA を用意するQlogic の 4G HBA が必要です (8G もOKでした )2G はだめですEmulex でも行けるらしいですがうまくいったとい

う実績がないです(うまくいったら教えてください)

FC SW がなければ直結も可能

QLogic QLE2462 4G PCI-e Dual Port HBA Adapter

Page 10: Osc2012 tokyo fall_home_san_nayamaguti

OS のインストールORACLEのホームページからダウンロード可能

(試用版?)OS のインストールから説明すると大変なので省略

します1 本目の HDD の最初のパーティション 42GBくらい

を作って OS をインストールします

Page 11: Osc2012 tokyo fall_home_san_nayamaguti

DISK の計画 SATA 2TB HDD×4 本 ZFS ZIL 用に 20G SSD×1 本 ZIL と L2ARC どちらかを選ぶとすれば ZIL を優先させたほう

がいい OS 用の DISK とかもったいないので、頭にちょっとだけ切

り分けてみる。。 OS吹っ飛ぶと大変なのでミラーする 実はマニュアルに p* 識別子は使用しないでくださいと書い

てあったことは見なかったことにする c3t0d0s0 c3t1d0s0

c3t2d0 c3t3d0

Seagate 2T HDDST2000DL003

c3t5d0

Seagate 2T HDDST2000DL003

Seagate 2T HDDST2000DL003

Seagate 2T HDDST2000DL003

INTEL 20G SSDIntel SSD 311

c3t1d0p2c3t0d0p2

41.9GB

1958GB

Page 12: Osc2012 tokyo fall_home_san_nayamaguti

DISK の計画 1 本目と 2 本目の頭のパーティションを mirror で構築 1 本目と 2 本目の残りと 3 本目、 4 本目で今回は raid-z1 を構

成 SSD は ZIL に使用

c3t0d0s0

c3t1d0s0

c3t2d0 c3t3d0

Seagate 2T HDDST2000DL003

c3t5d0

Seagate 2T HDDST2000DL003

Seagate 2T HDDST2000DL003

Seagate 2T HDDST2000DL003

INTEL 20G SSDIntel SSD 311

c3t1d0p2c3t0d0p2

41.9GB

1958GB

OS 用 rpool mirror

ZIL

tank raid-z1

Page 13: Osc2012 tokyo fall_home_san_nayamaguti

DISK の計画 ストレージプール( tank )の中に zvol ( fc_esx01 )を作成 作成した zvol に LU を作成 Host Group に taget へ接続できるイニシエータの wwn を登録

ストレージプールtank 6TB

zvolfc_esx01

1TBHost Group: fc-esx Member: wwn.5001438000C2DE0E Member: wwn.10000000C96976D7 Member: wwn.10000000C95FBC3E

LU: 600144F0AEAE0F0000004ECD1BA10001

wwn.10000000C96976D7

wwn.10000000C95FBC3E

wwn.5001438000C2DE0E

FC   SWHBA

Page 14: Osc2012 tokyo fall_home_san_nayamaguti

作業の流れrpool の mirror 化zpool の作成ZIL の追加COMSTER のインストールFCドライバーの入れ替えzvol の作成LU の作成Host Group の作成View の作成

Page 15: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化rpool とは OS のインストールされたストレージプー

ルOS をインストールした( c3t0d0 )側のパーティ

ション情報を確認する(シリンダー表示)# parted /dev/dsk/c3t0d0p0 u s pModel: Generic Ide (ide)Disk /dev/dsk/c3t0d0p0: 3907029168sSector size (logical/physical): 512B/512BPartition Table: msdos

Number Start End Size Type File system Flags 1 64260s 81867239s 81802980s primary solaris boot 2 81867240s 3907024064s 3825156825s primary

・ c3t0d0p0 は正常に動作中。・mirror にする HDD はパーティションが切れていないため、 OS をインストールした HDD から情報をメモる

Page 16: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化さきほどメモしたシリンダー情報をもとに parted で

新しい HDD にパーティションを作成( c3t1d0s0 )# parted   /dev/dsk/c3t1d0p0GNU Parted 2.3.0Using /dev/dsk/c3t1d0p0Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) u su s(parted) mkpartmkpartPartition type? primary/extended? primaryprimaryFile system type? [ext2]? solarissolarisStart? 64260s64260sEnd? 81867239s81867239sWarning: The resulting partition is not properly aligned for best performance.Ignore/Cancel? I

・シリンダーで合わせておかないと、正常に mirror が構成できない?

Page 17: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化さきほどメモしたシリンダー情報をもとに新しい

HDD にパーティションを作成( c3t1d0p2 )

(parted) mkpartmkpartPartition type? primary/extended? primaryprimaryFile system type? [ext2]?

Start? 81867240s81867240sEnd? 3907024064s3907024064sWarning: The resulting partition is not properly aligned for best performance.Ignore/Cancel? iI

Page 18: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化boot flag を設定する

(parted) setsetPartition number? 11Flag to Invert? bootbootNew state? [on]/off?

Page 19: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化作成したパーテション情報を確認する

(parted) ppModel: Generic Ide (ide)Disk /dev/dsk/c3t1d0p0: 3907029168sSector size (logical/physical): 512B/512BPartition Table: msdos

Number Start End Size Type File system Flags 1 64260s 81867239s 81802980s primary boot 2 81867240s 3907024064s 3825156825s primary

(parted) quit

・ c3t0d0 と同じになっていれば OK

Page 20: Osc2012 tokyo fall_home_san_nayamaguti

rpool の mirror 化rpool に c3t0d0s0 と c3t1d0s0 を mirror で追加

# zpool attach -f rpool c3t0d0s0 c3t1d0s0 Make sure to wait until resilver is done before rebooting.# zpool status pool: rpool state: ONLINEstatus: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state.action: Wait for the resilver to complete. scan: resilver in progress since Thu Nov 24 01:16:34 2011 513M scanned out of 9.50G at 8.56M/s, 0h17m to go 513M resilvered, 5.28% doneconfig:

NAME STATE READ WRITE CKSUM rpool ONLINE 0 0 0 mirror-0 ONLINE 0 0 0 c3t0d0s0 ONLINE 0 0 0 c3t1d0s0 ONLINE 0 0 0 (resilvering)

errors: No known data errors

Solaris 11 は標準で zfs でファイルシステムが作成される

Page 21: Osc2012 tokyo fall_home_san_nayamaguti

zpool の作成raid-z1 でストレージプール( tank )を作成

# zpool create -f tank raidz c3t0d0p2 c3t1d0p2 c3t2d0 c3t3d0 # zpool status tank pool: tank state: ONLINE scan: none requestedconfig:

NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 raidz1-0 ONLINE 0 0 0 c3t0d0p2 ONLINE 0 0 0 c3t1d0p2 ONLINE 0 0 0 c3t2d0 ONLINE 0 0 0 c3t3d0 ONLINE 0 0 0

errors: No known data errors

Page 22: Osc2012 tokyo fall_home_san_nayamaguti

ZIL の追加tank に ZIL を追加する

# zpool add tank log c3t5d0# zpool status tank pool: tank state: ONLINE scan: resilvered 864G in 31h39m with 0 errors on Fri Feb 24 10:21:44 2012config:

NAME STATE READ WRITE CKSUM tank ONLINE 0 0 0 raidz1-0 ONLINE 0 0 0 c3t0d0p2 ONLINE 0 0 0 c3t1d0p2 ONLINE 0 0 0 c3t2d0 ONLINE 0 0 0 c3t3d0 ONLINE 0 0 0 logs c3t5d0 ONLINE 0 0 0

Page 23: Osc2012 tokyo fall_home_san_nayamaguti

パッケージの追加COMSTER のインストール

# pkg install storage-server インストールするパッケージ : 22 ブート環境の作成 : いいえバックアップブート環境の作成 : はい 変更するサービス : 1

ダウンロード パッケージ ファイル 転送 (MB)Completed 22/22 1037/1037 60.6/60.6

フェーズ アクションインストールフェーズ 1903/1903

フェーズ 項目パッケージ状態の更新フェーズ 22/22 イメージ状態の更新フェーズ 2/2

Page 24: Osc2012 tokyo fall_home_san_nayamaguti

FCドライバーの入れ替えQLOGICドライバの確認

# mdb -kLoading modules: [ unix genunix specfs dtrace mac cpu.generic uppc pcplusmp scsi_vhci zfs sata sd ip hook neti arp usba uhci kssl qlc fctl sockfs lofs random idm nfs sppp fcp crypto cpc fcip nsmb logindmux ptm ufs ipc md stmf nsctl sdbc rdc sv stmf_sbd smbsrv ii ]> ::devbindings -q qlcffffff02bdcc7968 pciex1077,2432, instance #0 (driver name: qlc)ffffff02bdcc7698 pciex1077,2432, instance #1 (driver name: qlc)> $q

デフォルトは qlc (イニシエータモード)ドライバーを使用

Page 25: Osc2012 tokyo fall_home_san_nayamaguti

FCドライバーの入れ替えqlcドラバから qltドライバに変更

# update_drv -d -i 'pciex1077,2432' qlcCannot unload module: qlcWill be unloaded upon reboot.# update_drv -a -i 'pciex1077,2432' qltdevfsadm: driver failed to attach: qltWarning: Driver (qlt) successfully added to system but failed to attach

ql t(ターゲットモード)ドライバーを使用すると FC targetで使用可能

Page 26: Osc2012 tokyo fall_home_san_nayamaguti

FCドライバーの入れ替えリブートする

# init 6updating //platform/i86pc/boot_archiveupdating //platform/i86pc/amd64/boot_archive

リブート後 ql t(ターゲットモード)ドライバーが使用可能

Page 27: Osc2012 tokyo fall_home_san_nayamaguti

FCドライバーの入れ替えQLOGICドライバの確認

# mdb -kLoading modules: [ unix genunix specfs dtrace mac cpu.generic uppc pcplusmp scsi_vhci zfs sata sd ip hook neti arp usba uhci kssl fctl stmf stmf_sbd sockfs md random idm crypto cpc fcip nfs lofs logindmux ptm ufs sppp ipc ]> ::devbindings -q qlc> ::devbindings -q qltffffff02bdcc7968 pciex1077,2432, instance #0 (driver name: qlt)ffffff02bdcc7698 pciex1077,2432, instance #1 (driver name: qlt)>

ql t(ターゲットモード)ドライバーに変更されていることを確認する

Page 28: Osc2012 tokyo fall_home_san_nayamaguti

FCドライバーの入れ替えターゲットモードフレームワークが HBA ポートに

アクセスできることを確認します

# stmfadm list-target -vTarget: wwn.2101001B3237C668 Operational Status: Online Provider Name : qlt Alias : qlt1,0 Protocol : Fibre Channel Sessions : 1 Initiator: wwn.10000000C95FBC3E Alias: - Logged in since: Mon Feb 20 03:10:04 2012Target: wwn.2100001B3217C668 Operational Status: Online Provider Name : qlt Alias : qlt0,0 Protocol : Fibre Channel Sessions : 1 Initiator: wwn.10000000C96976D7 Alias: - Logged in since: Mon Feb 20 03:09:56 2012

Page 29: Osc2012 tokyo fall_home_san_nayamaguti

zvol の作成ストレージプール( tank )に 1T の容量で fc_esx01

という名前で zvol を作成

# zfs create -V 1T tank/fc_esx01

Page 30: Osc2012 tokyo fall_home_san_nayamaguti

LU の作成作成した zvol を指定して LU を作成

# stmfadm create-lu /dev/zvol/rdsk/tank/fc_esx01Logical unit created: 600144F0AEAE0F0000004ECD1BA10001# stmfadm list-lu -vLU Name: 600144F0AEAE0F0000004ECD1BA10001 Operational Status: Online Provider Name : sbd Alias : /dev/zvol/rdsk/tank/fc_esx01 View Entry Count : 0 Data File : /dev/zvol/rdsk/tank/fc_esx01 Meta File : not set Size : 1099511627776 Block Size : 512 Management URL : not set Vendor ID : SUN Product ID : COMSTAR Serial Num : not set Write Protect : Disabled Writeback Cache : Enabled Access State : Active

Page 31: Osc2012 tokyo fall_home_san_nayamaguti

ESXi の WWN の調査構成→ストレージアダプタ→ FC カード選択

右側の値で : をすべて削除して頭に wwn. をつ

ける

Page 32: Osc2012 tokyo fall_home_san_nayamaguti

Host Group の作成Host Group fc-esx を作成し ESXi の wwn を登録

# stmfadm create-hg fc-esx#stmfadm add-hg-member -g fc-esx wwn.5001438000C2DE0E#stmfadm add-hg-member -g fc-esx wwn.10000000C96976D7#stmfadm add-hg-member -g fc-esx wwn.10000000C95FBC3E# stmfadm list-hg –vHost Group: fc-esx Member: wwn.5001438000C2DE0E Member: wwn.10000000C96976D7 Member: wwn.10000000C95FBC3E

ESX i の画面で調べた wwn を変換して指定する10:00:00:00:c9:69:76:d7 → wwn.10000000C96976D7

Page 33: Osc2012 tokyo fall_home_san_nayamaguti

View の作成これまでに作成した Host Group, LU を紐づける

View を作成します。

# stmfadm add-view -h fc-esx 600144F0AEAE0F0000004ECD1BA10001 # stmfadm list-view --lu-name 600144F0AEAE0F0000004ECD1BA10001View Entry: 0 Host group : fc-esx Target group : All LUN : 0

Host Group で指定した wwn の ESXi からだけ接続できる指定

Page 34: Osc2012 tokyo fall_home_san_nayamaguti

ESXi から接続再スキャンしてデバイス表示されればOK

Page 35: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応zpool の確認 (rpool)

# zpool status rpool pool: rpool state: DEGRADEDstatus: One or more devices are faulted in response to persistent errors. Sufficient replicas exist for the pool to continue functioning in a degraded state.action: Replace the faulted device, or use 'zpool clear' to mark the device repaired. scan: resilvered 10.7G in 0h11m with 0 errors on Thu Feb 2 00:37:41 2012config:

NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 c3t0d0s0 FAULTED 4 63 0 too many errors c3t1d0s0 ONLINE 0 0 0

errors: No known data errors

Seagate根性なさすぎなのか壊れました。。。。

status がDEGRADED となり、c3t0d0s0 が故障 !!

Page 36: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応zpool の確認 (tank)

# zpool status tank pool: tank state: DEGRADEDstatus: One or more devices are faulted in response to persistent errors. Sufficient replicas exist for the pool to continue functioning in a degraded state.action: Replace the faulted device, or use 'zpool clear' to mark the device repaired. scan: resilvered 851G in 25h40m with 0 errors on Fri Feb 3 02:29:42 2012config:

NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 raidz1-0 DEGRADED 0 0 0 c3t0d0p2 FAULTED 6 10 0 too many errors c3t1d0p2 ONLINE 0 0 0 c3t2d0 ONLINE 0 0 0 c3t3d0 ONLINE 0 0 0 logs c3t5d0 ONLINE 0 0 0

errors: No known data errors

どうぜん、こっちも故障しますよね。。。

status がDEGRADED となり、c3t0d0p0 が故障 !!

Page 37: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応SATA の状態確認

# cfgadmAp_Id Type Receptacle Occupant ConditionSlot128 unknown empty unconfigured unknownSlot129 unknown connected configured oksata6/0 sata-port disconnected unconfigured failedsata6/1::dsk/c3t1d0 disk connected configured oksata6/2::dsk/c3t2d0 disk connected configured oksata6/3::dsk/c3t3d0 disk connected configured oksata6/4 sata-port empty unconfigured oksata6/5::dsk/c3t5d0 disk connected configured ok

sata6/0 が disconnected となり HDD が見えなくなっている

Page 38: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応故障 HDD をホットスワップで交換し、認識させる

# cfgadm -f -c configure sata6/0# cfgadm Ap_Id Type Receptacle Occupant ConditionSlot128 unknown empty unconfigured unknownSlot129 unknown connected configured oksata6/0::dsk/c3t0d0 disk connected configured oksata6/1::dsk/c3t1d0 disk connected configured oksata6/2::dsk/c3t2d0 disk connected configured oksata6/3::dsk/c3t3d0 disk connected configured oksata6/4 sata-port empty unconfigured oksata6/5::dsk/c3t5d0 disk connected configured ok

sata6/0 が connected となり新しいHDD が認識

Page 39: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応Mirror している HDD の正常な HDD ( c3t1d0 )側の

パーティション情報を確認する(シリンダー表示)

# parted /dev/dsk/c3t1d0p0 u s pModel: Generic Ide (ide)Disk /dev/dsk/c3t1d0p0: 3907029168sSector size (logical/physical): 512B/512BPartition Table: msdos

Number Start End Size Type File system Flags 1 64260s 81867239s 81802980s primary solaris boot 2 81867240s 3907024064s 3825156825s primary

・ c3t1d0p0 は正常に動作中。・交換した HDD はパーティションが切れていないため、正常に動作してる HDD から情報をメモる

Page 40: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応さきほどメモしたシリンダー情報をもとに parted で

新しい HDD にパーティションを作成( c3t0d0s0 )# parted   /dev/dsk/c3t0d0p0GNU Parted 2.3.0Using /dev/dsk/c3t0d0p0Welcome to GNU Parted! Type 'help' to view a list of commands.(parted) u su s(parted) mkpartmkpartPartition type? primary/extended? primaryprimaryFile system type? [ext2]? solarissolarisStart? 64260s64260sEnd? 81867239s81867239sWarning: The resulting partition is not properly aligned for best performance.Ignore/Cancel? I

・シリンダーで合わせておかないと、正常にmirror が構成できない?

Page 41: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応さきほどメモしたシリンダー情報をもとに新しい

HDD にパーティションを作成( c3t0d0p2 )

(parted) mkpartmkpartPartition type? primary/extended? primaryprimaryFile system type? [ext2]?

Start? 81867240s81867240sEnd? 3907024064s3907024064sWarning: The resulting partition is not properly aligned for best performance.Ignore/Cancel? iI

Page 42: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応boot flag を設定する

(parted) setsetPartition number? 11Flag to Invert? bootbootNew state? [on]/off?

Page 43: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応作成したパーテション情報を確認する

(parted) ppModel: Generic Ide (ide)Disk /dev/dsk/c3t0d0p0: 3907029168sSector size (logical/physical): 512B/512BPartition Table: msdos

Number Start End Size Type File system Flags 1 64260s 81867239s 81802980s primary boot 2 81867240s 3907024064s 3825156825s primary

(parted) quit

・ c3t1d0 と同じになっていれば OK

Page 44: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応zpool ( tank )の修復を行います

# zpool replace tank c3t0d0p2# zpool status tank pool: tank state: DEGRADEDstatus: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state.action: Wait for the resilver to complete. scan: resilver in progress since Thu Feb 23 02:42:40 2012 773G scanned out of 3.38T at 10.2M/s, 74h52m to go 193G resilvered, 22.37% doneconfig:

NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 raidz1-0 DEGRADED 0 0 0 replacing-0 DEGRADED 0 0 0 c3t0d0p2/old FAULTED 6 10 0 too many errors c3t0d0p2 ONLINE 0 0 0 (resilvering) c3t1d0p2 ONLINE 0 0 0 c3t2d0 ONLINE 0 0 0 c3t3d0 ONLINE 0 0 0 logs c3t5d0 ONLINE 0 0 0

errors: No known data errors

100% になれば修復完了

Page 45: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応zpool ( rpool )の修復を行います

# zpool replace -f rpool c3t0d0s0 # zpool status rpoolpool: rpool state: DEGRADEDstatus: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state.action: Wait for the resilver to complete. scan: resilver in progress since Fri Feb 24 23:51:16 2012 189M scanned out of 12.9G at 8.20M/s, 0h26m to go 188M resilvered, 1.43% doneconfig:

NAME STATE READ WRITE CKSUM rpool DEGRADED 0 0 0 mirror-0 DEGRADED 0 0 0 replacing-0 DEGRADED 0 0 0 c3t0d0s0/old FAULTED 4 63 0 too many errors c3t0d0s0 ONLINE 0 0 0 (resilvering) c3t1d0s0 ONLINE 0 0 0

errors: No known data errors

100% になれば修復完了

・mirror の場合 -f で強制的に実行しないと修復できない場合がある

Page 46: Osc2012 tokyo fall_home_san_nayamaguti

HDD故障時の対応

grub の修復を行います# installgrub /boot/grub/stage1 /boot/grub/stage2 /dev/rdsk/c3t0d 0s0Solaris fdisk partition is inactive.stage2 written to partition 0, 282 sectors starting at 50 (abs 64310)stage1 written to partition 0 sector 0 (abs 64260)

Page 47: Osc2012 tokyo fall_home_san_nayamaguti

まとめSolaris11 は商用OSですが、とりあえず使う分には

無料ですZFS を作ったのはS unだということを忘れないでね。。

根性無しの HDD を使ってても ZFS なら安心ですCOMSTERは安定してますよ~QLOGICの 4G はヤフオク相場もそこそこ安い

ですよ

意外と簡単で商用スペックのストレージが作れますので皆さん試してみてください

Page 48: Osc2012 tokyo fall_home_san_nayamaguti

うちの環境

マザー  ZOTAC H55ITX-A-E SATA が 6port INTEL NIC なのが good CPU INTEL corei3 540 安売りしてた メモリ 4G * 2 = 8G  本当はもっとほしいとこだが。。。これ以上のらん? HDD 海門 2T 5900RPM ST2000DL003 * 4 安いうちに買ったんだが。。 1 本壊れて追加で 1 本購入高かった

SSD INTEL SSD 311 20G SLC タイプ ZIL 用 容量少なくても SLC がいいはず

FC カード QLogic QLE2462 4G 2port 2port あるんで直結で 2台の ESXi から使えるよ

実はこれ MiniITX のマザーで作ってあります