使用haproxy代理LAMP、LNMP 实现WordPress发布

haproxy简介

HAProxy是专业的反向代理软件,它可以支持4层和7层代理服务。其配置包含一下几个配置段:

global:全局设置,通常与操作系统有关

defaults:配置默认参数,可以被frontendbackendlisten组件利用

frontend:接收亲请求的前虚拟节点

backend:后端服务集群的配置,一个backend可以对应多个

listenfrontendbackend的结合体

       下面介绍以HAProxy作为反向代理服务器实现WordPress发布的方法。

实验器材:

 使用haproxy代理LAMP、LNMP 实现WordPress发布       

haproxy服务器 172.18.55.76
192.168.248.152

nginx静态服务器 172.18.55.63

apache动态服务器 172.18.55.71

mysql服务器 172.18.55.72

nfs服务器 172.18.55.62

 

实验过程:

1 下载WordPress安装文件到nfs服务器上,解压缩文件

2安装nfs服务,并设置共享解压缩文件目录

3 mysql服务器上安装mysql-server

4mysql服务器上建立wordpress数据库和用户

5nginx服务器上安装nginx,并挂载nfs服务器共享的WordPress

6apache服务器上安装httpdphp,并挂载nfs服务器共享的WordPress

7 haproxy服务器上安装haproxy

yum install –y haproxy

 

修改haproxy的配置文件

 

vim /etc/haproxy/haproxy.cfg

 

frontend  web *:80  #设置web服务监听80端口
    acl url_php       path_end     -i .php    #定义以.php结尾的acl规则
    use_backend       php          if url_php #如果符合url_php规则,则转发给php里的server
    default_backend             app           #缺省backend为app
frontend webstats *:8080                      #设置web状态访问页面的端口为8080
    acl stats_allow  src  172.18.0.0/16       #设置允许访问的源地址段
    use_backend  stats         if stats_allow #设置符合条件的转发给backend stats
 
backend php                                   #php后端服务器规则
    balance     roundrobin                    #后端服务器调度算法为roundrobin
    server      static 172.18.55.71:80 check  #后端服务器的名称、IP地址、端口、状态监测
backend stats                                 #stats后端服务器规则
    stats enable                              #开启stats页面
    stats uri /admin?stats                    #自定义访问stats页面的uri路径
    stats realm hello                         #登录对话框的提示信息
    stats auth admin:admin                    #登录用户名和密码
 
backend app
    balance     roundrobin
server  app1 172.18.55.63:80 check

8 使用http://192.168.248.152/wordpress登录并设置

9 使用http://http://172.18.55.76:8080/admin?stats 查看状态信息

使用haproxy代理LAMP、LNMP 实现WordPress发布

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

(0)
realmasterrealmaster
上一篇 2017-05-17 21:43
下一篇 2017-05-18 09:58

相关推荐

  • N28-第二周

    1. Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。
    2. bash的工作特性之命令執行狀態返回值和命令行展開所涉及的內容及其示例演示。
    3. 請使用命令行展開功能來完成以下練習:
    (1) 創建/tmp目錄下的a_c、a_d、b_c、b_d。
    (2) 創建/tmp/mylinux目錄下的bin、boot/grub、dev、etc/rc.d/init.d、etc/sysconfig/network-scripts、lib/modules、
    lib64、proc、sbin、sys、tmp、usr/local/bin、usr/local/sbin、var/lock、var/log、var/run目錄。
    4. 如何查看文件的元數據,其信息有哪些,分別表示什麼含意?如何修改文件的時間戳信息?
    5. 如何定義一個命令的別名?如何在命令中引用另一個命令的執行結果?
    6. 顯示/var目錄下所有以L小寫開頭,以一個小寫字母結尾,且中間至少出現一位數字(可以有其它字符)的文件或目錄。
    7. 顯示/etc目錄下,以任意一個數字開頭,且以非數字結尾的文件或目錄。
    8. 顯示/etc目錄下,以非字母開頭,後面跟了一個字母以及其他任意長度任意字符的文件或目錄。
    9. 在/tmp目錄下創建以tfile開頭,後跟當前日期和時間的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10. 複製/etc目錄下所有以p開頭,以非數字結尾的文件或目錄到/tmp/mytest1目錄中。
    11. 複製/etc目錄下所有以.d結尾的文件或目錄至/tmp/mytest2目錄中。
    12. 複製/etc目錄下所有以L小寫或m或n開頭,以.conf結尾的文件至/tmp/mytest3目錄中。

    Linux干货 2017-12-14
  • 二进制安装mysql(mariadb)

    实验环境: ~]# lsb_release -a Distributor ID: CentOSDescription: CentOS Linux release 7.4.1708 (Core)Release: 7.4.1708Codename: Core 去官方下载mariadb: https://downloads.mariadb.org/ 本人将自己的文…

    2018-01-22
  • 8月9日vim作业

    复制/etc/rc.d/init.d/functions文件至/tmp目录;替换/tmp/functions文件中的/etc/sysconfig/init为/var/log; :%s@/etc/sysconfig@/var/log@ 删除/tmp/functions文件中所有以#开头,且#后面至少有一个空白字符的行的行首的#号 :%s@^#\([[:spac…

    Linux干货 2016-08-10
  • 马哥教育网络班22期+第1周课程练习

    Linux的发行版以及不同发行版之间的联系与区别    Linux发行版主要的大分支有三个:dibian  S.U.S.E  redhat 一个操作系统由kernel和application组成。编译封装的时候根据不同的application,可以编译成不同的发行版本。 所有的linux发行版都是基于GPL的版权,它们…

    Linux干货 2016-08-15
  • 网络配置——命令家族

    Linux网络属性配置命令: ifcfg家族:ifconfig,route,netstat ifconfig命令:接口及地址查看和管理          ·ifconfig [INTERFACE]       &nbsp…

    Linux干货 2016-09-07
  • GNU awk

    GNU awk:      文本处理三剑客:grep,sed,awk            grep,egrep,fgrep:文本过滤工具;pattern     &nb…

    Linux干货 2017-05-22