本文记录了具体如何从VMware官方网站检查硬件(BIOS/RAID/NIC/HBA)等兼容性信息,提前确认VMware软硬件兼容性结果避免数据中心建设规划时候采坑回退。说一句不相关的想法,整个IT行业从VMware转投OpenStack的进程越来越快,而VMware面对的竞争者会越来越多,Nutanix/OpenStack/Docker等一波接着一波,VMware确实很成熟也很好用,但企业规模不断扩大之后也抵挡不住成本的压力和新技术的降维攻击。
VMware Compatibility Guide
2018年04月22日 - 初稿
阅读原文 - https://wsgzao.github.io/post/vmware-compatibility-guide/
VMware Compatibility Guide - https://www.vmware.com/resources/compatibility/
登录VMware Compatibility Guide网站,输入已知硬件关键字信息如DL980
https://www.vmware.com/resources/compatibility/search.php根据型号和CPU判断硬件所支持的版本,以下内容以HP DL980 Gen7为例
https://www.vmware.com/resources/compatibility/detail.php?deviceCategory=server&productid=19802&deviceCategory=server&details=1&keyword=dl980&page=1&display_interval=10&sortColumn=Partner&sortOrder=Asc根据查询结果我们可以得出这样的结论
HP DL980 Gen7支持的最高版本为ESXi 6.0 U3,BIOS版本要求为P66
根据第一步得到了ESXi的版本信息,需要了解VMware当前的生命周期技术支持政策
https://www.vmware.com/support/policies/lifecycle.html
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/support/product-lifecycle-matrix.pdf将ESXi 6.0 U3作为已知条件,增加你需要部署的组件进一步了解兼容性上的安装建议,比如下面是增加了VMware vCenter Server和VMware Horizon,由这个页面我们可以大致确认组件的安装版本对应关系
https://www.vmware.com/resources/compatibility/sim/interop_matrix.php
VMware ESXi 6.0 U3
VMware vCenter Server 6.5 U1e or 6.0 U3d
VMware Horizon 7.4.
BIOS/RAID/NIC/HBA等信息获取请往下看
Checking your firmware and BIOS levels to ensure compatibility with ESX/ESXi (1037257)
https://kb.vmware.com/kb/1037257Determining Network/Storage firmware and driver version in ESXi 4.x and later (1027206)
https://kb.vmware.com/kb/1027206Identifying the firmware of a Qlogic or Emulex FC HBA (1002413)
https://kb.vmware.com/kb/1002413开启ESXi Shell和SSH
图形化与命令行切换快捷键
# 切换至命令行 Alt + F1 # 切换至图形化 Alt + F2
# 查找BIOS微码和CPU型号 smbiosDump | more [root@DESK-VIEW1:~] smbiosDump | more Dumping live SMBIOS data! BIOS Info: #0 Size: 0x00018 Vendor: "HP" Version: "P66" Date: "07/29/2013" Start Address: 0xf0000 ROM Size: 8192 kB Features: 0x0703000000007dc9da80 PCI supported PnP supported BIOS flashable BIOS shadowing allowed ESCD supported CD boot supported Selectable boot supported EDD spec supported 360kB Floppy supported 1.2MB Floppy supported 720kB Floppy supported Print Screen supported 8042 Keyboard Services supported Serial Services supported Printer Services supported CGA/Mono Video supported ACPI supported USB Legacy supported BIOS Boot Spec supported F12 Network boot supported Enable targeted content distribution System Info: #256 Manufacturer: "HP" Product: "ProLiant DL980 G7" Serial: "SGH3301F85" UUID: 35384631303333484753413135344d41 Wake-up: 0x06 (Power Switch) Chassis Info: #768 Manufacturer: "Hewlett-Packard" Serial: "SGH3301F85" Type: 0x17 (Rack Mount Chassis) Bootup State: 0x03 (Safe) Power Supply State: 0x03 (Safe) Thermal State: 0x03 (Safe) Security Status: 0x02 (Unknown) Processor Info: #1024 Payload length: 0x2a Socket: "Proc 1 (Upper Tray, Processor 1)" Socket Type: 0x1e (Socket LGA1567) Socket Status: Populated Type: 0x03 (CPU) Family: 0xb3 (Xeon) Manufacturer: "Intel" Version: "Intel(R) Xeon(R) CPU E7- 2860 @ 2.27GHz" Processor ID: 0xbfebfbff000206f2 Status: 0x01 (Enabled) Voltage: 1.4 V External Clock: 133 MHz Max. Speed: 4800 MHz Current Speed: 2267 MHz L1 Cache: #1808 L2 Cache: #1824 L3 Cache: #1840 Core Count: #10 Core Enabled Count: #10 Thread Count: #20
# 查看RAID微码 cat /proc/driver/hpsa/hpsa0 [root@DESK-VIEW1:~] cat /proc/driver/hpsa/hpsa0 hpsa0: HP Smart Array P410i Controller Board ID: 0x3245103c Firmware Version: 6.40 Driver Version: HP HPSA Driver (v 6.0.0.44-4vmw) Driver Build: 01 IRQ: 45 Logical drives: 1 Current Q depth: 0 Current # commands on controller: 0 Max Q depth since init: 0 Max # commands on controller since init: 6 Max SG entries since init: 128 Max Commands supported: 1020 SCSI host number: 12 Offline volume monitoring: Not running hpsa0/C12:B0:T0:L1 Direct-Access LOGICAL VOLUME 6.40 RAID 1(1+0)
# 查看当前网卡列表 vmkchdev -l | grep vmnic # 查看某块网卡具体信息 ethtool -i vmnic0 [root@DESK-VIEW1:~] vmkchdev -l | grep vmnic 0000:04:00.0 4040:0100 103c:705a vmkernel vmnic0 0000:04:00.1 4040:0100 103c:705a vmkernel vmnic1 0000:04:00.2 4040:0100 103c:705a vmkernel vmnic2 0000:04:00.3 4040:0100 103c:705a vmkernel vmnic3 0000:54:00.0 14e4:1639 103c:7059 vmkernel vmnic4 0000:54:00.1 14e4:1639 103c:7059 vmkernel vmnic5 0000:57:00.0 14e4:1639 103c:7059 vmkernel vmnic6 0000:57:00.1 14e4:1639 103c:7059 vmkernel vmnic7 0000:5d:00.0 14e4:1639 103c:7059 vmkernel vmnic8 0000:5d:00.1 14e4:1639 103c:7059 vmkernel vmnic9 0000:60:00.0 14e4:1639 103c:7059 vmkernel vmnic10 0000:60:00.1 14e4:1639 103c:7059 vmkernel vmnic11 [root@DESK-VIEW1:~] ethtool -i vmnic0 driver: nx_nic version: 5.0.621 firmware-version: 4.0.593 bus-info: 0000:04:00.0 [root@DESK-VIEW1:~] ethtool -i vmnic11 driver: bnx2 version: 2.2.4f.v60.10 firmware-version: bc 5.2.3 bus-info: 0000:60:00.1 # 使用esxcli command可以查看更多设备描述信息 esxcli network nic list # 使用esxcli 查看更加详细的网卡信息 esxcli network nic get -n vmnic0 [root@DESK-VIEW1:~] esxcli network nic list Name PCI Device Driver Admin Status Link Status Speed Duplex MAC Address MTU Description ------- ------------ ------ ------------ ----------- ----- ------ ----------------- ---- ------------------------------------------------------------------------------------ vmnic0 0000:04:00.0 nx_nic Up Down 0 Full d8:9d:67:77:99:38 1500 NetXen HP NC375i Integrated Quad Port Multifunction Gigabit Server Adapter vmnic1 0000:04:00.1 nx_nic Up Down 0 Full d8:9d:67:77:99:39 1500 NetXen HP NC375i Integrated Quad Port Multifunction Gigabit Server Adapter vmnic10 0000:60:00.0 bnx2 Up Up 1000 Full 10:60:4b:a2:4a:90 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic11 0000:60:00.1 bnx2 Up Up 1000 Full 10:60:4b:a2:4a:92 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic2 0000:04:00.2 nx_nic Up Down 0 Full d8:9d:67:77:99:3a 1500 NetXen HP NC375i Integrated Quad Port Multifunction Gigabit Server Adapter vmnic3 0000:04:00.3 nx_nic Up Down 0 Full d8:9d:67:77:99:3b 1500 NetXen HP NC375i Integrated Quad Port Multifunction Gigabit Server Adapter vmnic4 0000:54:00.0 bnx2 Up Up 1000 Full 10:60:4b:a2:03:70 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic5 0000:54:00.1 bnx2 Up Up 1000 Full 10:60:4b:a2:03:72 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic6 0000:57:00.0 bnx2 Up Up 1000 Full 10:60:4b:a2:ca:08 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic7 0000:57:00.1 bnx2 Up Up 1000 Full 10:60:4b:a2:ca:0a 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic8 0000:5d:00.0 bnx2 Up Up 1000 Full 10:60:4b:a2:d9:bc 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter vmnic9 0000:5d:00.1 bnx2 Up Up 1000 Full 10:60:4b:a2:d9:be 1500 QLogic Corporation NC382T PCI Express Dual Port Multifunction Gigabit Server Adapter [root@DESK-VIEW1:~] esxcli network nic get -n vmnic11 Advertised Auto Negotiation: true Advertised Link Modes: 10baseT/Half, 10baseT/Full, 100baseT/Half, 100baseT/Full, 1000baseT/Full Auto Negotiation: true Cable Type: Twisted Pair Current Message Level: 0 Driver Info: Bus Info: 0000:60:00.1 Driver: bnx2 Firmware Version: bc 5.2.3 Version: 2.2.4f.v60.10 Link Detected: true Link Status: Up Name: vmnic11 PHYAddress: 1 Pause Autonegotiate: true Pause RX: true Pause TX: true Supported Ports: TP Supports Auto Negotiation: true Supports Pause: true Supports Wakeon: true Transceiver: internal Virtual Address: 00:50:56:54:71:e6 Wakeon: MagicPacket(tm)
# 查看HBA卡驱动类型 esxcfg-scsidevs -a # 查找HBA卡具体驱动程序 vmkload_mod -s <HBADriver> | grep Version vmkload_mod -s qlnativefc | grep Version # 查看HBA卡供应商信息,便于之后确认VMware推荐HBA驱动 vmkchdev -l | grep vmhba2 000:0b:00.0 1077:2532 103c:3263 vmkernel vmhba2 Vendor ID(VID): 1077 Device ID(DID): 2532 Sub-Vendor ID(SVID): 103c Sub-Device ID(SDID): 3263 [root@DESK-VIEW1:~] esxcfg-scsidevs -a vmhba38 bnx2i unbound iscsi.vmhba38 QLogic NetXtreme II iSCSI Adapter vmhba39 bnx2i unbound iscsi.vmhba39 QLogic NetXtreme II iSCSI Adapter vmhba0 ata_piix link-n/a sata.vmhba0 (0000:00:1f.2) Intel Corporation ICH10 4 port SATA IDE Controller vmhba1 hpsa link-n/a sas.500143802597a240 (0000:03:00.0) Hewlett-Packard Company Smart Array P410i vmhba2 qlnativefc link-up fc.5001438024275201:5001438024275200 (0000:0b:00.0) QLogic Corp ISP2532-based 8Gb Fibre Channel to PCI Express HBA vmhba3 qlnativefc link-n/a fc.5001438024275203:5001438024275202 (0000:0b:00.1) QLogic Corp ISP2532-based 8Gb Fibre Channel to PCI Express HBA vmhba4 qlnativefc link-up fc.5001438024274bc1:5001438024274bc0 (0000:11:00.0) QLogic Corp ISP2532-based 8Gb Fibre Channel to PCI Express HBA vmhba40 ata_piix link-n/a sata.vmhba40 (0000:00:1f.2) Intel Corporation ICH10 4 port SATA IDE Controller vmhba5 qlnativefc link-n/a fc.5001438024274bc3:5001438024274bc2 (0000:11:00.1) QLogic Corp ISP2532-based 8Gb Fibre Channel to PCI Express HBA vmhba32 bnx2i unbound iscsi.vmhba32 QLogic NetXtreme II iSCSI Adapter vmhba33 bnx2i unbound iscsi.vmhba33 QLogic NetXtreme II iSCSI Adapter vmhba34 bnx2i unbound iscsi.vmhba34 QLogic NetXtreme II iSCSI Adapter vmhba35 bnx2i unbound iscsi.vmhba35 QLogic NetXtreme II iSCSI Adapter vmhba36 bnx2i unbound iscsi.vmhba36 QLogic NetXtreme II iSCSI Adapter vmhba37 bnx2i unbound iscsi.vmhba37 QLogic NetXtreme II iSCSI Adapter [root@DESK-VIEW1:~] vmkload_mod -s qlnativefc | grep Version Version: 2.1.50.0-1vmw.600.3.57.5050593 [root@DESK-VIEW1:~] vmkchdev -l | grep vmhba2 0000:0b:00.0 1077:2532 103c:3263 vmkernel vmhba2 # In ESXi 5.5 and later, you do not see native drivers in the /proc nodes. To view native driver information, run the command: /usr/lib/vmware/vmkmgmt_keyval/vmkmgmt_keyval -a [root@DESK-VIEW1:~] /usr/lib/vmware/vmkmgmt_keyval/vmkmgmt_keyval -a | more Listing all system keys: Key Value Instance: vmhba3/qlogic Listing keys: Name: ADAPTER Type: string value: QLogic PCI to Fibre Channel Host Adapter for HPAJ764A: FC Firmware version 8.02.00 (90d5), Driver version 2.1.50.0 Host Device Name vmhba3 BIOS version 3.13 FCODE version N/A EFI version 6.15 Flash FW version 5.09.00 ISP: ISP2532, Serial# MY532922UB MSI-X enabled Request Queue = 0x430c04a9e000, Response Queue = 0x430c04abf000 Request Queue count = 2048, Response Queue count = 512 Number of response queues for CPU affinity operation: 8 CPU Affinity mode enabled
登录VMware Compatibility Guide选择查找内容中的IO Devices
https://www.vmware.com/resources/compatibility/search.php在右侧可以选择匹配VID/DID/SVID/Max SSID信息,输入上述案例中的DL980的HBA卡信息则可以得到更加精确的结果,1077:2532 103c:3263
# 查看ESXi版本 [root@DESK-VIEW1:~] vmware -v VMware ESXi 6.0.0 build-5572656
如果需要做应急处置,直接使用vm-support命令收集打包交付给VMware工程师分析也会包含上述硬件微码信息
“vm-support” command in ESX/ESXi to collect diagnostic information (1010705)
https://kb.vmware.com/kb/1010705