haproxy是一款提供负载均衡的代理服务器,它可基于modetcp 实现伪四层调度,还可以基于modehttp实现七层调度,类似于nginx,因为他没有web服务所以不像nginx那样进行控制。

通过ACL访问控制列表,匹配客户端的请求,和服务器的转发进行控制

官方网站:https://cbonte.github.io/haproxy-dconv/

实验

HAproxy服务器ip:192.168.1.102(这里若隐藏后端服务器的ip,这需要设定两个ip,一个公网,一个私网)(haproxy是一个纯粹的反代,他没有web服务),后端服务器:192.168.1.104    192.168.1.105

1      同步时间 #systemctl start  chronyd.service

2  后端服务器安装http服务或使用nginx

  yum   install   http  -y

  给一个测试网页:

  # vim /var/www/html/index.html

  <h1>server 1 </h1>

  #systemctl start httpd.service     启动服务

3安装haproxy

配置文件:/etc/haproxy/haproxy.cfg

配置文件中配置分为几段:

1  全局配置段 global  (设置自己的进程特性)通用的默认配置

进程及安全配置

性能参数配置

debug参数

用户列表

2 代理配置段  proxy   用于将用户请求代理后端的

代理配置段分四类字段:

    default: 是为backend和listen 这两段 提供默认配置

fronted: 对前端服务器的配置

backend: 对后端服务器的配置

listen:设定frented与backend两者是一 一对应的,这段同时拥有前端和后端的配置,是一对一的,这样其他人就不能调度该后端里

日志:haproxy它本身没有日志功能,日志需要rsyslog或syslog 日志服务来配合

vim /etc/haproxy/haproxy.cfg

日志设定:  log         127.0.0.1   local2      指定本地日志服务器local2

log          127.0.0.1  local2

这需要在rsyslog配置文件中做配置 可能日志服务器中的local2 没有启动

vim   /etc/rsyslog.conf

$ModLoad imudp                  取消注释  基于udp 记录日志

$UDPServerRun 514                 基于udp 描述端口

local2.*                   /var/log/haproxy.log

重启日志服务器:systemctl restart rsyslog.service  (514端口处于监听)

反代配置  

srv1 只是内部使用的id (这里不是主机名)

启动服务:systemctl start haproxy.service

curl http://192.168.1.102     访问测试

负载均衡:

backend  websrvs

balance roundrobin                                   轮询

server srv1 192.168.1.104:80 check

server srv2 192.168.1.105:80 check

重启服务: # systemctl restart haproxy.service

访问:curl http://192.168.1.102

for  i    in  {1.. 10} ; do  curl  http://192.168.1.102/ ;  done

参数:

在global 设置参数  这些参数多数不需要改

1 chroot: 与安全相关(假的根环境)以chroot运行

2  ca-base  若基于ssh回话的ca认证相关

3 cpu-map  cpu绑定类似于nginx的worker进程与cpu的绑定

4 log  指定日志

5 maxconn  最大单进程并发连接数

6 maxconnrate  速率

7 noepoll   不使用epoll机制

