1. Virsh简介

  • virsh 是用来管理客户端及其管理程序的命令行界面工具。
  • virsh 工具是构建在 libvirt 管理 API 上,可作为 xm 命令和图形客户端管理程序(virt-manager)的替代工具。非特权用户只能以只读模式使用 virsh。您可使用 virsh 为客户端机器执行脚本。

2. 使用前提

  1. 安装虚拟化相关组件
    安装qemu-kvm(用户态管理工具)
    安装libvirt(命令行管理工具)
    安装virt-install(安装kvm工具)
    安装bridge-utils(桥接设备管理工具)
yum install -y qemu-kvm libvirt virt-install bridge-utils
  1. 启动libvirtd服务
systemctl enable libvirtdsystemctl start  libvirtdsystemctl status  libvirtd
  1. 安装virt-manager
yum -y install virt-manager

使用可视化创建的虚拟机xml文件位置:/etc/libvirt/qemu/


3. 常用的虚拟机管理命令

# 列出所有的虚拟机virsh list --all# 显示虚拟机信息virsh dominfo *( *为虚拟机名称 )# 定义虚拟机virsh define *.xml# 启动虚拟机virsh start *# 强制关闭虚拟机/关闭虚拟机virsh destroy */virsh shutdown *# 删除虚拟机virsh undefine *# 挂起虚拟机virsh suspend *# 恢复被挂起的虚拟机virsh resume *# 查看虚拟机网卡信息virsh domiflist *# 添加网卡virsh attach-interface * --type * --source * --model * --live --config(第一个*为虚拟机名称,后三个*依次为Type Source Model)# 删除网卡virsh detach-interface * --type  * --mac  *  --live --config(第一个*为虚拟机名称,后两个*依次为Type MAC)

4. 通过xml文件创建虚拟机

创建空镜像

qemu-img create -f qcow2  *.qcow2  100G(*为虚拟机名称,大小自定义)
  1. 配置xml并启动虚拟机,xml文件配置可通过可视化创建虚拟机生成的xml文件作为模板。
virsh define *.xmlvirsh start  *

5. 通过存储池iSCSI创建虚拟机

  1. 定义存储池
virsh pool-define-as --name unary --type iscsi --source-host 10.10.4.75 --source-dev iqn.2020-01.com.unary:208450552df3636922c9fbb0b0c71f45.d41d8cd98f00b204e9800998ecf8427e.v.4a2a26d3.st.20200102193701 --target /dev/disk/by-path
  1. 创建存储池
virsh pool-build unary
  1. 激活存储池
virsh pool-start unary
  1. 查看存储池
virsh pool-list –all 
  1. 创建空镜像
  2. 配置xml并启动虚拟机