LVS负载均衡器(DR模式)+nginx七层代理+tomcat多实例+php+mysql 实现负载均衡以及动静分离、数据库的调用!!!

目录

前言

一、nfs共享存储,为两个节点服务器提供静态网页共享

二、nginx作为lvs的后端节点服务器,完成lo:0网卡配置,以及内核参数设置,还有设置路由表

步骤一:先完成nfs共享存储挂载

步骤二:完成lo:0网卡配置,并且物理网卡的网关不能指向调度器,网关删除或修改,验证结果

步骤三:设置永久路由,并验证

步骤四:完成内核参数修改,并加载内核配置

三、节点服务器:192.168.20.10,完成php-fpm配置文件修改,允许两个nginx服务器可以通过php-fpm处理动态页面请求

步骤一:php和mysql都部署在192.168.20.10主机上,启动mysql和php服务,修改php的配置文件www.conf,修改监听的地址为物理地址,允许客户端地址为两个nginx的地址

步骤二:修改两个nginx服务器,开启fastcgi接口,允许以php结尾的页面完成location匹配进行相应的转发

步骤三:验证结果

四、LVS调度器的配置

步骤一:先完成vip的设置,在ens33:0网卡上设置

步骤二:修改内核参数设置,关闭路由转发

步骤三:加载ip_vs模块

步骤四:安装ipvsadm工具,进行LVS的DR模式配置

步骤五:验证结果


前言

搭建一个LVS四层代理+2个nginx七层代理+php和tomcat中间件+mysql数据库

实现负载均衡以及动静分离、数据库的调用!!!

一、nfs共享存储,为两个节点服务器提供静态网页共享

接着昨天的做,完成了nfs共享

二、nginx作为lvs的后端节点服务器,完成lo:0网卡配置,以及内核参数设置,还有设置路由表

两台七层代理的nginx服务器作为LVS的节点服务器,都需要完成以下配置:

步骤一:先完成nfs共享存储挂载

主机192.168.20.10

主机192.168.20.30

步骤二:完成lo:0网卡配置,并且物理网卡的网关不能指向调度器,网关删除或修改,验证结果

主机192.168.20.10

主机192.168.20.30

步骤三:设置永久路由,并验证

主机192.168.20.10

主机192.168.20.30

复制代码
route add -host 192.168.80.188 dev lo:0 ##临时添加静态路由

##永久添加静态路由的方法一:
vim /etc/rc.local
/sbin/route add -host 192.168.80.188 dev lo:0

chmod +x /etc/rc.d/rc.local


##永久添加静态路由的方法二:
[root@localhost ~]#vim /etc/sysconfig/static-routes
any host 192.168.20.188 dev lo:0

[root@localhost ~]#systemctl restart network
[root@localhost ~]#route -n

步骤四:完成内核参数修改,并加载内核配置

主机192.168.20.10

主机192.168.20.30

复制代码
net.ipv4.conf.lo.arp_ignore = 1   ###系统只响应目的IP为本地IP的ARP请求
net.ipv4.conf.lo.arp_announce = 2  
#系统不使用IP包的源地址来设置ARP请求的源地址,而选择发送接口的IP地址

net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2

三、节点服务器:192.168.20.10,完成php-fpm配置文件修改,允许两个nginx服务器可以通过php-fpm处理动态页面请求

步骤一:php和mysql都部署在192.168.20.10主机上,启动mysql和php服务,修改php的配置文件www.conf,修改监听的地址为物理地址,允许客户端地址为两个nginx的地址

步骤二:修改两个nginx服务器,开启fastcgi接口,允许以php结尾的页面完成location匹配进行相应的转发

主机192.168.20.10

主机192.168.20.30

步骤三:验证结果

主机192.168.20.30

主机192.168.20.10

四、LVS调度器的配置

步骤一:先完成vip的设置,在ens33:0网卡上设置

复制代码
DEVICE=ens33:0
ONBOOT=yes
IPADDR=192.168.20.188
NETMASK=255.255.255.255

步骤二:修改内核参数设置,关闭路由转发

复制代码
net.ipv4.ip_forward = 0  ##表示关闭路由转发
net.ipv4.conf.all.send_redirects = 0 ##表示关闭ICMP重定向
net.ipv4.conf.default.send_redirects = 0
net.ipv4.conf.ens33.send_redirects = 0

步骤三:加载ip_vs模块

复制代码
[root@localhost ~]#modprobe ip_vs
[root@localhost ~]#cat /proc/net/ip_vs
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port Forward Weight ActiveConn InActConn
[root@localhost ~]#yum install -y ipvsadm

步骤四:安装ipvsadm工具,进行LVS的DR模式配置

复制代码
[root@localhost ~]#ipvsadm-save >/etc/sysconfig/ipvsadm
[root@localhost ~]#systemctl start ipvsadm
[root@localhost ~]#systemctl status ipvsadm
复制代码
[root@localhost ~]#ipvsadm -C
[root@localhost ~]#ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
[root@localhost ~]#ipvsadm -A -t 192.168.20.188:80 -s rr
[root@localhost ~]#ipvsadm -a -t 192.168.20.188:80 -r 192.168.20.10:80 -g
[root@localhost ~]#ipvsadm -a -t 192.168.20.188:80 -r 192.168.20.30:80 -g
[root@localhost ~]#ipvsadm -ln
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.20.188:80 rr
  -> 192.168.20.10:80             Route   1      0          0         
  -> 192.168.20.30:80             Route   1      0          0         
[root@localhost ~]#ipvsadm

步骤五:验证结果

静态页面处理

以jsp结尾的动态页面资源

以php结尾的动态页面资源

相关推荐
Databend16 小时前
在 AWS 中国峰会逛了一天,我在 Databend 展台看到了 Agent 数据基础设施的新思路
数据库·人工智能·agent
Web3探索者2 天前
可视化服务器管理和传统命令行区别是什么?新手教程:Linux 运维到底该用图形界面还是 SSH 命令行?
linux·ssh
zylyehuo2 天前
Linux系统中网线与USB网络共享冲突
linux
ClouGence2 天前
Oracle 数据同步为什么会出现数据不一致?长事务是常被忽略的原因
数据库·后端·oracle
荣--2 天前
一键部署不是为了省时间 —— 它是把"买来的 PaaS"变成"自己的平台"的拐点
运维·zabbix·工程化·一键部署·平台化·边界设计
江华森2 天前
动手实战学 Docker — 从零到集群编排完全指南
运维
飞将2 天前
从零实现数据库(2)——HashIndex + IndexManager
数据库
Avan_菜菜3 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
Nturmoils3 天前
订单列表慢查询,先看 WHERE、ORDER BY 和 LIMIT
数据库
Sokach10153 天前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux