Centos7配置安装创建KVM虚拟机过程全记录

1、配置网络DNS

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp0s31f6
TYPE=“Ethernet”
BOOTPROTO=none
DEFROUTE=“yes”
IPV4_FAILURE_FATAL=“no”
IPV6INIT=“yes”
IPV6_AUTOCONF=“yes”
IPV6_DEFROUTE=“yes”
IPV6_FAILURE_FATAL=“no”
IPV6_ADDR_GEN_MODE=“stable-privacy”
NAME=“enp0s31f6”
UUID=“4295c1bc-1895-4c15-83e3-d6b5d1659fb1”
DEVICE=“enp0s31f6”
ONBOOT=“yes”
IPADDR=192.169.0.50
PREFIX=24
GATEWAY=192.169.0.254
DNS1=114.114.114.114
DNS2=8.8.8.8
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
[root@localhost ~]#
[root@localhost ~]#
[root@localhost ~]# cat /etc/resolv.conf
#Generated by NetworkManager
nameserver 114.114.114.114
nameserver 8.8.8.8
[root@localhost ~]#

2、配置安装源
修改阿里镜像源,参考链接为:http://mirrors.aliyun.com。

备份

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载新的CentOS-Base.repo

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

生成缓存

yum clean all
yum makecache

3、QEMU3.1.0版本编译升级
Centos7安装的qemu版本2.0.0很低,跟glibc的版本存在不兼容导致问题,报错如下:

(process:577): GLib-WARNING **: 22:52:20.197: gmem.c:489: custom memory allocation vtable not supported

从qemu2.0更新到qemu2.7以上就可以修正,所以我们不安装直接自行下载编译源码升级到高版本qemu-3.1.0,操作如下:

依赖的一些安装包:

yum install gcc gcc-c+ automake libtool zlib-devel glib2-devel
bzip2-devel libuuid-devel spice-protocol spice-server-devel
usbredir-devel libaio-devel

源码下载及编译安装:

[root@localhost /]# wget https://download.qemu.org/qemu-3.1.0.tar.xz
[root@localhost /]# tar -xvf qemu-3.1.0.tar.xz
[root@localhost /]# cd /qemu-3.1.0
[root@localhost qemu-3.1.0/]# ./configure //prefix可设置安装路径,默认路径为/usr/local
[root@localhost qemu-3.1.0/]# make -j4
[root@localhost qemu-3.1.0/]# make install

wget有时无法直接下载,就去https://download.qemu.org/手动下载版本,然后上传到系统;

创建链接:
由于前面默认路径安装qemu时,没有进行prefix设定,它会默认装在/usr/local下:qemu-system-x86_64等可执行程序都在/usr/local/bin下,原版本程序在/usr/bin下,可以删除后重新做软连接,也可以删除后全部拷贝覆盖:

[root@localhost /]# ln -s /usr/local/bin/qemu-system-x86_64 /usr/bin/qemu-system-x86_64
[root@localhost /]# ln -s /usr/local/bin/qemu-img /usr/bin/qemu-img

版本验证:

[root@localhost qemu-3.1.0]# qemu-system-x86_64 --version
QEMU emulator version 3.1.0
Copyright © 2003-2018 Fabrice Bellard and the QEMU Project developers

4、安装KVM相关的依赖包

yum install qemu-kvm libvirt-binvirtinst bridge-utils

5、虚拟机创建并连接

qemu-img命令创建虚拟机的磁盘镜像:

[root@localhost ~]# qemu-img create -f qcow2 /root/kvm-test/CentOS-7.qcow2 10G

qemu-system-x86_64创建并安装虚拟机系统:

