Ubuntu 16.04安装KVM

说明:其实之前我有安装过KVM,只是但是不知道这个就是KVM,而当时只知道叫做QEMU虚拟机。

安装:

http://www.cnblogs.com/EasonJim/p/7215836.html

http://www.cnblogs.com/EasonJim/p/7218384.html

配置网桥:

1、关闭防火墙

service ufw stop
#永久关闭
update-rc.d ufw remove
#关闭之后改成iptables方案

2、配置网桥

1)查看网卡的设置

eth0是自己修改的,可以不用修改成这个名字,使用系统默认的。

ifconfig
eth0 Link encap:Ethernet HWaddr 00:1c:25:a1:99:fc
 inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
 inet6 addr: fe80::21c:25ff:fea1:99fc/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:736674 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1098750 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:63783787 (63.7 MB) TX bytes:1540374899 (1.5 GB)
 Interrupt:20 Memory:fc200000-fc220000

lo Link encap:Local Loopback
 inet addr:127.0.0.1 Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:16436 Metric:1
 RX packets:1156 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1156 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:114090 (114.0 KB) TX bytes:114090 (114.0 KB)

 virbr0 Link encap:Ethernet HWaddr be:65:ec:88:86:3d
 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
 UP BROADCAST MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

2)已有的网卡
eth0是直接插入网线的以太网卡

lo是本地网络,本机内部资源

virbr0是刚才我们装完KVM后,自己生成的虚拟网卡

4)网卡桥接

我们增加一个叫br0的虚拟网卡,让这个网卡可以和eth0以太网的网卡做桥接

如果是桌面版,停止NetworkManager服务(如果不停止,那么需要手动GUI界面设置网桥,需要重启reboot)

sudo systemctl stop NetworkManager.service
sudo systemctl disable NetworkManager.service

增加网桥

sudo brctl addbr br0

设置IP,绑定网卡到网桥br0

sudo vi /etc/network/interfaces
 auto lo
 iface lo inet loopback
auto eth0 iface eth0 inet manual
auto br0 iface br0 inet static address
192.168.1.10 netmask 255.255.255.0 gateway 192.168.1.1 bridge_ports eth0
bridge_stp off
bridge_fd 0

保存,重起网卡设置

sudo /etc/init.d/networking restart

如果不行,需要重启reboot

设置DNS

sudo su
echo "nameserver 192.168.199.1" >> /etc/resolvconf/resolv.conf.d/base
/etc/init.d/resolvconf restart #使DNS生效

再查看网卡的设置

ifconfig
br0 Link encap:Ethernet HWaddr 00:1c:25:a1:99:fc
 inet addr:192.168.1.10 Bcast:192.168.1.255 Mask:255.255.255.0
 inet6 addr: fe80::21c:25ff:fea1:99fc/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:91 errors:0 dropped:0 overruns:0 frame:0
 TX packets:100 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:6260 (6.2 KB) TX bytes:15470 (15.4 KB)

 eth0 Link encap:Ethernet HWaddr 00:1c:25:a1:99:fc
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:605 errors:0 dropped:0 overruns:0 frame:0
 TX packets:425 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:112441 (112.4 KB) TX bytes:61529 (61.5 KB)
 Interrupt:20 Memory:fc200000-fc220000

lo Link encap:Local Loopback
 inet addr:127.0.0.1 Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:16436 Metric:1
 RX packets:36 errors:0 dropped:0 overruns:0 frame:0
 TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:2100 (2.1 KB) TX bytes:2100 (2.1 KB)

 virbr0 Link encap:Ethernet HWaddr 2a:b8:36:cf:cc:c6
 inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
 UP BROADCAST MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)

这个时候eth0,已经没有具体的IP地址。IP地址出在了br0的虚拟网上面。

我们ping一下公网ip,看看是不是通的。

ping 8.8.8.8
ping 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_req=1 ttl=46 time=51.7 ms
64 bytes from 8.8.8.8: icmp_req=2 ttl=46 time=50.8 ms

重启网桥

sudo service libvirt-bin restart

5)配置转发

#开启转发支持forward
sudo vi /etc/sysctl.conf
修改为net.ipv4.ip_forward = 1
#生效
sudo sysctrl -p

3、创建虚拟机

图形界面:virt-manager

命令行:

#新建用于存放虚拟机相关文件的目录
mkdir /kvm
#使用ftp将centos6.5的安装光盘镜像复制到/kvm
#新建用于存放虚拟机的目录
mkdir /kvm/vm
#安装虚拟机
virt-install --name centos --ram 1024 --vcpus=1 --disk path=/kvm/vm/vm1.img,size=10 --network bridge=br0 --os-variant=rhel6 --cdrom /kvm/CentOS-6.5-x86_64-bin-DVD1.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进行连接

然后使用vnc-viewer连接虚拟机

使用vnc-viewer连接IP:5900就可以远程安装这台虚拟机了

在KVM虚拟机中安装操作系统和在其他虚拟机上没有什么不同的地方

安装完成后,在kvm虚拟机中进行网卡配置后,就可以使用putty进行远程连接了

下次启动:

virsh start centos
#virsh语法参考
virsh list                                列出运行中的虚拟机
virsh start centos                启动centos虚拟机
virsh shutdown centos        关闭centos虚拟机
virsh destroy centos            强制关闭centos虚拟机
virsh autostart centos        设置centos自动启动
virsh undefine centos        删除centos虚拟机
virsh suspend centos        暂停centos虚拟机
vrish resume centos            恢复centos虚拟机
virsh reboot centos            重启centos虚拟机
virsh edit centos                编辑centos虚拟机
virsh vncdisplay  centos    vnc显示 

 

posted @ 2018-01-27 16:18  EasonJim  阅读(8068)  评论(0编辑  收藏  举报