KVM虚拟化技术易于理解的文章
添加链接描述
全面的文章
添加链接描述
安装虚拟机环境
1.在workstation 上已安装好的ubuntu16.04上进行安装,关闭虚拟机的状态下设置允许虚拟化
ubuntu16.04 与物理主机采用的是NAT模式,其他模式都可,只要保证可连外网
ip:192.168.111.128
只有一张网卡 ens33
否则在开机时进入BIOS界面开启虚拟化技术
1.检查本机CPU虚拟化支持
egrep -o ‘(vmx|svm)’ /proc/cpuinfo
2.在现有的操作系统平台上安装虚拟化组件
配置国内镜像源,速度很快
cd /etc/apt
sudo vim sources.list
阿里源以及安装参考
简单说kvm和qemu就是虚拟软件,负责创建和运行虚拟机,但是却不能很方便的管理多个虚拟机的实例,为了更加方便的管理虚拟机,所有出现了libvirt和virsh等函数库和相应的命令行工具
提供主机虚拟化环境
sudo apt-get install qemu-kvm
sudo apt-get install qemu
管理虚拟机实例的客户端软件包
sudo apt-get install virt-manager #图形化管理工具
sudo apt-get install virt-viewer #
提供访问与控制虚拟机和容器的接口
sudo apt-get install libvirt
sudo apt-get install libvirt-client #提供vish工具
virsh时非常优秀的hypervisor和虚拟主句的命令行管理工具,可替代图形页面的virt-manager工具
查看kvm是否安装成功
查看内核模块是否加载
确认 Libvirtd 服务已经启动
网络设置
接下来配置网卡,虚拟机选择桥接网络时,需要宿主主机ubuntu16.04创建一个共享的桥接网络设备,也就是所谓的网桥
KVM安装后默认的网络链接方式是NAT,此时虚拟机只能够与安装在本机上的其余虚拟机通信,虚拟机的IP地址是一个私有地址。
Bridge方式即虚拟网桥的网络连接方式,是客户机和子网里面的机器能够互相通信。可以使虚拟机成为网络中具有独立IP的主机。这样虚拟机通过桥接网络就可以分配到宿主机所在局域网的IP地址了,那么虚拟机也就可以被访问。
桥接网络(也叫物理设备共享)被用作把一个物理设备复制到一台虚拟机。网桥多用作高级设置,特别是主机多个网络接口的情况。
之前写的一篇易于理解的VMware网络设置的三种方式
VMware虚拟机的网络模式 — 桥接模式、仅主机模式、NAT模式的特点和配置
kvm网络篇—网络配置Bridge方式、NAT方式
网桥的基本原理就是创建一个桥接接口br0,在物理网卡和虚拟网络接口之间传递数据。
centOS
systemctl network restart
先关闭networkmanager服务
service NetworkManager stop
ubuntu
配置网桥
安装bridge-utils
sudo apt-get install bridge-utils
iface eth0 inet static: Defines a static IP address for eth0
iface eth0 inet manual :To create a network interface without an IP address at all. Usually used by interfaces that are bridge or aggregation members, or have a VLAN device configured on them
可看到ens33上的地址绑定到br0网卡上
virbr0是刚才装完KVM后,自己生成的虚拟网卡
KVM虚拟化使用虚拟交换技术实现虚拟机的网络互联,虚拟交换是运行在宿主机上的一个软件结构,虚拟主机通过与这个虚拟交换实现与外界通信。
当部署完虚拟环境后,libvirt进程会在宿主机上自动创建一个虚拟交换virbr0
默认libvirtd使用NAT作为虚拟交换的工作模式,这种情况下 guest(KVM) 通过 host (ubuntu16.04)才能访问外部。
默认已经在KVM虚拟化环境中创建了一个基于NAT模式的default虚拟交换,以下图片为安装成功之后的默认设置
虚拟交换可随时添加
安装好之后ubuntu16.04的路由信息发生变化
查看安装好之后ubuntu123的网卡信息
一张网卡 ens3
路由表第一行为宿主机上配置的网卡信息
virbr0和创建虚拟机时的br0两张网卡都是为了与外界连外而虚拟网卡
只是工作模式不同,这里可查看这篇文章
ubuntu16.04此时已经无法连接外网???应该是可以的连外网的
安装虚拟机
使用virt-manager开启KVM管理器界面,也可通过命令行工具virt-install安装部署虚拟机
sudo virt-manager
这里使用命令行安装
#新建用于存放虚拟机相关文件的目录
mkdir /kvm
#使用ftp将ubuntu16.04 的安装光盘镜像复制到/kvm
另一篇关于ftp安装及测试
#新建用于存放虚拟机的目录
mkdir /kvm/vm
virt-install --name ubuntu123 --ram 1024 --vcpus=1 --disk path=/kvm/vm/vm1.img,size=10 --network bridge=br0 --os-type=linux --cdrom /kvm/ubuntu-16.04.4-desktop-amd64.iso --vnclisten=0.0.0.0 --vncport=5900 --vnc
参数详解:
–vcpus 分配给虚拟机CPU个数
–disk path 虚拟磁盘所在的路径
–size 虚拟磁盘大小,单位是GB
–network bridge 指定虚拟机使用的桥接网卡
–os-variant 虚拟机的操作系统类型
–cdrom 安装虚拟机操作系统的光盘镜像的路径
–vnclisten vnc的监听IP
–vncport vnc的监听端口
–vnc 使用vnc进行连接
使用virt-manager开启KVM管理器界面
自动连接到刚才搭的服务器中,ubuntu123