qemu-system-x86_64 -name vfw -m 4096 -smp 4 -cpu host -hda /gao/vfw.qcow2 -cdrom /gao/vfw.iso -boot c -enable-kvm -netdev type=tap,ifname=vfw1-eth0,script=no,downscript=no,id=net0 -device e1000,netdev=net0,mac=52:54:64:02:02:01,bus=pci.0,addr=0x3 -netdev type=tap,ifname=vfw1-eth1,script=no,downscript=no,id=net1 -device e1000,netdev=net1,mac=52:54:64:02:02:02,bus=pci.0,addr=0x4 -netdev type=tap,ifname=vfw1-eth2,script=no,downscript=no,id=net2 -device e1000,netdev=net2,mac=52:54:64:02:02:03,bus=pci.0,addr=0x5 -netdev type=tap,ifname=vfw1-eth3,script=no,downscript=no,id=net3 -device e1000,netdev=net3,mac=52:54:64:02:02:04,bus=pci.0,addr=0x6 -daemonize -vnc :11

启动后查看VNC端口:

[root@localhost]# netstat -natp | grep qemu
tcp 0 0 0.0.0.0:5910 0.0.0.0:* LISTEN 13190/qemu-system-x8
tcp 0 0 0.0.0.0:5911 0.0.0.0:* LISTEN 14946/qemu-system-x8

vnc server的安装

[root@localhost ~]# yum search vnc
[root@localhost ~]# yum -y install tigervnc-server
[root@localhost ~]# yum install vnc-server vnc*
[root@localhost ~]# service vncserver restart

使用VNC连接虚拟机并安装指定的ISO镜像系统; 若连接不上则临时关闭防火墙和临时关闭selinux:

iptables -F //删除iptables 策略
setenforce 0 //关闭selinux

6、配置主机与虚拟机网络

配置主机网络

以上虚拟机创建完成后主机中会创建出fw-eth0虚拟网卡,虚拟机中会创建出驱动为e1000类型虚拟网卡net0作为管理口使用,virtio作为业务口使用,-netdev、-device可理解为是成对的一对口,连接主机与虚拟机通信,主机中将管理口和fw-eth0虚拟网卡同时加入桥br0下,配置IP、ROUTE、DNS;客户机管理口配置和桥相同网段的IP、ROUTE后重启网络即可访问外网;

1)手动配置主机网络:

brctl addbr br0 #创建桥
brctl stp br0 on #使能stp
ifconfig br0 up #使能桥up
ifconfig fw-eth0 up #使能虚拟网卡up
ifconfig enp8s0 up #使能管理口up
brctl addif br0 fw-eth0 #绑定虚拟机口到桥
brctl addif br0 enp8s0 #绑定管理网口到桥
ip add del 192.169.8.198/24 dev enp8s0
ip add add 192.169.8.198/24 dev br0 #配置IP ROUTE
ip route add 192.169.0.0/16 via 192.169.8.254
brctl show 查看桥绑定配置

2)开机自动配置主机网络方法:

配置桥口文件:

配置桥口文件:
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge #配置桥类型
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.169.8.198
NETMASK=255.255.255.0
GATEWAY=192.169.8.254
DNS1=114.114.114.114
DNS2=8.8.8.8

配置桥绑定的管理口文件:

[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp8s0
TYPE=Ethernet #以太网类型
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp8s0
UUID=9dbab5a4-2552-4ceb-bc45-a302b88840f2 #不通可考虑去掉
DEVICE=enp8s0
ONBOOT=yes
BRIDGE=br0 #桥下绑定
DNS1=114.144.114.114
DNS2=8.8.8.8

重启网络:
配置完成后systemctl restart network重启网络,可以ip add 或 ifconfig查看配置是否生效,ip route 或者route -n查看路由信息,然后ping 网关、PC机、外网试试;如果网络配置不上或者不通可以如下操作:

systemctl stop NetworkManager.service
systemctl disable NetworkManager.service
systemctl restart network

7、虚拟机重启及重新配置

对于已经创建的虚拟机ps -ax | grep qemu查看对应的PID,然后kill -9 pid杀掉 或者killall -9 qemu后可以修改-m 6144值、-device e1000类型、addr=0x8总线值 、ifname=vfw1-eth1接口名、-vnc端口号等参数,重新启动后虚拟机会按照新的配置进行启动,启动后重新配置主机、虚拟机网络即可。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值