ラベル ESXi の投稿を表示しています。 すべての投稿を表示
ラベル ESXi の投稿を表示しています。 すべての投稿を表示

2024年8月4日日曜日

Lexar NM790 with ESXi 8

SSDが全体的に高止まりしてしまっていますが、比較的安価に入手できるLexar NM790がESXi 8で利用できました。
コントローラにMaxio MAP1602Aを利用しているものは、ESXiで認識しそうです。
検証用のデータストアを追加したかったのでコストを抑えられてよかった。
耐久性は暫くしないと分かりませんが…。

経験的にIntel/Solidigm製やPHISON製コンロトーラを使用しているNVMe SSDは、大体利用できるのですが比較的高価なものが多い。
コスパの良いものに使われていることが多いコントローラで利用できるものが分かってよかった。
一年位前、蝉族SSDと話題になっていたとか、当時気づかなかったのが残念。

2024年5月4日土曜日

ubuntu 22.04.4 with GPU passthrough on ESXi 8

画像生成AIで遊んでみたくなったので下記パーツでPC作成、ESXi 8を導入。
  • ASRock B550M Pro4
  • AMD Ryzen 7 5700X
  • Palit NED407S019K9-1043D (GeForce RTX 4070 SUPER Dual 12GB)
内蔵NICがRealtek RTL8111Hチップだったので、NICを増設してESXiセットアップは完了。
久々でvmklinux driverが利用できなくなったのを忘れてて時間を無駄にしました。
#vmware買収で無償版が無くなりホームラボ利用が衰退しそうで寂しい限りです。
#VMUG Advantageは大丈夫だろうか。

さて本題、ESXiでGPUパススルー設定後、ubuntu server 22.04.4 LTSのVM作成しましたが、NVIDIAのドライバインストールでハマりました。
結論、nvidia-driver-nnnでうまくいかない場合は、nvidia-driver-nnn-openを試してみよう。

環境
$ uname -r
5.15.0-105-generic
$ grep -i version /etc/os-release 
VERSION_ID="22.04"
VERSION="22.04.4 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
$
オープンソースドライバーNouveauの確認。
$ lsmod |grep nouveau
nouveau              2306048  0
mxm_wmi                16384  1 nouveau
i2c_algo_bit           16384  1 nouveau
drm_ttm_helper         16384  1 nouveau
ttm                    86016  3 vmwgfx,drm_ttm_helper,nouveau
drm_kms_helper        311296  2 vmwgfx,nouveau
video                  65536  1 nouveau
wmi                    32768  2 mxm_wmi,nouveau
drm                   622592  7 vmwgfx,drm_kms_helper,drm_ttm_helper,ttm,nouvea
$
Nouveau無効化設定とkernel initramfs再構築。
$ cat << EOF | sudo tee /etc/modprobe.d/blacklist-nouveau.conf
blacklist nouveau
options nouveau modeset=0
EOF
$
$ sudo update-initramfs -u
リブートしNouveauドライバーがロードされていないことを確認。
$ lsmod |grep nouveau
$
ドライバーの検索。
$ ubuntu-drivers devices
ERROR:root:aplay command not found
== /sys/devices/pci0000:02/0000:02:05.0 ==
modalias : pci:v000010DEd00002783sv00001569sd0000F302bc03sc00i00
vendor   : NVIDIA Corporation
driver   : nvidia-driver-550-open - distro non-free
driver   : nvidia-driver-550 - distro non-free recommended
driver   : nvidia-driver-550-server-open - distro non-free
driver   : nvidia-driver-550-server - distro non-free
driver   : xserver-xorg-video-nouveau - distro free builtin

== /sys/devices/pci0000:00/0000:00:0f.0 ==
modalias : pci:v000015ADd00000405sv000015ADsd00000405bc03sc00i00
vendor   : VMware
model    : SVGA II Adapter
manual_install: True
driver   : open-vm-tools-desktop - distro free

