VMware workstation批量创建虚拟机和自动化安装操作系统(一)
一. 简述
作为从事IT行业运维工作的Linuxer,大多情况下需要在测试环境中部署业务系统并进行测试,在没有足够的计算存储网络条件下,使用虚拟机进行虚拟集群的创建和使用,是一种不错的学习和实践方式。
本篇博客主要介绍如何使用VMware workstation进行虚拟机的批量创建和自动化安装操作系统。希望运维从业人员在“背锅”之余,品茗之间,涉足这篇博客之时,能够有所收获。
二. 涉及知识点
1. VMware workstation使用部分
- VMware workstation 自定义创建虚拟机
- VMware workstation 三类交换网络区别和配置
- VMware workstation 虚拟机共享文件设置
- VMware workstation 虚拟机命令行管理工具使用
- VMware workstation 虚拟机计算/存储/网络资源调整
2. 无人值守自动化安装多版本操作系统
- HTTP服务器部署和测试
- DHCP服务器部署和测试
- DHCP绑定MAC地址分配IP
- TFTP服务器部署测试
- ks.cfg文件创建和详解
三. 实践过程
实践环境:
- 宿主PC:win10专业64位16G内存,硬盘管够
- 虚拟化软件:VMware workstation pro 12.5.7
- 虚机操作系统镜像:CentOS6.5_x86_64/CentOS7.2_1511
1. VMware workstation自定义创建和管理虚拟机
VMware workstation是全虚拟化平台,通过VMware workstation创建虚拟机时,一部分功能是为虚拟机提供计算,存储,网络等资源。因此,在为虚拟机提供这些硬件资源时,会考虑业内主流硬件接口标准,为虚拟机提供硬件配置,网络配置等。基于VMware workstation,我们可以定制一台服务器硬件。
① 新建虚拟机【硬件配置】
配置一台虚拟机的过程如下:
菜单栏——文件——新建虚拟机
【自定义(高级)】[下一步]
【选择硬件兼容性】[下一步]
【安装客户机操作系统】(选择,"稍后安装操作系统")[下一步]
【选择客户机操作系统】(Linux-版本CentOS64位)[下一步]
【命名虚拟机】(虚拟机名称:console01;位置:E盘:\consoles\console01)[下一步]
【处理器配置】(处理器数量:2;处理器核心数量:2)[下一步]
【此虚拟机的内存】(512MB)[下一步]
【网络类型】(使用网络地址转换NAT)[下一步]
【选择I/O控制器类型】(LSI Logic)[下一步]
【选择磁盘类型】(SCSI)[下一步]
【选择磁盘】(创建新虚拟磁盘)[下一步]
【指定磁盘容量】(8G,将磁盘存储为单个文件)[下一步]
【指定磁盘文件位置】[下一步]
【自定义硬件】[下一步]——【添加】[下一步]——【网络适配器】[下一步]
【自定义网络】(VMnet1仅主机模式)[完成]——[关闭]
通过上述过程,我们就可以自定义配置一台服务器硬件。此时的虚拟机只是一台裸机,不具有任何操作系统。
② 新建虚拟机【虚机管理】
上述,新建虚拟机【硬件配置】的过程中,自定义创建了一台裸机。此时如果希望这样的配置能够即刻或者以后被重复利用,有四种方式来实现:OVF,快照,克隆,复制或移动。
- OVF。虚拟机可以通过“导出为OVF”的方式,来导出为配置模板,这种方式是通用性最大化,不会存在个性,比如说上述console01如果自定义了MAC地址后,导出为OVF时,MAC地址不会存入模板。
- 快照。顾名思义,快照就是虚拟机某个状态拍照,保留这个状态所有特性,以便能够恢复出这个状态。快照在虚拟机运行或者停止状态下都能够进行拍照。
- 克隆。克隆其实时“停机快照”,即如果想克隆某个虚拟机,需要在虚拟机停机情况下操作,此时与快照功能一致。克隆虚拟机时,可以选择的母体有很多,包括此刻的母机和母机之前的快照。
- 复制或移动。虚拟机在创建的时候,实际放置在PC宿主机的某个目录中。这个目录在复制或者移动之后,同样可以通过菜单——打开虚拟机的方式进行打开,这样方便了虚拟机的移动。
注:
上述四种对虚拟机的管理模式中,既有相同的部分,也有相异的部分,区别在于应用场景。本篇博客的出发点,就是基于第四种方式,通过复制模板虚拟机的文件和修改虚拟机的配置文件,来达到批量创建虚拟机的效果。
③ 新建虚拟机【网络管理】
VMware workstation提供了三种以太网虚拟交换网络:桥接模式,NAT模式,仅主机模式。这三种网络模式不难理解,无非是提供了三个连接不同网络的交换机,适用于不同的网络场景:
- Bridge 桥接模式
桥接,即通过网桥接入局域网。采用这种模式的虚拟机,实际上是通过软件层,实现了接入局域网路由器的功能。既然虚拟机通过软件的方式,接入了与PC机同一个路由器 ,其在局域网中的地位就和PC机平行了。因此,采用这种方式的虚拟机,技术实现上,应该类似于Linux的eth0与eth0:0,采用同一个物理网卡,监听两个IP,其中一个是宿主PC的,另外一个就是虚拟机的。- NAT 网络转换模式
网络转换最广发的应用当属路由器。路由器通过NAT功能,把内网IP映射为网络运营商分配给你的公网IP,从而是内网机器能够访问公网。采用这种模式的虚拟机,实际上就是把宿主PC当作路由器 ,而在宿主PC背后,创建了一个虚拟网络,虚拟机就是这个虚拟网段中的一员。
实际上,充当NAT功能的是VMware workstation运行时,启动了VMware NAT服务,这个服务可以通过任务管理器查看到。当采用NAT网络模式的时候,实际上就是想要VMware 提供路由器的功能,路由器一般提供的服务很多,如GATEWAY,DNS,DHCP,NAT等。当然Vmware workstation提供了设置这些功能的选项,在自定义中可选择既定功能提供服务。- Host only 仅主机模式
这种模式相对简单,表示虚拟机仅和PC机在同一个网段内。同样,对于创建的多个虚拟机,假如虚拟机具有接入这个虚拟网络的网卡,则可以和其他虚拟机进行通信。
本篇博客根据实际工作中,服务器至少有两块网卡的情况,设置了两种网络模式:NAT模式,Hostonly模式。因NAT模式采用虚拟网卡名称为vmnet8,故设定NAT网段为192.168.80.0/24,同样,因为Hostonly模式采用的网卡是vmnet1,因此设定网端为192.168.10.0/24。
通过菜单——编辑——虚拟网络编辑器,可进行虚拟机网络的编辑。
本篇博客主要的编辑如下:
- 设置Hostonlye模式下的网段为:192.168.10.0/24,设置NAT模式下的网段为:192.168.80.0/24
- 取消Hostonly和NAT模式下的DHCP设置,后期虚拟机的IP地址配置,由自己设置为静态IP
- 设置NAT网关地址为192.168.80.2
- 编辑了上述两种虚拟交换网络之后,PC机会对应地安装虚拟网卡,可以通过网络适配器查看MAC地址和IP地址
注:
本篇博客在第一部分创建虚拟机的时候,或在虚拟机创建完成之后,通过虚拟机设置,设定了虚拟机的MAC地址,这样做的目的是为了以后方便管理或者协议分析。同样,通过分配MAC,并绑定IP的方式,能够在批量创建虚拟机时,更加方便固定IP到虚拟机中,同样便于管理。
④ 新建虚拟机【安装系统】
配置虚拟机硬件和网络之后,便可为虚拟机安装操作系统。
VMware workstation提供了多种类型操作系统的支持,同时给出了多种操作系统安装方式的支持。安装操作系统可以在创建虚拟机之时进行安装,也可以在虚拟机创建之后,即为裸机安装操作系统。
安装方式
VMware workstation 主要提供了两种安装方式:
①通过物理光驱安装;②通过系统镜像ISO方式安装。
通过物理光驱安装:适合有系统光盘的用户,适合PC有光驱的用户,适合有USB转光驱设备的用户,适合安装了虚拟光驱软件的用户
通过系统镜像ISO安装:只需要下载系统ISO镜像文件,Vmware workstation提供了光驱接口,只需要加载ISO镜像文件即可。安装要求
VMware workstation在安装操作系统时会检查虚拟机内存大小,当大小不足以启动图形界面时,VMware workstation提供精简安装。
本篇博客设置虚拟机内存为512M内存,在安装CentOS6.5过程中,未出现图形界面,而是精简安装。
这样的安装有些默认设置,如设置磁盘为LVM,设置hostname等,当内存为1G或以上时,可以进行图形化安装,大部分在物理机上安装操作都能实现。安装结果
安装过程基本是交互式安装,用户在安装操作系统,如CentOS6.5的过程中,和实际情况(物理机)安装操作系统一致,并在系统安装完成后/root/目录下,生成ks.cfg文件。该文件其实有很大价值。
探讨
RHEL/CentOS系统Linux操作系统,提供了网络引导安装方式,这也是本篇即将阐述的安装方式。通过网络引导方式,来批量安装其他虚拟机的操作系统。
实际应用过程中,操作系统的安装本就提供两种模式:- 本地引导安装,包括CDROM,U盘
- 网络引导安装,包括HTTP协议,FTP协议,NFS协议获取网络镜像
- 网络镜像系统,这种情况实际上是系统引导后,把根文件系统创建在远处的NFS文件系统上,使得集群节点的系统更加安全和管理
⑤ 新建虚拟机【配置管理】
VMware workstation创建的虚拟机,实质上以特殊的格式文件放置在固定目录下。可喜的是,VMware workstation的配置可以通过文件编辑器打开和编辑,这样就提供了很大的利用空间。
VMware workstation需要区分的以下目录:
- VMware workstation安装目录:
也就是在安装VMwareworkstation时,软件放置的目录- VMware workstation默认虚拟机放置目录:
这个是使用VMware workstation创建虚拟机console01时,要把console01放置在哪里的目录,在这个虚拟机放置目录下,存放着这一台虚拟机console01配置文件,磁盘文件,内存快照文件等各类与虚拟机本身相关的文件。这些文件都可以进行文件操作,如复制,删除,移动,修改,编辑等- VMware workstation 全局配置文件:
这个其实是配置VMware workstation全局软件功能的目录或文件,最常见的位置是:C:\ProgramData\VMware。
vmnetnat-mac配置里,是vmnet的网关192.168.80.2MAC地址配置,可修改,修改时,以管理员打开文件编辑器,如Ultraedit
vmnetnat.conf配置里,是VMware workstation的全局配置文件,可修改,修改时,以管理员打开文件编辑器,如Ultraedit
netmap.conf配置里,是虚拟网卡名称和编号的对应关系
注:VMware MAC地址一般以00:50:56作为网卡厂商标识符,因为是虚拟化软件,在实验环境中可以自己设定MAC地址,这样的设置同样适合vsphere- VMware workstation可执行程序目录:
这个目录通常为:C:\Program Files (x86)\VMware\VMware VIX,目录下放置了vmrun.exe,可以通过命令行管理VMware workstation
VMware workstation批量创建虚拟机和自动化安装操作系统(一)的更多相关文章
- VMware workstation批量创建虚拟机和自动化安装操作系统(二)
一. 简述 在上一篇<VMware workstation批量创建虚拟机和自动化安装操作系统(一)>中,主要介绍了VMware workstation自定义创建虚拟机的过程,和一些其他的有 ...
- VMware Workstation批量克隆虚拟机
由于经常要用vmware创建虚拟机做一些测试,集群的测试使用连接克隆,可以节省磁盘的空间(如果不是因为穷,没人愿意向生活低头) 于是找到了这个bat脚本,做了一些修改和学习,为大家加上了一些注释,方便 ...
- VMware Workstation 软件 创建 Ubuntu 14.04虚拟机
VMware Workstation 软件 创建 Ubuntu 14.04虚拟机 1. 安装VMare Workstation 软件 下载VMware 11 软件 http://www.dntk.or ...
- 如何在VMware workstation上创建Linux虚拟机
由于需要使用Linux虚拟机部署Hadoop集群,故在win10系统上安装了VMware workstation 14,现将介绍如何在VMware workstation上创建Linux虚拟机.下面以 ...
- VMware® Workstation 15 Pro 最新版软件安装教程
VMware 15 Pro下载地址: https://pan.baidu.com/s/1ILY2PTqB-BaJMn2hbKO4CA 提取码:vebd 如有问题咨询QQ:2217084817 VMwa ...
- 103、kickstart自动化安装操作系统
103.1.前言: 作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的办法有: 光盘安装系统===>一个 ...
- 35、cobbler自动化安装操作系统
35.1.cobbler介绍: Cobbler是独立的,不需要先安装Kickstart然后再安装Cobbler: Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速 ...
- 自动化安装操作系统(Centos7+PXE+Cobbler+kickstart)
一.简介 PXE称作是一种引导方式而不是安装方式似乎更加准确,PXE(Pre-boot Execution Environment)是由Intel设计的协议,它可以使计算机通过网络启动,但是有一个前提 ...
- 使用VMware Workstation Pro 12 虚拟机安装Mac OS系统教程 全程图解
导读:使用虚拟机安装Windows.Linux或者Ubuntu系统大家或许看了很多,但如何使用VMware Workstation Pro 12安装Mac OS,的确需要好好研究一番:否则无法下手,因 ...
随机推荐
- asp.net mvc中html helper的一大优势
刚上手这个框架,发现其中的html helper用起来很方便,让我们这些从web form 过渡来的coder有一种使用控件的快感,嘻嘻! 言归正传,我要说的是在使用它时,系统会自动执行表单的现场恢复 ...
- 实现Runnable接口和继承Thread类之间的区别
在Java语言中,我们都知道,有两种创建线程的方式,一中是使用Runnable接口,另一种是使用Thread类. public class DemoRunnable implements Runnab ...
- druid参数配置说明
配置 缺省值 说明 name 配置这个属性的意义在于,如果存在多个数据源,监控的时候可以通过名字来区分开来.如果没有配置,将会生成一个名字,格式是:"DataSource-" ...
- js移动端/H5同时选择多张图片上传并使用canvas压缩图片
最近在做一个H5的项目,里边涉及到拍照上传图片的功能以及识别图片的功能,这里对识别图片的功能不做赘述,不属本文范畴.我在做完并上线项目后,同事跟我提了一个要求是可不可以同时选择多张图片上传,我做的时候 ...
- 利用jenkins做项目的自动化部署
最近领导要求上海本地的项目需要使用进jenkins实现自动化部署,以便可以直接将项目移交给运维的同学,减轻开发的工作量.记录下这次爬坑的过程. 一.前言 Jenkins是基于Java开发的一种持续集成 ...
- 探索Windows命令行系列(6):活用批处理解决实际问题
1.批量修改文件名 2.批量重启服务 3.全盘搜索指定文件 3.1.全盘搜索名称为 mm.jpg 的文件,获取其全路径 3.2.查找系统中所有名称以 .docx 结尾的文件 4.调用可执行程序 4.1 ...
- 【LeetCode】98. Validate Binary Search Tree
题目: Given a binary tree, determine if it is a valid binary search tree (BST). Assume a BST is define ...
- 【LeetCode】225. Implement Stack using Queues
题目: Implement the following operations of a stack using queues. push(x) -- Push element x onto stack ...
- 4.如何实现用MTQQ通过服务器实现订阅者和发布者的通讯
1.本例子意在用moquette服务器来作为消息转发,通过订阅者订阅消息,发布者发布消息,然后发布者的消息可以通过服务器转发给订阅者 服务器例子: https://github.com/andsel/ ...
- 如何简单的实现新手引导之UGUI篇
一个完整的游戏项目肯定是要做新手引导的,而引导做的好坏可能会影响玩家的留存.那么怎么简单的实现个简有效的引导呢!先不说废话,先看看效果,这是一个基于UGUI做的一个简单的引导! 怎么样,看着是那么回事 ...