作者:sotoloraboin_678 | 来源:互联网 | 2014-05-27 21:08
KVM是kernel-basedVirtualMachine的简称,是一个开源的系统虚拟化模块,自Linux2.6.20之后集成在Linux的各个主要发行版本中。它使用Linux自身的调度器进行管理,所以相对于Xen,其性能更加优秀。KVM的虚拟化需要硬件支持(如IntelVT技术或者AMDV技术)
KVM 是 kernel-based Virtual Machine 的简称,是一个开源的系统虚拟化模块,自Linux
2.6.20之后集成在Linux的各个主要发行版本中。它使用 Linux
自身的调度器进行管理,所以相对于Xen,其性能更加优秀。KVM的虚拟化需要硬件支持(如Intel VT技术或者AMD
V技术)。
libvirt 本身不是一种工具,它是一套免费开源的支持 Linux 下主流虚拟化工具的C函数库,libvirt 起初是专门为 Xen
设计的一种管理
API,后来被扩展为可支持多个虚拟机监控程序。当前主流Linux平台上默认的虚拟化管理工具virt-manager(图形化),virt-install(命令行模式)等均基于
libvirt 开发而成。
废话一大堆啦,以下就是我在 Debian7 系统下,利用
virt-install(命令行模式)安装KVM虚拟系统的全过程记录。
一、宿主机简介,与检查是否支持虚拟化技术
我的宿主机环境如下,并支持远程 SSH 访问。
CPU:AMD A8-5600K
MEM:8G
OS:Debian x64 7.1
查询是否至此虚拟化技术
egrep 'vmx|svm' /proc/cpuinfo
...... #经查询,确认我的宿主机支持虚拟化技术
二、安装所需软件包
apt-get install kvm qemu-kvm bridge-utils libvirt-bin virtinst
kvm:这个是KVM的核心,是一个内核模块。
qemu-kvm:KVM的设备模拟,由开源虚拟化软件QEMU中的管理工具演变而来。
bridge-utils:用于桥接网卡
libvirt-bin:虚拟机命令行管理工具
virtinst:虚拟机创建工具
PS:如果你的宿主机安装有图形界面,推荐你安装图形化管理工具
virt-manager,而且这个工具还支持SSH远程连接(qemu+SSH)。
三、配置桥接网卡
虚拟机通过桥接的方式,才更加接近物理环境。配置如下:
cat /etc/network/interfaces
auto lo
iface lo inet loopback
auto br0
iface br0 inet static
address 192.168.1.10
netmask 255.255.255.0
gateway 192.168.1.254
bridge_ports eth0 # 桥接到eth0网卡
bridge_stp off # 关闭STP协议
bridge_fd 0 # 转发延迟设置为0
四、配置虚拟机 spice 和 VNC 的监听地址
缺省情况下创建的 vHost,其虚拟桌面仅仅监听 127.0.0.1,不支持远程连接。需要修改配置文件
/etc/libvirt/qemu.conf :
vnc_listen = “0.0.0.0″
spice_listen = “0.0.0.0″
到这里都基本配置好了,重新启动下宿主机吧!然后我们再正式开始创建 vHost。
五、创建 vHost
创建磁盘,不要纠结选用 raw 还是 qcow2,qcow2 支持快照功能,胜过那么一点点性能需求。
mkdir -p /home/vHost
qemu-img create -f qcow2 /home/vHost/Debian.qcow2 8G
创建虚拟机
virt-install \
--name=test \ # guest主机名称
--virt-type=kvm \ # 虚拟机类型
--hvm --ram=256 \ # 分配给guest主机256M内存
--vcpus=1 \ # 虚拟CPU数量
--network bridge=br0,model=virtio \ # 桥接方式,和设置虚拟网卡型号
--graphics vnc,port=5900 \ # 配置VNC显示及其端口
--disk path=/home/vhost/test.qcow2,bus=virtio \ # 分配磁盘文件和磁盘型号
--os-type=linux \ # 安装的guest系统类型
--cdrom=/home/backups/software/debian-7.1.0-amd64-CD-1.iso \ # 装载光盘文件
--debug # 开启调试信息
PS:阅读资料上说网卡型号设置 virtio 性能接近物理网卡。
六、安装虚拟机的系统
当你创建虚拟机后,虚拟机会立即启动,此时你可以使用 vnc
进行连接了,然后开始安装系统吧,安装系统的步骤和真实主机安装一样,此处就省略啦!
VNC连接参数:$宿主机IP:5900
什么 VNC 的工具呀? 对于这种问题我不想回答,自己 Google 吧!
七、虚拟机的管理
查看虚拟机:
virsh
virsh # list # 查看已经运行的虚拟机
......
virsh # list --all # 查看所有虚拟机
......
quit # 退出virsh命令模式
更多virsh命令请输入help查看,以下是我列出一些常用的:
list [--all] # 查看虚拟机
start $id # 启动虚拟机
shutdown $id # 停止虚拟机
destroy $id # 强制停止虚拟机
dominfo $id # 查看虚拟机信息
undefine $id # 删除与虚拟机的所有文件,慎用
quit # 退出virsh命令模式
八、磁盘的管理
PS:虚拟机如果失去了快照这个优势,其光芒会大大的失色。
创建一个新磁盘,大小10G,格式为qcow2:
qemu-img create -f qcow2 test.img 10G
查看磁盘文件信息,包括文件格式、大小和存在的快照:
Debian:/home/vhost# qemu-img info mantis.img
image: mantis.img
file format: qcow2
virtual size: 10G (10737418240 bytes)
disk size: 2.1G
cluster_size: 65536
Snapshot list:
ID TAG VM SIZE DATE VM CLOCK
1 new 0 2013-07-24 12:35:29 00:00:00.000
2 20170724 0 2013-07-24 17:10:07 00:00:00.000
其它快照命令:
创建快照:qemu-img snapshot -c test.qcow2
恢复快照:qemu-img snapshot -a test.qcow2
删除快照:qemu-img snapshot -d test.qcow2