Linux平台下用shell脚本批量创建虚拟机(KVM)

参照上篇博客编写的脚本,具体的东西就不介绍了,如果看不懂的请移步:KVM虚拟机的改良版脚本 脚本为比较初级的版本,内存,CPU的大小默认为模板机的内存和CPU大小。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#!/bin/bash

src_img="/var/lib/libvirt/images/.centos7.qcow2"
src_xml="/etc/libvirt/qemu/.centos.xml"

dest_img_dir="/var/lib/libvirt/images/img/"
dest_xml_dir="/etc/libvirt/qemu/xml/"

read -p "请输入创建虚拟机的数量:" number

num=1
host=0

while :
do
for i in seq $number
do
name=server${num}

if [ -e $dest_img_dir/$name.img ];then
num=$[$num+1]

continue

else

qemu-img create -b $src_img -f qcow2 ${dest_img_dir}${name}.img &> /dev/null

cp $src_xml ${dest_xml_dir}${name}.xml &> /dev/null

sed -i "s/NAME/${name}/" ${dest_xml_dir}${name}.xml &> /dev/null

virsh define ${dest_xml_dir}${name}.xml &> /dev/null

virsh start $name &> /dev/null
echo -e "\033[创建并启动虚拟机....... \033[32m[OK]\033[0m"
host=$[$host+1]
fi

done

if [ $host -eq $number ];then

exit
fi
done

提示

写完脚本之后,运行时可以使用下面命令查看运行过程:

1
[root@localhost /]# sh -x 脚本名称