HAproxy对wordpress的代理


一,实验环境

网络拓扑结构

clip_image001

Web2,master是centos7.3

Web1,backup是centos6.8

客服端的window主机首win7

所有的主机通过switch相连,处于172.18.0.0/16的网段中

二,安装的软件

使用wordpress版本4.3.1

Web1安装httpd,php,php-mysql

Web2安装nfs-utils,php,php-mysql,mariadb-server,提供/var/www/html/wordpress文件挂载

三,实验步骤

1)web1,web2的环境构建

我把nfs和mariadb安装在了web2上,web1通过挂载nfs和远程访问mariadb来实现web1和web2的数据同步问题,但是这样nfs无法解决并发的场景,这里只是提供粗糙的方法。

Web2:

#yum install httpd php php-mysql mariadb-server nfs-utils -y

#systemctl start mriadb

#mysql

Mysql>create database wpdb;

Mysql>grant all on wpdb.* to ‘wpuser’@’%‘ identified by ‘123456’;

Mysql>flush privileges;

Mysql>quit

#cd /var/www/html

#unzip wordpress*

#chown apache wordpress -R

#vim /etc/exports

加入一行

/var/www/html/wordpress 172.18.0.0/16(rw)

#systemctl start nfs

#showmount -e 127.0.0.1

clip_image002

Web1:

#yum install httpd php php-mysql nfs-utils -y

#cd /var/www/html/

#mkdir wordpress

#chown apache.apche wprdpress -R

#mount -t nfs 172.18.52.5:/var/www/html/wordpress wordpress

使用chrome对web1和web2的wordpress网页进行访问:

clip_image003

clip_image004

clip_image005

clip_image006

成功的安装了wordpress。

2)对前端的haproxy的设置和keepalived的设置

安装配置keepalived

#yum install keepalived haproxy -y

#vim /etc/keepalived/keepalived.conf

对于master的keepalived的配置文件

clip_image007

对于backup的keepalived配置文件

clip_image008

测试:

停止master的keeplaived,查看backup的ip变化

clip_image009

启动master的keepalived,查看master的ip变化

clip_image010

keepalived的配置已经完成

3)haproxy的配置

两台haproxy的配置文件都相同

clip_image011

4)测试

在web1中的/var/www/html/test.php,访问/172.18.52.100/test.php

clip_image012

在web2中的/var/www/html/1.jpg,访问/172.18.52.100/timg.jpg

clip_image013

总结:

动态分离可以充分的根据服务器的性能不同来进行网页的调度力度的分配,但是动态分离的正则表达式语句是一个比较困难的地方。如有雷同纯属巧合,有不足之处,请大家指出,谢谢!

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

(0)
luoxzluoxz
上一篇 2017-05-17
下一篇 2017-05-17

相关推荐

  • N26-第三周作业

    N26-第三周作业 一、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@promote ~]# who root     tty1         2017-03-10 22:36 lxk…

    Linux干货 2017-03-11
  • Linux获取帮助的途径、history命令及文件系统结构

        在学习Linux的过程中,往往会遇到一些难以理解的问,这时我们就需要寻求帮助,下面是获取帮助的几个途径。 一、man(manual)手册(命令) 1、man手册介绍 (1)man手册是系统自带的联机帮助手册,善于利用man命令,可以帮我们解决遇到的大部分问题。 (2)man手册分为九个章节,每个章节是独立的。 章节1:表…

    Linux干货 2016-07-29
  • N22-第五周作业

    1、显示当前系统上root、fedora或user1用户的默认shell;  egrep "^(root|fedora|user1)" /etc/passwd|awk -F: '{printf "%-15s:%-s\n",$1,$7}' 2…

    Linux干货 2016-09-15
  • 09yum的使用以及简单配置

    YUM: yellowdog update modifier ,rpm的前端程序,用来解决软件包相关依赖性,可以在多个库之间定位软件包。 yum repository:yum repo,存储了众多RPM包,以及包相关的元数据文件,放置于特定目录repodata下。 yum 访问的文件服务器主要有三种,ftp,http,file。 yum客户端配置文件: 【/…

    Linux干货 2016-11-04
  • selinux介绍

    本章内容 SELinux概念启用SELinux管理文件安全标签管理端口标签管理SELinux布尔值开关管理日志查看SELinux帮助 SELinux介绍 SELinux: Secure Enhanced Linux,是美国国家安全局「NSA=The National Security Agency」和SCC(Secure Computing Corporat…

    Linux干货 2016-09-19
  • Java中的Map List Set等集合类

    Map List Set等集合类: 一、概述 在JAVA的util包中有两个所有集合的父接口Collection和Map,它们的父子关系: +Collection 这个接口extends自 –java.lang.Iterable接口 ├+List(接口 代表有序,可重复的集合。列表) │├ ArreyList   &…

    Linux干货 2015-04-07