仮想環境内で実行中のNexentastorのDisk交換(Raidを組んでいないESXIのDisk交換)

うちの仮想環境では、ESXIの仮想マシンとして、NexentastorというストレージOSを実行し、RAIDとNFS機能をESXiに提供しています。

で、いつの間にか1つのプールがデグレートしていたので、確認と対策です。

root@NS003:/volumes# zpool status | more
 pool: RAIDZ-SATA-1
 state: DEGRADED
status: 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 3.18G in 0h3m with 0 errors on Sun Apr 29 22:42:59 2018
config:

NAME STATE READ WRITE CKSUM
 RAIDZ-SATA-1 DEGRADED 0 0 0
 raidz1-0 DEGRADED 0 0 0
  c2t0d0 ONLINE 0 0 0
  c2t1d0 FAULTED 0 0 0 too many errors
  c2t2d0 ONLINE 0 0 0
 logs
  c2t6d0 ONLINE 0 0 0
 cache
  c2t5d0 ONLINE 0 0 0

errors: No known data errors

RAIDZ-SATA-1のc2t1d0の調子が悪いようです。
修復コマンド[zpool clear RAIDZ-SATA-1]も試してみましたが、少し経つとまたデグレートします。

c2t1d0は、ESXiが直接認識しているSATA HDD上のVMFS5上にあるVMDKが実態です。確認してみます。

#Nexentastor上の認識
c2t1d0 sd6 disk 2.00 TB RAIDZ-SATA-1 mpt VMware, Rev. 1.0

#nexentastor仮想マシン上の認識
ハードディスク 9 [VMSV03-SATA-5] NS003/NS003.vmdk 2TB (SCSI 1:1)

実際に調子悪いデータストアは、VMSV03-SATA-5のようです。
この情報は控えておきましょう。
特に、HDD番号、ファイルパス、容量、ディスクSCSI IDは控えておきましょう。

VMSV03-SATA-5を丸ごと交換しますので、このデータストアを使用している仮想マシン名と、割り当てしているVMDKを控えておきます。(今回は、Nexenta仮想マシンの1台のみ)
vCenterで管理している場合は、データストアで割り当てしている仮想マシンの一覧が確認できます。ただ、テンプレートなどは出てこないので、データストアブラウザでも必ず確認しておきましょう。

では、ESXiのデータストアで、VMSV03-SATA-5の情報を確認します。

VMSV03-SATA-5
標準
Local ATA Disk (naa.50014ee2ba5bb332):1
非 SSD
3.64 TB
1.01 TB
VMFS5
2018/04/30 9:02:04
有効
無効
不明

対象ディスクのIDは、naa.50014ee2ba5bb332のようです。
(esxcli storage vmfs extent listコマンドでも確認できます。)

ESXiのコンソールから、naa.50014ee2ba5bb332の詳細情報を確認します。

/etc/init.d # esxcli storage core device list -d naa.50014ee2ba5bb332
naa.50014ee2ba5bb332
 Display Name: Local ATA Disk (naa.50014ee2ba5bb332)
 Has Settable Display Name: true
 Size: 3815447
 Device Type: Direct-Access
 Multipath Plugin: NMP
 Devfs Path: /vmfs/devices/disks/naa.50014ee2ba5bb332
 Vendor: ATA
 Model: WDC WD40EFRX-68W
 Revision: 0A82
 SCSI Level: 5
 Is Pseudo: false
 Status: on
 Is RDM Capable: false
 Is Local: true
 Is Removable: false
 Is SSD: false
 Is Offline: false
 Is Perennially Reserved: false
 Queue Full Sample Size: 0
 Queue Full Threshold: 0
 Thin Provisioning Status: unknown
 Attached Filters:
 VAAI Status: unknown
 Other UIDs: vml.020000000050014ee2ba5bb332574443205744
 Is Local SAS Device: false
 Is USB: false
 Is Boot USB Device: false
 No of outstanding IOs with competing worlds: 32
/etc/init.d #

VMSV03-SATA-5のDisk(naa.50014ee2ba5bb332)の実態は、
“WDC WD40EFRX-68W”
とのことです。

