This example will guide you through a simple IP based load balancing solution that handles ssl traffic.

The Configuration =

  • Load Balancer:  <192.168.0.2>  // will be our haproxy server
  • Web Server 1: <192.168.0.10>  // web application server 1
  • Web Server 2: <192.168.0.20>  // web application server 2
  • Admin Panel Port 8080: <192.168.0.2>  // Statistics Panel on port 8080

Web Server 1
Load Balancer   <
                                       Web Server 2

Step 1: Get and Install haproxy

We’ll be using the 1.3.17 src files to install haproxy. You can get them from http://haproxy.1wt.eu/

  1. wget http://haproxy.1wt.eu/download/1.3/src/haproxy-1.3.17.tar.gz
  2. cd haproxy-1.3.17
  3. make TARGET=linux26
  4. cp /path/to/haproxy-1.3.17/examples/haproxy.init /etc/init.d/haproxy
  5. chmod +x /etc/init.d/haproxy

We’re going to add a haproxy user and run it in a chroot jail. Be sure to read up on other security measures for your server.

  1. useradd haproxy
  2. mkdir /var/chroot/haproxy
  3. chown haproxy:haproxy /var/chroot/haproxy
  4. chmod 700 /var/chroot/haproxy

This will be a simple load balancing. The HAProxy server will listen to 1 IP and distribute to 2 servers.

  1. global
  2. maxconn     10000 # Total Max Connections.
  3. log     127.0.0.1   local0
  4. log     127.0.0.1   local1 notice
  5. daemon
  6. nbproc      1 # Number of processes
  7. user        haproxy
  8. group       haproxy
  9. chroot      /var/chroot/haproxy
  10. defaults
  11. log     global
  12. option      httplog
  13. mode        tcp
  14. clitimeout  60000
  15. srvtimeout  30000
  16. contimeout  4000
  17. retries     3
  18. redispatch
  19. option      httpclose
  20. listen  load_balanced   192.168.0.2:80,192.168.0.2:443
  21. balance     source
  22. option      ssl-hello-chk
  23. option      forwardfor
  24. server webserver1 192.168.0.10 weight 1 maxconn 5000 check
  25. server webserver2 192.168.0.20 weight 1 maxconn 5000 check
  26. listen  admin_stats 192.168.0.2:8080
  27. mode        http
  28. stats uri   /my_stats
  29. stats realm     Global\ statistics
  30. stats auth  username:password

Step 4: Configuring logging

Edit /etc/sysconfig/syslog

  1. SYSLOGD_OPTIONS=”-m 0 -r”

Installing haproxy load balancing for http and https--转载的更多相关文章

  1. gRPC Load Balancing

    gRPC Load Balancing 翻译自:https://grpc.io/blog/grpc-load-balancing/ 这是gRPC负载均衡的第一篇,后续会给出基于golang XDS服务 ...

  2. 【架构】How To Use HAProxy to Set Up MySQL Load Balancing

    How To Use HAProxy to Set Up MySQL Load Balancing Dec  2, 2013 MySQL, Scaling, Server Optimization U ...

  3. Load Balancing OpenSSH SFTP with HAProxy

    In my previous post I described how we setup a Ubuntu Server (12.0.4) as an OpenSSH SFTP server. In ...

  4. 负载均衡(Load Balancing)学习笔记(二)

    概述 文章负载均衡(Load Balancing)学习笔记(一) 讲述了负载均衡的一般性原理,本文继续介绍常见的实现负载均衡的方法. HTTP重定向 HTTP重定向服务器是一台普通的Web服务器,用户 ...

  5. 负载均衡(Load Balancing)学习笔记(一)

    概述 在分布式系统中,负载均衡(Load Balancing)是一种将任务分派到多个服务端进程的方法.例如,将一个HTTP请求派发到实际的Web服务器中执行的过程就涉及负载均衡的实现.一个HTTP请求 ...

  6. Elastic Load Balancing with Sticky Sessions

    Elastic Load Balancing with Sticky Sessions — Shlomo Swidler https://shlomoswidler.com/2010/04/elast ...

  7. Network Load Balancing Technical Overview--reference

    http://technet.microsoft.com/en-us/library/bb742455.aspx Abstract Network Load Balancing, a clusteri ...

  8. NGINX Load Balancing - HTTP Load Balancer

    This chapter describes how to use NGINX and NGINX Plus as a load balancer. Overview Load balancing a ...

  9. NGINX Docs | Load Balancing Apache Tomcat Servers with NGINX Open Source and NGINX Plus

    NGINX Docs | Load Balancing Apache Tomcat Servers with NGINX Open Source and NGINX Plushttps://docs. ...

随机推荐

  1. Windows / Windows Phone 8.1 预留应用名称及应用上传

    最近比较懒好久没有来这里跟大家聊了,WP 8.1 的 preview 发布已经有一阵子了,并且商店支持 8.1 应用也有一段时间了.我就把这篇 8.1 的应用商店预留提交作为 8.1 的一个开始吧. ...

  2. [ucgui] 仪表盘函数

    /* 仪表盘 */ void DrawArcScale(void) { ; ; int i; ]; GUI_SetBkColor(GUI_WHITE); GUI_Clear(); GUI_SetPen ...

  3. [ASP.NET].NET逻辑分层架构总结

    一.基础知识准备: 1.层的原则: (1)每一层以接口方式供上层调用. (2)上层只能调用下层. (3)依赖分为松散交互和严格交互两种. 2.业务逻辑分类: (1)应用逻辑. (2)领域逻辑. 3.采 ...

  4. Content-Disposition 响应头,设置文件在浏览器打开还是下载

    Content-Disposition属性有两种类型:inline 和 attachment inline :将文件内容直接显示在页面 attachment:弹出对话框让用户下载 code: cont ...

  5. netcore 发布 到 windows server IIS 可能会报错

    当发布netcore 到windows server iis可能会报这种错:An error occurred while starting the application 不要慌,这个时候可能是你用 ...

  6. dD Geometry Kernel ( Geometry Kernels) CGAL 4.13 -User Manual

    1 Introduction This part of the reference manual covers the higher-dimensional kernel. The kernel co ...

  7. ORM-Dapper快速学习

    轻量级ORM框架——第一篇:Dapper快速学习 转载地址:http://www.cnblogs.com/huangxincheng/p/5828470.html  我们都知道ORM全称叫做Objec ...

  8. Android Studio无法连接真机的问题?

    我不说,你可能又浪费半天时间,最后的结果,你可能还是没能解决!!! 现在,一般安卓手机为了安装软件方便,一般都安装了豌豆荚,但是,就是这个豌豆荚占用了Android Studio的ADB端口,导致An ...

  9. 838. Push Dominoes

    There are N dominoes in a line, and we place each domino vertically upright. In the beginning, we si ...

  10. window / Linux 下 Golang 开发环境的配置

    一直专注于使用python语言进行程序开发,但是却又一直被它的性能问题所困扰,直到遇到了天生支持高并发的Golang,这似乎也成了学习go语言最理所当然的理由.下面介绍下Go语言开发环境搭建的步骤: ...