$ 
recommendedなパッケージをインストールする。
$ sudo apt install nvidia-driver-550
リブート後に確認。
$ lsmod |grep -i nvidia
nvidia_uvm           4648960  0
nvidia_drm             94208  0
nvidia_modeset       1343488  1 nvidia_drm
nvidia              54018048  2 nvidia_uvm,nvidia_modeset
drm_kms_helper        311296  2 vmwgfx,nvidia_drm
drm                   622592  7 vmwgfx,drm_kms_helper,nvidia,nvidia_drm,ttm
$
$ nvidia-smi
No devices were found
$
$ lspci |grep -i nvidia
02:05.0 VGA compatible controller: NVIDIA Corporation AD104 [GeForce RTX 4070 SUPER] (rev a1)
02:05.1 Audio device: NVIDIA Corporation Device 22bc (rev a1)
$
上手くいっていない。
dmesgを見ると下記のメッセージがあり、初期化に失敗しています。
[    3.337870] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  550.67  Tue Mar 12 23:29:25 UTC 2024
[    3.339965] [drm] [nvidia-drm] [GPU ID 0x00000205] Loading driver
[    3.346790] ACPI Warning: \_SB.PC08.S6F0._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20210730/nsarguments-61)
[    5.381856] NVRM: GPU 0000:02:05.0: RmInitAdapter failed! (0x26:0x56:1598)
[    5.382198] NVRM: GPU 0000:02:05.0: rm_init_adapter failed, device minor number 0
[    5.385633] [drm:nv_drm_load [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000205] Failed to allocate NvKmsKapiDevice
[    5.386063] [drm:nv_drm_register_drm_device [nvidia_drm]] *ERROR* [nvidia-drm] [GPU ID 0x00000205] Failed to register device
apt list |grep nvidia-driverで以前のバージョンを確認し、545,535を試してみたがどれも同じ結果となりました。
パッケージ削除は下記を実行すれば良い。
$ sudo apt-get --purge remove nvidia-*
$ sudo apt-get --purge remove libnvidia-*
調べてみると参考URL※1が、同じエラーのようでopen driverを利用すれば良いとのこと。
$ sudo apt install nvidia-driver-550-open
リブート後確認。
$ lsmod |grep -i nvi
nvidia_uvm           4657152  0
nvidia_drm             94208  0
nvidia_modeset       1495040  1 nvidia_drm
nvidia               8577024  2 nvidia_uvm,nvidia_modeset
drm_kms_helper        311296  2 vmwgfx,nvidia_drm
drm                   622592  7 vmwgfx,drm_kms_helper,nvidia,nvidia_drm,ttm
$ nvidia-smi
Fri May  3 21:39:07 2024
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 550.67                 Driver Version: 550.67         CUDA Version: 12.4     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA GeForce RTX 4070 ...    Off |   00000000:02:05.0 Off |                  N/A |
| 30%   41C    P8             15W /  220W |       2MiB /  12282MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+

+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI        PID   Type   Process name                              GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|  No running processes found                                                             |
+-----------------------------------------------------------------------------------------+
$
成功。
Ubuntu Server Docs ※2をみると、-server版の方が用途に合っていたかもしれません。

参考URL)

2020年12月31日木曜日

Supremicro X11SDV-4C-TP8F購入

X11SDV-4C-TP8Fを購入してしまいました。
今年は家にいる時間が長いからかPCパーツをたくさん買ってしまったなぁ。

TDP 60WのXeon D-2123IT搭載なので省電力を期待していたのですが、結果はいまいちでした。
M2 SSDを一枚、メモリ32GBx2搭載状態で電源OFF時で16W、電源ON後15分程度経過した状態56Wという感じです。
BMCで15Wも消費しています。ASRock Rack X470D4UではBMC消費電力が3.5W程度だったのでかなり大食いな印象です。