ESXiのストレージアダプタのところで、naa.50014ee2ba5bb332を探すと、
ストレージアダプタが「Patsburg 4-Port SATA Storage Control」で
ランタイム名が「vmhba2:C2:T0:L0」となっています。

Z820でいうと、内蔵SATAポートのうち、3Gbps対応4ポートの3番目に接続されているHDDですね。

できれば交換用パーツも同型番がよいので、WDC WD40EFRXを用意します。
(Amazonの翌日配送すごく便利)

また、今回のように仮想マシン内でRAIDを組んでいるディスクであれば不要ですが、そうでない場合は、できるだけデータストア「VMSV03-SATA-5」上の仮想マシンデータ(vmxやvmdk)を別のデータストアに待避しておきましょう。
vCenterで管理している場合は、データストアで割り当てしている仮想マシンの一覧が確認できます。ただ、テンプレートなどは出てこないので、データストアブラウザでも必ず確認しておきましょう。
(今回はHDDの死に掛け状態でデータの待避する余裕がありましたが、完全にHDDを認識しなくなる場合もありますので、バックアップやRAID化による冗長化をお勧めします。)

交換用パーツが用意できたら、壊れたHDDを交換します。
HDDのホットプラグに対応していなければ、一度PCの電源断が必要です。

交換したら、ESXiのストレージで、対象のDiskがなくなっていることを確認します。もし、まだあるようであれば、違うDISKを交換したということです。
すぐに正しいDIskと交換しましょう。

では、交換したDiskをストレージの追加からESXiに認識させます。
ストレージから、ディスク/LUNとして追加させますが、ここで注意が1つ。
ESXiをvCenterで管理している場合、以前使用していた「VMSV03-SATA-5」というデータストア名は使用できません。(vCenterで以前のデータストア名に仮想マシンが紐付けされてしまっているため)
とりあえず、「VMSV03-SATA-5-2」と名前を変えて、追加します。

新しいディスクをデータストアとして登録できたら、以前のデータストア「VMSV03-SATA-5」に日も図いていた仮想マシンのVMDKを修正していきます。
vCenterで管理していれば、データストアの「VMSV03-SATA-5」に仮想マシンが登録されていますので、順次該当ディスクの割り当てを変更していきます。
該当ディスクかどうかは、仮想マシンの編集から、ハードディスクをクリックして、ディスクファイルが、「VMSV03-SATA-5」で始まっているものを確認します。状態が認識できていないので、サイズが0となっているのでこちらも確認して、削除しします。

そのまま、Diskを新しいデータストア「VMSV03-SATA-5-2」に割り当てします。控えておいた以下の情報を元に、Diskを以前と同様に追加していきます。
(容量、ディスクSCSI IDは必ず一致させましょう。)

#nexentastor仮想マシン上の認識(控えていた情報)
ハードディスク 9 [VMSV03-SATA-5] NS003/NS003.vmdk 2TB (SCSI 1:1)

 

すべての仮想マシンのディスク割り当てを同様に修正していきます。
データストアに紐ついた仮想マシンがなくなれば、vCenterから以前のデータストア「VMSV03-SATA-5」が削除されます。

以前のデータストア「VMSV03-SATA-5」が削除されたのを確認したら、今回追加した新しいデータストア「VMSV03-SATA-5-2」を「VMSV03-SATA-5」にリネームします。

これで、vSphereとしては、復旧完了です。

 

Nexentastorで実施しているRAID冗長化は、Nexentastorの仮想マシンを起動すれば、自動的に新しいDISKが挿入されたことを確認して、リビルドが開始されます。
(リビルドが実行されない場合は、NexentastorのWeb GUIからreplaceを実施)

root@NS003:/volumes# zpool status RAIDZ-SATA-1
 pool: RAIDZ-SATA-1
 state: DEGRADED
status: 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 Tue May 1 03:19:50 2018
 34.7G scanned out of 2.28T at 15.3M/s, 42h38m to go
 11.5G resilvered, 1.49% done
config:

