Linux KVM虚拟化
镜像安装虚拟机
virt-manager 打开图形化虚拟管理界面
采用超级用户运行图形化虚拟机管理工具
选择第一个本地镜像安装
选择本地镜像文件的路径
选择好配置内存大小 安装图形模式必须大于768MIB
设置硬盘大小 安装图形必须大于5G
给新虚拟机设定名称 勾选Customize在安装虚拟机之前设定虚拟机硬件
硬盘和网卡选择虚拟输出
进入虚拟机安装
选择安装时的语言
选择时区
选择系统语言
选择需要安装的系统类型
选择手动给硬盘分区
主要分三个区 / /boot swap
swap:虚拟交换分区(暂时的),内存使用量达到80%以上,将硬盘的一部分当作内存使用,
内存释放到小于80%时,交给内存处理
确认接受刚才配置的变更
基本配置设置完成,继续下一步
设定超级用户密码
密码强度不大时,需要单击两次Done才能生效
重启后确认接受许可证协议
选择系统语言
选择输入法
选择时区
新建一个用户并设定密码,完成虚拟机安装
虚拟机复制 (远程获取)
从别人的主机中克隆一个已经安装好的虚拟机
复制虚拟机所须文件
scp root@172.25.254.22:/var/lib/libvirt/images/generic.qcow2 /var/lib/libvirt/images/ 复制系统硬盘
scp root@172.25.254.22:/etc/libvirt/qemu/generic.xml /mnt/generic.xml 复制硬件信息
在自己的主机中恢复出一个一样的虚拟机
virsh create /mnt/generic.xml 用虚拟机硬件文件一次性打开虚拟机,关闭即消失
virsh define /mnt/generic.xml 永久恢复
虚拟机管理的命令
virsh list | 列出正在运行的虚拟机 |
---|---|
virsh list --all | 列出所有虚拟机 |
virt-manager | 打开虚拟机管理器 |
virsh start name | 开启虚拟机 |
virt-viewer name | 显示虚拟机 |
virsh shutdown name | 正常关闭虚拟机 |
virsh destroy name | 强制断电(force off) |
virsh undefine name | 删掉虚拟机硬件信息 |
rm -fr /var/lib/libvirt/images/vmname.qcow2 | 删除虚拟机硬盘 |
virsh list 正在运行的虚拟机
virsh list --all 显示所有虚拟机
virsh start name 打开虚拟机
virsh shutdown node1 正常关闭虚拟机
virsh destroy node1 强制关闭
虚拟机快照安装
- 磁盘“快照” : 是虚拟机磁盘文件(VMDK)在某个点及时的复本
- 用一个文件放到真实的文件面前 ,看到的是真实的文件, 使用的是快照,不对的时候舍弃快照,再拿来一个新的
- 在真机的root下面进行 其实所有改的都是原来的虚拟机信息
qemu-img create -f qcow2 -b /var/lib/libvirt/images/name.qcow2 /var/lib/libvirt/images/node1.qcow2
给新建的系统硬盘name做一个快照node1
选择新建方式为已经存在的硬盘
选择我们做好的快照
完成快照虚拟机建立
shell脚本建立虚拟机
利用运行脚本来创建虚拟机
- 首先在 /usr/bin 下建立脚本
vim /usr/bin/vm_create.sh
#!/bin/bash
virt-install \ 运行安装
--name $1 \ 设置名称 $1表示命令语句后第一个字符为虚拟机名称
--cdrom /home/kiosk/Desktop/rhel-server-7.3-x86_64-dvd.iso \ 选择镜像文件位置
--memory 1024 \ 设置内存
--vcpus 1 \ 设置cpu
--disk /var/lib/libvirt/images/$1.qcow2,size=8,bus=virtio \ 设置虚拟机硬盘位置 大小 输出类型
--network bridge=br0,model=virtio &> /dev/null & 设置网卡和其类型
完成脚本编写后,输入指令
chmod +x /usr/bin/vm_create.sh 使vm_create.sh 使文本拥有执行权限
vm_create.sh name 运行脚本,创建虚拟机
可以将多脚本组合使用
#!/bin.bash
case $1 in
install)
virt-install \
–name $1
–cdrom /home/kiosk/Desktop/rhel-server-7.3-x86_64-dvd.iso
–vcpus 1
–memory 1024
–disk /var/lib/libvirt/images/$1.qcow2,size=8,bus=virtio
–network bridge=br0,model=virtio &> /dev/null &
;;
snapvm)
read -p “请输入要备份的虚拟机名称” NAME
read -p “请输入要快照名称” NNAME
qemu-img create -f qcow2 -b /var/lib/libvirt/images/&{NAME}.qcow2
/var/lib/libvirt/images/&{NNAME}.qcow2 &> /dev/null
virt-install
–name $NNAME
–vcpus 1
–memory 1024
–disk /var/lib/libvirt/images/$2.qcow2,bus=virtio
–network bridge=br0,model=virtio
–import &> /dev/null &
;;
delete)
virsh destroy $2
virsh undefine $2
rm -rf /var/lib/libvirt/images/$2.qcow2
;;
esca