X470D4U, X570M Pro4と同様にESXi6.7をインストール後省電力設定、BIOSでも省電力設定を行い、PCIeボード2枚とHDDを8台追加した構成のアイドル状態で80W程度となりました。X470D4U, X570M Pro4では上記に10G NIC(PCIe)を追加した構成で60W程度まで設定できていたので20Wの差です。
BMCの消費電力差12.5Wを引くと7.5W、10Gポートが2つ、SATAポートが4つ増えているのでこんなものかなと言う気がしなくも無いですが…。 普段停止しておくにしても待機状態で16W消費とかもったいない感じがします。
BIOSでもう少し設定詰められると良いのですが。

2020年6月17日水曜日

ASRock Rack X470D4U購入

ESXiで利用しているPC(ASRock X570M Pro4)は、GPUパススルーのVMでwindows 10を使用してデスクトップPCのように使用しようと考えていたのですが、windowsの利用頻度に対して消費電力が高すぎることに気がつきました。 大体100W強なので省電力化したい。

BIOSやESXiの設定をいじってみたのですがイマイチ効果がでず、結局GPUを外すことにしました。 省電力GPUも検討しましたが、ASRock Rack X470D4Uを購入してしまいました。

マザーボードを入れ替えて大体70W程度、AMDのCPU特性なのか大して負荷をかけなくても消費電力が細かく変動するようです。 70Wから100W位を行き来して、大体70W中位という感じ、60W以下にしたかった。
あとは、VMがほぼアイドル状態でもデータストアには常に書き込みがあるようで、HDDがアイドルにならないことが消費電力に影響しているように思います。8台のHDDが常に書き込み状態となるので。
HDDはデータ置き場にして、データストアはSSDに置きたい気もしますが、安物のSSDだと耐久性が心配、エンタープライズ向けは高すぎて手が出ない。

ちなみに、X470D4Uは国内在庫がなく納期1.5ヶ月以上とのことだったので、amazon.comから買いました。 5日で届いたので国内通販とたいして変わりません。初期不良があると面倒ですが。

2020年6月12日金曜日

10Gbps Network

10GBASE-Tの2ポートスイッチGS110MX-100NASを使用していますが、10Gbps接続を増やしたくなり下記を購入しました。

ラトビアから
  • MikroTik CRS309-1G-8S+IN : Cloud Router Switch (SFP+ 8port)
  • MikroTik S+RJ10 : SFP+ RJ45 10Gbps Module
シンセンから
  • 10Gtek X520-10G-2S-X8 : SFP+ 2port, Intel X520-DA2 equivalent
  • 10Gtek XL710-10G-2S-X8 : SFP+ 2port, Intel X710-DA2 equivalent
  • 10Gtek ASF-10G-T : SFP+ RJ45 10Gbps Module
10GBASE-Tの多ポートスイッチはまだ高いので、今回はSFP+で揃えました。
MikroTikと10GtekのそれぞれからSFP+ DAC twinaxケーブルも買いましたが、どちらも問題なく利用できています。
また、10GtekのNICはどちらもESXi 6.7で問題なく認識したので、XL710-10G-2S-X8をESXiで、X520-10G-2S-X8はLinuxで利用予定です。

CRS309-1G-8S+INの電源ランプがすごく眩しいので、テープを貼って使用しています。
何でこんなに強烈な明るさにするのか不思議です。

2020年5月16日土曜日

Ascork X570M Pro4のオンボードUSBホストコントローラとUSBポート

ESXi 6.7でAsrock X570M Pro4のオンボードUSBホストコントローラをパススルー利用するため、USBホストコントローラとUSBポートの対応を調べました。

下記、lspciの実行結果。
[root@esxi:~] lspci |grep -i usb
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller

root@esxi:~] lspci |grep 0000:0[8d]
0000:08:00.0 Non-Essential Instrumentation: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.0 Non-Essential Instrumentation: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Reserved SPP
0000:0d:00.1 Encryption controller: Advanced Micro Devices, Inc. [AMD] Starship/Matisse Cryptographic Coprocessor PSPCPP
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller
0000:0d:00.4 Audio device: Advanced Micro Devices, Inc. [AMD] Starship/Matisse HD Audio Controller
PCIとUSBポートの対応は下記になります。
  • 0000:08:00.1 マザーボード上のUSB2ヘッダ
  • 0000:08:00.3 下図リアパネルの赤枠+マザーボード上のUSB3ヘッダ
  • 0000:0d:00.3 下図リアパネルの青枠

