我是靠谱客的博主 眼睛大秋天,最近开发中收集的这篇文章主要介绍Linux进阶篇-HAproxy的编译安装Haproxy的介绍Haproxy的功能二、Haproxy安装,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Haproxy的介绍

HAProxy是法国开发者Willy Tarreau开发的一个开源软件,是一款具备高并发、高性能的TCP和HTTP负载均衡器,支持基于cookie的持久性,自动故障切换,支持正则表达式及web状态统计。

Haproxy的功能

HAProxy是TCP/HTTP反向代理服务器,尤其适合于高可用性高并发环境
  • 可以针对HTTP请求添加cookie,进行路由后端服务器
  • 可平衡负载至后端服务器,并支持持久连接
  • 支持基于cookie进行调度
  • 支持所有主服务器故障切换至备用服务器
  • 支持专用端口实现监控服务 
  • 支持不影响现有连接情况下停止接受新连接请求
  • 可以在双向添加,修改或删除HTTP报文首部
  • 支持基于pattern实现连接请求的访问控制
  • 通过特定的URI为授权用户提供详细的状态信息

二、Haproxy安装

2.1准备源码包 官网https://www.haproxy.org

在这里插入图片描述

2.2安装对应的依赖包

[root@nginx data]# yum install -y gcc gcc-c++ pcre pcre-devel openssl openssl-devel systemd-devel

2.3解压源码包并且编译

[root@nginx data]# tar -xvf haproxy-1.8.20.tar.gz
[root@nginx data]# cd haproxy-1.8.20/
[root@nginx haproxy-1.8.20]# make ARCH=x86_64 TARGET=linux2628 USE_PCRE=1 USE_OPENSSL=1 USE_ZLIB=1 USE_SYSTEMD=1 USE_CPU_AFFINITY=1 PREFIX=/usr/local/haproxy
[root@nginx haproxy-1.8.20]# make install PREFIX=/usr/local/haproxy
复制启动服务到/usr/sbin/目录下
[root@nginx haproxy-1.8.20]# cp haproxy /usr/sbin/

2.4创建启动脚本

[root@nginx haproxy-1.8.20]# vim /usr/lib/systemd/system/haproxy.service
[Unit]
Description=HAProxy Load Balancer
After=syslog.target network.target

[Service]
ExecStartPre=/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -c -q
ExecStart=/usr/sbin/haproxy -Ws -f /etc/haproxy/haproxy.cfg -p /usr/local/haproxy/run/haproxy.pid
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

在这里插入图片描述

2.5创建用户与相关目录以及配置文件

[root@nginx system]# useradd -r -s /sbin/nologin haproxy
[root@nginx system]# mkdir /etc/haproxy
[root@nginx system]# mkdir /usr/local/haproxy/run
[root@nginx system]# mkdir /var/lib/haproxy
[root@nginx system]# chown -R haproxy:haproxy /var/lib/haproxy/
[root@nginx system]# vim /etc/haproxy/haproxy.cfg
global                  #全局配置段开头
maxconn 100000			#最大连接数
chroot /usr/local/haproxy	#锁定运行目录
#stats socket /var/lib/haproxy/haproxy.sock mode 600 level admin 	#socket文件
#uid 981
#gid 981
user haproxy			#运行haproxy的用户身份
group haproxy		#运行haproxy的用户组身份
daemon           	#以守护进程运行	
#nbproc 4			#开启的haproxy进程数,与cpu保持一致
#cpu-map 1 0		#绑定haproxy 进程至指定CPU
#cpu-map 2 1		
#cpu-map 3 2
#cpu-map 4 3
pidfile /usr/local/haproxy/run/haproxy.pid   #指定pid文件路径
log 127.0.0.1 local3 info					#定义全局的syslog服务器,最多可以定义两个
#Proxies 代理配置段:
defaults
option http-keep-alive      #开启会话保持 秒为单位
option  forwardfor    		#开启IP透转
maxconn 100000
mode http					#默认工作类型
timeout connect 300000ms	#转发客户端请求到后端server的最长连接时间(TCP之前)
timeout client  300000ms		#与客户端的最长空闲时间
timeout server  300000ms		#转发客户端请求到后端服务端的超时时长(TCP之后)

listen stats
 mode http
 bind 0.0.0.0:9999
 stats enable
 log global
 stats uri     /haproxy-status
 stats auth    haadmin:q1w2e3r4ys

listen  web_port
 bind 0.0.0.0:80			#指定haproxy的监听地址,可同时监听多个IP或端口
 mode http				#指定负载协议类型
 log global
 server web1  127.0.0.1:8080  check inter 3000 fall 2 rise 5

2.6启动haproxy服务

[root@nginx system]# systemctl start haproxy
[root@nginx system]# ps -ef | grep haproxy

开了一个进程

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

最后

以上就是眼睛大秋天为你收集整理的Linux进阶篇-HAproxy的编译安装Haproxy的介绍Haproxy的功能二、Haproxy安装的全部内容,希望文章能够帮你解决Linux进阶篇-HAproxy的编译安装Haproxy的介绍Haproxy的功能二、Haproxy安装所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(66)

评论列表共有 0 条评论

立即
投稿
返回
顶部