NAME STATE READ WRITE CKSUM
 RAIDZ-SATA-1 DEGRADED 0 0 0
 raidz1-0 DEGRADED 0 0 0
 c2t0d0 ONLINE 0 0 0
 replacing-1 DEGRADED 0 0 0
 c2t1d0/old FAULTED 0 0 0 too many errors
 c2t1d0 ONLINE 0 0 0 (resilvering)
 c2t2d0 ONLINE 0 0 0
 logs
 c2t6d0 ONLINE 0 0 0
 cache
 c2t5d0 ONLINE 0 0 0

errors: No known data errors

約9時間後にリビルド完了

root@NS003:/usr/sbin# zpool status
 pool: RAIDZ-SATA-1
 state: ONLINE
 scan: resilvered 676G in 8h32m with 0 errors on Tue May 1 11:52:26 2018
config:

NAME STATE READ WRITE CKSUM
 RAIDZ-SATA-1 ONLINE 0 0 0
 raidz1-0 ONLINE 0 0 0
 c2t0d0 ONLINE 0 0 0
 c2t1d0 ONLINE 0 0 0
 c2t2d0 ONLINE 0 0 0
 logs
 c2t6d0 ONLINE 0 0 0
 cache
 c2t5d0 ONLINE 0 0 0

errors: No known data errors

 

 

(余談)
取り外しした調子の悪くなってしまったHDDですが、別のWindows PCにUSBで認識させて「Crystal Disk Info」で確認してみましたが、そんなにひどい状況ではありませんでした。
・代替処理済みのセクタ数         0
・代替処理保留中のセクタ数    3
・回復不可能セクタ数    3

正直、このHDDをVMFS領域として使用するのはためらわれますが、
NTFSで完全フォーマットすれば一時ファイル領域としてはまだつかえそうなので、NTFSでフォーマットしようとしますが、今の状態ですと領域開放でできません。

VMFS5でフォーマットされたディスクはWindowsからは認識できないのと、
「GPT保護パーティション」がかかっているため、ボリュームの削除ができません。

GPT保護パーティションを開場するためには、DiskPartでコマンドを実行する必要があります。

・Diskpartを起動
・list Disk  (対象ディスクを確認)

・select disk 3     (対象ディスクを選択)
・list partition (確認)
・clean       (保護パーティション属性のクリア)

http://www.atmarkit.co.jp/ait/articles/1106/10/news117.htmlWindowsでGPT保護パーティションを削除する

以上の作業で、VFS領域がクリアされます。
後は、完全フォーマットを実施してみて、smart値が正常に戻ればも儲けものです
(完全フォーマット開始から24時間ほどかかって現在61%完了。)
(この時点でsmart値がすべて正常に戻りました。)
(このHDDはまだがんばってもらえそうです。)

 

Views: 18

カテゴリー: 未分類 | コメントする

ESXiでsmart値の確認

ESXiでDiskのSmart値を確認するには、以下の方法があります。

方法1.esxcliコマンドを使用する方法

データストアのプロパティからも、該当デバイス名を確認します。

データストアの一覧の画面からデータストアを選択して、右クリック->「クリップボードにコピー」からも確認できます。

VMSV03-SSD960-1
標準
Local ATA Disk (t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482________):4
SSD
799.75 GB
346.49 GB
VMFS5
2018/04/30 9:32:05
有効
無効
不明

 

また、esxcli storage core device listからも、ストレージのDevice名を確認できます。

# esxcli storage core device list

t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482________
 Display Name: Local ATA Disk (t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482________)
 Has Settable Display Name: true
 Size: 915715
 Device Type: Direct-Access
 Multipath Plugin: NMP
 Devfs Path: /vmfs/devices/disks/t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482________
 Vendor: ATA
 Model: SanDisk Ultra II
 Revision: X412
 SCSI Level: 5
 Is Pseudo: false
 Status: on
 Is RDM Capable: false
 Is Local: true
 Is Removable: false
 Is SSD: true
 Is Offline: false
 Is Perennially Reserved: false
 Queue Full Sample Size: 0
 Queue Full Threshold: 0
 Thin Provisioning Status: yes
 Attached Filters:
 VAAI Status: unknown
 Other UIDs: vml.0100000000313731383136343233343832202020202020202053616e446973
 Is Local SAS Device: false
 Is USB: false
 Is Boot USB Device: false
 No of outstanding IOs with competing worlds: 32