リアパネル (画像はAsrockのX570M Pro4の製品ページより)

2020年5月14日木曜日

ESXi 6.7でオンボードUSBホストコントローラのパススルー

Asrock X570M Pro4のオンボードUSBホストコントローラをESXi 6.7でPCIパススルーできました。

当初、PCIパススルー設定をして仮想マシンを起動すると、下記メッセージが表示されパワーオンに失敗していました。

モジュール「DevicePowerOn」のパワーオンに失敗しました。
ハードウェアまたはソフトウェアのサポートが使用できないため、デバイス pciPassthru0 の 13:0.3 への登録に失敗しました。
仮想マシンの起動に失敗しました。

この時に仮想マシンのログ(vmware.log)には、次の記録が残っていました。
vmx| I125: PCIPassthru: Failed to register device 0000:0d:00.3  error = 0xffffffff
vmx| I125: Msg_Post: Error
vmx| I125: [msg.pciPassthru.createAdapterFailedPlatformNotSupported] Failed to register the device pciPassthru0 for 013:00.3 due to unavailable hardware or software support.
vmx| I125: ----------------------------------------
vmx| I125: Module 'DevicePowerOn' power on failed.
vmkernel.logには、次の記録がありました。
cpu10:2100020)WARNING: PCI: 384: Dev @ 0000:0d:00.3 did not complete its pending transactions prior to being reset; will apply the reset anyway but this may cause PCI errors
cpu7:2100020)WARNING: PCI: 471: Dev 0000:0d:00.3 is unresponsive after reset
ふと、リセット設定をすれば上手くいくのでは?と思い試したところうまく行きました。

リセット設定は、ESXiの/etc/vmware/passthru.mapに記述するようです。
フォーマットの説明はファイルの初めの方に記載されていますが、vendor-id device-id resetMethod fptShareableの順で記述します。

vendor-idとdevice-idは、次のようにlspciで調べることができます。
[root@esxi:~] lspci |grep -i usb
0000:08:00.1 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller 
0000:08:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller 
0000:0d:00.3 USB controller: Advanced Micro Devices, Inc. [AMD] Matisse USB 3.0 Host Controller 

[root@esxi:~] lspci -n |grep -E '0000:0(8:00.[13]|d:00.3)'
0000:08:00.1 Class 0c03: 1022:149c 
0000:08:00.3 Class 0c03: 1022:149c 
0000:0d:00.3 Class 0c03: 1022:149c 
上記からvendor-idが1022、device-idが149cとなります。 ファイル内の他デバイスの記載を参考にresetMethodをd3d0、fptShareableはdefaultで指定しました。
[root@esxi:~] tail -2 /etc/vmware/passthru.map 
# AMD USB host controller
1022  149c  d3d0     default
この設定で0000:0d:00.3のコントローラはPCIパススルーで利用できるようになりました。
仮想マシンも問題なく起動します。

