ESXi 5.x ストレージ追加時のエラー対処 のバックアップ(No.3)
- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- ESXi 5.x ストレージ追加時のエラー対処 へ行く。
- 1 (2013-06-02 (日) 22:26:11)
- 2 (2013-06-02 (日) 22:51:49)
- 3 (2014-03-16 (日) 17:30:06)
- 4 (2015-05-05 (火) 12:56:13)
- 5 (2015-05-06 (水) 13:39:24)
目次
概要 †
ESXi5.xにおけるストレージ関連のトラブル対処
vSphere Clientで内部エラーが発生しました。詳細:入力文字列の形式が正しくありません。 †
- 原因
vSphere Client 日本語版のバグ。
- 対処方法
vSphere Client 英語版、もしくはWeb版を使用する。
- 対処手順
vSphere Clientは起動時に引数を与えることで英語版として起動することが可能。
以下のようなバッチファイルを作成し、英語版で使用したい時はバッチから起動すると便利。
@echo off cd /d "C:\Program Files\VMware\Infrastructure\Virtual Infrastructure Client\Launcher\" VpxClient.exe -locale en_US
Call "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions" for object "datastorename" on vCenter Server "servername" failed. †
- 原因
ストレージ上にパーティションが作成されている場合に発生するエラー。(たの理由ででも出るかも)
- 対処方法
ESXiに付属するfdiskまたはpartedUtilコマンドにてパーティションを削除する。
- 対処手順(fdisk)
ESXiのfdiskにてパーティションを削除するには、ESXi上でのディスクの固有IDを把握する必要がある。
[構成]→[ストレージアダプタ]を開き、ディスクが接続されているストレージアダプタを選択し、詳細の[名前]欄に表示される内容が固有IDとなる。
固有IDを把握できたら、以下のコマンドを実行する。
# fdisk -u /vmfs/devices/disks/[固有ID]
パーティションテーブルを確認し、削除する。
fdiskの操作はLinuxと同じであるため割愛。
- 例
# fdisk -u /vmfs/devices/disks/t10.AMCC____A13L2C3C9DFD9F00D6E2 The number of cylinders for this disk is set to 3889. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help): p Disk t10.AMCC____A13L2C3C9DFD9F00D6E2: 31.9 GB, 31988908032 bytes 255 heads, 63 sectors/track, 3889 cylinders, total 62478336 sectors Units = sectors of 1 * 512 = 512 bytes Device Boot Start End Blocks Id System t10.AMCC____A13L2C3C9DFD9F00D6E2p1 * 63 1028159 514048+ 83 Linux t10.AMCC____A13L2C3C9DFD9F00D6E2p2 1028160 17816084 8393962+ 82 Linux swap t10.AMCC____A13L2C3C9DFD9F00D6E2p3 17816085 62524979 22354447+ 83 Linux Command (m for help): d Partition number (1-4): 1 【以下、繰り返し削除】 Command (m for help): p Disk t10.AMCC____A13L2C3C9DFD9F00D6E2: 31.9 GB, 31988908032 bytes 255 heads, 63 sectors/track, 3889 cylinders, total 62478336 sectors Units = sectors of 1 * 512 = 512 bytes Device Boot Start End Blocks Id System Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table
以上の処理の上、改めてvCenterよりストレージの追加を試みる。
- 対処手順(partedUtil)
fdiskではパーティションを破棄できない場合があり、このような時は partedUtilコマンドを使用する。
fdiskと同様にディスク固有のIDを指定して処理内容を引数で渡す操作となる。
引数なしで実行すると、以下の様なヘルプが表示される。
Usage: Get Partitions : get <diskName> Set Partitions : set <diskName> ["partNum startSector endSector type attr"]* Delete Partition : delete <diskName> <partNum> Resize Partition : resize <diskName> <partNum> <start> <end> Get Partitions : getptbl <diskName> Set Partitions : setptbl <diskName> <label> ["partNum startSector endSector type/guid attr"]* Fix Partition Table : fix <diskName> Create New Label (all existing data will be lost): mklabel <diskName> <label> Show commonly used partition type guids : showGuids Get usable first and last sectors : getUsableSectors <diskName> Fix GPT Table interactively : fixGpt <diskName>
パーティションテーブルを表示する場合には以下の様なコマンドとなる。
# partedUtil get [ディスクID]
パーティションを削除する場合は以下となる。
# partedUtil delete [ディスクID] [パーティションID]
- 実行例
# partedUtil get vml.01000000003834484b4e334545323532463141303041343830393639305341 182361 255 63 2929643520 1 63 2929643519 131 0 # partedUtil delete vml.01000000003834484b4e334545323532463141303041343830393639305341 2 Unable to retrieve partition 2 from device vml.01000000003834484b4e334545323532463141303041343830393639305341
SSDが非SSDとして認識される場合の対処 †
SSDが非SSD(non-SSD)として認識される場合の対処。
- 手順
CLI上から以下の操作を行うことでSSDとして認識させることができる。
以下のコマンドで対象となるデバイスの固有IDを確認
#esxcli storage nmp device list
確認したデバイスの固有IDを元に以下のコマンドを実行する。
# esxcli storage nmp satp rule add -s 【Storage Array Type】 --device 【固有ID】 --option=enable_ssd # esxcli storage core claiming unclaim --type device --device 【固有ID】 # esxcli storage core claimrule load # esxcli storage core claimrule run
以上の処理の上、vSphere Clientよりデータストアとして登録する。