您的位置:首页 > 运维架构 > Linux

基于CentOS7的KVM虚拟化安装及应用--基础篇

2017-04-26 20:26 381 查看
1.检查是否支持虚拟化

grep -E 'svm|vmx' /proc/cpuinfo

如果有输出就说明支持,反之不支持

2.安装软件包

sudo yum install qemu-kvm qemu-img libvirt virt-install libvirt-client libvirt-python

3.检查KVM模块是否加载

lsmod | grep kvm

4.开启虚拟化管理进程libvirt

service libvirtd start

5.配置桥接网络

ip addr  //显示网卡设备

cd /etc/sysconfig/network-scripts

sudo vim ifcfg-enp3s0f1  //想要作为桥接接口的设备

注释掉"BOOTPROTO"这一行  // #

添加"BRIDGE=br0"这一行  // br0是桥接网卡的名称,可以自定义

vim ifcfg-br0  //编辑br0

DEVICE=br0

BOOTPROTO=dhcp  // static静态IP分配

ONBOOT=yes

TYPE=Bridge

IPADDR=192.168.0.10  //针对static  根据实际情况设置

NETMASK=255.255.255.0  //根据实际情况设置

GATEWAY=192.168.0.1  //根据实际情况设置

DNS=8.8.8.8  //根据实际情况设置

重启网络服务

service network restart

6.修改qemu中的bridge.conf文件

这一步是解决安装虚拟机时,指定桥接网络提示访问拒绝的问题

vim /etc/qemu-kvm/bridge.conf

文档中包含的是:allow virbr0

在下面添加一行:allow br0  //名称对应上面的内容

7.修改防火墙的规则,方便后面通过VNC安装虚拟机的操作系统

KVM的VNC端口默认从5900-6100,共200个

我们一次性都添加到规则当中

firewall-cmd –get-active-zones

firewall-cmd --zone=public --permanent --add-port=5900-6100/tcp  //其中的public是上一步的输出。即活动的zone。也可以只添加一个端口,类似port=5900即可

firewall-cmd --zone=public --permanent --list-ports  //列出添加的端口

firewall-cmd --reload  //重新加载规则

到这一步基本就完成了KVM的安装和配置,接下来就可以进行虚拟机的安装啦,本文只介绍基于shell + VNC的虚拟机安装方式

1.创建虚拟机以及安装操作系统

virt-install --name fedora23 --ram 512 --file=/var/lib/libvirt/images/fedora.img --file-size=3 --vnc --vncport=5900 --vnclisten=0.0.0.0 --network bridge=br0 --cdrom=/home/iso/Fedora-Server-DVD-x86_64-23.iso

//name:名称 ram:内存file:虚拟机镜像的位置file-size:虚拟机硬盘大小,单位为GBcdrom:操作系统安装镜像位置

2.VNC连接并安装系统

推荐VNC Viewer

输入宿主机IP:VNCPORT回车即可看到安装画面,其余步骤和物理环境下安装系统一致

3.查看创建的虚拟机

virsh list --all

4.开启,关闭,重启虚拟机

virsh start/shutdown/reboot <NAME>  //<NAME>对应安装时候指定的name,name也可以通过virsh list --all显示

5.删除虚拟机

virsh destroy <NAME>  //对于running的虚拟机使用,关闭的就不需要了

virsh undefine <NAME>

注意:

1.如果配置完br0和eth0这类文件,重启网络以后,原则上eth0没有IP,br0有IP,br0和eth0的MAC地址相同。如果无法ping通外网,使用brctl show查看,是否将eth0添加到br0作为接口,如果没有,使用ip link set eth0 master br0(RHEL推荐)/brctl addif br0 eth0。ping通外网IP,ping不通地址,在/etc/resolv.conf中添加"nameserver 8.8.8.8"
//8.8.8.8对应自己的DNS服务器

2.网上部分资料提及需要开启内核的IP转发,但是在桥接情况下,关闭以后没有发现问题

3.网上许多资料提到关闭NetworkManager,并且将网卡配置文件中的NM_CONTROLLED字段的属性配置为no,但是我的网卡文件中并没有这个字段,所以没有理会,此时开启NetworkManager也没有发现影响
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: