虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
(一)自动创建虚拟机virt-install
首先可以通过man virt-install查看配置的书写格式
cd /mnt
vim virt_create.sh
文件中的内容
#!/bin/bash
virt-install
–cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso \ ##安装方式为cdrom并输入镜像位置
–vcpus 1 \ ##设置cpu
–memory 1000 \ ##设置内存
–disk /var/lib/libvirt/images/linux.qcow2,size=9,bus=virtio \ ##硬盘大小为9GB,硬盘采用虚拟化的方式,硬盘文件以.qcow2形式存放在/var/lib/libvirt/images
–network source=br0,model=virtio \
–name linux & ###后台运行,不占用终端
~
但是这个配置文件只能建立一个虚拟机,想要再建立一个就要把配置文件里的名字改调然后再运行
如果运行文件时加上名字直接建立虚拟机就很方便
#!/bin/bash
virt-install
–cdrom /home/kiosk/Desktop/rhel-server-7.0-x86_64-dvd.iso
–vcpus 1
–memory 1000
–disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \ ###把原来的linux.qcow2改为$1.qcow2,就是以输入的名字命名
–network source=br0,model=virtio
–name $1 &
~
可是下面这些报错让人很头疼,对客户来说也没用,那如何去掉呢?
只需要在配置文件下加入> /dev/null &表示放入垃圾箱
(二)自动化建立虚拟机快照
vim vm_snopshot.sh
chmod +x vm_snopshot.sh ###给一个执行权限
在vm_snopshot.sh文件中输入:
#!/bin/bash
echo “create vm $2 ing…”
qemu-img create -f qcow2
-b /var/lib/libvirt/images/$1.qcow2
/var/lib/libvirt/images/$2.qcow2 &
virt-install
–name $2
–vcpus 1
–ram 1000
–disk /var/lib/libvirt/images/$2.qcow2,bus=virtio
–network source=br0,model=virtio
–import &
可以看到创建快照后下面会有好多报错信息,处理办法和上面一样
#!/bin/bash
echo “create vm $2 ing…” ##修改这里,执行命令后的提示语句
qemu-img create -f qcow2
-b /var/lib/libvirt/images/$1.qcow2
/var/lib/libvirt/images/$2.qcow2 &> /dev/null ###修改这里
virt-install
–name $2
–vcpus 1
–ram 1000
–disk /var/lib/libvirt/images/$2.qcow2,bus=virtio
–network source=br0,model=virtio
–import &> /dev/null & ###修改这里
修改之后的结果
(三)kickstart自动安装虚拟机
1、首先确保环境配置好了,有kickstart服务
2、用kickstart工具来制作安装系统的配置文件
先打开kickstart configurator 窗口
2.1基础设置(语言、键盘、时区)
中间为设置密码,别和我一样忘记填写
2.2安装方式选新的安装,安装源选网络形式,填写自己上传的地址
2.3boot引导选项
2.4分区信息
2.5网络配置
2.6认证
2.7火墙配置
2.8 Display Configuration选Disabled
剩下最后三项暂时不设置,遵从默认设置,然后点击左上角保存到/mnt下并关闭窗口
此时进入/mnt可以看到建立的ks.cfg文件
2.9在文件中进行进一步的配置
在文件的最下方添加
%pavkages
@base
lftp
%end
在这个过程中可以用ksvalidator ks.cfg命令查看是否有错
如内容少写了最后一行执行命令后会报错
编写成功后把ks.cfg拷到/var/www/html/下就可以在网上查看这个配置文件
3.编写安装脚本
在/mnt/下新建一个vm_create2.sh文件
编写完了/mnt/vm_create2.sh szm3
即可建立一个新的虚拟机szm3
好了,今天的虚拟机管理就先到这里,欢迎大家留言探讨
附上一片虚拟机的文章(虚拟机的管理(libvirtd)、移植和快照)链接https://mp.****.net/mdeditor/83388085#