Linux系统运维--虚拟化

Linux系统运维之虚拟化

虚拟化意思是使用软件模拟硬件的功能,在一台真实的电脑上搭载多个操作系统并分配适当的硬件资源,这样,只需要几台有限的电脑就能够完成以前需要用很多电脑才能完成的工作
想要安装一个虚拟机首先要有一个系统的镜像,其次是电脑本身的硬件要支持虚拟化我们将镜像安装在U盘里或者刻录在光盘里,然后选择从U盘或光盘启动
Linux系统运维--虚拟化
1 选择第一行:开始装机
Linux系统运维--虚拟化
2 这里选择的是装机过程中使用的语言,不是系统语言
选择好之后,继续

Linux系统运维--虚拟化
3 可以看到有很多的配置选项
我们先选择时间
Linux系统运维--虚拟化
4 配置键盘
Linux系统运维--虚拟化
5 语言,注意:这里选择的是系统支持的语言,一定要选上中文。
Linux系统运维--虚拟化
6 装机模式,选择GUI,意思是带有图形界面的,否则你的系统装完就只有文本界面
Linux系统运维--虚拟化
7 硬盘资源分配
Linux系统运维--虚拟化
8 我的电脑最后改完是这个样子的(每个人需求不同,按需定制)
Linux系统运维--虚拟化
9 配置完后继续,会看到这个界面
Linux系统运维--虚拟化
10 左边是这个系统的超级用户密码,右边是建立一个普通用户(可以不建立)
把超级用户密码设置好之后,就开始自动装机了

Linux系统运维--虚拟化
11 随后出现一个这样的界面
Linux系统运维--虚拟化
12 选择你的系统语言
Linux系统运维--虚拟化
13 选择打字时的输入法
Linux系统运维--虚拟化
14 选择时区(我们的是上海时区)
Linux系统运维--虚拟化
15 完成
Linux系统运维--虚拟化

虚拟机的控制

命令 作用
virt-manager 开启虚拟机管理器(图形)
virsh list 显示正在运行的虚拟机
virsh list --all 查看所有虚拟机
virsh start 打开虚拟机
virsh shutdown 关闭虚拟机
virsh destory 强行关闭虚拟机
virt-viewer 显示虚拟机(就是打开虚拟机的界面)

虚拟机快照

很多时候,我们拷贝来的虚拟机文件很大,万一操作不当导致虚拟机崩溃,再拷贝很麻烦。这个时候我们就需要给虚拟机文件来个快照
就像PS一样

1 先建立一个图层,所有操作都在图层上进行,万一操作错误还有原始文件可以再次PS
qemu-img create -f qcow2 -b /var/lib/libvirt/images/generic.qcow2 /var/lib/libvirt/images/&&&.qcow2 ##为指定文件创建一个名为&&&的快照
-f &&& ##指定创建的快照的文件类型
-b &&& ##指定需要被创建快照的文件

2 然后我们使用虚拟机控制界面,建立虚拟机,选择这个
Linux系统运维--虚拟化

3 然后选择我们刚刚创建的快照文件
启动虚拟机就可以使用了,如果操作不当导致虚拟机崩溃,只需要删除当前的快照,然后重新照一张快照就可以了

使用命令删除虚拟机

上文说过虚拟机的文件组成包含两个文件,一个是虚拟机的硬盘文件(以.qcow2结尾),另一个是虚拟机的前端管理文件(以.xml结尾)
如果想要删除虚拟机们就需要将这两个文件都删除

virsh undefine &&& ##删除&&&虚拟机的前端管理文件

rm -fr /var/lib/libvirt/images/&&&.qcow2 ##删除&&&虚拟机的硬盘文件

虚拟机脚本

1 命令一行如果写不下,可以在参数后加上空格\,按enter换行的时候就可以在第二行继续输入命令在一个文件(比如起名叫north)里写下。
#!/bin/bash
virt-install
–cdrom /home/kiosk/Desktop/rhel-server-7.3-x86_64-dvd.iso
–memory 1000
–vcpus 1
–disk /var/lib/libvirt/images/$1.qcow2,size=8,bus=virtio
–network bridge=br0,model=virtio
–name $1

2 然后执行这个文件sh north &&&,就可以建立一个名为&&&的虚拟机
上面脚本中$1的意思是占位符,这样在运行文件时就可以写下需要创建的虚拟机的名字了

执行这个命令
Linux系统运维--虚拟化
3 使用快照建立虚拟机脚本

#!/bin/bash
qemu-img create -f qcow2 -b
/var/lib/libvirt/images/$1.qcow2
/var/lib/libvirt/images/$2.qcow2
virt-install
–name $2
–memory 1000
–vcpus 1
–disk /var/lib/libvirt/images/$2.qcow2,bus=virtio
–network bridge=br0,model=virtio
–import

4 可以看到脚本无非就是在文件里写上某个命令和输入参数,之后执行文件其实就是让电脑自动执行命令的过程