在本文中,我们将逐步介绍在 VMware vSphere 环境中使用 ISO 构建 Redhat Enterprise Linux 7/CentOS 7 VM。Packer对于在云端和本地构建基础镜像非常有用。Packer 是一个开源工具,由HashiCorp开发。HashiCorp 拥有非常著名的工具,如 Vagrant、Consul 和 Terraform。如今,克隆和部署是构建 VM 的最便捷方式。在某些情况下,所需版本的 OS 模板可能不存在,您可能需要在 Adhoc 中构建 VM。这就是 Packer 非常方便的地方。如果要自动创建模板,请参阅本文。
让我们开始编码新的基础设施。
下载以下组件:
- JetBrains-infra vSphere-iso(文件名:packer-builder-vsphere-iso.exe)
- Packer(根据您的笔记本电脑操作系统下载)
- Redhat Enterprise Linux 7.x 或 CentOS 7.x ISO。
在您的笔记本电脑/台式机上,
1. 创建一个新目录并复制所有下载的组件。RHEL/CentOS ISO 应保持为 0n VMware vSphere 数据存储。
UnixArena – Packer 目录快照
2. 打开记事本,粘贴以下内容。根据您的基础结构编辑所有必需的值。在同一目录中将此文件另存为 CentOS7_build.json。
{
"builders": [
{
"type": "vsphere-iso","vcenter_server": "192.168.2.212","username": "administrator@vsphere.local","password": "test@123","insecure_connection": "true","vm_name": "RHEL-Packer1","notes": "Build via Packer","datacenter": "STACK-BLR","cluster": "UA-CLS","host": "192.168.2.211","datastore": "DATASTORE-BLR","network": "VM Network","resource_pool": "UA-ResPool","guest_os_type": "centos7_64Guest","ssh_username": "root","ssh_password": "server","CPUs": 1,"RAM": 1024,"RAM_reserve_all": false,"convert_to_template": false,"disk_controller_type": "pvscsi","disk_size": 25000,"disk_thin_provisioned": true,"network_card": "vmxnet3","iso_paths": [
"[DATASTORE-BLR] ISO/centos7_64.iso"
],"iso_checksum": "5b61d5b378502e9cba8ba26b6696c92a","iso_checksum_type": "md5","floppy_files": [
"{{template_dir}}/ks.cfg"
],"boot_command": " inst.text inst.ks=hd:fd0:/ks.cfg "
}
]
}
除了 boot_command、networ_card、disk_controller_type 和配置类型之外,您可能需要更新几乎所有字段的值。
3. 您需要准备传统的kickstart 文件来定义包选择和其他配置。下载这个适用于 RHEL 7 / CentOS 7 的kickstart 文件。请随时根据我们的需要修改和更新 kickstart 文件。
- 根凭证 - 根/服务器
- 用户 – admin/admin123
4. 这是目录内容的快照。
Packer – RHEL – vSphere VM 构建
5、打开命令提示符——开始——>cmd——>回车。导航到我们为此 VM 构建创建的目录。
Packer VM 构建 – RHEL – CentOS
6. 使用以下命令触发打包器构建作业。在此阶段,VM 作业正在等待 VM 使用 IP 启动。
C:\Users\lingeswaran.rangasam\Desktop\Redhat-Packer-Test>packer.exe build CentOS7_build.json
vsphere-iso output will be in this color.
==> vsphere-iso: Creating VM...
==> vsphere-iso: Customizing hardware...
==> vsphere-iso: Mount ISO images...
==> vsphere-iso: Creating floppy disk...
vsphere-iso: Copying files flatly from floppy_files
vsphere-iso: Copying file: C:\Users\lingeswaran.rangasam\Desktop\Redhat-Packer-Test/ks.cfg
vsphere-iso: Done copying files from floppy_files
vsphere-iso: Collecting paths from floppy_dirs
vsphere-iso: Resulting paths from floppy_dirs : []
vsphere-iso: Done copying paths from floppy_dirs
==> vsphere-iso: Uploading created floppy image
==> vsphere-iso: Adding generated Floppy...
==> vsphere-iso: Set boot order temporary...
==> vsphere-iso: Power on VM...
==> vsphere-iso: Waiting 10s for boot...
==> vsphere-iso: Typing boot command...
==> vsphere-iso: Waiting for IP...
7. 如果导航到 vCenter 控制台,您可以看到虚拟机可能已创建并打开电源。
VMware VM – 创建 – 开机
8. 启动 VM 控制台并观察自动构建。
虚拟机启动 – Packer – VMware vSphere
9. VM 正在使用 kickstart 文件开始自动安装。
自动安装 – Packer Build – RHEL
10. VM 使用 LVM 自动配置所需的文件系统布局。
自动配置 LVM – Packer – RHEL
11.这是成功完成VM构建后的packer构建作业结果。
C:\Users\lingeswaran.rangasam\Desktop\Redhat-Packer-Test>packer.exe build CentOS7_build.json
vsphere-iso output will be in this color.
==> vsphere-iso: Creating VM...
==> vsphere-iso: Customizing hardware...
==> vsphere-iso: Mount ISO images...
==> vsphere-iso: Creating floppy disk...
vsphere-iso: Copying files flatly from floppy_files
vsphere-iso: Copying file: C:\Users\lingeswaran.rangasam\Desktop\Redhat-Packer-Test/ks.cfg
vsphere-iso: Done copying files from floppy_files
vsphere-iso: Collecting paths from floppy_dirs
vsphere-iso: Resulting paths from floppy_dirs : []
vsphere-iso: Done copying paths from floppy_dirs
==> vsphere-iso: Uploading created floppy image
==> vsphere-iso: Adding generated Floppy...
==> vsphere-iso: Set boot order temporary...
==> vsphere-iso: Power on VM...
==> vsphere-iso: Waiting 10s for boot...
==> vsphere-iso: Typing boot command...
==> vsphere-iso: Waiting for IP...
==> vsphere-iso: IP address: 192.168.2.7
==> vsphere-iso: Using ssh communicator to connect: 192.168.2.7
==> vsphere-iso: Waiting for SSH to become available...
==> vsphere-iso: Connected to SSH!
==> vsphere-iso: Shut down VM...
==> vsphere-iso: Deleting Floppy drives...
==> vsphere-iso: Deleting Floppy image...
==> vsphere-iso: Eject CD-ROM drives...
==> vsphere-iso: Clear boot order...
Build 'vsphere-iso' finished.
==> Builds finished. The artifacts of successful builds are:
--> vsphere-iso: RHEL-Packer1
C:\Users\lingeswaran.rangasam\Desktop\Redhat-Packer-Test>
12. 登录虚拟机实例,查看状态。
login as: root
root@192.168.2.7's password:
[root@UnixArena ~]#
[root@UnixArena ~]#
[root@UnixArena ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-LogVol06 17G 1.3G 16G 8% /
devtmpfs 484M 0 484M 0% /dev
tmpfs 496M 0 496M 0% /dev/shm
tmpfs 496M 7.1M 489M 2% /run
tmpfs 496M 0 496M 0% /sys/fs/cgroup
/dev/mapper/VolGroup-LogVol02 1014M 33M 982M 4% /home
/dev/mapper/VolGroup-LogVol01 1014M 33M 982M 4% /tmp
/dev/mapper/VolGroup-LogVol03 2.0G 101M 1.9G 5% /var
/dev/mapper/VolGroup-LogVol04 1014M 36M 979M 4% /var/log
/dev/mapper/VolGroup-LogVol05 509M 26M 483M 6% /var/log/audit
/dev/sda1 509M 129M 381M 26% /boot
tmpfs 100M 0 100M 0% /run/user/0
[root@UnixArena ~]# vgs
VG #PV #LV #SN Attr VSize VFree
VolGroup 1 7 0 wz--n- 23.91g 0
[root@UnixArena ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 VolGroup lvm2 a-- 23.91g 0
[root@UnixArena ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sy nc Convert
LogVol01 VolGroup -wi-ao---- 1.00g
LogVol02 VolGroup -wi-ao---- 1.00g
LogVol03 VolGroup -wi-ao---- 2.00g
LogVol04 VolGroup -wi-ao---- 1.00g
LogVol05 VolGroup -wi-ao---- 512.00m
LogVol06 VolGroup -wi-ao---- 16.44g
lv_swap VolGroup -wi-ao---- <1.97g
[root@UnixArena ~]# which lsof
/usr/sbin/lsof
[root@UnixArena ~]#
我们已经成功地使用 ISO 和遗留的 kickstart 文件创建了 VM 并构建了 RHEL7/CentOS7。在接下来的文章中,我们将看到如何使用打包程序制作 VM 模板。
原文地址:https://blog.csdn.net/allway2
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。