HAProxy+LAMP动静分离

实验目的:为了减轻后端服务器的承载量,使用HAProxy做动静分离,将动态资源放在动态web组中,静态资源放在static组中,图片放在image server中,数据库单独用一台服务器。

网络拓扑图

配置HAProxy服务器

~]# yum -y install haproxy
~]# vim /etc/haproxy/haproxy.cfg
frontend  main *:80
    acl url_web          path_end       -i .html .css .js .htm
    use_backend websers         if url_web

    acl url_static       path_end       -i .jpg .gif .png
    use_backend static          if url_static
    default_backend             app

    rspadd X-Via:\ HAProxy
    rspidel ^Server.*

backend websers
    balance     roundrobin
    rspadd X-Service:\ WEBServer
    server ws1 172.16.67.1:80 check rise 3 fall 5 weight 2 maxconn 10 cookie ws1
    server ws2 172.16.67.2:80 check rise 3 fall 5 weight 3 maxconn 10 cookie ws1
    
backend static
    balance     roundrobin
    rspadd X-Service:\ ImageServer
    server      static 172.16.69.1:80 check
    
backend app
    balance roundrobin
    rspidel ^Server.*
    rspadd X-Service:\ AppServer
    server  app1 172.16.67.1:80 check rise 3 fall 5 weight 2 maxconn 10 cookie as1
    server  app2 172.16.67.2:80 check rise 3 fall 5 weight 3 maxconn 10 cookie as1
~]# service haproxy start

配置后端静态web组和images server

~]# yum install -y httpd
~]# service httpd start
~]#  tar xf wordpress-4.8.1-zh_CN.tar.gz -C /var/www/html/

配置后端动态web组

~]# yum install -y httpd php php-mysql
~]# service httpd start
~]# tar xf wordpress-4.8.1-zh_CN.tar.gz -C /var/www/html/

~]# cd /var/www/html/wordpress
wordpress]# cp wp-config-sample.php wp-config.php
wordpress]# vim wp-config.php
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');

/** MySQL数据库用户名 */
define('DB_USER', 'wpadmin');

/** MySQL数据库密码 */
define('DB_PASSWORD', '123456');

/** MySQL主机 */
define('DB_HOST', '172.16.69.2');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

配置MySQL数据库服务器

~]# yum install -y mysql mysql-server
~]# service mysqld start
~]# mysql
mysql> create database wpdb;
mysql> grant all on wpdb.* to 'wpadmin'@'172.16.%.%' identified by '123456';
mysql> flush privileges;

访问测试

http://172.16.72.1/wordpress/

到此,试验结束。

时间: 2024-10-11 12:12:40

HAProxy+LAMP动静分离的相关文章

部署LAMP动静分离以及部署Discuz论坛

通过LAMP平台部署及应用 已经可以部署出LAMP平台,来面对客户端的请求,但是由于这些组件都是在一台服务器上进行安装,如果出现问题,将导致LAMP平台的瘫痪.在实际环境中,不可能将LAMP平台都部署在同一台服务器上,这就需要使用到LAMP动静分离的技术. 博文大纲:一.LAMP动静分离的相关概念1.PHP的工作模式2.FastCGI模式的工作机制二.实现LAMP动静分离1.FastCGI方式编译安装php2.搭建Apache并配置通过fastcgi协议调用php 搭建Mysql数据库4.ab压

haproxy实现动静分离

本节我们来讲一讲haproxy的相关知识. HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. 好的下面我们就来实现一下这个过程. 实验拓扑图: 代理服务器为内部

haproxy实现动静分离机制

ACL的简介: haproxy的ACL用于实现基于请求报文的首部.响应报文的内容或其它的环境状态信息来做出转发决策,这大大增强了其配置弹性.其配置法则通常分为两步,首先去定义ACL,即定义一个测试条件,而后在条件得到满足时执行某特定的动作,如阻止请求或转发至某特定的后端. syntax: acl <aclname> <criterion> [flags] [operator] <value> ... Description: <aclname>:ACL名称,

haproxy实现动静分离-实例

环境拓扑图 环境准备: Centos6.5x86_64 关闭防火墙和Selinux node1:HAProxy    VIP:eth1:192.168.1.19/24    eth2:192.168.19.1/24 node2:static-server (eth0: 192.168.19.2/24     网关:192.168.19.1) node3:dynamic-server(eth0: 192.168.19.3/24 网关:192.168.19.1) 一.安装并配置Haproxy服务器

HAProxy+KeepAlived实现web服务高可用、动静分离等

大致规划: 主机 IP 描述 VIP 192.168.0.222 对外提供高可用IP haproxy+keepalived (node1) 192.168.0.111 haproxy为后端两台WEB服务的做动静分离:keepalived为haproxy做高可用. haproxy+keepalived (node2) 192.168.0.112 WEB                (node3) 192.168.0.113 提供静态请求响应 Apache+PHP+MySQL   (node4)

haproxy实现的web反向代理,动静分离,以及基于keepalived实现的haproxy的高可用

   haproxy于Nginx一样都是做反向代理,但是与其相比,haproxy更专注于web代理.HAProxy是单进程多请求,也支持多进程,HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.       haproxy功能的实现全部基于配置文件,所以我们需要了解很多的配置指令,玩转指令,再结合实际情况,我们就玩转了haproxy,其实haproxy的配置也很简单,下面我们一起简单认识和了解一些haproxy的基本功能和相关知识.         CentOS6.5自带的rpm

HAproxy(二)动静分离

(一)简述 在现实的应用环境中,往往根据业务请求的不同将相关的请求指定到不同的后端服务器中,例如客户是静态资源的请求,haproxy就将请求转发给静态服务器,如果是动态的请求就转发给静态服务器,haproxy实现动静分离是通过acl匹配规则来实现这一目的. 服务器名称 IP 说明 HAProxy 192.168.180.23 web服务器 Static Server 192.168.180.4 静态资源服务器(nginx代理) PHP Server 192.168.180.9 php服务器(ng

haproxy的web服务负载均衡、动静分离、 MySQL服务负载均衡、状态监控

实验环境:基于centos6.6 haproxy-Server:172.16.249.98  hostname:node1 upsteram server1:172.16.249.100 hostname:node2 upstream server2:172.16.249.99  hostname:node3 web服务的负载均衡以及状态监控: 设置记录haproxy日志的文件位置: node1: #vim /etc/rsyslog.conf (1)启用UDP: # Provides UDP s

HAproxy的负载均衡+日志独立+动静分离+读写分离的配置

主机环境   redhat6.5 64位 实验环境   服务端1 ip 172.25.29.2            服务端2 ip 172.25.29.3             管理端1 ip 172.25.29.1  防火墙状态:关闭 1.Haproxy的负载均衡及测试 A)负载均衡的配置 [[email protected] ~]# yum install haproxy -y            #安装haproxy [[email protected] ~]# vim /etc/h