虚拟机续集:自动创建虚拟机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 & ###后台运行,不占用终端
~
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
但是这个配置文件只能建立一个虚拟机,想要再建立一个就要把配置文件里的名字改调然后再运行

如果运行文件时加上名字直接建立虚拟机就很方便

#!/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 &
~
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
可是下面这些报错让人很头疼,对客户来说也没用,那如何去掉呢?
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
只需要在配置文件下加入> /dev/null &表示放入垃圾箱
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

(二)自动化建立虚拟机快照
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 &
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
可以看到创建快照后下面会有好多报错信息,处理办法和上面一样
#!/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 & ###修改这里

虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
修改之后的结果
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

(三)kickstart自动安装虚拟机
1、首先确保环境配置好了,有kickstart服务
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
2、用kickstart工具来制作安装系统的配置文件
先打开kickstart configurator 窗口
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

2.1基础设置(语言、键盘、时区)
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
中间为设置密码,别和我一样忘记填写

2.2安装方式选新的安装,安装源选网络形式,填写自己上传的地址
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

2.3boot引导选项
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

2.4分区信息
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
2.5网络配置
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

2.6认证
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机

2.7火墙配置
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
2.8 Display Configuration选Disabled
剩下最后三项暂时不设置,遵从默认设置,然后点击左上角保存到/mnt下并关闭窗口

此时进入/mnt可以看到建立的ks.cfg文件
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
2.9在文件中进行进一步的配置
在文件的最下方添加
%pavkages
@base
lftp
%end
在这个过程中可以用ksvalidator ks.cfg命令查看是否有错
如内容少写了最后一行执行命令后会报错
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
编写成功后把ks.cfg拷到/var/www/html/下就可以在网上查看这个配置文件
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
3.编写安装脚本
在/mnt/下新建一个vm_create2.sh文件
虚拟机续集:自动创建虚拟机virt-install、自动创建快照、kickstart自动安装虚拟机
编写完了/mnt/vm_create2.sh szm3
即可建立一个新的虚拟机szm3

好了,今天的虚拟机管理就先到这里,欢迎大家留言探讨
附上一片虚拟机的文章(虚拟机的管理(libvirtd)、移植和快照)链接https://mp.****.net/mdeditor/83388085#