检测服务器是否支持运行KVM虚拟机
我们需要使用" kvm-ok"命令来确定服务器是否支持KVM虚拟机。
首先使用以下apt-get命令安装cpu-checker软件包:
$ sudo apt-get install cpu-checker
运行cpu-checker:
$ sudo kvm-ok
输出示例:
KVM acceleration can be used
创建一个CentOS Linux虚拟机
下载CentOS Linux 7.x ISO文件:
$ cd /var/lib/libvirt/boot/ $ sudo wget http://mirrors.kernel.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1511.iso $ ls
使用virt-install命令创建新的虚拟机:
$ sudo virt-install \ --virt-type=kvm \ --name centos7 \ --ram 1024 \ --vcpus=1 \ --os-variant=rhel7 \ --hvm \ --cdrom=/var/lib/libvirt/boot/CentOS-7-x86_64-Minimal-1511.iso \ --network network=default,model=virtio \ --graphics vnc \ --disk path=/var/lib/libvirt/images/centos7.img,size=20,bus=virtio
virt-install选项说明
--virt-type = kvm
:使用kvm作为管理程序来安装CentOS7 guest虚拟机。--name centos7
:虚拟机实例的名称。--ram 1024
:分配给虚拟机实例的内存(MB为单位)。--vcpus = 1
:为虚拟机配置的虚拟cpus数。--os-variant = rhel7
:针对特定的操作系统变型优化虚拟机配置。使用virt-install --os-variant list
查看完整的操作系统列表。--hvm
:请求使用完全虚拟化。--cdrom =/var/lib/libvirt/boot/CentOS-7-x86_64-Minimal-1511.iso
:文件或设备用作虚拟CD-ROM设备。它可以是ISO映像或CDROM设备的路径。--network network = default,model = virtio
:将客户连接到主机网络。在此示例中,使用称为virtio的模型接口连接到名为default的主机中的虚拟网络。--graphics vnc
:在客户机中设置虚拟控制台,并将其导出为主机中的VNC服务器。--disk path =/var/lib/libvirt/images/centos7.img,size = 20,bus = virtio
:指定用作虚拟机存储的介质。 /var/lib/libvirt/images/centos7.img存储介质的路径,大小为20GB。将磁盘总线类型设置为virtio,
VNC服务器说明
什么是headless server?
headless server表示无外设的服务器,即没有显示器,键盘和鼠标。
我们可以笔记本电脑上使用vnc客户端来作为服务器终端。
查看vnc服务器端口
$ sudo virsh dumpxml centos7 | grep vnc
记下port号。
我们将使用SSH客户端设置隧道,然后使用本地笔记本上的VNC客户端访问远程vnc服务器。
设置VNC控制台
执行以下SSH端口转发命令:
$ ssh jack@server1.onitroad.local -L 5901:127.0.0.1:5901
其中:
ssh jack@server1.onitroad.local
在server1.onitroad.local主机上建立到远程KVM主机的SSH会话。-L
开始本地端口转发。5901:127.0.0.1:5901
设置隧道,即通过网络传递流量以访问远程服务器127.0.0.1和端口5901。
建立ssh隧道之后,在VNC客户端中指定host为127.0.0.1(localhost),端口指定为5901。连接。
您应该看到CentOS Linux 7 guest虚拟机安装屏幕
只需按照屏幕上的说明安装CentOS7。
当安装完成后,点击重启按钮。
远程服务器将关闭与我们的VNC客户端的连接。
执行以下命令来首次启动虚拟机:
$ sudo virsh start centos7
验证一下:
$ sudo virsh list
输出示例:
Id Name State ---------------------------------------------------- 5 centos7 running
什么是虚拟机管理程序hypervisor?
KVM是创建和运行虚拟机的hypervisor管理程序。
运行hypervisor的服务器称为主机(host)。
每个虚拟机都称为来宾服务器(guest machine)。
使用KVM,您可以运行多种操作系统,例如CentOS,OpenBSD,FreeBSD。
KVM默认配置位置
- KVM默认目录:
/var/lib/libvirt /
- 用于安装的ISO映像:
/var/lib/libvirt/boot /
- KVM虚拟机默认安装目录:
/var/lib/libvirt/images /
- LVM/LXC/qemu的Libvirt配置目录:
/etc/libvirt /
KVM虚拟机默认网络
默认网络名称为default。
查看网络列表:
$ sudo virsh net-list
查看网络的详细信息:
$ sudo virsh net-info default
以XML格式导出网络的信息:
$ sudo virsh net-dumpxml default
在Ubuntu Linux上安装kvm
执行以下apt-get命令以安装kvm和相关软件:
$ sudo apt-get install qemu-kvm libvirt-bin virtinst bridge-utils
如何安装KVM虚拟机?
如何在Ubuntu Linux 14.04 LTS服务器上使用KVM运行多个虚拟机?
如何使用KVM虚拟机运行多个Linux操作系统?