11

ESXi镜像自定义(集成网卡驱动)及硬盘分区

 2 years ago
source link: https://halfcoke.github.io/2021/ef096570/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client
ESXi镜像自定义(集成网卡驱动)及硬盘分区

ESXi镜像自定义(集成网卡驱动)及硬盘分区

ESXi镜像自定义(集成网卡驱动)及硬盘分区

安装ESXi至物理机时,需要提前查看硬件兼容列表,此次安装时发现ESXi原生没有RTL-r8168网卡驱动,需要将网卡驱动打包至ESXi镜像中。

目前(2021-11-20)尝试过后,ESXi7.0暂无法使用该网卡(r8168)

ESXi镜像自定义

ESXi镜像自定义有两种方式,一是使用Powershell脚本安装,另一种是自己使用命令打包镜像。

PowerCLI安装

当前版本VMware Power CLI安装较为容易,官网链接:https://developer.vmware.com/powercli

step1: 使用管理员身份打开powershell

step2:粘贴Install-Module -Name VMware.PowerCLI然后回车

ESXi官方镜像文件准备(脚本安装时可选)

自定义ESXi镜像时,不能直接使用iso文件,需要使用Offline Bundle文件,点击官方下载链接,或者访问我的下载链接

202203310117820.png

202203310117696.png

网卡驱动准备(以r8168为例)

下载网卡驱动,vib格式在使用脚本打包的时候会用到,Offline Bundle格式在使用命令行打包时会用到

202203310117630.png

在当前路径新建文件夹drivers,将vib格式的网卡驱动移动进文件夹

至此,环境准备工作完成

自定义镜像打包

使用脚本方式打包

  1. 纯离线方式(推荐)

    Step1:https://github.com/VFrontDe/ESXi-Customizer-PS下载最新的release版本的脚本(ps1文件就是powershell脚本),并将脚本放入ESXi镜像文件所在的目录

    Step2:运行脚本

    .\ESXi-Customizer-PS.ps1 -izip ESXi670-201912001.zip -pkgDir .\drivers\
  2. Step1:https://github.com/VFrontDe/ESXi-Customizer-PS下载最新的release版本的脚本(ps1文件就是powershell脚本)

    Step2:直接运行.\ESXi-Customizer-PS.ps1 -v67 -vft -load net55-r8168

    这种方式理论上应该是可以的,但是实际执行时总会出现错误,使用第一种离线方式打包成功了

命令行自行打包

Step1:将之前下载的zip文件添加到工作空间中,执行add-esxsoftwaredepot .\ESXi670-201912001.zip

202203310117070.png

Step2:检查当前的Acceptance Level,执行get-esximageprofile,接下来需要修改Acceptance Level

202203310117003.png

Step3:

new-esximageprofile -cloneprofile "ESXi-6.7.0-20191204001-standard" -name "ESXi-6.7.0-custom" -vendor "VMware-cus"

202203310117892.png

Step4:

set-esximageprofile -ImageProfile "ESXi-6.7.0-custom" -acceptancelevel "CommunitySupported"

image-20211121193658977

Step4:

add-esxsoftwaredepot net55-r8168-8.045a-napi-offline_bundle.zip

202203310117785.png

Step5:

add-esxsoftwarepackage -ImageProfile "ESXi-6.7.0-custom" -SoftwarePackage "net55-r8168"

202203310118007.png

Step6:检查是否加入成功

(get-esximageprofile ESXi-6.7.0-custom).viblist

202203310118647.png

202203310118228.png

Step7:导出文件

  • ZIP (Bundle):
export-esximageprofile -imageprofile ESXi-6.7.0-custom -exporttobundle  -filepath .\ESXi-6.7.0-custom.zip  -nosignaturecheck  -Force
  • ISO (Installable):
export-esximageprofile -imageprofile ESXi-6.7.0-custom -exporttoiso  -filepath .\ESXi-6.7.0-custom.iso  -nosignaturecheck  -Force

202203310118913.png

得到ISO文件之后