haproxy快速安装的更多相关文章

  1. Centos7快速安装haproxy

    HAProxy是一个使用C语言编写的自由及开放源代码软件[1],其提供高可用性.负载均衡,以及基于TCP和HTTP的应用程序代理. HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要 ...

  2. 烂泥:高负载均衡学习haproxy之安装与配置

    本文由秀依林枫提供友情赞助,首发于烂泥行天下 有关高负载均衡的软件,目前使用比较多的是haproxy.nginx和lvs.下面我们就开始学习haprxoy这款软件. 一.haproxy介绍 以下开始介 ...

  3. CocoaPods 的简单快速安装方法

    CocoaPods 的简单快速安装方法(Setting up CocoaPods master repo 卡着不动,是因为淘宝镜像已经不能用了. 一.git clone方法安装cocoapods 镜像 ...

  4. HAProxy的安装与使用

    在互联网时代中,后台系统架构,经常可以听到高可用集群.负载均衡集群之类的系统架构解决方案,其中,负载均衡有基于硬件的F5.Big-IP等,也有基于软件的LVS(基于Linux操作系统实现,性能可以和基 ...

  5. CentOS RDO方式快速安装OpenStack

    一.了解RDO RDO是什么? RDO是红帽Red Hat Enterprise Linux OpenStack Platform的社区版,类似RHEL和Fedora,RHEV和oVirt这样的关系. ...

  6. Linux超快速安装Ruby on Rails

    Linux超快速安装Ruby on Rails 时间 2014-11-25 11:45:11 Flincllck Talk 原文  http://www.flincllck.com/quick-ins ...

  7. Python,Jupyter Notebook,IPython快速安装教程

    0.安装环境 Windows10,Python3.5.1,IPython,jupyter notebook,and other functionality 官方安装文档Linux版3.x 官方安装文档 ...

  8. 转载 - Vultr VPS注册开通且一键快速安装PPTP VPN和电脑连接使用

    本文转载来自:https://www.vultrclub.com/139.html 从2014年Vultr VPS进入市场之后,作为有背景.实力的搅局者,是的最近两年VPS.服务器的用户成本降低.配置 ...

  9. Vmware快速安装linux虚拟机(SUSE)

    安装环境:Vmware 11.SUSE11 64位 vmware快速安装linux虚拟机的过程还是比较简单的,步骤如下: 1.点击文件,新建虚拟机. 2.选择典型安装. 3.在红框中选择想要安装的虚拟 ...

随机推荐

  1. poj 2886 "Who Gets The Most Candies?"(树状数组)

    传送门 参考资料: [1]:http://www.hankcs.com/program/algorithm/poj-2886-who-gets-the-most-candies.html 题意: 抢糖 ...

  2. windows下网络编程TCP

    转载 sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW): 基于TCP的socket编程 服务器端编程的步骤 ...

  3. design language

    design language https://en.wikipedia.org/wiki/Design_language 设计语言(设计词汇)是一种超架构的方案和风格, 它用于指导产品组件或者架构配 ...

  4. Spring Cloud微服务实践之路-起始

    由于各种原因,公司要对现有的营销产品进行微服务化,如果可以,则对公司所有产品逐步进行微服务化. 而本人将探索这条路,很艰难,但干劲十足.整个过会记录下来,以便以后查阅. 感谢公司!感谢领导! 相关书籍 ...

  5. nodejs学习以及SSJS漏洞

    0x01 简介 什么是nodejs,it's javascript webserver! JS是脚本语言,脚本语言都需要一个解析器才能运行.对于写在HTML页面里的JS,浏览器充当了解析器的角色.而对 ...

  6. Arduino语法-变量和常量

    变量的声明: int led=11 一般变量的声明方法为类型名+变量名+变量初始化值.变量名的写法约定为首字母小写 变量的作用范围又称为作用域,变量的作用范围与该变量在哪儿声明有关,大致分为如下两种: ...

  7. 小程序跳转 H5 时 cookie 值处理问题

    小程序使用 <web-view></web-view> 内嵌 H5,当跳转至 H5 后,校验用户的登录状态是最重要的. 在做手中的项目 b.xx.com 时,需要调用另一个域名 ...

  8. Access-Control-Allow-Origin设置跨域

    我来自己写一下答案,以给后来的朋友一点思路和建议:1,首先把Access-Control-Allow-Origin设置成*是不妥的,自己的接口服务器不能允许所有人都可以访问.2,具体哪里可以设置Acc ...

  9. C# 用Serializer.ToXml()方法转换成两种格式的XML

    常见XML格式两种: 这种是属性的格式,实体的Model属性上面加上这个特性 [XmlAttribute] <AAA aa="/> 这种是标签的格式,实体的Model属性上面加上 ...

  10. Linux禁止ping、开启ping设置

    Linux默认是允许Ping响应的,系统是否允许Ping由2个因素决定的:A.内核参数,B.防火墙,需要2个因素同时允许才能允许Ping,2个因素有任意一个禁Ping就无法Ping. 具体的配置方法如 ...