使用 Packer 自动执行 VMware vsphere 模板

在这篇博客文章中,我想向您展示如何使用 Packer 自动执行 VMware vsphere 模板。我喜欢它,因为packer可以在其他平台上使用,如Hyper-V,Azure,AWS或soagar for vmware Workstation或Virtual Box。通过这篇文章,我想向您展示如何为VMware vsphere自动创建Windows Server 2016和Windows Server 2019模板。
今天,我将首先在 vmware vsphere 上创建和部署。由于我想尽可能简单快捷地自动提供模板,因此在这种情况下的先决条件是可以直接从ISO完成。
我将这些模板用于各种测试环境,也适用于数据中心或客户的日常工作。您还可以使用这些模板作为 Citrix 虚拟应用程序和桌面或 VMware Horizon 环境的基础。

为什么要自动创建模板?

原因不是很简单。在许多环境中,模板创建一次,然后一次又一次地扩展。但是,这导致模板积累越来越多的垃圾并变得越来越大。因此,一次又一次地创建模板是有意义的。
此外,我想为我的环境中的不同语言提供相同的模板。对于不同的操作系统,例如对于 Microsoft Windows Server,模板中的设置对于所有版本和语言都应相同。

老实说,我是Evergreen环境的忠实朋友,因为否则你永远无法真正了解系统上到底定制了什么。

是管理员的朋友!

 

为什么使用打包程序创建模板?

在我看来,packer非常容易学习,并且与许多平台兼容。实际上,我最终选择了Packer,这是为VMware Workstation创建模板的唯一工具。我在家里的 LAB 环境运行在 VMware Workstation 和 Microsoft Azure 上。至少我没有找到另一个。如果您需要有关 Packer 的更多信息,请访问网站 https://www.packer.io/ 。在那里,您还可以获得很多语法示例。

我需要什么才能开始?

首先,您只需要包装工。通过使用完成的巧克力包装,整个事情可以更容易地设置。
要获取有关巧克力的更多信息,请 https://chocolatey.org/

首先,我安装巧克力。我在管理模式下通过Powershell所做的整个事情。

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

现在,我们必须重新启动Powershell,然后在管理模式下再次启动它。然后插入以下命令以安装 Packer 和所需的 Packer 插件。还要安装 Windows 更新的预配插件,因为我们希望自动更新创建的模板。

#install Packer Version 1.5.5

choco install packer --version=1.5.5

#install Packer Windows Update Provisioner

choco install Packer-Provisioner-Windows-Update

如果要测试系统上是否正确安装了 Packer,可以在 Powershell 中使用以下命令

packer version

您现在应该看到已安装的 Packer 版本。在我们的例子中,它是Packer版本1.5.5。

随着 Packer 的安装,我们现在已经奠定了基础,您可以使用 Packer 自动执行 VMware vsphere 模板。现在我们可以继续了!现在,我们希望开始使用 Packer 创建自动化的 VMware vsphere 模板。

开始使用 Packer 自动执行我们的第一个 VMware vsphere 模板

如果你愿意,你可以从Github克隆我的存储库。在这里,我提供了现成的模板。

GitHub - thomaspreischl/vsphere_packer_templates: this repository contains packer scripts to automatically create,preconfigure and deploy vm templates in vmware vsphere

在此存储库中,您可以找到适用于 Windows Server 2019 和 Windows Server 2016 的模板部署文件。如果您已将存储库克隆到PC,我们可以根据需要继续准备脚本。

为您的环境准备脚本文件

在开始使用 Packer 自动执行 VMware vsphere 模板之前,我们必须为您的环境准备脚本和文件。首先,为以后要部署的操作系统下载所需的模板非常重要。在我的情况下,这是德语版的Microsoft Windows Server 2019。您可以从 MSDN 帐户或 Microsoft 评估中心下载映像:https://www.microsoft.com/evalcenter/。

下载 ISO 文件后,必须将 ISO 上传到 VMWare vsphere 环境的其中一个数据存储。请确保 vcenter 帐户和我们稍后使用的主机能够访问 ISO 文件。

编辑环境的变量 .json 文件

如果您已上传 iso,则可以继续执行下一步。现在,我们将 variables.json 文件复制到 *mycopy*_variables.json。我们现在可以根据需要编辑变量文件。请填写登录帐户,密码等。我认为这是自我推崇的。如果没有,请给我留言,我会帮助你。