拿到iso文件后就可以像正常装系统一样写入到u盘中去安装了

安装教程有很多,随便搜搜就行了

硬盘分区及数据存储

一般通过web页面即可创建,但有时也需要手动创建来解决问题,手动分区及创建存储方式如下

在ESXi中进行分区需要使用partedUtil工具

  • 查看硬盘列表,上面框起来的就是实际的硬盘以及分区,后面有数字的表示分区,没有数字的表示硬盘本身

    ls /vmfs/devices/disks/

    202203310118644.png

  • 查看分区表

    查看硬盘t10.ATA_____Lenovo_X800_SATA_256G_SSD_______________8S16010501X03403263_实例如下

    partedUtil getptbl "/vmfs/devices/disks/t10.ATA_____Lenovo_X800_SATA_256G_SSD_______________8S16010501X03403263_"

    image-20211121195405778

    第一行是分区格式gpt

    第二行是硬盘的总体信息

    202203310118376.png

    第三行之后是分区信息

    202203310118009.png

  • 在创建分区时要注意的是,必须完整的输入分区表,如下所示

    partedUtil setptbl "/vmfs/devices/disks/t10.ATA_____Lenovo_X800_SATA_256G_SSD_______________8S16010501X03403263_" gpt "1 64 8191 C12A7328F81F11D2BA4B00A0C93EC93B 128" "5 8224 520191 EBD0A0A2B9E5443387C068B6B72699C7  0" "6 520224 1032191 EBD0A0A2B9E5443387C068B6B72699C7  0" "7 1032224 1257471 9D27538040AD11DBBF97000C2911D1B8  0" "8 1257504 1843199 EBD0A0A2B9E5443387C068B6B72699C7  0" "9 1843200 7086079 9D27538040AD11DBBF97000C2911D1B8  0" "2 7086080 15472639 EBD0A0A2B9E5443387C068B6B72699C7  0" "3 15472640 500118158 AA31E02A400F11DB9590000C2911D1B8  0"

    ESXi/ESX 常用的分区类型包括:

    分区GUID类型(十六进制)类型(十进制)
    VMFS 数据存储AA31E02A400F11DB9590000C2911D1B80xFB251
    VMKCore 诊断9D27538040AD11DBBF97000C2911D1B80xFC252
    VMware 预留9198EFFC31C011DB8F78000C2911D1B8
    基本数据EBD0A0A2B9E5443387C068B6B72699C70x83131
    Linux Swap0657FD6DA4AB43C484E50933C84B4F4F0x82130
    Linux LVME6D6D379F50744C2A23C238F2A3DF9280x8E142
    Linux RAIDA19D880F05FC4D3BA006743F0F84911E0xFD253
    EFi 系统C12A7328F81F11D2BA4B00A0C93EC93B0xEF239
    Microsoft 预留E3C9E3160B5C4DB8817DF92DF00215AE
    未使用条目00000000000000000000000000000000

创建数据存储

创建数据存储需要使用vmkfstools命令

使用示例:

vmkfstools -C vmfs6 -S NewDatastore /vmfs/devices/disks/t10.ATA_____Lenovo_X800_SATA_256G_SSD_______________8S16010501X03403263_:3

接下来就可以在web页面看到相关的存储信息了

1 VMware Front Experience:https://www.v-front.de/

2 Download VMware vSphere:https://customerconnect.vmware.com/downloads/info/slug/datacenter_cloud_infrastructure/vmware_vsphere/6_7

3 使用脚本添加网卡驱动:http://woshub.com/add-drivers-vmware-esxi-iso-image/

4 使用命令行打包镜像:https://communities.vmware.com/t5/ESXi-Discussions/Pink-Screen-ESXi-6-5-Failed-Install-Unable-to-Verify-Acceptance/m-p/504351#M42504

5 ESXi硬盘分区:https://kb.vmware.com/s/article/1036609?lang=zh_CN

6 ESXi创建数据存储:https://kb.vmware.com/s/article/1009829?lang=zh_CN


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK