基于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也没有发现影响
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也没有发现影响
相关文章推荐
- VM 操作系统实例化(基于 KVM 的虚拟化研究及应用--崔泽永(2011))的论文笔记
- 基于KVM的虚拟化研究及应用
- centos7基于源码编译安装LAMP的wordpress应用的实现
- CentOS7基于源码编译安装LAMP的wordpress应用的实现
- WebVirtMgr 基于Centos7.3的KVM虚拟化管理平台安装
- centos7实现基于源码编译安装LAMP的wordpress应用
- centos7基于源码编译安装LAMP的wordpress应用的实现
- CentOS7基于源码编译安装LAMP的wordpress应用的实现
- Windows Server 2012活动目录基础配置与应用(新手教程)之10---基于组策略的软件部署
- KVM 虚拟化安装
- kvm虚拟化技术实战记录(2)——编译安装kvm
- 2 kvm虚拟化安装配置
- kvm虚拟化安装配置手册
- 第三十六课 ansible基本应用和corosync群集基础及安装配置
- Centos7 安装VNC 和 KVM
- qemu-kvm研究系列(2):虚拟化的定义和基础
- Linux系统安装后的基础优化-基于CentOS(5.8/6.4)
- 基于云存储服务构建应用的基础架构(图)
- kvm 虚拟化概述及 virt-manager 安装虚拟机
- Ubuntu 16.04安装基于nethogs衍生的网络监控软件(应用实时网速监控)