KVM 全称为 Kernel-based Virtual Machine。
环境准备
主机名 | IP 地址 | 内存大小 |
---|---|---|
kvm01 | 10.0.1.11 | 4G |
kvm02 | 10.0.1.12 | 2G |
1、在两台主机开启 vt 虚拟化:
在两台主机安装如下软件包:
3、宿主机安装 VNC-Viewer。
4、启动服务:
5、上传一个 CentOS 7 镜像到 kvm01 主机的 /opt
目录下:
安装虚拟机
1、在 kvm01 主机执行下面命令通过上传的镜像安装虚拟机:
2、在宿主机使用 VNC-Viewer 连接 kvm01 主机的 5900
端口:
3、执行安装操作:
基本操作
1、查看虚拟机列表:
2、启动虚拟机:
3、正常关闭虚拟机:
4、强制关闭虚拟机(相当于拔电源):
5、导出虚拟机的配置信息:
6、删除虚拟机:
7、根据配置文件导入虚拟机:
8、交互式编辑配置文件:
9、重命名虚拟机:
10、挂起虚拟机(挂起前虚拟机需要处于开机状态):
11、恢复虚拟机:
12、查看指定虚拟机短格式的端口号:
13、让虚拟机开机自启:
14、查看以设定开机自启的虚拟机:
15、取消虚拟机的开机自启:
16、控制台登录:
要使用 virsh
提供的 console
子命令登录 CentOS 7 虚拟机,需要先使用 VNC Viewer 登录虚拟机修改内核参数:
然后执行重启虚拟机,就可以在 kvm01 主机中通过如下方式登录虚拟机:
虚拟磁盘管理
在本示例中,虚拟磁盘文件就保存在 kvm01 主机的 /opt
目录中,如下:
虚拟磁盘文件有如下两种格式:
- raw: 裸格式,占用空间比较大,不支持快照功能,不方便传输 ,读写性能较好,以 50G 大小的虚拟磁盘为例,如果占用了 5G,那么传输时还是需要传输 50G;
- qcow2:qcow(copy on write)占用空间小,支持快照,性能比 raw 差一点,方便传输,以 50G 大小的虚拟磁盘为例,如果占用了 5G,那么传输时仅需传输 5G 即可;
虚拟磁盘文件格式在安装虚拟机时就可以使用 format
参数指定,如下:
虚拟磁盘的管理需要使用 qume-img
工具,下面演示一下它的常用操作。
1、查看虚拟磁盘信息:
2、创建一块 qcow2
格式的虚拟磁盘:
3、调整虚拟磁盘的容量:
4、将 raw
格式虚拟磁盘文件转换为 qcow2
格式:
5、做完磁盘格式转换后,对应虚拟机的配置文件也需要进行修改:
然后虚拟机就可以正常启动了。
快照管理
1、创建快照:
2、查看指定虚拟机拥有的快照:
3、还原快照:
4、删除快照:
注意:
raw
的虚拟磁盘文件不支持做快照,qcow2支持快照
,并且快照就保存在qcow2
的磁盘文件中。
克隆
完整克隆
自动配置
1、自动配置:
2、克隆完毕后就可以查看到克隆后的虚拟机:
手动配置
1、手动复制源主机的磁盘文件:
2、基于源主机导出配置文件应用于克隆后的主机:
3、修改导出的配置文件:
4、根据导出的配置文件导入虚拟机:
5、启动测试:
链接克隆
手动配置
1、根据源主机虚拟磁盘文件生成新的虚拟磁盘文件:
2、基于源主机导出配置文件应用于克隆后的主机:
3、修改导出的配置文件:
4、根据导出的配置文件导入虚拟机:
5、启动测试:
自动配置
使用如下脚本自动创建虚拟机的链接克隆:
桥接网络
默认的虚拟机网络是 NAT 模式,网段为192.168.122.0/24,仅有 kvm 主机能与其虚拟机通信。
1、在 kvm01 主机中执行如下命令创建桥接网卡:
2、要在 VMWare 开启对应网卡的 DHCP 服务:
安装时指定
在安装虚拟机时可直接指定使用的网络类型:
修改已有虚拟机
1、在关机状态下修改虚拟机配置:
2、启动虚拟机测试网络:
热操作
对于下面所有使用
virsh
命令进行的热操作都可指定--config
命令让其永久生效。
热添加硬盘
添加
1、先创建一块虚拟硬盘:
2、临时立即生效:
3、永久生效则需要添加 --config
参数,此种方式需要重启生效:
4、在虚拟机中检查是否识别到新增的硬盘:
5、临时剥离磁盘:
6、永久剥离磁盘:
扩容
1、给虚拟机添加上面创建的虚拟磁盘:
2、在虚拟机中格式化并挂载,然后检查容量:
3、在虚拟机中卸载新添加的虚拟磁盘:
4、从虚拟机中剥离新添加的硬盘:
5、给剥离后的虚拟磁盘扩容然后重新添加到虚拟机中:
6、登入虚拟机检查虚拟磁盘容量:
7、挂载、检查并扩容:
热添加网卡
1、热添加一块桥接网卡:
2、登入虚拟机检查:
3、热添加一块默认的 NAT 网卡:
4、登入虚拟机检查:
5、移除指定网卡:
6、登入虚拟机检查:
热添加内存
1、热添加的内存大小是有上限的,这个上限可以在安装虚拟机时指定:
2、检查指定虚拟机内存设定:
3、热调整其内存大小为 512M:
4、调整其最大上限然后调整内存大小为 1.5G:
热添加 CPU
1、可在安装虚拟机时直接指定 CPU 的颗数,如下:
2、调整虚拟机 CPU 的最大颗数:
3、热添加 CPU 颗数:
4、登入虚拟机检查:
热迁移
1、在 kvm01 主机启用 nfs 服务共享磁盘文件,实际使用 nfs 服务可以单独放在一台主机上:
2、kvm01 和 kvm02 主机都挂载 nfs 到同一个目录:
3、迁移之前必须保证两台 kvm 主机能够通过主机名互相通信,在它们的 /etc/hosts
文件中添加如下内容:
、在 kvm01 主机执行下面命令临时迁移到 kvm02 主机:
5、在 kvm02 主机检查运行的主机:
6、上述方式是临时迁移,如果在 kvm02 主机停止迁移过来的虚拟机,该虚拟机也会消失不见,如下:
7、如果希望执行的是永久迁移操作,则可使用下面命令:
8、此时 kvm02 即便停止了 web01,也依旧能在虚拟机列表查看到该主机,如下:
评论区