また、0000:08:00.1と0000:08:00.3は、PCIデバイスの設定でパススルーをアクティブにできなかったのですが、上記調査中にvmkernel.logに下記を見つけました。
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.1                        
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.1: PCIe v2 PCI Express Root Complex Port                 
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device                                            
0:00:00:04.808 cpu0:2097152)PCI: 488: 0000:00:08.2: PCIe v2 PCI Express Root Complex Port                 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0xb (Vendor Spec
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x19 (Secondary 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x25 (Data Link 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x26 (Physical L
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.2: Found support for extended capability 0x27 (Lane Margi
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.2                        
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.2: PCIe v2 PCI Express Root Complex Port                 
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device                                            
0:00:00:04.808 cpu0:2097152)PCI: 488: 0000:00:08.3: PCIe v2 PCI Express Root Complex Port                 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0xb (Vendor Spec
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x19 (Secondary 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x25 (Data Link 
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x26 (Physical L
0:00:00:04.808 cpu0:2097152)PCI: 248: 0000:00:08.3: Found support for extended capability 0x27 (Lane Margi
0:00:00:04.808 cpu0:2097152)PCI: 1305: Found a PCIe-to-PCIe bridge at 0000:00:08.3                        
0:00:00:04.808 cpu0:2097152)PCI: 423: 0000:00:08.3: PCIe v2 PCI Express Root Complex Port                 
0:00:00:04.808 cpu0:2097152)PCI: 427: Not a ACS capable device                                            
「Not a ACS capable device」とあるので、ACSを無効化すれば動作するようです。
試しに、ESXiのシステム>詳細設定でVMkernel.Boot.disableACSCheckをtrueに設定したところアクティブにでき、それぞれ仮想マシンからも利用できました。

参考URL
vSphere VMDirectPath I/O and Dynamic DirectPath I/O: Requirements for Platforms and Devices (2142307)

2020年5月6日水曜日

ESXi 6.7でPT3をPCIパススルー

ひとまず静音対策は置いておき、TV録画環境が移行できるか確認することにします。

Linux VM上でPT3を動作させるためESXiでPCIパススルー設定をしたのですが、リブート後も「有効/再起動が必要」と表示されたままアクティブになりません。
何か対処が必要なんだろうかと、VMKernel logを確認すると下記ワーニングが記録されていました。

cpu8:2097649)WARNING: PCIPassthru: PCIPassthruAllowed:175: Device passthru not possible on this system (no PCI ACS support)
cpu8:2097649)PCIPassthru: PCIPassthruAttachDev:217: Passthru not possible on device 0000:05:00.0

ログメッセージが若干異なりますが、VMware KBにある PCI Passthrough with PCIe devices behind a non-ACS switch in vSphere (1036811) が原因のようです。
PCIのAccess Control Services(ACS)を有効にする必要があるとのこと。

BIOSで設定すればいいだろうと確認したのですが、これがなかかな分かりにくい仕様でした。
デフォルト状態だとACS設定が非表示で、AER Capを有効にするとACS設定が出現するという分かり難さ。
ACS設定の説明欄には、AER Cap設定に依存する旨の記述がありましたが、そもそも表示されてなければ設定自体があるのかどうか分からないような...。
Advanced Error Reporting (AER) capabilityとACSの関係ってよく知られているものなのかな?

ASRock X570M Pro4では、下記BIOS設定でPT3をPCIパススルーで有効化できるようになります。もちろんIOMMUは有効にしておく必要があります。
  • Advanced > AMD CBS > NBIO Common Options > Enable AER Cap : Enabled
  • Advanced > AMD CBS > NBIO Common Options > ACS Enalbed: Auto (AER有効化後のデフォルトのまま)

安定性は追々確認するとして、取り敢えずVMでPT3を利用できることは確認できました。

ちなみにカードリーダーはUSBパススルーで利用しています。
オンボードのUSBホストコントローラをPCIパススルーしてVMでUSBキーボードを利用したかったのですが、動作させることが出来ませんでした。

2020年5月4日月曜日

FreeNAS on ESXi

FreeNASは、下記リソースのVMにインストールしました。
  • vCPU: 2
  • memory: 16GB
  • HDD: 32GB (ローカルデータストア)
  • HDD: RDM Disk x8
  • NIC: VMXNET3 x2
インストールは特に問題なく完了。
プールは、RDMしたHDD8台で作成し問題なく動作したのですが...。
煩い、シーク音がとても煩い。
FreeNAS単体で動作させた状態でも何か書き込みをしているらしく、数秒毎にシーク音がします。

SeagateのHDDは、ST3000MD002, ST3000MD007, ST4000DM004をそれなりの数を利用してきたのですが、シーク音が煩いと感じたことがありませんでした。

今回のPCは、 2年に組んだPCと同型のPCケースを使っているのでケースの静音性は同一で比較しやすく、並べて聴き比べるとST4000DM004が「ククククク」、ST6000DM003は「ピリピリピリパリパリ」という感じで高音で耳障りな音がし、音量も大きいように思います。
音を文字で表現するのは難しいのですが雰囲気は伝わりますかね?

BarraCuda 3.5 HDDの仕様書 にあるマニュアルを確認すると3TB,4TBモデルと6TBモデルでは、ディスク数が異なるようなのでこの影響だろうか?
いずれにしても、これでは現行PCのリプレースとして居室で24H稼動は厳しいかもしれない。
他HDDを試すとしたらコスト的にWesternDigitalのWD60EZAZ-RTあたりだけど、うーん。

FreeNASの定期的な書き込みについては、レポート情報の書き込みらしく、System > System DatasetのSystem Dataset Poolを変更すれば出力先を変更できるようです。
とりあえず、HDDのプールではなくfreenas-bootに変更したところ、FreeNAS単体動作時のHDDシーク音はしなくなりました。まあ、freenas-bootだとブートディスク(SSD)に書き込むことになるので、別な意味で心配な感じではあります。

RDM on ESXi 6.7

ESXi 6.7は、次の構成を考えています。
  • FreeNAS(VM)をESXiのローカルデータストアから起動する。
  • FreeNASは、iSCSIかNFSでHDD領域を公開する。
  • ESXiは、FreeNASの領域をデータストアとして利用する。
  • その他VMは、FreeNASのデータストアから起動する。

伝わるだろうか?簡単な図にするとこんな感じになります。
+ESXi 
|
+SSD==datastore(local)==+FreeNAS
|                       |
+HDD==(RDM)=============+datastore(iSCSI or NFS)+VM1
                                                +VM2
                                                +VM3
ESXiとFreeNASは、USBデバイスからの起動も可能でサイズも小さいため冗長化していないNVMe SSDから起動させても障害時の対応が容易だろうとの考えです。
設定情報を保存しておけば、再インストールが必要になっても大した手間をかけず復旧できるかなと考えています。

HDDはZFSで利用したい。FreeBSDやLinuxでZFSを利用してもいいのですが、せっかくVMにするのなら用途を絞って楽に管理したとの思いからFreeNASを利用することにしました。FreeNASは初めて使いますがFreeBSDベースなので問題ないかなと思っています。

で、特にハマることなく構築できました。
RDM(Raw Device Mapping)の設定についてメモしておきます。
RDMはVMware Host Clientだけでは設定できないようで、ESXiにsshログインしvmkfstoolsコマンド操作が必要でした。

まず、HDDのデバイス名を調べます。
$ ls /vmfs/devices/disks/*ATA* 
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTaaaaa
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTbbbbb
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTccccc
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTddddd
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTeeeee
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTfffff
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTggggg
/vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCThhhhh
$ 
名前が長いですね。ファイル名の末尾がシリアル番号のようです。

次に適当なディレクトリを作成し、vmkfstoolsでRDMを作成します。
RDMには仮想互換モードと物理互換モードがあるようですが、今回は物理互換モードで設定します。
仮想互換モードでは、スナップショットなども利用できるようです。
最後の引数のファイル名は何でもいいのですが、シリアル番号が分かるようにしておくとメンテナンスが楽になるかもしれません。

$ mkdir rdm
$ cd rdm
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTaaaaa ST6000DM0032D2CY186_WCTaaaaa.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTbbbbb ST6000DM0032D2CY186_WCTbbbbb.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTccccc ST6000DM0032D2CY186_WCTccccc.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTddddd ST6000DM0032D2CY186_WCTddddd.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTeeeee ST6000DM0032D2CY186_WCTeeeee.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTfffff ST6000DM0032D2CY186_WCTfffff.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCTggggg ST6000DM0032D2CY186_WCTggggg.vmdk
$ vmkfstools -z /vmfs/devices/disks/t10.ATA_____ST6000DM0032D2CY186__________________________________WCThhhhh ST6000DM0032D2CY186_WCThhhhh.vmdk
$

成功するとファイル名に「-rdmp」がついたファイルが増えていました。
$ ls -1
ST6000DM0032D2CY186_WCTaaaaa-rdmp.vmdk
ST6000DM0032D2CY186_WCTaaaaa.vmdk
ST6000DM0032D2CY186_WCTbbbbb-rdmp.vmdk
ST6000DM0032D2CY186_WCTbbbbb.vmdk
ST6000DM0032D2CY186_WCTccccc-rdmp.vmdk
ST6000DM0032D2CY186_WCTccccc.vmdk
ST6000DM0032D2CY186_WCTddddd-rdmp.vmdk
ST6000DM0032D2CY186_WCTddddd.vmdk
ST6000DM0032D2CY186_WCTeeeee-rdmp.vmdk
ST6000DM0032D2CY186_WCTeeeee.vmdk
ST6000DM0032D2CY186_WCTfffff-rdmp.vmdk
ST6000DM0032D2CY186_WCTfffff.vmdk
ST6000DM0032D2CY186_WCTggggg-rdmp.vmdk
ST6000DM0032D2CY186_WCTggggg.vmdk
ST6000DM0032D2CY186_WCThhhhh-rdmp.vmdk
ST6000DM0032D2CY186_WCThhhhh.vmdk
$
ここまでくればVMware Host Clientで仮想マシンの編集>ハードディスクの追加でvmdkファイルを選択できるようになります。

下記参照URL
vmkfstools コマンドのオプション
物理互換モードの Raw デバイス マッピングの作成
RDM の仮想および物理互換モード

2020年5月2日土曜日

Transcend PCIe SSD200SはESXi 6.7で認識されない

NVMe SSDにESXi 6.7をインストールしようとしたのですが、Transcend PCIe SSD200Sはディスクとして認識されませんでした。
コスパでパーツを選択したので、ESXiで利用できるかどうかは調査していませんでした…。

仕方がないのでUSBメモリにインストール後確認すると、PCIデバイスとしては認識されているようです。
NVMeドライバについて調べてみると、Crucial NVMe SSDがESXiのアップグレードで認識されなくなると情報があったので試してみるとディスクとして認識させることができました。

Quick Tip – Crucial NVMe SSD not recognized by ESXi 6.7

ESXi6.5 Update2のドライバを利用すれば良いようなので、ESXi650-201905001の1.2.1.34-1vmw.650.2.50.8294253を利用すると認識されるようになります。
パッチの内容を確認するとESXi650-201912002からドライバが変更になっているようでした。
  • ESXi650-201905001
  • vib20/nvme/VMW_bootbank_nvme_1.2.1.34-1vmw.650.2.50.8294253.vib

  • ESXi650-201912002
  • vib20/nvme/VMW_bootbank_nvme_1.2.2.28-1vmw.650.3.96.13932383.vib

しばらくUSBブートで利用していましたが、ブートデバイスをSSDにしたかったのでIntel SSD 760pを買い足してしまいました。
パッチ当てが面倒なので、SSD200SはRDMで利用することにします。

2020年4月30日木曜日

新PC

先日、検証用として使っていたHP ProLiant ML110 G7の電源が入らない状態になってしまいました。
最近も問題なくWindows Server評価版を試したりしていたので、電源かな?と思い電源を交換してみましたが治らず、 残念ながらハードウェアの知識がないためお手上げ。とうとう壊れたか。

検証環境がないと少し不便なので、下記構成でPCを作りました。
  • ASRock X570M Pro4
  • AMD Ryzen5 3600
  • DDR4-2666 32GB x2
  • Seagate ST6000DM003 x8
  • M2.SSD Transcend TS512GMTE220S x1
  • M2.SSD Intel SSD 760p SSDPEKKW256G8XT x1
  • MSI GeForce GTX1060 ARMOR 6G
GPUはそこらにあったものを流用。Intel SSD 760pは、ESXiのインストーラーがTranscendのSSDを認識しなかったので後から追加しています。

現在KVMで運用しているVMを巻き取り、検証環境を含めた仮想環境をESXiで作ろうと目論んでいるのですが...。