haproxy rpm制做

[[email protected] tmp]# fpm -s dir -t rpm -v 1.7.7 -n haproxy --before-install /tmp/haproxy_before.sh --after-install /tmp/haproxy_after.sh --after-remove /tmp/haproxy_remove.sh -d ‘libaio‘ /apps/haproxy-1.7.7/ /etc/init.d/haproxy_sc

查看脚本:

[[email protected] tmp]# cat haproxy_before.sh
#!/bin/bash
if [ ! -d /apps/haproxy-1.7.7 ];then
	mkdir -p /apps/haproxy-1.7.7
fi

[[email protected] tmp]# cat haproxy_after.sh
#!/bin/bash
mkdir /apps/haproxy-1.7.7/conf
echo "
    global
            log 127.0.0.1 local0 info #[err warning info debug] //日志位置
            maxconn 4096
            daemon #设置成后台运行
            nbproc 1 #进程数量
            pidfile /apps/haproxy-1.7.7/haproxy.pid  

    defaults
            log     global
            mode    http #默认模式
            option  httplog #http日志格式
            option  dontlognull
            retries 3  #三次失败后认为服务器不可用
            option  redispatch  #如果cookie写入了serverId而客户端不会刷新cookie,当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
            maxconn 2000 #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接默认的最大连接数
            contimeout 5000 #连接超时
            clitimeout 30000 #客户端超时
            srvtimeout 30000 #服务器超时  

    frontend web_in
            mode http
            maxconn 1000
            bind :80
            acl is_a hdr_beg(host) -i www.espressos1.com  #判断域名是不是www.espressos1.com,是则给与a服务器集群服务
            acl is_b hdr_beg(host) -i www.espressos2.com  #判断域名是不是www.espressos2.com,是则给与a服务器集群服务  

            use_backend a_server if is_a
            use_backend b_server if is_b  

    backend a_server
            mode http #http 模式
            stats   uri  /haproxy
            balance roundrobin
            cookie  JSESSIONID prefix
            stats   hide-version
            option  httpclose
            server web1 10.100.0.220:80 check
            #server web2 128.1.2.5:80 check  

    backend b_server
            mode http #http 模式
            stats   uri  /haproxy
            balance roundrobin
            cookie  JSESSIONID prefix  

            stats   hide-version
            option  httpclose
            server web1 10.100.0.229:80  

">/apps/haproxy-1.7.7/conf/haproxy.conf.acl
echo "
global
        log 127.0.0.1 local0 info
        maxconn 51200
        user nobody
        group nobody
        daemon
        nbproc 1
        pidfile /var/run/haproxy.pid

defaults
        log global
        mode http
        option httplog
        option tcplog
        option httpclose
        option forwardfor except 127.0.0.0/8
        option redispatch
        option dontlognull
        retries 3
        timeout connect 10s
        timeout client 1m
        timeout server 1m
        timeout check 5s
        timeout http-request    10s
        timeout http-keep-alive 10s
    timeout queue           1m
        maxconn 10000
listen admin_stats
        bind 0.0.0.0:9001
        mode http
        stats refresh 30s
        stats uri /ha-stu
        stats realm welcome login\ Haproxy
        stats auth admin:[email protected]!
        stats hide-version
        stats admin if TRUE
#
listen mysql
    bind 0.0.0.0:3306
    mode tcp
#   balance roundrobin
    balance source
    server mysql-01 xxx.xxx.xxx.xxx:3306
#
listen mysql-ds
    bind 0.0.0.0:3307
    mode tcp
#   balance roudrobin
    balance source
    server mysql-02 xx.xxx.xxx.xxx:3306

">/apps/haproxy-1.7.7/conf/haproxy.conf.nomal
[[email protected] tmp]# cat haproxy_remove.sh
#!/bin/bash
if [ -d /apps/haproxy-1.7.7 ];then
	rm -rf /apps/haproxy-1.7.7
fi
时间: 2024-10-25 21:36:10

haproxy rpm制做的相关文章

haproxy详解学习笔记

