LVS产生背景、原理及LVS-DR应用实例(二)

六、LVS-DR应用实例 

 

      (一)基本构建思路:   

       Director: 通过Director实现访问调度到RS1,RS2,实现负载均衡,RS3负责动态分离。

       基本拓扑图如下:          

                   

    

 

   

 模型图.png

 

  (二) 实现方法

     

             

             1) 设置nfs 共享目录, /data/wwwroot/wordpress/

 

              yum install -y nfs-utils

              service  rpcbind  start

              service  nfs  start   

 

              mkdir -pv /data/wordpress/         

              useradd  -M -r -s /sbin/nologin -u 3307 www             

              chown www:www /data/wwwroot/wordpress/ 

           

             vim /etc/exports
            /data/wordpress/   181.163.10.0/24(rw,no_root_squash)

 

            2)将wordpress安装包解压到此目录,并安装PHP,mariadb,修改权限和相应配置        

               

              修改共享文件目录及文件权限

              chown -R www:www /data/wwwroot/wordpress/  

 

             php-fpm.conf 配置修改 

             listen = 9000   #监听 9000 端口
listen.allowed_clients = 181.163.10.9,181.163.10.10,127.0.0.1  #允许IP   

 

            建立数据库

            mysqladmin -u root -p create dbase_wordpress_01;

            use dbase_wordpress_01;  

mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
    -> ON dbase_wordpress_01.*
    -> TO 'localhost'
    -> IDENTIFIED BY 'root';
 Query OK, 0 rows affected (0.00 sec)      

              

          

 

          3)RS1 RS2  设置vip 及lo

              echo "0">/proc/sys/net/ipv4/ip_forward

              echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
              echo 1 > /proc/sys/net/ipv4/conf/lo/arp_ignore
              echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
              echo 2 > /proc/sys/net/ipv4/conf/lo/arp_announce
             ifconfig lo:0 $vip netmask 255.255.255.255 broadcast $vip
             route add -host $vip dev lo:0

             

            执行脚本完成LVS_Realserver.sh ,RS1结果如下

 

               lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
    inet 181.163.11.254/0 scope global lo:0:1
    inet 181.163.11.254/32 brd 181.163.11.254 scope global lo:0
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever          

               

        4)挂载共享目录

                mount -t nfs   181.163.10.11:/data/wwwroot/wordpress/     /data/wwwroot/wordpress/

      

        5)   修改 nginx.conf 文件

                   root  /data/wwwroot/wordpress/;                

                  fastcgi_pass 181.163.10.11:9000;

 

       6)Director 设置

            yum install ipvsadm -y     

     

            ipvsadm -A -t $VIP:80 -s rr -p 120

            ipvsadm -a -t $VIP:80 -r $RIP1:80 -g

            ipvsadm -a -t $VIP:80 -r $RIP2:80 -g

            echo "0">/proc/sys/net/ipv4/ip_forward

            ifconfig eth0:0 $VIP broadcast $VIP netmask 255.255.255.255 up

            route add -host $VIP dev eth0:0

 

            运行脚本完成添加集群服务及集群节点:LVS_Director.sh

 

            查看结果: ipvsadm -L -n

IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  181.163.11.254:80 rr persistent 120
  -> 181.163.11.2:80              Route   1      0          0        
  -> 181.163.11.3:80              Route   1      0          0    

         

 

(三)、结果截图

     结果1.png

结果2.png

    

                

              

 

 

      

        

             

      

 

     

原创文章,作者:Acheng,如若转载,请注明出处:http://www.178linux.com/55184

(0)
AchengAcheng
上一篇 2016-10-29 00:26
下一篇 2016-10-29 00:44

相关推荐

  • 第四周作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost ~]# cp /etc/skel /home/tuser1 [root@localhost ~]# chmod -R&nb…

    Linux干货 2017-01-18
  • 第五周作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行;grep “^[[:space:]]+”  /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行;[root@localhost ~…

    Linux干货 2017-03-10
  • 第五周作业

    查看链接:http://note.youdao.com/noteshare?id=1ed7b36aa41cbdc1154e3e5b54e43fce

    Linux干货 2016-09-19
  • 实现CenOS7网卡名传统方式

    网卡命令:理念 CentOS 6之前,网络接口使用连续号码命名:eth0、eth1等,当 增加或删除网卡时,名称可能会发生变化 CentOS 7使用基于硬件,设备拓扑和设置类型命名: (1) 网卡命名机制 systemd对网络设备的命名方式 (a) 如果Firmware或BIOS为主板上集成的设备提供的索引信 息可用,且可预测则根据此索引进行命名, 例如en…

    Linux干货 2017-12-19
  • 软件包管理器之一——RPM介绍及应用

    一、前言:     在没有软件包管理器前,用户都是通过源代码的方式来安装软件。但是我们很容易发现,在每次安装软件时都必须对操作系统的境、编译的参数进行对应的编译,并且操作过程很是复杂,这对于不熟悉操作系统的朋友来说真心困难,那么有没有一款软件能让用户能很简单的安装所需的软件呢?    &n…

    Linux干货 2015-07-20
  • 脚本作业–函数练习

    1、编写服务脚本/root/bin/testsrv.sh,完成如下要求(1) 脚本可接受参数:start, stop, restart, status(2) 如果参数非此四者之一,提示使用格式后报错退出(3) 如是start:则创建/var/lock/subsys/SCRIPT_NAME, 并显示“启动成功”考虑:如果事先已经启动过一次,该如何处理?(4) …

    Linux干货 2016-08-24

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 16:13

    详实有料,生动有趣,能加入一些注释信息、架构的解说会更好,加油!