ในแต่ละรุ่นของ ESXi ใหม่ VMware จะอัปเดตเวอร์ชันของเครื่องเสมือนและฮาร์ดแวร์เสมือน ใน VMware VM เวอร์ชันใหม่ ฟังก์ชันใหม่ปรากฏขึ้น เพิ่มอุปกรณ์เสมือนใหม่ เพิ่มขีดจำกัดทรัพยากร (สล็อต PCI, RAM, vCPU) ข้อบกพร่องได้รับการแก้ไข ฯลฯ ดังนั้นเมื่อย้ายไปยังเวอร์ชัน ESXi ที่ใหม่กว่า ขอแนะนำให้อัปเกรด เวอร์ชันฮาร์ดแวร์เสมือนบนเครื่องเสมือนทั้งหมด ควรใช้ VM เวอร์ชันเก่าเพื่อความเข้ากันได้เท่านั้น ในบทความนี้ เราจะมาดูวิธีอัปเกรดเวอร์ชันฮาร์ดแวร์เสมือนของ VM ที่ทำงานบนโฮสต์ VMWare ESXi
ความเข้ากันได้ของเวอร์ชันฮาร์ดแวร์ ESXi และ VM แสดงอยู่ในตารางด้านล่าง
เวอร์ชันไฮเปอร์ไวเซอร์ | เวอร์ชัน VM |
ESX/ESXi 4.X | 7 |
ESXi 5.0 | 8 |
ESXi 5.1 | 9 |
ESXi 5.5 | 10 |
ESXi 6.0 | 11 |
ESXi 6.5 | 13 |
ESXi 6.7 | 14 |
ESXi 6.7 U2 | 15 |
ESXi 7.0 (7.0.0) | 17 |
ESXi 7.0 U1 (7.0.1) | 18 |
ESXi 7.0 U2 (7.0.2) | 19 |
คุณสามารถตรวจสอบเวอร์ชันเครื่องเสมือนปัจจุบัน (ฮาร์ดแวร์เสมือน) ได้ใน สรุป แท็บของเครื่องเสมือนในความเข้ากันได้ ส่วน. ภาพหน้าจอด้านล่างแสดงว่า VM เวอร์ชัน 18 (ESXI 7.0 U1 and later
) ถูกนำมาใช้
VMware ไม่แนะนำให้อัปเดตเวอร์ชันฮาร์ดแวร์เสมือน เว้นแต่คุณต้องการคุณลักษณะใหม่ที่มีให้โดย hw ใหม่
คุณจะไม่สามารถเรียกใช้ VM บนโฮสต์ ESXi ที่ไม่รองรับฮาร์ดแวร์ VM เวอร์ชันใหม่ได้ เมื่อพยายามย้าย VM ดังกล่าวไปยังโฮสต์ที่มี ESXi เวอร์ชันเก่าโดยใช้ VMotion ข้อผิดพลาดจะปรากฏขึ้น:
The virtual machine version is not compatible with the version of the host munexi1.
ก่อนอัปเกรดเวอร์ชัน VM ขอแนะนำให้:
- สร้างสแนปชอต VM
- อัปเดตเครื่องมือ VMware หากคุณอัปเกรด VM Hardware ก่อนติดตั้งเวอร์ชัน VMware Tools ล่าสุด การตั้งค่าเครือข่ายสามารถรีเซ็ตได้ในเครื่องเสมือนสำหรับแขกของ Windows
ในการอัพเกรดเวอร์ชั่นฮาร์ดแวร์เสมือน ต้องหยุดเครื่องเสมือน หลังจากนั้นให้คลิกขวาที่ VM แล้วเลือก ความเข้ากันได้ -> อัปเกรดความเข้ากันได้ของ VM .
ยืนยันการอัปเดตฮาร์ดแวร์เสมือนและเลือกเวอร์ชันฮาร์ดแวร์ VM ในตัวอย่างนี้ ฉันได้เลือก ESXi 7.0 U1 ล่าสุดและใหม่กว่า ใช้ได้บนโฮสต์ของฉัน
คุณสามารถกำหนดเวลาการอัปเกรดอัตโนมัติของเวอร์ชันฮาร์ดแวร์เครื่องเสมือนในครั้งต่อไปที่ VM รีสตาร์ทอย่างสวยงาม
- เลือก ความเข้ากันได้ -> กำหนดเวลาอัปเกรดความเข้ากันได้ของ VM ในเมนูบริบท VM
- จาก เข้ากันได้กับ รายการแบบเลื่อนลง เลือกเวอร์ชันของเวอร์ชันฮาร์ดแวร์ VM ที่คุณต้องการอัปเกรดเป็น
- เปิดใช้งานตัวเลือก อัปเกรดหลังจากปิดระบบปฏิบัติการของแขกทั่วไปเท่านั้น;
- เวอร์ชันฮาร์ดแวร์เสมือนของเครื่องเสมือนจะได้รับการอัปเดตในครั้งถัดไปที่รีบูตเครื่องเสมือน
คุณยังสามารถอัปเดตเวอร์ชัน VM Hardware โดยใช้ PowerShell cmdlets จากโมดูล VMware PowerCLI เชื่อมต่อกับโฮสต์ vCenter หรือ ESXi:
Connect-VIServer esxi_hostname
ระบุเวอร์ชันฮาร์ดแวร์เสมือนของเครื่องเสมือนของคุณ:
Get-VM | select Name, hardwareversion, PowerState
ใน VMware ESXi เวอร์ชันใหม่กว่า HardwareVersion ต้องใช้แทน เวอร์ชันของ VM คุณลักษณะ. คำเตือนปรากฏขึ้นเมื่อใช้ชื่อแอตทริบิวต์แบบเก่า:
WARNING: The 'Version' property of VirtualMachine type is deprecated. Use the 'HardwareVersion' property instead.
หากต้องการอัปเดตเวอร์ชันฮาร์ดแวร์ VM โดยใช้ PoweShell ให้เรียกใช้คำสั่ง:
Set-VM -VM lon-fs03 -HardwareVersion vmx-19 -Confirm:$false
หากโฮสต์ ESXi ไม่รองรับเวอร์ชันฮาร์ดแวร์ VM ที่ระบุ ข้อผิดพลาดจะปรากฏขึ้น:
The operation for the entity mytestVM1 failed with the following message: The operation is not supported on the object.
คุณแสดงรายการ VM ที่ต้องการอัปเกรดได้โดยใช้ Out-GridView cmdlet:
Get-VM |Where-object {$_.powerstate -eq "poweredoff"} | Out-GridView -PassThru | Set-VM -HardwareVersion vmx-19 -Confirm:$false
คุณจะเห็นตารางกราฟิกที่คุณต้องเลือก VM ที่คุณต้องการอัปเกรด (ใช้ CTRL คีย์เพื่อเลือก VM หลายรายการ)
คุณสามารถกำหนดเวลาการอัพเกรดฮาร์ดแวร์อัตโนมัติบน VM ทั้งหมดบนโฮสต์ด้วยสคริปต์ PowerShell อย่างง่าย:
$AllVMs = Get-VM
Foreach ($VM in ($AllVMs)) {
$VMConfig = Get-View -VIObject $VM.Name
$vmConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec
$vmConfigSpec.ScheduledHardwareUpgradeInfo = New-Object -TypeName VMware.Vim.ScheduledHardwareUpgradeInfo
$vmConfigSpec.ScheduledHardwareUpgradeInfo.UpgradePolicy = “always”
$vmConfigSpec.ScheduledHardwareUpgradeInfo.VersionKey = “vmx-19”
$VMConfig.ReconfigVM($vmConfigSpec)
}
เครื่องเสมือนทั้งหมดจะได้รับการอัปเกรดเป็นเวอร์ชันฮาร์ดแวร์ VM ที่ระบุโดยอัตโนมัติในการรีบูตครั้งถัดไป
สำหรับการอัปเกรดฮาร์ดแวร์ VM และเครื่องมือ VM จากส่วนกลางในเครือข่ายองค์กร ควรใช้ vCenter Update Manager หรือ vSphere Lifecycle Manager (VLCM) ใน vSphere 7+หากคุณกำลังใช้เวอร์ชัน ESXi ฟรี (VMware vSphere Hypervisor) คุณจะไม่สามารถใช้เวอร์ชันฮาร์ดแวร์ VM ผ่าน PowerCLI ได้เนื่องจากข้อจำกัดของ API แต่คุณสามารถใช้ vim-cmd คำสั่งในเชลล์ ESXi:
รับรายการ VM บนเซิร์ฟเวอร์:
vim-cmd vmsvc/getallvms
ค้นหา VMID ของ VM ที่คุณต้องการอัพเกรดและระบุในคำสั่งต่อไปนี้:
vim-cmd vmsvc/upgrade vmid vmx-17
เริ่ม VM และตรวจสอบว่าอัปเกรดเป็น VM เวอร์ชัน 17 แล้ว
นอกจากนี้ยังมีอีกเวอร์ชันที่ไม่รองรับในการอัปเดตเวอร์ชันฮาร์ดแวร์ VM โดยการแก้ไขไฟล์การกำหนดค่า VM (VMX) โดยตรง
เชื่อมต่อกับโฮสต์ ESXi ผ่าน SSH และไปที่ไดเร็กทอรีด้วย VM:
cd /vmfs/volumes/datastore_name/test_vm
แก้ไขไฟล์ test_vm.vmx:
vi myvm.vmx
ค้นหาบรรทัดการกำหนดค่า:
virtualHW.version = "12"
และเปลี่ยนเป็น:
virtualHW.version = "17"
บันทึกและปิดไฟล์ VMX ( Esc
, :
, w
, q
)