分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

lvs-nat,lvs-dr模型构建phpMyAdmin

发布时间:2023-09-06 01:19责任编辑:傅花花关键词:暂无标签

  1.使用NAT模型的TCP协议类型的lvs服务负载均衡一个php应用,如Discuz!论坛或者phpMyAdmin;

  NAT模型的lvs集群的构建是基于网络地址转换进行的;所以首先必须要有至少三台主机,配置其IP地址;

  ①

  Directory主机:

           172.16.72.5(面向外网IP)

           192.168.72.5(面向内网RS的IP)

  650) this.width=650;" src="https://s3.51cto.com/oss/201710/20/abe7b70630c567fb005fd03f4080755a.jpg-wh_500x0-wm_3-wmp_4-s_104858511.jpg" title="QQ截图20171020185737.jpg" alt="abe7b70630c567fb005fd03f4080755a.jpg-wh_" />

  RS1主机:

       192.168.72.6(RIP1)

  650) this.width=650;" src="https://s3.51cto.com/oss/201710/20/eca1ee39deb43f64fb471e437d3cf2e4.jpg-wh_500x0-wm_3-wmp_4-s_2911863924.jpg" title="QQ截图20171020185812.jpg" alt="eca1ee39deb43f64fb471e437d3cf2e4.jpg-wh_" />

  设置默认网关:

  650) this.width=650;" src="https://s4.51cto.com/oss/201710/20/6f36692a88947dacf000d4a6365f376d.jpg-wh_500x0-wm_3-wmp_4-s_1003924272.jpg" title="QQ截图20171020190000.jpg" alt="6f36692a88947dacf000d4a6365f376d.jpg-wh_" />

  RS2主机:

       192.168.72.7(RIP2)

  650) this.width=650;" src="https://s1.51cto.com/oss/201710/20/043111a2ceeabff4ea69fbff6b5f1b20.jpg-wh_500x0-wm_3-wmp_4-s_2651453430.jpg" title="QQ截图20171020185857.jpg" alt="043111a2ceeabff4ea69fbff6b5f1b20.jpg-wh_" />

  设置默认网关:

  650) this.width=650;" src="https://s4.51cto.com/oss/201710/20/866402c69e49c3f3c5eddb3c176ac736.jpg-wh_500x0-wm_3-wmp_4-s_1408027144.jpg" title="QQ截图20171020190015.jpg" alt="866402c69e49c3f3c5eddb3c176ac736.jpg-wh_" />

  配置RS主机通往Directory的网关,为什么添加网关,详情请看上一篇博客!

  ②在三台主机上安装httpd服务

   yum -y install httpd

   配置RS1的虚拟主机

   650) this.width=650;" src="https://s3.51cto.com/oss/201710/20/2e1682ca86dbe56d37846f23a89ad9ab.jpg-wh_500x0-wm_3-wmp_4-s_3596192678.jpg" title="QQ截图20171020190244.jpg" alt="2e1682ca86dbe56d37846f23a89ad9ab.jpg-wh_" />

   配置RS2的虚拟主机

   650) this.width=650;" src="https://s3.51cto.com/oss/201710/20/ab279690534e4f5aa949e6219d899c59.jpg-wh_500x0-wm_3-wmp_4-s_3269901070.jpg" title="QQ截图20171020190303.jpg" alt="ab279690534e4f5aa949e6219d899c59.jpg-wh_" />

   安装RS的php-fpm与mariadb-server服务

   yum -y install php-fpm mariadb-server


   对php-fpm的配置文件进行修改,修改为监听本机(默认就是监听本机的,刚下载的朋友可以不用改了)

   ③设置Directory

   首先检查一下Directory主机是否加载IPVS的内核模块

   650) this.width=650;" src="https://s4.51cto.com/oss/201710/20/049ef054ab2130733161c75964832a7a.jpg-wh_500x0-wm_3-wmp_4-s_2338625748.jpg" title="QQ截图20171020190623.jpg" alt="049ef054ab2130733161c75964832a7a.jpg-wh_" />

   有则已加载

   下载lvs的用户空间命令ipvsadm,用于设置ipvs的规则命令

   yum install -y ipvsadm

   设置集群服务规则:

   650) this.width=650;" src="https://s5.51cto.com/oss/201710/21/01fb7d89e926b480b043765563f6d574.jpg-wh_500x0-wm_3-wmp_4-s_1605622804.jpg" title="QQ截图20171021102647.jpg" alt="01fb7d89e926b480b043765563f6d574.jpg-wh_" />

   -t:表示tcp服务;后面的IP地址与端口表示的是这次集群Directory的VIP与相关服务端口;

   -s:表示使用的算法,这里算法表示为rr算法,算法详情请见上一篇博客;

   -p:设置长连接,不设置无法正常启动;

   添加RS管理规则:

   650) this.width=650;" src="https://s1.51cto.com/oss/201710/20/445dd82074ca1ceaf45449a5fadb3688.jpg-wh_500x0-wm_3-wmp_4-s_2489192103.jpg" title="QQ截图20171020191406.jpg" alt="445dd82074ca1ceaf45449a5fadb3688.jpg-wh_" />

   -r:为指定的RIP;


   最后设置核心转发功能,否则Directory无法转发

   650) this.width=650;" src="https://s5.51cto.com/oss/201710/20/b2e3b98575926fb2753b34278b8a5fd3.jpg-wh_500x0-wm_3-wmp_4-s_238487057.jpg" title="QQ截图20171020191557.jpg" alt="b2e3b98575926fb2753b34278b8a5fd3.jpg-wh_" />

  

   将phpMyAdmin导入两台RS主机中,解压;

   配置MySQL表与表对应的用户权限

   RS1:

   650) this.width=650;" src="https://s2.51cto.com/oss/201710/21/a2f20842c87f9b5cafb04aa630c33e5a.jpg-wh_500x0-wm_3-wmp_4-s_102074464.jpg" title="QQ截图20171021102235.jpg" alt="a2f20842c87f9b5cafb04aa630c33e5a.jpg-wh_" />

   RS2:

   650) this.width=650;" src="https://s3.51cto.com/oss/201710/21/e9a916348654aff1c73b27cd557192a7.jpg-wh_500x0-wm_3-wmp_4-s_3110899566.jpg" title="QQ截图20171021102335.jpg" alt="e9a916348654aff1c73b27cd557192a7.jpg-wh_" />

   

   配置php-fpm:

   创建其session目录,存放会话,并将其属主属组更改为apache

   650) this.width=650;" src="https://s2.51cto.com/oss/201710/21/3add277a74b53d88daa3da22ffca27e1.jpg-wh_500x0-wm_3-wmp_4-s_4285716318.jpg" title="QQ截图20171021102942.jpg" alt="3add277a74b53d88daa3da22ffca27e1.jpg-wh_" />


   通过客户端访问:

   因为是rr算法,,从第一台RS访问,所以其用户密码为wjq,123456

   650) this.width=650;" src="https://s1.51cto.com/oss/201710/21/26c158082eb28458dea3e38415127b0a.jpg-wh_500x0-wm_3-wmp_4-s_4167092789.jpg" title="QQ截图20171021103450.jpg" alt="26c158082eb28458dea3e38415127b0a.jpg-wh_" />

     650) this.width=650;" src="https://s5.51cto.com/oss/201710/21/57ada79993e2d3e26412caba8da2121e.jpg-wh_500x0-wm_3-wmp_4-s_709626865.jpg" title="QQ截图20171021103439.jpg" alt="57ada79993e2d3e26412caba8da2121e.jpg-wh_" />

  经过一段时间的长连接再次访问:

  650) this.width=650;" src="https://s1.51cto.com/oss/201710/21/c83d252da561f3ec0d5735b0fe9dd41d.jpg-wh_500x0-wm_3-wmp_4-s_2894178923.jpg" title="QQ截图20171021104523.jpg" alt="c83d252da561f3ec0d5735b0fe9dd41d.jpg-wh_" />

    650) this.width=650;" src="https://s4.51cto.com/oss/201710/21/1002e661201c90884aa1ab0d0009abe4.jpg-wh_500x0-wm_3-wmp_4-s_1198604531.jpg" title="QQ截图20171021104537.jpg" alt="1002e661201c90884aa1ab0d0009abe4.jpg-wh_" />

  

   

  2.使用DR模型的FWM类型的lvs服务负载均衡一个php应用,如Discuz!论坛或者phpMyAdmin;

  DR模型的原理上篇博客已经讲得很清楚了,在这里就不多说了;

  首先配置DR调度器:

  因为DR模型的直连路由架构,所以DR调度器的VIP与DIP在同一个端口,在这里将VIP作为从接口,将DIP作为主接口,方便后续解决单点故障;

    650) this.width=650;" src="https://s4.51cto.com/oss/201710/21/e1de25ff80cc174d8b0d0afc72406f8d.jpg-wh_500x0-wm_3-wmp_4-s_4243140770.jpg" title="QQ截图20171021194245.jpg" alt="e1de25ff80cc174d8b0d0afc72406f8d.jpg-wh_" />

   VIP的配置方式:

   ifconfig eno16777736:0 172.16.72.5 netmask 255.255.255.255 broadcast 172.16.72.5 up

   

   设置FWH规则:

   规则模式同ipvs相似,不同在于其需要在报文进入内核空间后设置防火墙标签,然后由设置的FWH规则根据其标签确定使用哪个集群服务,使用哪种算法发往哪台RS;

   设置防火墙标签需在mangle表的PREROUTING链上设置;

    #iptables -t mangle -A PREROUTING -p tcp --dport 80 -d 172.16.72.5 -j MARK --set-mark 10

    注意:目标IP设置为VIP的,--set-mark设置的为防火墙标签,设置的值随意,80端口则为访问VIP的的那个端口服务; 

    设置基于FWH的集群服务:

    #ipvsadm -A -f 10 -s rr

    650) this.width=650;" src="https://s3.51cto.com/oss/201710/21/003696cb182cd69b5331e0cbe4075b25.jpg-wh_500x0-wm_3-wmp_4-s_2653451955.jpg" title="QQ截图20171021195722.jpg" alt="003696cb182cd69b5331e0cbe4075b25.jpg-wh_" />

   最后设置核心转发功能!!


   DR模型的调度器配置完毕!

   配置RS:

    首先需要配置一个与DIP同网段的RIP,并将其arp_ignore与arp_announce设置为1与2

    arp_ignore常用的三种等级:

     0:默认值,对于任何网络的访问都会回应;

     1:对不是访问本网络接口的报文不予以回应;

     2:对不是访问本网络接口的保温不予以回应,并且保证来访IP地址与该接口的IP地址在同一子      网;

     注意:一般用的是1这个级别;

    arp_announce常用的三种级别:

     0:默认值,将本机所有接口的信息向所有接口所连接的网络中通告;

     1:尽量避免向本接口不同网络中的其他接口通告;

     2:绝对避免向非本网络的主机通告;


    设置方式:在/proc/sys/net/ipv4/conf/all/arp_ignore

            /proc/sys/net/ipv4/conf/all/arp_announce

            /proc/sys/net/ipv4/conf/lo/arp_ignore

            /proc/sys/net/ipv4/conf/lo/arp_announce

            使用输出重定向的方式写入

            如echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore

    配置RS的VIP,再环回接口的标签上配置

    如:

    650) this.width=650;" src="https://s4.51cto.com/oss/201710/21/a1f42757adc944a2fb8aa4d68569ea77.jpg-wh_500x0-wm_3-wmp_4-s_3431101046.jpg" title="QQ截图20171021200605.jpg" alt="a1f42757adc944a2fb8aa4d68569ea77.jpg-wh_" />

    配置方法:#ifconfig lo:0 172.16.72.5 netmask 255.255.255.255 broadcast 172.16.72.5 up

   

    第二台RS配置方法同上;

    

    将phpMyAdmin压缩包导入/var/www/html中,解压,配置php-fpm(同nat模型的配置一样),配置    Mariadb(同nat模型配置一样)

     

    直接访问:

    访问第一次,因为使用的是rr算法

    650) this.width=650;" src="https://s1.51cto.com/oss/201710/21/aa96e2a7dc662d17b32aa4b6fced60e6.jpg-wh_500x0-wm_3-wmp_4-s_1098429254.jpg" title="QQ截图20171021201033.jpg" alt="aa96e2a7dc662d17b32aa4b6fced60e6.jpg-wh_" />

     650) this.width=650;" src="https://s5.51cto.com/oss/201710/21/44ea78e8634606e2259f52dfc0f982f0.jpg-wh_500x0-wm_3-wmp_4-s_374054806.jpg" title="QQ截图20171021201018.jpg" alt="44ea78e8634606e2259f52dfc0f982f0.jpg-wh_" />

    经过了一段时间的持久连接,再次访问时:

    650) this.width=650;" src="https://s4.51cto.com/oss/201710/21/18f3e259ad026cecd6139c4decd3a5cb.jpg-wh_500x0-wm_3-wmp_4-s_4245954167.jpg" title="QQ截图20171021193224.jpg" alt="18f3e259ad026cecd6139c4decd3a5cb.jpg-wh_" />

    650) this.width=650;" src="https://s4.51cto.com/oss/201710/21/be13fbf2f1f913d9dddf0e4f3136eca6.jpg-wh_500x0-wm_3-wmp_4-s_4153387720.jpg" title="QQ截图20171021193209.jpg" alt="be13fbf2f1f913d9dddf0e4f3136eca6.jpg-wh_" />

    

  

  

  


lvs-nat,lvs-dr模型构建phpMyAdmin

原文地址:http://12480612.blog.51cto.com/12470612/1974885

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved