SanDisk Ultra Flair 256GBを調達
USBフラッシュメモリはいつもの淘寶よりも、近所のショップで買うのがリーズナブル。いくつかショップを回ってこちらのSanDisk Ultra Flair 256GBを購入。挿しっ放しにするつもりなので、放熱性を鑑みて金属筐体のUSBメモリを選びました。

図07.SanDisk Ultra Flair 256GB
どのプラットフォームでも購入後すぐ使えるよう、商品は既にFAT32でパーティションが構成されています。
ESXiホストでvmfs作成
既に検証した通り、USBフラッシュメモリをESXiホストのUSBポートへ挿すだけで、ストレージデバイスの一覧に現れます。
詳細画面のアクションから、パーティションテーブルをクリアで既存のパーティションを削除します。
パーティションのフォーマット項に mbr と残っているので、パーティションテーブルはまだ残っていると判断。
VMFS6を作るにはGPTパーティションにしなければならないのですが、ESXi Host Client上ではそれ以上の操作項目は見当たらないので、再びSSHで入ってCLIベースの操作に戻ります。
まず、挿したUSBメモリのデバイスネーム mpx.vmhba34:C0:T0:L0 を確認。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
[root@localhost:~] ls /dev/disks/ mpx.vmhba34:C0:T0:L0 mpx.vmhba34:C0:T0:L0:1 t10.ATA_____SK_256GB________________________________2022070500499_______ t10.ATA_____SK_256GB________________________________2022070500499_______:1 t10.ATA_____SK_256GB________________________________2022070500499_______:5 t10.ATA_____SK_256GB________________________________2022070500499_______:6 t10.ATA_____SK_256GB________________________________2022070500499_______:7 t10.ATA_____SK_256GB________________________________2022070500499_______:8 vml.0100000000303130316435323463653261333863393763336632303533326331663535616261316333306453616e446973 vml.0100000000303130316435323463653261333863393763336632303533326331663535616261316333306453616e446973:1 vml.01000000003230323230373035303034393920202020202020534b20323536 vml.01000000003230323230373035303034393920202020202020534b20323536:1 vml.01000000003230323230373035303034393920202020202020534b20323536:5 vml.01000000003230323230373035303034393920202020202020534b20323536:6 vml.01000000003230323230373035303034393920202020202020534b20323536:7 vml.01000000003230323230373035303034393920202020202020534b20323536:8 |
次に partedUtil mklabel コマンドで、GPTパーティションテーブルを新規作成し、 partedUtil getptbl でその情報を取得します。
|
1 2 3 4 5 |
[root@localhost:~] partedUtil mklabel /dev/disks/mpx.vmhba34:C0:T0:L0 gpt [root@localhost:~] partedUtil getptbl /dev/disks/mpx.vmhba34:C0:T0:L0 gpt 30412 255 63 488570880 (Cylinders, Heads, Sectors/Track, SectorsTotal) |
そして、こちらのKBを参考に少し面倒なパーティションニングを進めます。
パーティションの作成に必要な終端セクター番号を、次の要領で求めます。
|
1 2 |
Cylinders x Hdeads x Sectors/Track - 1 = Partition End 30412 * 255 * 63 - 1 = 488568779 |
この数値を使い、 partedUtil setptbl コマンドでパーティションを作成します(算出した数値以外の引数は決め打ち。詳細は前述のKBを参照のこと)。
|
1 2 3 4 |
[root@localhost:~] partedUtil setptbl /dev/disks/mpx.vmhba34:C0:T0:L0 gpt "1 2048 488568779 AA31E02A400F11DB9590000C2911D1B8 0" gpt 0 0 0 0 1 2048 488568779 AA31E02A400F11DB9590000C2911D1B8 0 |
ESXi Host Client上でも、パーティションフォーマット項が gpt に変わっていました。
この状態でもESXi Host Clientでデータストアの追加にこのデバイスを選べないので、引き続きCLIベースでVMFSファイルシステムを作り、 datastore2 と言う名のデータストアを作成します。
|
1 2 3 4 5 6 7 8 |
[root@localhost:~] vmkfstools -C vmfs6 -S datastore2 /dev/disks/mpx.vmhba34:C0:T0:L0:1 create fs deviceName:'/dev/disks/mpx.vmhba34:C0:T0:L0:1', fsShortName:'vmfs6', fsName:'datastore2' deviceFullPath:/dev/disks/mpx.vmhba34:C0:T0:L0:1 deviceFile:mpx.vmhba34:C0:T0:L0:1 ATS on device /dev/disks/mpx.vmhba34:C0:T0:L0:1: not supported . Checking if remote hosts are using this device as a valid file system. This may take a few seconds... Creating vmfs6 file system on "mpx.vmhba34:C0:T0:L0:1" with blockSize 1048576, unmapGranularity 1048576, unmapPriority default and volume label "datastore2". Successfully created new volume: 63f62852-651434b8-b4af-60beb403fe4f |
ESXi Host Clientでデバイスを確認すると、VMFSが表示されました。
データストア一覧には、既に作成した datastore2 が追加されていました。
USBメモリをSSD扱いにする
先ほどの図14で新しく作成したデータストアの種類が非SSD(HDDと同等)となっていました。 esxcli でデバイスパラメータを確認してみても、 Is SSD: false となっているのが分かります。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
[root@localhost:~] esxcli storage core device list -d=mpx.vmhba34:C0:T0:L0 mpx.vmhba34:C0:T0:L0 Display Name: Local USB Direct-Access (mpx.vmhba34:C0:T0:L0) Has Settable Display Name: false Size: 238560 Device Type: Direct-Access Multipath Plugin: NMP Devfs Path: /vmfs/devices/disks/mpx.vmhba34:C0:T0:L0 Vendor: USB Model: SanDisk 3.2Gen1 Revision: 0100 SCSI Level: 2 Is Pseudo: false Status: on Is RDM Capable: false Is Local: true Is Removable: true Is SSD: false Is VVOL PE: 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: unsupported Other UIDs: vml.0100000000303130316435323463653261333863393763336632303533326331663535616261316333306453616e446973 Is Shared Clusterwide: false Is SAS: false Is USB: true Is Boot Device: false Device Max Queue Depth: 1 No of outstanding IOs with competing worlds: 1 Drive Type: unknown RAID Level: unknown Number of Physical Drives: unknown Protection Enabled: false PI Activated: false PI Type: 0 PI Protection Mask: NO PROTECTION Supported Guard Types: NO GUARD SUPPORT DIX Enabled: false DIX Guard Type: NO GUARD SUPPORT Emulated DIX/DIF Enabled: false |
SSDなどのフラッシュデバイスとして認識してもらうには、 esxcli で以下のパラメータを変更します。
|
1 |
[root@localhost:~] esxcli system settings advanced set -o /Disk/AllowUsbClaimedAsSSD -i 1 |
これは、ESXi Host Clientでも設定可能ですが、
USBメモリを挿し直しても変わることはなかったので、ESXiホスト再起動後有効なのかも知れません。
そこで調べてみると、 esxcli で直接デバイスを指定して設定することができるようなので、早速試してみました。
|
1 2 |
[root@localhost:~] esxcli storage nmp satp rule add -s VMW_SATP_LOCAL -d mpx.vmhba34:C0:T0:L0 -o enable_ssd [root@localhost:~] esxcli storage core claiming reclaim -d mpx.vmhba34:C0:T0:L0 |
デバイスは確かにSSDとして再取得されていました。
|
1 2 |
[root@localhost:~] esxcli storage core device list -d=mpx.vmhba34:C0:T0:L0 | grep Is\ SSD Is SSD: true |
以上で仮想マシンのバックアップに必要なデータストアを確保できました。次回は、有償のvCenter Serverには依らずにVMware ESXiホスト内で完結する、仮想マシンクローンバックアップシステムを構築したいと思います。