{


    "vsphere-server": "YOUR vCenterIP","vsphere-user": "administrator@vsphere.local","vsphere-password": "YOUR_Password","vsphere-datacenter": "YOUR_Dataceneter","vsphere-cluster": "YOUR_Cluster","vsphere-network": "YOUR_Network","vsphere-datastore": "Your_Datastore","vsphere-folder": "Your_vmfolder","vm-name": "Win2019-Template-Base","vm-cpu-num": "2","vm-mem-size": "4096","vm-disk-size": "40960","winadmin-password": "Your WindowsPassword","os_iso_path": "[Area12_Auto-Tier_LUN1] ISO/Windows Server 2019/SW_DVD9_Win_Server_STD_CORE_2019_64Bit_German_DC_STD_MLF_X21-96583.ISO","winrm_username": "Administrator",}

调整变量文件后,我们将其保存,现在调整自动取消操作.xml它位于文件夹w2019.base中。在这里,我们可能必须更改操作系统的语言以及Tempaltes操作系统的登录密码。

在自动取消操作中更新密码.xml

请在自动取消操作中的以下位置输入您的密码,该密码已存储在"winadmin-password"下.xml:

<AutoLogon>
                <Password>
                    <Value>####YOUR_PASSWORD####</Value>
                    <PlainText>true</PlainText>
                </Password>
                <LogonCount>2</LogonCount>
                <Username>Administrator</Username>
                <Enabled>true</Enabled>
            </AutoLogon>

并编辑此部分:

<UserAccounts>
                <AdministratorPassword>
                    <Value>####YOUR_PASSWORD####</Value>
                    <PlainText>true</PlainText>
                </AdministratorPassword>
            </UserAccounts>

我们模板的语言设置和时区

如果要使用不同语言的 Packer 自动执行 VMware vsphere 模板,还可以复制 win2019.base 文件夹,并根据需要编辑语言设置和时区。

要编辑语言,请更新自动取消.xml的以下部分。您只需将"de-DE"部分替换为要使用的语言代码,例如"en-US"。

您可以在此处找到包含 Windows 语言代码的列表:https://docs.microsoft.com/en-us/openspecs/windows_protocols/ms-lcid/

<component name="Microsoft-Windows-International-Core-WinPE" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <SetupUILanguage>
                <UILanguage>de-DE</UILanguage>
            </SetupUILanguage>
            <InputLocale>de-DE</InputLocale>
            <SystemLocale>de-DE</SystemLocale>
            <UILanguage>de-DE</UILanguage>
            <UserLocale>de-DE</UserLocale>
        </component>

要编辑时区,您必须将"浪漫标准时间"更新到您的时区。更新此部分:

<component name="Microsoft-Windows-Shell-Setup" processorArchitecture="amd64" publicKeyToken="31bf3856ad364e35" language="neutral" versionScope="nonSxS" xmlns:wcm="http://schemas.microsoft.com/WMIConfig/2002/State" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
            <TimeZone>Romance Standard Time</TimeZone>
        </component>

在这里,您可以获得包含Windows os的所有时区名称的列表:https://docs.microsoft.com/windows-hardware/manufacture/desktop/default-time-zones

根据我们的要求进行所有设置后,我们可以尝试整个事情。

使用 Packer 自动执行 VMware vsphere 模板 – 让我们来试一趟吧!

所有设置都已完成。我们放松地坐在办公桌前。咖啡是空的...

现在我们开始我们的第一次跑步,可以放松一下,喝杯咖啡,我希望我现在没有承诺太多

要使用打包器自动执行 vmware vsphere 模板,我们只需在模板的文件夹中进行更改并开始构建打包器即可。我将在下面为您提供一些调试和故障排除的提示。

使用 Packer 自动执行 VMware vsphere 模板 - 运行作业

现在我们必须等待一段时间,模板现在将被安装,更新和完成。当然,您可以在 vCenter 控制台中观看整个过程,并在这样做的同时享用咖啡。

使用 Packer 自动执行 VMware vsphere 模板 - 模板 GUI

如果作业成功完成,您将在 vcenter 的相应文件夹中找到该模板。

