VMware 虚拟机自定义规范 - 更优雅的虚拟机开局

介绍

虚拟机自定义规范可以在你克隆虚拟机的时候在vCenter 的Web界面设定虚拟机的主机名、单/多网卡IP的IP和网关、DNS服务器、唯一标识符重置(SID等)、硬盘分区自动扩容、设定密码、密钥、时区等信息。

让管理员不需要进入虚拟机系统内部进行配置,可以直接创建使用。提高业务开通效率。

VMware 系列文章:https://songxwn.com/categories/vmware/

前置要求

VMware Tools 要求

要在克隆或部署期间自定义客户机操作系统,必须将最新版本的 VMware Tools 安装在虚拟机或模板上。有关 VMware Tools 支持列表的信息,请参见《VMware 产品互操作性列表》,网址为 http://www.vmware.com/resources/compatibility/sim/interop_matrix.php。

确认已安装 VMware Tools 版本 11.3.0 或更高版本。(open-vm-tool)

确认已安装 cloud-init 版本 21.1 或更高版本。(Linux)

虚拟磁盘要求

所自定义的客户机操作系统必须安装在作为虚拟机配置中的 SCSI 节点 0:0 连接的磁盘上。

Windows 要求

Windows 客户机操作系统的自定义要求虚拟机在 ESXi 主机运行版本 3.5 或更高版本上运行。

Linux 要求

自定义 Linux 客户机操作系统要求 Linux 客户机操作系统中已安装 Perl。

支持系统: VMware Compatibility Guide

创建

使用

  • 在从模板新建虚拟机的时候,克隆选项勾选自定义操作系统 。

  • 在克隆虚拟机的时候,克隆选项勾选自定义操作系统 。

运行自定义脚本:

确认已安装 VMware Tools 版本 10.1.0 或更高版本。如果 VMware Tools 版本低于 10.1.0,则您尝试运行自定义脚本时,自定义将失败。

在 VMware Tools 配置中,出于安全原因,enable-custom-scripts 选项默认处于取消激活状态。尝试在 enable-custom-scripts 选项处于取消激活状态的情况下运行自定义脚本时,自定义将失败并显示自定义错误。

例如,要启用 enable-custom-scripts 选项,必须使用 config 命令以 root 用户身份运行 vmware-toolbox-cmd:

vmware-toolbox-cmd config set deployPkg enable-custom-scripts true
cat /etc/vmware-tools/tools.conf
[deployPkg]
enable-custom-scripts = true

要验证是否正确设置了该选项,可以运行以下命令:

vmware-toolbox-cmd config get deployPkg enable-custom-scripts

[deployPkg] enable-custom-scripts = true

有关详细信息,请参见《VMware Tools 用户指南》。

要使用 cloud-init 元数据和用户数据自定义虚拟机的客户机操作系统,请满足以下必备条件:

确认已安装 VMware Tools 版本 11.3.0 或更高版本。

确认已安装 cloud-init 版本 21.1 或更高版本。

已测试操作系统

  • Ubuntu系列

  • Debian系列

  • Centos 7

  • Rocky 8-9

  • Windows Server系列

Linux 自定义脚本示例

#!/bin/sh
if [ x$1 = x"precustomization" ]; then
    echo "Do Precustomization tasks"
	
elif [ x$1 = x"postcustomization" ]; then
    echo "Do Postcustomization tasks"
    growpart /dev/sda 2
    xfs_growfs /dev/sda2
    echo "root:songxwn.com"|chpasswd
    rm -f /etc/machine-id
    systemd-machine-id-setup
fi
# 主要执行命令如下
growpart /dev/sda 2
# 扩容分区
xfs_growfs /dev/sda2
# 文件系统扩容
echo "root:songxwn.com"|chpasswd
# 配置root密码
rm -f /etc/machine-id
systemd-machine-id-setup
# 随机初始化ID

Rocky / RHEL 8-9 需要安装额外包

RHEL 8系列的以上版本要求按照以下包。

dnf install network-scripts
dnf install perl

低于 6.7 U3p 和 7.0 U3c 的版本,不支持 Rocky 系统的自定义。

https://knowledge.broadcom.com/external/article?legacyId=86163

相关推荐

  1. VMware配置Ubuntu虚拟

    2024-05-09 14:04:10       36 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-09 14:04:10       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-09 14:04:10       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-09 14:04:10       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-09 14:04:10       18 阅读

热门阅读

  1. Oracle 更改数据文件位置的几种常用方式

    2024-05-09 14:04:10       12 阅读
  2. 跨域问题解决方案

    2024-05-09 14:04:10       7 阅读
  3. wifi执法记录仪移植出现的问题

    2024-05-09 14:04:10       11 阅读
  4. 邮件服务器有什么作用?

    2024-05-09 14:04:10       9 阅读
  5. Tengine安装及负载均衡(带check实现)

    2024-05-09 14:04:10       12 阅读
  6. QT作业3

    QT作业3

    2024-05-09 14:04:10      10 阅读