配置信息
主机:ubuntu16.04 server版
当然我的主机是在win10电脑里通过VMware安装的虚拟机,
准备工作
1、查看cpu是否支持虚拟化。
输入:
grep vmx /proc/cpuinfo
如果输出如下:
则说明支持虚拟化,
没有输出说明不支持,修改方法如下(勾选上虚拟化IntelVT):
2、安装软件
安装 kvm、qemu
apt-get install kvm qemu libvirt-bin virtinst virt-manager virt-viewer
查看KVM是否安装成功
virsh -c qemu:///system list
如下图说明安装成功
3、配置虚拟网络(🔺🔺可不配置,看到最后)
(1)桥接模式的概述
事实上我们在虚拟机搭建的时候,我们终于关心的网卡是: ens33(名可能不同), br0, vnet0,vnet1…
当中ens33是我们server原来的物理网卡,而br0是我们虚拟出来的网桥设备,而vnetXXX就是桥接映射到虚拟机里面用到的网卡。
当配置完成之后,我们使用ifconfig命令查看起来的话。会发现eth0是没有IP地址,而br0仿佛是虚拟出来的一个原来eth0的訪问接口,它具有IP地址,能够取代原来的eth0被訪问。而vnetXX的地址能够在建立虚拟机之后在虚拟机里面配置。桥接后能够被外部訪问。
注意:将已有的物理网卡加入到网桥,此时物理网卡eth0工作于混杂模式,所以不须要IP地址。由于网桥是工作在链路层的。br0就提供了IP地址。用来模拟原来的物理网卡的訪问接口。
先备份网络设置
备份 防止出错,可以还原
sudo cp /etc/network/interfaces /etc/network/interfaces-bak
对/etc/network/interfaces 配置文件进行更改
sudo vim /etc/network/interfaces
修改如下(这里博主添加的配置信息比较少)
注意,原来ens33的IP地址现在设置给了br0,并且ens33设置为manual方式。
添加网络配置:第一句启动br0虚拟桥接网卡br0;第二句设置br0桥接网卡为start模式获取IP;第三句设置地址和ens33一样;最后一句配置br0和ens33建立连接;
具体的详情配置可参考:https://blog.csdn.net/wangfengtong/article/details/72779258
配置完成后,重启网络:
Service networking restart
或
/etc/init.d/networking restart
4、创建虚拟机
在用户目录下创建两个目录:
一个叫iso:用来存放系统镜像,准备好系统镜像
一个叫vm:用来存放虚拟机硬盘文件;
创建虚拟硬盘
qemu-img create -f qcow2 vm/ubuntu.img 10G
# 记得修改ubuntu.img的目录,就是自己创建的vm文件夹。
ubuntu.img:虚拟硬盘名字.img
10G:虚拟硬盘大小
创建成功:
创建虚拟机(🔺🔺如果没有配置虚拟网络,使用后面的命令,往下看)
virt-install --name kvmtest01 --boot network,cdrom,menu=on --ram 1024 --vcpus=1 --os-type=linux --accelerate -c iso/CentOS-6.4-x86_64-bin-DVD1.iso --disk path=vm/ubuntu.img,size=10,format=qcow2,bus=virtio --bridge=br0,model=virtio --vnc --vncport=5991 --vnclisten=0.0.0.0
命令多行展示(同上)
virt-install --name kvmtest01 \
--boot network,cdrom,menu=on \
--ram 1024 \
--vcpus=1 \
--os-type=linux \
--accelerate \
-c iso/CentOS-6.4-x86_64-bin-DVD1.iso \
--disk path=vm/ubuntu.img,size=10,format=qcow2,bus=virtio \
--bridge=br0,model=virtio \
--vnc \
--vncport=5991 \
--vnclisten=0.0.0.0
–name:虚拟机名称
–ram:内存大小(M)
–noautoconsole:禁止自动连接至虚拟机的控制台;
–virt-type:虚拟机类型(kvm,xen,exsi)
执行完该命令后,qemu会开启一个5991端口,使用VNC软件连接,便可正常安装虚拟机。
安装提示信息
使用vnc连接
vnc连接后进行linux安装
安装方法和虚拟机安装是一样的,忘记的可以参考连接
也可以不配置虚拟网络至今进行安装
不进行第三步(🔺🔺不配置虚拟网络)
安装命令参考如下:
virt-install --name kvm-01 --boot network,cdrom,menu=on --ram 1024 --vcpus=1 --os-type=linux --accelerate -c iso/ubuntu-16.04.7-server-amd64.iso --disk path=vm/ubuntu.img,size=10,format=qcow2,bus=virtio --network network=default,model=virtio --vnc --vncport=5991 --vnclisten=0.0.0.0
命令多行展示(同上)
virt-install --name kvm-01 \
--boot network,cdrom,menu=on \
--ram 1024 \
--vcpus=1 \
--os-type=linux \
--accelerate \
-c iso/ubuntu-16.04.7-server-amd64.iso \
--disk path=vm/ubuntu.img,size=10,format=qcow2,bus=virtio \
--network network=default,model=virtio \
--vnc \
--vncport=5991 \
--vnclisten=0.0.0.0
将 --bridge=br0 参数修改为了 --network network=default
常用virsh指令
1)virsh list 列出当前虚拟机列表,不包括未启动的
2)virsh list --all 列出所有虚拟机,包括所有已经定义的虚拟机
3)virsh destroy vm-name 关闭虚拟机
4)virsh start vm-name 启动虚拟机
5)virsh edit vm-name 编辑虚拟机xml文件
6)virsh undefine vm-name 删除虚拟机
7)virsh shutdown vm-name 停止虚拟机
8)virsh reboot vm-name 重启虚拟机
9)virsh autostart vm-name 虚拟机随宿主机启动
10)virsh console vm-name 登录虚拟机