使用 Packer 自动执行 VMware vsphere 模板 - 模板

故障排除提示

在这里,您可以找到如何获取更多信息并排查包装工作业的快速概述。

要在调试模式下启动作业,您可以使用:

packer build xxx YOUR Variables,Files and so on xxx -debug

如果要覆盖工件,可以使用参数"-force"。

如果要将 UI 输出的时间戳输出为行前缀。您可以使用:"-时间戳-ui"

有关更多信息,请查看:https://www.packer.io/guides

链接到 Git 存储库

在这里,您可以再次找到指向存储库的链接

:https://github.com/thomaspreischl/vsphere_packer_templates

原文地址:https://blog.csdn.net/allway2

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


VMware中为CentOS设置固定IP
很多用户想体验Win10,不过又不想把当前电脑系统换成Win10,那么最简单的就是在虚拟机上安装一个Win10系统来进行体验了,这里小编推荐使用VMware Workstation虚拟机来安装Win10系统,下面小编介绍虚拟机的创建及Win10详细安装教程步骤如下:1、首
MAC OS操作系统一般来说只能在苹果设备上安装运行,小编发现一个有趣的方法在winndows 操作系统中通过虚拟机来安装苹果系统,有兴趣的用户一起随小编往下看吧!首先准备好以下工具:用于VMware 12的mac补丁,unlocke(链接: https: pan baidu
vmware player是一款能够让我们在Windows10系统中运行别的系统的软件俗称虚拟机(如win7、xp等),虽然这个平台有大量的优点和有用的功能,但是卸载起来非常困难,特别是在升级过程中。这样的问题大多出在9 0和最近的12 0版本中。在点击卸载或
虚拟机在测试和实验系统上有着很大的帮助,很多用户也喜欢在虚拟机上使用自己想要使用的系统。不过,在win10系统中打开虚拟机时,提示VMware Workstation cannot connect错误无法打开虚拟机怎么办?遇到这种情况时应该怎么办呢?下面就让
最近使用Win10系统的用户反应vmware workstation 运行失败的现象,该怎么办呢?出现这样的情况是由于软件不兼容的问题所引起的,我们可通过下面方法进行恢复。步骤如下:1、按下win+R打开运行,键入gpedit msc,,然后单击确定。将打开本地组策
vmware克隆镜像后,新的Centos无法启动网络
为访问虚拟磁盘、CD/DVD-ROM 和 SCSI 设备,虚拟机将使用创建虚拟机时默认添加的存储控制器。创建虚拟机后可以添加额外的控制器或更改控制器类型。在创建向导中时可执行这些更改。如果您在更改或添加控制器前了解不同类型的控制器的节点行为、控制器限制和兼容性,则可以避免潜在的引导问题。存储控制器技术的工作方式存储控制器对于虚拟机而言是不同类型的 SCSI 控制器,包括 BusLogic 并行、LSI Logic 并行、LSI Logic SAS 和 VMware 准虚拟 SCSI。还提供 AHCI
如今,越来越多的工作负载在虚拟机 (VM) 中运行,包括在来宾操作系统中需要更多 IO 的工作负载。在 VMware vSphere 上的 VM 中,所有虚拟磁盘 (VMDK) 都连接到默认配置中的 LSI 逻辑 SAS SCSI 适配器。此适配器无需安装额外驱动程序即可被所有操作系统识别,但并不总是提供最佳性能,尤其是在使用 SSD RAID 或 NVMe 存储时。在本文中,我们比较了虚拟存储控制器LSI Logical SAS、VMware Paravirtual和NVMe Controller。
Packer 是由 Hashicorp 创建的应用程序,它使 IT 专业人员能够自动执行其 VM 模板生成。随着混合云环境的兴起,它正迅速成为在一个工具下管理每个平台的多个 VM 映像的首选实用工具之一。它自动执行建立全新 VM 的过程,并合并自定义生成脚本以动态自定义 VM,然后转换回模板以用于在云中或本地进行部署。在 VMware 环境中使用 Packer 可以带来以下好处:与平台无关– Packer 不仅可以将相同的映像和配置部署到 VMware 环境,还可以将相同的映像和配置部署到 AWS 和
封隔器 OVA 示例我遇到了一些其他人很幸运的好例子:基础设施即代码:使用 Packer 创建 Linux (RHEL/CentOS) 基础映像 打包机-centos-7 打包模板 自动化示例 打包机-centos7-esxi 打包模板封隔器配置文件在所有这些示例之间,我创建了自己的配置并确保它们没问题:&lt;&gt; tree.├── ansible│ ├── main.yml│ └── requirements.yml├── centos7.jso.
在所有云供应商中,您都获得了基于模板的自动化构建的虚拟机——如何为 VMWare vSphere 构建自定义模板?在这种情况下,HashiCorp Packer 是您想要的工具。这篇文章将介绍创建基于打包程序的虚拟机模板的主要概念什么是打包机?Packer 映像允许您在几秒钟内启动完全配置和配置的机器,而不是几分钟或几小时。这不仅有利于生产,也有利于开发,因为开发虚拟机也可以在几秒钟内启动,而无需等待通常更长的配置时间。由于 Packer 为多个平台创建相同的映像,因此您可以在 AWS 中运行生
在这篇博客文章中,我想向您展示如何使用 Packer 自动执行 VMware vsphere 模板。我喜欢它,因为packer可以在其他平台上使用,如Hyper-V,Azure,AWS或soagar for vmware Workstation或Virtual Box。通过这篇文章,我想向您展示如何为VMware vsphere自动创建Windows Server 2016和Windows Server 2019模板。今天,我将首先在 vmware vsphere 上创建和部署。由于我想尽可能简单快捷地自
如何使用付费许可证设置Vagrant VMware提供商,以便在CentOS 8上运行的VMware Workstation Pro 15.5上运行。感谢Aaron McKay鼓励我写这篇文章,并提供 Vagrant VMware 提供商许可证。在这篇文章中,我将向您展示如何:安装 VMware Workstation Pro。 安装流浪汉。 安装 Vagrant VMware Utility。 安装Vagrant VMware插件。 安装 Vagrant VMware Provider
在本文中,我们将逐步介绍在 VMware vSphere 环境中使用 ISO 构建 Redhat Enterprise Linux 7/CentOS 7 VM。Packer对于在云端和本地构建基础镜像非常有用。Packer 是一个开源工具,由HashiCorp开发。HashiCorp 拥有非常著名的工具,如 Vagrant、Consul 和 Terraform。如今,克隆和部署是构建 VM 的最便捷方式。在某些情况下,所需版本的 OS 模板可能不存在,您可能需要在 Adhoc 中构建 VM。这就是 Pack
虽然Vagrant VMware Desktop提供商是VirtualBox的直接替代品,但还公开了一些其他功能,可让您更精细地配置计算机的VMware特定方面。提供程序的配置设置在 Vagrantfile中设置:Vagrant.configure("2") do |config| config.vm.box = "my-box" config.vm.provider "vmware_desktop" do |v| v.gui = true endend...
autoinst.xml&lt;?xml version="1.0"?&gt;&lt;!DOCTYPE profile&gt;&lt;profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"&gt; &lt;scripts&gt; &lt;chroot-scripts config:type="list"&gt; &lt;script&g..
Ubuntu 20.04 带来了新的安装程序,用subiquity取代了以前的Debian安装。这意味着以前用于自动/无人值守安装的任何方法都不再有效,需要更换。使用Packer成功地做到了这一点。但首先,这是一个工作的无人值守配置:ubuntu-2004.json:{ "builders": [ { "name": "ubuntu-2004", "type": "vmware-iso", "guest_os_type": "ubunt...
Packer 是由 Hashicorp 创建的应用程序,它使 IT 专业人员能够自动执行其 VM 模板生成。随着混合云环境的兴起,它正迅速成为在一个工具下管理每个平台的多个 VM 映像的首选实用工具之一。它自动执行建立全新 VM 的过程,并合并自定义生成脚本以动态自定义 VM,然后转换回模板以用于在云中或本地进行部署。在 VMware 环境中使用 Packer 可以带来以下好处:与平台无关– Packer 不仅可以将相同的映像和配置部署到 VMware 环境,还可以将相同的映像和配置部署到 AWS 和
GitHub - librenms/packer-builds: This repo is where virtual images are created and storedThis repo is where virtual images are created and stored - GitHub - librenms/packer-builds: This repo is where virtual images are created and storedhttps://github.com/