Haproxy-1.8.20 根据路径(URI)转发到后端不同集群
HAProxy根据不同的URI 转发到后端的服务器组
1 ) 实验内容说明:
1.1 ) 根据不同的URI 转发到后端的服务器组. /a /b 和其他 默认使用其他。
1.2 ) 使用IP介绍:
haproxy | 10.10.50.119 | ha | 入口LB
server-1 | 10.10.29.207 | http | /a 路径转发到此
server-2 | 10.10.4.209 | http | /b 路径转发到此
server-3 | 10.10.116.206 | http | 其他所有的转发到此
2 ) HAProxy-1.8.20 根据路径转发到不同后端组:
2.1 ) haproxy 配置
[root@ser haproxy]# grep -vE '^$|^#|^ #' haproxy.cfg
global
maxconn 100000
chroot /data/soft/haproxy
stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin
uid 1000
gid 1000
daemon
nbproc 2
cpu-map 1 0
cpu-map 2 1
pidfile /usr/local/haproxy/run/haproxy.pid
log 127.0.0.1 local3 info
defaults
option http-keep-alive
option forwardfor # ip地址透传 针对http 协议有效
maxconn 100000
mode http
timeout connect 300000ms
timeout client 300000ms
timeout server 300000ms
frontend web_prot_80
bind 0.0.0.0:80
mode http
#########################重点部分开始
acl web_port path_beg -i /a # 定义一个ACL,名web_port,模糊匹配路径/a
acl mob_port path_beg -i /b # 定义一个ACL,名web_port,模糊匹配路径/b
use_backend web_port_http_nodes if web_port
# 客户端访问HA路径http://10.10.50.119/a,匹配成功web_port就转发到web_port_http_nodes.如果没有成功继续往下匹配.都匹配不成功就转发到 defalt_backend.
use_backend mob_port_http_nodes if mob_port
# 客户端访问HA路径http://10.10.50.119/b,匹配成功mob_port就转发到mob_port_http_nodes.如果没有成功继续往下匹配.都匹配不成功就转发到 defalt_backend.
default_backend backup_nodes # 一定要有默认转发的这一条,否则会报错。
backend web_port_http_nodes
server server1 10.10.29.207:80 weight 1 check port 80 inter 3s fall 2 rise 5
backend mob_port_http_nodes
server server2 10.10.4.209:80 weight 1 check port 80 inter 3s fall 2 rise 5
backend backup_nodes
server server3 10.10.116.206:80 weight 1 check port 80 inter 3s fall 2 rise 5
###########################重点部分结束
listen stats
mode http
bind 0.0.0.0:9999
stats enable
log global
bind-process 2
stats uri /s
stats auth admin:34343434
3 ) 后端机器做如下操作:
## 后端统一安装httpd
yum install httpd -y
systemctl restart httpd
## server-1
mkdir -p /var/www/html/a
echo "this is server-1 29.207" >/var/www/html/a/index.html
## server-2
server-2
mkdir -p /var/www/html/b
echo "this is server -2 4.209" >/var/www/html/a/index.html
## server-3
server-3
echo "backup redis-2 index.html" /var/www/html/index.html
4 ) 验证最终过程
[root@client1 haproxy]# curl -L http://10.10.50.119/a
this is server-1 29.207
[root@client1 haproxy]# curl -L http://10.10.50.119/b
this is server -2 4.209
[root@client1 haproxy]# curl -L http://10.10.50.119
backup redis-2 index.html
Haproxy-1.8.20 根据路径(URI)转发到后端不同集群的更多相关文章
- nginx配置文件+本地测试请求转发到远程服务器+集群
1 在本地测试1 众所周知,nginx是一个反向代理的服务器,主要功能即为实现负载均衡和动静分离.在别的我别的文章有详细的nginx(Windows)相关介绍教程. 由于自己安装的nginx在本地的计 ...
- HAProxy-1.8.20 根据后缀名转发到后端服务器
global maxconn 100000 chroot /data/soft/haproxy stats socket /var/lib/haproxy/haproxy.sock mode 600 ...
- 基于 Haproxy 构建负载均衡集群
1.HAPROXY简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种负载均衡解决方案.HAProxy特别适用于那些负载特大的web ...
- Haproxy 构建负载均衡集群
1.HAPROXY简介 HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种负载均衡解决方案.HAProxy特别适用于那些负载特大的web ...
- Dubbo入门到精通学习笔记(二十):MyCat在MySQL主从复制的基础上实现读写分离、MyCat 集群部署(HAProxy + MyCat)、MyCat 高可用负载均衡集群Keepalived
文章目录 MyCat在MySQL主从复制的基础上实现读写分离 一.环境 二.依赖课程 三.MyCat 介绍 ( MyCat 官网:http://mycat.org.cn/ ) 四.MyCat 的安装 ...
- Haproxy Mysql cluster 高可用Mysql集群
-----client-----------haproxy---------mysql1----------mysql2------192.168.1.250 192.168.1.1 192.168. ...
- HAProxy负载均衡原理及企业级实例部署haproxy集群
一 HAProxy简介 HAProxy是一种高效.可靠.免费的高可用及负载均衡解决方案,非常适合于高负载站点的七层数据请求.客户端通过HAProxy代理服务器获得站点页面,而代理服务器收到客户请求 ...
- kingbaseES R3 集群修改data路径测试案例
案例说明: 默认KingbaseES R3集群部署后,数据存储目录(data)在/home/kingbase下,部署时不能更改:本案例是在部署完成后,迁移data目录到其他指定的存储位置. 数据库版本 ...
- 配置交换机Trunk接口流量本地优先转发(集群/堆叠)
组网图形 Eth-Trunk接口流量本地优先转发简介 在设备集群/堆叠情况下,为了保证流量的可靠传输,流量的出接口设置为Eth-Trunk接口.那么Eth-Trunk接口中必定存在跨框成员口.当集群/ ...
随机推荐
- 一起看下MySQL的崩溃恢复到底是怎么回事
目录 回顾 思考一个问题 checkponit机制 Checkpoint的种类及触发条件 LSN 推荐阅读 本文稍微有点晦涩.但是看过之后你就能Get到MySQL的崩溃恢复到底是怎么做的! 文章公号 ...
- Linux相关知识基础
目录 前言 第一章 Linux远程连接管理 1. 为什么要远程连接Linux系统 2. 连接前的小知识 2.2.1 IP地址 2.2.2 端口的概念 2.2.3 协议的概念 3. 远程连接Linux的 ...
- CSS-backgroound和radial-giadient的常见用法
前言 这里主要介绍下css中background和radial-giadient径向渐变的使用,工作中用到的地方可能也不太多,但是每次用到了都需要查阅官网,查资料就比较麻烦,这里记录一下我自己整理的常 ...
- HTTP/2做错了什么?刚刚辉煌2年就要被弃用了!?
GitHub 19k Star 的Java工程师成神之路,不来了解一下吗! GitHub 19k Star 的Java工程师成神之路,真的不来了解一下吗! GitHub 19k Star 的Java工 ...
- Spring Boot 的2020最后一击:2.4.1、2.3.7、2.2.12 发布
近日,Spring Boot官方发布了本年度最后一次版本更新,主要针对目前维护的三个版本: 2.4.x:第一个bug修复版本 2.4.1 2.3.x:常规维护版本 2.3.7 2.2.x:常规维护版本 ...
- css进阶 04-如何让一个元素水平垂直居中?
04-如何让一个元素水平垂直居中? #前言 老板的手机收到一个红包,为什么红包没居中? 如何让一个子元素在父容器里水平垂直居中?这个问题必考,在实战开发中,也应用得非常多. 你也许能顺手写出好几种实现 ...
- matlab多项式拟合以及指定函数拟合
clc;clear all;close all;%% 多项式拟合指令:% X = [1 2 3 4 5 6 7 8 9 ];% Y = [9 7 6 3 -1 2 5 7 20]; % P= poly ...
- Python批量创建word文档(1)- 纯文字
Python创建word文档,任务要求:小杨在一家公司上班,每天都需要给不同的客户发送word文档,以告知客户每日黄金价格.最后贴上自己的联系方式.代码如下: 1 ''' 2 #python根据需求新 ...
- [EF] - 动态创建模型:System.Reflection.Emit + Code First
动态创建Entity Framework模型并且创建数据库 使用System.Reflection.Emit+Code First model创建以下的一个实体类和DbContext并且创建数据库: ...
- 日常入坑1-Calendar类
1.当前时间是一号的时候,通过计算上一天的日期的时候,需要注意了 Calendar calendar = Calendar.getInstance();calendar.set(2019,10,1); ...