HAProxy: 实现了一种事件驱动,单一进程模型,支持数万计的并发连接,用于为tcp和http应用程序提供高可用,负载均衡和代理服务的解决方案,尤其适用于高负载且需要持久连接或7层处理机制的web站点 代理(http):  正向代理: 反向代理: 代理作用:web缓存(加速).反向代理.内容路由(根据流量及内容类型等将请求转发至特定服务器).转码器: 在代理服务器上添加Via首部: 缓存的作用: 减少冗余内容传输: 节省带宽.缓解网络瓶颈: 降低了对原始服务器的请求压力: 降低了传输延迟 yu

反向代理之HAProxy的简单应用

HAProxy: HAProxy是一款基于tcp和http的反向代理服务器,既能做7层(http)代理,也能做四层(tcp)代理,做四层代理时需要模拟实现,并且依然是基于socket通信,不支持正向代理,不提供缓存,但负载均衡能力强大,以及强大的负载均衡调度算法,特别适用于那些负载较大的web站点,对后端主机提供高可用. HAProyx实现了一种事件驱动,单一进程模型,此模型支持非常大的.并发连接数.多进程或多线程模式受内存限制,系统调度器限制以及无处不在的锁限制,很少能处理数千并发连接.服务器

haproxy反代负载均衡

haproxy是用于实现作为后端反代以实现负载均衡器. 实现负载均衡有多种方案:可在tcp层即四层和应用层即七层实现负载均衡: 四层:lvs也是工作在四层的: 七层:nginx.ats等多种软件工具: haproxy域lvs相比,调度能力肯定是不如lvs,因为lvs工作在内核空间,与后端real server通信时,没有套接字数量和连接的限制,可以调度海量客户端的请求:而haproxy是工作在七层,毕竟基于套接字实现与real server通信的:但是,haproxy正因为基于七层,可以根据ht

Haproxy的负载均衡、动静分离、状态监控、近期网络架构

一.Haproxy的简介 Haproxy的官网站点:http://haproxy.com/ HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代 理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理.HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接.并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上. HAProxy实现

基于TCP的Haproxy代理

HaProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案.应用到Haproxy主要是因为他免费,并且基于TCP和HTTP的应用代理. 先介绍一下Haproxy的应用场景,一个是TCP代理,这边也是我项目中应用的,另一个是HTTP代理,我就简单介绍一下.基于Tcp协议的Haproxy代理应用场景:在VPC网络环境下,虚机A的数据库不能被外界网络访问到,只能被在同一内网环境下的虚机B访问,这时候可以通过在虚机B上搭建Haproxy环境

RHEL6配置HAProxy负载平衡集群

配置HAProxy负载平衡集群 实验拓扑图: 操作流程:        Real Server :     192.168.4.53 pc53         192.168.4.54 pc54 配置WEB 服务器 HAProxy调度器  :         192.168.4.50 pc50 安装并启用HAProxy 修改配置文件配置负载平衡 Clinet :192.168.4.253 pc253         连接测试         具体步骤: 环境准备: 配置yum源 # servic

HAProxy介绍

HAProxy介绍 HAProxy HAProxy: 是法国人Willy Tarreau 开发的一个开源软件,是一 款应对客户端10000 以上的同时连接的高性能的TCP和HTTP 负载均衡器. 其功能是用来提供基于cookie的持久性,基于内容的交换,过载保护的高级流量管制,自动故障切换,以正则表达式为基础的标题控制运行时间,基于Web 的报表,高级日志记录以帮助排除故障的应用或网络及其他功能. LB Cluster: 四层:lvs, nginx(stream) ,haproxy(mode t

haproxy基于centos和Ubuntu安装

Ubuntu18.04 apt 安装2.0.4Centos7.6 Yum安装1.8.14Centos7.6编译安装haproxy2.0.12 <h6 id=1>Ubuntu18.04 apt 安装2.0.4</h6> [email protected]:~# apt-get install software-properties-common#安装常用软件包 Reading package lists... Done Building dependency tree Reading

rpm包方式安装配置haproxy

1.以rpm包方式安装haproxy #yum -y install  haproxy 2.查看haproxy安装生成那些文件 #rpm -ql  haproxy 3.haproxy命令选项: syntax:haproxy [-f < 配置文件>] [ -vdVD ] [-n 最大并发连接总数] [-N 每个侦听的最大并发数]  [ -p <当前的PID文件> ] [-m <内存限制M>]  [-h <命令帮助H>]            -v 显示当前版本