LVS直接路由模式:简称DR模式,采用半开放式的网络结构,与TUN(IP隧道)的结构类似,但各节点并不是分散在各地而是与调度器位于同一个网络,负载调度器与各节点服务器通过本地网络连接,不需要建立专用的IP隧道
Keepalived:主要是用来提供故障切换和健康检查功能,判断LVS负载调度器、节点服务器的可用性,及时隔离并替换为新的服务器当故障机恢复后将它重新加入群集。Keepalived采用ARRP热备份协议,以软件的方式实现Linux服务器的多机热备功能。
实验环境:一台CentOS7虚拟机作为主调度器,ip地址为192.168.100.201,网卡模式为仅主机
一台CentOS7虚拟机作为备用调度器,ip地址为192.168.100.202,网卡模式为仅主机
两台调度器的虚拟IP为192.168.100.10
一台CentOS7虚拟机作为第一台web节点服务器,ip地址为192.168.100.221,网卡模式为仅主机
一台CentOS7虚拟机作为第二台web节点服务器,ip地址为192.168.100.222,网卡模式为仅主机
一台win7,作为客户机进行访问,ip地址为192.168.100.4,网关为虚拟IP192.168.100.10
一、配置主调度器
1 安装ipvsadm keepalived 工具包(这里可以现在NAT模式下进行安装,然后再换到仅主机模式)
2 开启调度器的路由妆发功能,同时proc响应的重定向选择关闭
3 配置虚拟网卡,虚拟IP为192.168.100.10
4 开启虚拟网卡
5 在/etc/init.d目录下创建一个控制服务的脚本文件
6 脚本文件配置完成后赋予这个脚本执行权限
7 开启ipvsadm服务
二、对备用调度器进行配置,这里的配置过程和主调度器一模一样,具体过程就不在演示
三、对第一台节点服务器进行配置
1 开启该服务器的Apache服务
2 配置虚拟网卡,注意这里配置的是回环网卡的虚拟网卡(如果是用远程操作软件进行操作的,这里先别启动网卡,不然远程连接会断开)
3 在/etc/init.d/目录下写一个控制服务的脚本文件
4 给与脚本文件的执行权限,接着开启服务和虚拟网卡
5 在/var/www/html目录下创建一个网站首页进行测试
四、配置第二台节点服务器,过程和第一台一模一样,唯一有区别的是创建的测试网页要不同于第一个,以便进行区分
五、在主调度器上部署Keepalived
1 安装完Keepalived工具后会在/etc目录下生成一个配置文件
2 对这个主配置文件进行配置,具体过程在图中都有说明(注意图中我标明的主从之间的区别和相同的地方)
3 启动Keepalived服务
六、在从服务器上部署Keepalived服务,部署过程和主调度器大都是相同的,有些不同的地方我在图中有标出,注意看标注即可
在以上四台服务器配置过程中防火墙和setenforce都是关闭的,这点要注意
七、测试服务
可以看到我通过虚拟IP可以访问到两台节点服务器的内容,说明LVS服务部署成功(这里我客户机的网关是这里的虚拟IP192.168.100.10)
接着我把主调度器的虚拟网卡进行关闭,可以看到我依然可以访问到两台节点服务器的网站,说明我的Keepalived部署是成功的
注意!!! #在进行访问时一定要注意缓存问题,如果访问不成功可以试着清除下缓存再进行刷新访问
#如果清除缓存无效可以查看服务是否都开启,可以将四台服务器的服务都重启一遍
#查看四台服务器的防火墙是否都关闭
#在对文件进行配置时需要格外仔细,很多错误都是因为文件配置错误所导致的