开发者学堂课程【企业集群平台架构设计与实现:lvs/haproxy/keepalived:企业集群平台架构设计与实现haproxy篇2(二)】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/391/detail/5014
企业集群平台架构设计与实现 haproxy 篇2(二)
1.启动与管理 haproxy
启动服务:
/usr/local/haproxy/sbin/haproxy -f
/usr/local/haproxy/conf/haproxy.cfg
重启服务:
# /usr/local/haproxy /sbin/haproxy -f
/usr/local/haproxy/conf/haproxy.cfg \-st "cat /usr/local/haproxcy/logs/haproxy.pid‘
停止服务:
#killall haproxy
2.HAProxy 基础配置文件详解
(1)global 部分:用来设定全局配置参数,属于进程级的配置,通常和操作系统配置有关。
(2)defaults 部分:默认参数的配置部分。在此部分设置的参数值,默认会自动被引用到下面的 fontend、backend和 listen 部分中,因此,如果某些的参数属于公用的配置,只需在 defaults 部分添加一次即可。而如果在 frontend、backend 和 listen 部分中也配置了与 defaults 部分一样的参数,那么 defaults 部分参数的值自动被覆盖。
(3)frontend 部分:此部分用于设置接收用户请求的前端虚拟节点。frontend 是在 HAProxy1.3 版本之后才引入的一个组件,同时引入的还有 backend 组件。通过引入这些组件,很大程度上简化了 HAProxy 配置文件的复杂性。frontend 可以根据 ACL 规则直接指定要使用的后端 backend 。
(4)backend 部分:此部分用于设置集群后端服务集群的配置,用来添加一组真实服务器,处理前端用户的请求。添加的真实服务器类似于 LVS 中的 real server 节点。
(5)listen 部分:此部分是 frontend 部分和 backend 部分的结合体。在 HAProxy1.3 版本之前,HAProxy 的所有配置选项都在这个部分中设置。为了保持兼容性,HAProxy 新的版本仍然保留了 listen 组件的配置方式。目前在HAProxy 中,两种配置方式任选其一即可。
//listen 是新版本中出现的,结合了 frontend 和 backand ,推荐不使用;
HAProxy 负载均衡器算法与使用技巧
3.HAProxy 支持的负载均衡算法
(1).roundrobin,表示简单的轮询,负载均衡基础算法
(2).static-rr 表示根据权重
(3).leastconn, 表示最少连接者先处理
(4).source ,表示根据请求源 IP
(5).uri ,表示根据请求的 URI ;
(6).url_param ,表示根据请求的 URI 参数来进行调度
(7).hdr(name),表示根据就 HTTP 请求头来锁定每一次HTTP请求
(8).rdp-cookie(name),表示根据 cookie(name) 来锁定每一次
4.TCP 请求
(1)常用的负载均衡算法
轮询算法:roundrobin
(2)根据请求源IP算法:source
(3)最少连接者先处理算法:lestconn
5.启用与测试 haproxy 的负载均衡功能:
(1)启动与管理 haproxy
#启动服务:
# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg
#重启服务:
# /usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg \-st ‘cat/usr/local/haproxy/logs/haproxy.pid
#停止服务:
# killall haproxy
使用脚本:
more /etc/init.d/haproxy
/etc/init.d/haproxy start
查看:
ps -ef|grep haproxy
检查是否启动,且该页面有管理的功能。
进入浏览器管理端口: