构思图示
在这里部署三个kvm虚拟机,分别运行mysql,php-fpm,httpd服务,因为在这里我用的是 vmware,所以我以宿主机为跳板机,以win10为客户端通过浏览器访问
1,安装所需包
[root@localhost张大帅哥 ~]# yum -y install libvirt-daemon-kvm qemu-kvm virt-manager libvirt
在搭建环境之前,需要在vmware中勾选虚拟化
2,启动服务
[root@localhost张大帅哥 ~]# systemctl start libvirtd
3,创建httpfpm网桥
[root@localhost张大帅哥 ~]# cd /etc/libvirt/qemu/networks/
[root@localhost张大帅哥 networks]# cp default.xml httpfpm.xml
[root@localhost张大帅哥 networks]# vim httpfpm.xml
<network>
<name>httpfpm</name>
<uuid>5d273e58-f9bd-44f0-948d-8e9899f2d474</uuid>
<forward mode='nat'/>
<bridge name='httpfpm' stp='on' delay='0'/>
<mac address='52:54:00:dc:59:33'/>
<ip address='20.20.20.1' netmask='255.255.255.0'>
<dhcp>
<range start='20.20.20.2' end='20.20.20.254'/>
</dhcp>
</ip>
</network>
在这里复制默认的网桥后需要更改的有name,uuid,mac地址,以及ip和分配ip的网段。uuid随便改其中的两个数就好,mac地址也是,根据提前制定好的规划写ip
4,启动网桥并设置开机自动启动
[root@localhost张大帅哥 networks]# virsh net-define httpfpm.xml
从 httpfpm定义网络httpfpm.xml
[root@localhost张大帅哥 networks]# virsh net-start httpfpm
网络 httpfpm 已开始
[root@localhost张大帅哥 networks]# virsh net-autostart httpfpm
5,创建phpmysql网桥并启动
[root@localhost张大帅哥 networks]# cp httpfpm.xml phpmysql.xml
[root@localhost张大帅哥 networks]# vim phpmysql.xml
<network>
<name>phpmysql</name>
<uuid>5d273e58-f9bd-44f0-948d-8e9899f2d422</uuid>
<forward mode='nat'/>
<bridge name='phpmysql' stp='on' delay='0'/>
<mac address='52:54:00:dc:59:22'/>
<ip address='10.10.10.1' netmask='255.255.255.0'>
<dhcp>
<range start='10.10.10.2' end='10.10.10.254'/>
</dhcp>
</ip>
</network>
[root@localhost张大帅哥 networks]# virsh net-define phpmysql.xml
[root@localhost张大帅哥 networks]# virsh net-start phpmysql
[root@localhost张大帅哥 networks]# virsh net-autostart phpmysql
这时ifconfig查看ip应该就能看到这两个网桥
6,创建br0
[root@localhost张大帅哥 networks]# nmcli connection add type bridge con-name br0 ifname br0
[root@localhost张大帅哥 networks]# nmcli connection modify br0 ipv4.method manual ipv4.addresses 172.18.254.126/16 ipv4.gateway 172.18.0.1 ipv4.dns 172.18.0.1
[root@localhost张大帅哥 networks]# nmcli connection up br0
[root@localhost张大帅哥 networks]# nmcli connection add type bridge-slave ifname ens33 master br0
[root@localhost张大帅哥 networks]# nmcli connection up bridge-slave-ens33
7,创建虚拟磁盘文件
这里我拷进来了一个centos7的镜像
[root@localhost张大帅哥 ~]# cd /isos/
[root@localhost张大帅哥 isos]# ls
CentOS-7-x86_64-Everything-1804.iso
[root@localhost张大帅哥 ~]# mkdir -p /virtual/centos_base
[root@localhost张大帅哥 ~]# qemu-img create -f qcow2 -o size=80G,preallocation=metadata,compat=1.1 /virtual/centos_base/centos7.img
之后去本机图形界面去打开虚拟管理工具,或者打开console,执行命令virsh manager
虚拟系统管理器打开后基于centos7的镜像和创建出的虚拟硬盘文件创建出一个centos系统