一、virt-install
1、创建虚拟机
1.1 基于PXE环境创建一个虚拟机
1.1.1 创建存放磁盘映像的文件夹
[root@master1 ~]# mkdir /images/centos/
1.1.2 创建虚拟机
virth-install会自动创建磁盘映像文件
[root@master1 ~]# virt-install -n centos6.6 -r 512 --vcpus=1,maxvcpus=2 --pxe --disk /images/centos/centos6.6.qcow2,size=30,format=qcow2,bus=virtio,sparse=yes --network bridge=br0,model=virtio --force --graphics vnc
1.1.3 查看安装过程的图形界面
[root@master1 ~]# yum install virt-viewer
[root@master1 ~]# virsh list
Id Name State
----------------------------------------------------
20 centos6.6 running
[root@master1 ~]# virt-viewer 8
1.1.4 删除虚拟机
[root@master1 ~]# virsh destroy centos6.6
[root@master1 ~]# virsh undefine centsos6.6 --remove-all-storage
2 通过导入磁盘映像启动虚拟机
[root@master1 ~]# mkdir /images/cirros
[root@master1 ~]# mv cirros-no_cloud-0.3.0-i386-disk.img /images/cirros/
不创建,空跑一遍测试:
[root@master1 ~]# virt-install -n cirros -r 128 --disk /images/cirros/cirros-no_cloud-0.3.0-i386-disk.img --import --dry-run
创建:
[root@master1 ~]# virt-install -n cirros -r 128 --disk /images/cirros/cirros-no_cloud-0.3.0-i386-disk.img --import
2.1 删除虚拟机,不删除存储
[root@master1 ~]# virsh destroy cirros
[root@master1 ~]# virsh undefine cirros
2.2 终端上创建虚拟机
[root@master1 ~]# virt-install -n cirros -r 128 --vcpus=1,maxvcpus=2 --network bridge=br0,model=virtio --disk /images/cirros/cirros-no_cloud-0.3.0-i386-disk.img --import --serial=pty --console=pty --nographics
2.3 连接虚拟机
Ctrl+右中括号 退回宿主机界面
3、其他操作
3.1 给虚拟机动态添加一块硬盘
原始磁盘数量:
查看添加磁盘帮助:
[root@master1 ~]# virsh help attach-disk
3.1.1 创建磁盘
[root@master1 ~]# qemu-img create -f qcow2 -o size=20G,preallocation=metadata /images/centos/second.qcow2
查看磁盘信息:
[root@master1 ~]# qemu-img info /images/centos/second.qcow2
image: /images/centos/second.qcow2
file format: qcow2
virtual size: 20G (21474836480 bytes)
disk size: 4.1M
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: false
3.1.2 动态挂载磁盘
[root@master1 ~]# virsh attach-disk 26 /images/cirros/second.qcow2 vda --targetbus virtio
成功附加磁盘
3.1.3 动态拆除硬盘(前提没有分区或挂载)
[root@master1 ~]# virsh detach-disk 26 vda
成功分离磁盘
3.2 添加网卡
[root@master1 ~]# virsh attach-interface 26 bridge virbr0
成功附加接口
# ifconfig -a | grep eth
eth0 Link encap:Ethernet HWaddr 52:54:00:8A:19:44
eth1 Link encap:Ethernet HWaddr 52:54:00:96:29:36
3.3 删除网卡
[root@master1 ~]# virsh detach-interface 26 bridge --mac 52:54:00:96:29:36
成功分离接口
3.4 查看虚拟机的配置文件信息
[root@master1 ~]# virsh dumpxml cirros
3.5 查看CPU信息
[root@master1 ~]# virsh vcpucount 26
最大值 配置 2
最大值 live 2
当前 配置 1
当前 live 1
[root@master1 ~]# virsh vcpuinfo 26
VCPU: 0
CPU: 0
状态: running
CPU 时间: 104.1s
CPU关系: yy
设置虚拟机最多使用几颗CPU:
[root@master1 ~]# virsh setvcpus 26 2
当前CPU已经变成2个
[root@master1 ~]# virsh vcpucount 26
最大值 配置 2
最大值 live 2
当前 配置 1
当前 live 2
3.6 查看磁盘信息
查看磁盘的映像文件路径:
[root@master1 ~]# virsh domblklist 26
目标 源
------------------------------------------------
hda /images/cirros/cirros-no_cloud-0.3.0-i386-disk.img
3.7 列出网络接口
[root@master1 ~]# virsh domiflist 26
接口 类型 源 型号 MAC
-------------------------------------------------------
vnet1 bridge br0 virtio 52:54:00:8a:19:44
3.8 查看虚拟机详细信息
[root@master1 ~]# virsh dominfo 26
Id: 26
名称: cirros
UUID: 56f44a3d-7159-4a14-a1ff-d4e9df428f3b
OS 类型: hvm
状态: running
CPU: 2
CPU 时间: 158.4s
最大内存: 131072 KiB
使用的内存: 131072 KiB
持久: 是
自动启动: 禁用
管理的保存: 否
安全性模式: none
安全性 DOI: 0
3.9 查看hypervisor信息
[root@master1 ~]# virsh sysinfo
3.10 查看宿主机硬件信息
[root@master1 ~]# virsh nodeinfo
CPU 型号: x86_64
CPU: 2
CPU 频率: 1496 MHz
CPU socket: 1
每个 socket 的内核数: 2
每个内核的线程数: 1
NUMA 单元: 1
内存大小: 4193784 KiB
3.11 查看当前主机的访问路径
[root@master1 ~]# virsh uri
qemu:///system
3.12 查看qemu版本
[root@master1 ~]# virsh version
根据库编译:libvirt 3.2.0
使用库:libvirt 3.2.0
使用的 API: QEMU 3.2.0
运行管理程序: QEMU 1.5.3
3.13 列出宿主机网卡
[root@master1 ~]# virsh iface-list
名称 状态 MAC 地址
---------------------------------------------------
br0 活动 00:0c:29:a7:7a:ec
lo 活动 00:00:00:00:00:00
3.14 列出网络过滤器
[root@master1 ~]# virsh nwfilter-list
3.15 查看用户空间定义的网络
[root@master1 ~]# virsh net-list
名称 状态 自动开始 持久
----------------------------------------------------------
default 活动 是 是