Device名を確認したら、esxcli storage core device smart get -d <デバイス名>でSmart値を確認します。

# esxcli storage core device smart get -d t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482____
____
Parameter Value Threshold Worst
---------------------------- ----- --------- -----
Health Status OK N/A N/A
Media Wearout Indicator 100 0 100
Write Error Count N/A N/A N/A
Read Error Count N/A N/A N/A
Power-on Hours 100 0 100
Power Cycle Count 100 0 100
Reallocated Sector Count 100 0 100
Raw Read Error Rate N/A N/A N/A
Drive Temperature 68 0 63
Driver Rated Max Temperature N/A N/A N/A
Write Sectors TOT Count 100 0 100
Read Sectors TOT Count N/A N/A N/A
Initial Bad Block Count 100 0 100

なお、ストレージやインターフェイスがSmart取得をサポートしていない場合は、以下のように表示されるようです。

Device: naa.50014ee261268576
Errors:
Error getting Smart Parameters: GET param bundle error

 

 

方法2.VMware support取得ツールの一部である Smartinfo.sh を利用する方法

こちらは、ストレージ上のデバイス全部のSmart値を一括表示できます。

~ # cd /usr/lib/vmware/vm-support/bin
/usr/lib/vmware/vm-support/bin # ./smartinfo.sh
SMART Information for disks.

Device: t10.ATA_____SanDisk_Ultra_II_960GB__________________171816423482________
Parameter Value Threshold Worst
-----------------------------------------------------
Health Status OK N/A N/A
Media Wearout Indicator 100 0 100
Write Error Count N/A N/A N/A
Read Error Count N/A N/A N/A
Power-on Hours 100 0 100
Power Cycle Count 100 0 100
Reallocated Sector Count 100 0 100
Raw Read Error Rate N/A N/A N/A
Drive Temperature 68 0 63
Driver Rated Max Temperature N/A N/A N/A
Write Sectors TOT Count 100 0 100
Read Sectors TOT Count N/A N/A N/A
Initial Bad Block Count 100 0 100


Device: naa.50014ee261268576
Errors:
Error getting Smart Parameters: GET param bundle error

 

 

Views: 22

カテゴリー: 未分類 | コメントする

Z820にESXi 5.5用e1001eドライバ (Intel 82579LMドライバ) を組み込む

Z820は、マザーに2つのNICが実装されています。
・82574L Gigabit Ethernet Controller (通称 intel E1000e)
・82579LM Gigabit Ethernet Controller (通称 intel E1001e)

このうち、82579LMは、ESX5.5U3からは標準で認識しますが、
それ以前ですと認識しません。この場合は、個別でvibをインストールしないといけません。

ドライバの入手先は、以下のサイトで可能です。

https://vibsdepot.v-front.de/wiki/index.php/Net-e1000e

実際のインストールは以下の手順になります。

login as: root
Using keyboard-interactive authentication.
Password:
The time and date of this login have been sent to the system logs.

VMware offers supported, powerful system administration tools. Please
see www.vmware.com/go/sysadmintools for details.

The ESXi Shell can be disabled by an administrative user. See the
vSphere Security documentation for more information.
~ #
~ # esxcli software acceptance set --level=CommunitySupported
Host acceptance level changed to 'CommunitySupported'.
~ # esxcli software vib install -v /vmfs/volumes/VMSV03-SSD960-3/VIB/intel82579L
M/net-e1000e-3.1.0.2-glr2.x86_64.vib
Installation Result
 Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective.
 Reboot Required: true
 VIBs Installed: GLRoman_bootbank_net-e1000e_3.1.0.2-glr2
 VIBs Removed: VMware_bootbank_net-e1000e_1.1.2-4vmw.550.1.15.1623387
 VIBs Skipped:
~ #

他にもいくつかのドライバーやツールなどがこのサイトにはありますね。
https://vibsdepot.v-front.de/wiki/index.php/Welcome

Views: 9

カテゴリー: 未分類 | コメントする