图形化方式和命令行方式创建KVM虚拟机

一、搭建环境

首先搭建一个图形化界面的centos操作系统

1 打开虚拟化引擎

图形化方式和命令行方式创建KVM虚拟机

2 安装相关软件

yum -y install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install virt-manager wget

3 启动服务并开启开机自动启动

systemctl enable libvirtd && systemctl start libvirtd

二、图形化方式创建虚拟机

1 上传镜像文件到宿主机(阿里云镜像)

wget http://mirrors.aliyun.com/centos/7.9.2009/isos/x86_64/CentOS-7-x86_64-Minimal-2009.iso

2 安装流程

图形化方式和命令行方式创建KVM虚拟机

图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
图形化方式和命令行方式创建KVM虚拟机
开始进行centos系统的安装

3 查看虚拟机的配置文件和虚拟磁盘文件

3.1 配置文件

[root@localhost ~]# cd /etc/libvirt/qemu/
[root@localhost qemu]# ls
centos7-1.xml  networks

以.xml结尾的文件就是虚拟机的配置文件

[root@localhost qemu]# vim centos7-1.xml 

虚拟机名称(第9行)

 <name>centos7-1</name>

uuid(第10行)

<uuid>17d1195b-27b5-4ff4-bf14-801fed0d6635</uuid>

内存(第11行)

<memory unit='KiB'>1048576</memory>

磁盘

    <disk type='file' device='disk'>
      <driver name='qemu' type='qcow2'/>
      <source file='/var/lib/libvirt/images/centos7-1.qcow2'/> #磁盘文件路径
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    </disk>

mac地址(第77行)

<mac address='52:54:00:5e:ae:a6'/>

3.2虚拟磁盘文件(以.qcow2结尾的文件)

[root@localhost ~]# cd /var/lib/libvirt/images/
[root@localhost images]# ls
centos7-1.qcow2

三、利用模板创建虚拟机

1 创建新虚拟机的配置文件

复制已存在的虚拟机的配置文件

cp /etc/libvirt/qemu/centos7-1.xml /etc/libvirt/qemu/centos7-2.xml

注意:此配置文件可能和你们机器上的文件名不同,请以你们机器上的以.xml结尾的文件为准

2 创建新虚拟机的虚拟磁盘文件

复制已存在的虚拟磁盘文件

[root@localhost ~]# cp /var/lib/libvirt/images/centos7-1.qcow2 /var/lib/libvirt/images/centos7-2.qcow2

注意:此配置文件可能和你们机器上的文件名不同,请以你们机器上的以.qcow2结尾的文件为准

3 修改配置文件里的虚拟机名称、uuid、磁盘、mac地址

[root@localhost ~]# vim /etc/libvirt/qemu/centos7-2.xml
<name>centos7-2</name>  
<uuid>17d1195b-27b5-4ff4-bf14-801fed0d6635</uuid>  #修改uuid其中一个数即可(不用复制我的)
...
<source file='/var/lib/libvirt/images/centos7-2.qcow2'/> #要和复制的虚拟磁盘文件的绝对路径相同
...
<mac address='52:54:00:5e:ae:a6'/>  #和uuid一样,修改其中一个数即可

4 定义虚拟机

[root@localhost ~]# virsh define /var/lib/libvirt/images/centos7-2.qcow2
定义域 centos7-2(从 /etc/libvirt/qemu/centos7-2.xml)

注意:要以结对路径来定义虚拟机

5 启动虚拟机

[root@localhost ~]# virsh list --all  # 列出所有KVM虚拟机
 Id    名称                         状态
----------------------------------------------------
 -     centos7-1                      关闭
[root@localhost ~]# virsh start centos7-1 # 启动指定KVM虚拟机
域 centos7-1 已开始
[root@localhost ~]# virsh list
 Id    名称                         状态
----------------------------------------------------
 5     centos7-1                      running

[root@localhost ~]# virsh domifaddr 5
 名称     MAC 地址           Protocol     Address
-------------------------------------------------------------------------------
 vnet0      52:54:00:15:42:35    ipv4         192.168.122.168/24

四、virsh 管理虚拟机

1 列出正在运行的虚拟机

virsh list

2 列出所有的虚拟机

virsh list  --all

3 查看指定虚拟机的元数据信息

virsh dominfo 虚拟机名称

4 查看指定虚拟机的 IP 地址

virsh domifaddr 虚拟机名称

5 启动虚拟机

virsh start 虚拟机名称

6 正常关闭虚拟机

virsh shutdown 虚拟机名称

7 强制关闭虚拟机,相当于拔掉电源

virsh destroy 虚拟机名称

8 重启虚拟机

virsh reboot vm-name 虚拟机名称

9 删除虚拟机(虚拟机磁盘文件回保留,需要手动删除)

virsh undefine 虚拟机名称
上一篇:虚拟化技术之 kvm (一)- virsh


下一篇:spring3 jdbctemplate 注解实例