文章目录
1.虚拟化管理
1.1 理解
虚拟化管理:虚拟化技术是一种将计算机物理资源进行抽象、转换为虚拟的计算机资源提供给程序使用的技术。这里所指的计算机资源,就包括了 CPU 提供的运算控制资源,硬盘提供的数据存储资源,网卡提供的网络传输资源等。应用于计算机资源的管理.
1.2 工具
***虚拟机管理器(Virtual Machine Manager or virt-manager)***:需要在虚拟机中配置更多详细信息则需要用到虚拟机管理器。
1.3 前提
自己的系统是否支持虚拟化,
cat /proc/cpuinfo ---- ##出现 svm、vmx则为支持虚拟化;
2.安装虚拟机的方法
2.1手动安装虚拟机
(2.1.1)硬盘信息安装
step1:真机shell输入virt-manager,会看到虚拟机管理界面
step2:点击左上角的小太阳,会出现如下界面,选择local install media,并且选择下一步forward.step3:选择虚拟机镜像的存放路径step4:内存和cpu的设定
step5:硬盘大小的设定step6:虚拟机的命名,默认安装;
step7:将硬盘(Disk)网卡(NIC)虚拟化;注意:apply.2.1.2硬件信息安装
***step1***选择安装版本(默认为第一个),按空格键确认;
***step2***语言的安装(默认英语)
step3 install summary
(1)LOCALIZATION
①时区:Asia/Shanghai
②keyboards:english;
③语言支持:中文简体,否则中文会乱码;
(2)SOFTWARE
②software selection;选择Server with GUI
VirtualizationClient
(3)SYSTEM
①(installtion destination)
step4 ROOT&USER,完成后启动虚拟机
2.1.3重启后的设置
2.2 命令安装和删除虚拟机
2.2.1 优点:(命令安装)服务器较多的情况下,则需要利用shell命令行安装;快速,高效。
2.2.2步骤:
功能 | 命令 | 注释 |
---|---|---|
1.安装 ① | vim vm_install.sh | ## 打开shell脚本 |
② | 对shell脚本进行编辑 | 注意:(1)换行符 \之后不能有空格,正常情况下换行符为橘黄色,否则为黑色 |
③ | sh vm_install.sh jerry | 生成虚拟机jerry |
④ | virsh list --all | ##列出所有的虚拟机,进行验证,然后就可以进行手动安装了 |
2.虚拟机的命令删除① | vim vm_undefine.sh | ##打开shell脚本 |
② | 对shell脚本进行编辑 | 注意:(1)换行符 \之后不能有空格,正常情况下换行符为橘黄色,否则为黑色 |
③ | virt-manager | ##打开虚拟机管理器 |
④ | sh vm_undefine.sh jerry | ##删除虚拟机jerry,最后观察结果 |
Result1! 虚拟机的命令安装
其中:参数说明如下:
参数 | 注释 |
---|---|
#!/bin/bash | ## shell脚本的头部 |
virt-install | ##使用命令与换行符 | |
–name $1 \ | ##名字、$1环境变量与换行符 |
–cdrom /root/Desktop/rhel-server-7.3-x86_64-dvd.iso | ## 镜像的存放路径与换行符 | |
–ram 1024 \ | ##占用内存大小与换行符 |
–vcpus 1 \ | ##占用cpu大小与换行符 |
–disk /var/lib/libvirt/images/$1.qcow2,size=6,bus=virtio \ | ##物理硬盘的相关信息与换行符 |
–network bridge=br0,model=virtio &> /dev/null & | ##网络的信息以及将错误定向输出到垃圾桶不让它占用终端 |
Result2! 虚拟机的命令删除
3.虚拟机的管理
功能 | 命令 | 注释 |
---|---|---|
1.虚拟机的常规操作(真机) | virsh list | ##列出所有正在开启的虚拟机 |
virsh list --all | ##列出所有的虚拟机,包括开启的和关闭的 | |
virsh start johnsonlee | ##开启johnsonlee虚拟机 | |
virsh destroy johnsonlee | ##关闭johnsonlee虚拟机,强制断电 | |
virshshutdown johnsonlee | ##正常断电 | |
rm -rf /var/lib/libvirt/images/vmname.qcw2 | ##删除虚拟机硬盘 | |
virt-viewer johnsonlee | ##可视化查看johnson状态 | |
virsh undefine johnsonleel | ##永久关掉虚拟机 | |
2.虚拟机的复制 | ## | |
(1) | scp root@ip:/var/lib/libvirt/images/westos.qcow2 /mnt/ | ##复制对方的虚拟机的硬盘信息 (disk) |
(2) | scp root@ip:/etc/libvirt/qemu/westos.xml /mnt/ | ##复制对方的虚拟机的硬件信息(0hardware) |
(3) | mv /mnt/westos.qcow2 /var/lib/libvirt/images/ | ##将硬盘信息和硬件信息放在同一个目录下 |
(4) | virsh create /mnt/westos.xml | ##一次打开虚拟机 |
(5) | virsh define /mnt/westos.xml | ##永久恢复(在)虚拟机 |
(6) | virt-manager | ##选择已经存在的硬盘进行安装,后面的步骤同手动安装 |
Result1 虚拟机的常规操作
Result2 虚拟机的复制安装
4.虚拟机的快照管理
4.1理解
快照:(1)磁盘“快照”是虚拟机磁盘文件(VMDK)在某个点及时的复本,统崩溃或系统异常,你可以通过使用恢复到快照来保持磁盘文件系统和系统存储。当升级应用和服务器及给它们打补丁的时候,快照很关键,快照是可逆的。
(2)原理:用一个文件放到真实的文件面前 ,看到的是真实的文件, 使用的是快照
不对的时候舍弃快照,再拿来一个新的。
4.2手动快照步骤
序号 | 命令 | 注释 |
---|---|---|
① | cd /var/lib/libvirt/images/ | ##在真机的root下打开镜像目录,为了后期的相对路径 |
② | qemu-img create -f qcow2 -b /var/lib/libvirt/images/johnsonlee.qcow2 /var/lib/libvirt/imag /node1.qcow2 | ## -f (我们要建虚拟机快照的硬盘格式 )-b (备份虚拟机的硬盘信息 )/var/lib/libvirt/images/johnsonlee.qcow2(真实虚拟机的硬盘路径) /var/lib/libvirt/imag /node1.qcow2(虚拟机的快照路径) |
③ | ls | ## 查看快照是否生成 |
④ | du -sh node1.qcow2 | ## 查看快照文件的大小 |
⑤ | file node1.qcow2 | ## 回到查看真正文件的大小 |
⑥ | virt-manager | ## 查看虚拟机管理器 |
⑦ | ##然后给快照导入路径 ,改名字为node1 | |
⑧ | ##分配内存和cpu | |
⑨ | ## 改名,不选择默认安装 |
4.3结果
4.4 命令行安装快照步骤
序号 | 命令 | 注释 |
---|---|---|
① | cd /mnt/ | ## 在真机的root下打开该目录,在该目录下建立脚本设置快照 |
② | vim vm_snap.sh | ## 打开shell脚本 |
③ | 对shell脚本进行编辑 | 注意:(1)换行符 \之后不能有空格,正常情况下换行符为橘黄色,否则为黑色 |
④ | ##然后退出保存即可,点击小太阳,点击import | |
⑤ | sh vm_snap.sh $1(原来虚拟机的名字) $2(快照虚拟机的名字) | ##可以建立一个快照虚拟机 |
其中:
脚本 | 注释 |
---|---|
#!/bin/bash | ## 该脚本头文件 |
cd /var/lib/libvirt/images | ##为了下面使用相对路径方便 |
qemu-img create -f qcow2 -b $1.qcow2 $2.qcow2 &> /dev/dull | ##创建虚拟机的快照,并且将输出重定向输出到垃圾桶 |
virt-install \ | ##使用命令 |
–name $2 \ | ##虚拟机快照的名字 |
–ram 1024 \ | ##快照的内存大小 |
–vcpus 1 \ | ##快照的cpu大小 |
–disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \ | ##快照的硬盘信息 |
–network bridge=br0,model=virtio | ## 快照的网络信息 | |
–import &> /dev/null & | ##导入快照的路径,并且将输出重定向输出到垃圾桶,将该进程在后台运行 |
5.综合文本实现多个功能
序号 | 命令 | 注释 |
---|---|---|
① | cd /mnt/ | ## 在真机的root下打开该目录,在该目录下建立脚本设置功能 |
② | vim test.sh | ## 打开shell脚本,进行编辑,导入虚拟机基本信息,并在后台运行、输出重定向;使用case … esac语句适应用户的多种选择。 |
③ | chmod +x test.sh | ##添加可执行权限 |
④ | /mnt/test.sh delete virtname | ##删除的验证 |
⑤ | /mnt/test.sh install virtname | ##新建的验证 |
⑥ | /mnt/test.sh snapvm | ##快照的验证 |