虚拟机封装
- 将一个虚拟机设置成类似于一个安装包的东西(母盘),使用该虚拟机的母盘可以在其他的主机上快速的安装处于该设置好的虚拟机完全一样的虚拟机。
根据需要使用镜像文件安装一台虚拟机,该虚拟机的硬盘文件将作为母盘,通过快照可以快速的生成更多的虚拟机,使用快照产生的虚拟机不会影响母盘中的设置。
rhel-7.3 虚拟机的封装
根据需要确定母盘虚拟机的配置(内存大小,硬盘大小,以及安装的包的数量等),这里使用最小安装无图形模式:
1 正常安装虚拟机:虚拟机安装
注意:
根据需要选择内存大小,cpu核数 以及硬盘大小等
软件包选择最安装,磁盘分区选择自动分区
安装完成。
2 对安装好的虚拟机进行初步的设置:根据需要对母盘虚拟机进行基础设置
(1)更改主机名
[root@server ~]# hostnamectl set-hostname server # 可以讲主机名称修改成便于识别的
[root@server ~]# hostname
server
(2)更改网络配置
使用最小安装出来的虚拟机的物理网卡可能显示为ens3 。将ens3更改为eth0 :
将/boot/grub2/grub.cfg文件中的99行末尾 添加net.ifnames=0
随后正常编写网络配置文件:
[root@server ~]# cd /etc/sysconfig/network-scripts/
[root@server network-scripts]#vim ifcfg-eth0
DEVICE=eth0
NAME=eth0
BOOTPROTO=none
ONBOOT=yes
IPADDR=172.25.47.100
PREFIX=24
(3)关闭网络管理器服务
由于该服务可能对我后续的实验造成影响,所以进行关闭,具体情况根据实际使用情况进行设置。
[root@server ~]# systemctl stop NetworkManager
[root@server ~]# systemctl disable NetworkManager
(4)配置yum源
[root@server network-scripts]# cat /etc/yum.repos.d/westos.repo
[rhel7.3]
name=rhel7.3
baseurl=http://172.25.47.250/toto #自己设置一个可以使用的yum源
gpgcheck=0
(5)其他:
- 关闭火墙,设计开机不自启
- 更改强制级为disabled
- 添加本地解析
- 安装必要的服务以及工具(根据实际情况安装)安装vim lftp net-tools(管理网络的配件,可以使用ifconfig)
其实以上所有的安装好的虚拟机的设置,都可以更具实际需要进行决定不去进行,或者进行更多的设置或者安装更多的服务
关闭虚拟机 使用该虚拟机的母盘文件创建快照
在/var.lib/libvirt/images/ 目录中可以看到刚才设置好的虚拟机的硬盘(.qcow2)文件,以该文件为母盘,可以快照出来任意个.qcow2快照文件,使用快照文件可以快速的安装一台和设置好的一模一样的虚拟机。
快照命令:qemu-img create -f qcow2 -b base-rhel7.3.qcow2 luck1
注意:一旦设置好母盘文件,该母盘文件便不可被修改,该文件一旦修改,使用该母盘文件创造出来的所有快照虚拟机都将无法使用。所以一旦设置好,不能再打开使用母盘虚拟机