KVM的安装和使用

以下操作使用系统Ubuntu16.04

一、KVM的安装

1. 检查是否支持虚拟化
egrep 'vmx|svm' /proc/cpuinfo
2. 安装相关包
apt-get -y --force-yes install qemu-kvm libvirt-bin virt-manager
3. 检查KVM是否加载成功
# lsmod | grep kvm
kvm_intel             167936  0
kvm                   487424  1 kvm_intel
irqbypass              16384  1 kvm
4. 查看kvm是否已经创建默认虚拟网络
# ifconfig virbr0
5. 创建网桥

修改文件:/etc/network/interfaces

auto br1
iface br1 inet static
    address 172.16.145.100
    netmask 255.255.255.0
    bridge_ports eth1
    bridge_stp off
    gateway 172.16.145.2
6. 重启网卡
service networking restart
7. 创建虚拟机

使用virt-install来创建虚拟机,以下参数说明

参数 说明
--name 虚拟机名字
--ram 内存(MB)
--vcpus CPU 个数;
参数:
maxvcpus=MAX: 热升级 cpu 最大核数
sockets=#
cores=#
threads=#
例子: --vcpus 2, maxvcpus=10: 默认2核 cpu,热升级最大10核
--os-type 系统类型(linux, unix, windows)
--hvm 配置使用全虚拟化
--cdrom 镜像位置
--file 虚拟机硬盘文件路径
--file-size 虚拟机硬盘大小
--vnc 启动vnc
--vncport vnc 端口号
--vnclisten vnc 监听地址0.0.0.0本机

示例:

virt-install \
--name=testvm \
--ram=1024 \
--vcpus=1 \
--os-type=linux \
--hvm \
--cdrom=/root/ubuntu-16.04.3-server-amd64.iso \
--file=/root/images/SDG100.img \
--file-size=20 \
--network network=bgp
--vnc \
--vncport=5902 \
--vnclisten=0.0.0.0

二、虚拟机基本操作

命令 说明 示例
virsh list 查看虚拟机
--all 查看所有虚拟机
virsh list
virsh list --all
virsh start name 开机 virsh start testvm
virsh autostart name 自动启动
--disable取消自动启动
virsh autostart testvm
virsh autostart testvm --disable
virsh shutdown name 安全关机 virsh shutdown testvm
virsh destroy name 强制关机(类似直接断电) virsh destroy testvm
virsh undefine name 销毁(必须关机)不是真正的删除文件,只是从virsh list中删除 virsh undefine testvm
virsh define name 虚拟机加入virsh list virsh define ./images/testvm/config.xml
virsh dumpxml name 查看虚拟机 xml 配置文件 virsh dumpxml testvm
virsh suspend name 挂起 virsh suspend testvm
virsh resume name 恢复挂起 virsh resume testvm
virsh domblklist name 查看所有块设备 virsh domblklist testvm
virsh domiflist name 查看所有网口 virsh domiflist testvm

三、挂载硬盘

1. 创建硬盘
  • 创建硬盘 qemu-img create [-q] [-f fmt] [-o options] filename [size]
qemu-img create -f qcow2 /volumes/i-aaa 10G

参数说明

参数 说明
-q 不打印任何输出(错误除外)
-f 硬盘格式
2. 挂载硬盘
  • 使用 XML 挂载硬盘 virsh attach-device name xml

XML 内容


    
    
    

用法

virsh attach-device i-aaaaaa xml.
  • 直接执行文件进行挂载 attach-disk name volume volume_name
virsh attach-disk i-aaaaaa /volumes/i-aaa vdc

参数说明

参数 说明
--cache 磁盘设备的缓存模式
2. 卸载硬盘
  • 使用 XML 配置文件卸载硬盘 virsh detach-device

XML 内容


    
    

  • 直接卸载 virsh detach-disk name --target volume_name
virsh detach-disk i-aaaaaa --target vdc

四、新增网口

1. 挂载新网络接口 virsh attach-interface name --type network_type --source network_name --config
virsh attach-interface testvm --type bridge --source dianxin  --config

参数说明:

参数 说明
--type 网卡类型
--source 网络接口的来源(宿主机网络名称)
--current 立刻生效
--config 下次启动生效
--mac MAC地址
--inbound in流量控制
--outbound out流量控制
--mode
2. 卸载网络接口 virsh detach-interface name --type network_type --mac mac
virsh detach-interface testvm --type bridge --mac 52:54:00:b5:7d:1e
3. 查看虚拟机现有网络接口 virsh domiflist name
virsh domiflist testvm

关于如何创建网桥参考Linux brctl 命令

你可能感兴趣的:(KVM的安装和使用)