此操作的目的是为了实现,企业中一台有网卡的主机给多台主机进行自动安装虚拟机的功能,以下最重要的模块必须在该台主机中提前搭建。
(该实验安装的虚拟机是没有界面的)
1. 搭建yum源 共享yum源 开启http服务 关闭防火墙
2. 搭建dhcp服务 开启dhcp服务 因为是通过网络资源进行安装 要能够给安装的虚拟机分配ip使他通过ip分配访问网络资源
3.安装 形成自动安装系统脚本的编辑软件 system-config-kickstart 开启该软件会填写图形界面信息,信息填写完成后 会在保存信息的地方生成脚本,生成此脚本为了让系统自动填入安装所需信息
开启http服务 关闭防火墙 共享yum源
见博客《Linux中的软件管理》共享yum源
yum install httpd##当系统中无http软件时需要下载
systemctl start httpd ##下载后开启该服务
systemctl stop firewalld ##关闭防火墙
开启dhcp服务
见博客《dhcp动态网络分配》
安装系统脚本的建立
yum search system-config-kickstart ##寻找生成自动安装脚本的安装包
yum install system-config-kickstart-noarch ##安装该安装包
system-config-kickstart ##执行该命令 图形界面过程填入的信息最终转化为脚本(该信息是安装虚拟机前需要填写的信息
添加内容:
vim /ks.cfg ##添加内容
%packages ##安装包
@base
%end
cp /ks.cfg /var/www/html/ ##可以将生成的脚本复制到共享性文件 实现共享功能 也可以在形成脚本最后的保存时 将脚本直接保存到共享性文件下就不用进行该操作
如何使用system-config-kickstart软件 形成安装系统脚本以下是具体步骤
system-config-kickstart ##打开软件进行以下操作
设定分区 /boot swap /
分区创建完成后如图所示
按file进行保存 选择路径保存 完成创建
建立全自动虚拟机的脚本
cd /mnt ##进入脚本所在的目录 编辑脚本
vim vm_create.sh
sh vm_create.sh westos ##此时执行此脚本可以创建一台名为westos的虚拟机
接着上篇半自动的脚本补充内容
(见博客《虚拟机的半自动安装及快照的生成》)
test -z "$1" && {
echo "Error:please input VMname folowing scripts !!"
exit
}
virt-install \
--name $1 \
--location http://172.25.254.2/westos \ ##改变为使用网络资源途径下载系统
--memory 1024 \
--vcpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \
--network source=br0,model=virtio \
--extra-args "ks=http://172.25.254.102/ks.cfg" ##系统安装前信息的选择脚本
man 1 virt-install ##查看安装虚拟机的说明书 里面有所需信息对应的语法格式
执行命令后可以全自动的进行虚拟机的安装 安装成功后显示界面 表示虚拟机安装成功