1. 程式人生 > >keepalived +HAproxy 配置

keepalived +HAproxy 配置

編譯HAProxy檔案:

[[email protected] ~]# tar zcvf  haproxy-1.8.14.tar.gz
[[email protected] ~]# uname -r
3.10.0-327.el7.x86_64 

[[email protected] ~]# cd haproxy-1.6.4
[[email protected] haproxy-1.8.14] # make TARGET=linux2826 PREFIX=/usr/local/haproxy    
[[email protected] haproxy-1.8.14] # make install PREFIX=/usr/local/haproxy

#將haproxy安裝到/usr/local/haproxy下

[
[email protected]
haproxy-1.8.14] # mkdir /usr/local/haproxy/conf #haproxy預設不建立配置檔案目錄,這裡是建立haproxy配置檔案目錄 [[email protected] haproxy-1.8.14] # cp examples/option-http_proxy.cfg /usr/local/haproxy/conf/haproxy.cfg

  編寫配置檔案:cat /usr/local/haproxy/conf/haproxy.cfg

global
        log 127.0.0.1 local0 info
        maxconn 4096
        user nobody
        group nobody
        daemon
        nbproc 1
        pidfile /usr/local/haproxy/logs/haproxy.pid
defaults
        mode http
        retries 3
        timeout connect 10s
        timeout client 20s
        timeout server 30s
        timeout check 5s
frontend www
         bind *:80
         mode   http
         option  httplog
         option  forwardfor
         option  httpclose
         log     global
        #acl host_www           hdr_dom(host)   -i      www.zb.com
        #acl host_img            hdr_dom(host)   -i      img.zb.com
        #use_backend htmpool    if      host_www
        #use_backend imgpool    if      host_img
        default_backend  htmpool
backend htmpool
        mode    http
        option   redispatch
        option   abortonclose
        balance  static-rr
        cookie   SERVERID
        option   httpchk GET /index.jsp
        server  237server 192.168.81.237:8080 cookie server1 weight 6 check inter 2000 rise 2 fall 3
        server  iivey234 192.168.81.234:8080 cookie server2 weight 3 check inter 2000 rise 2 fall 3
backend imgpool
        mode    http
        option   redispatch
        option   abortonclose
        balance  static-rr
        cookie   SERVERID
        option   httpchk GET /index.jsp
        server  host236 192.168.81.236:8080 cookie server1 weight 6 check inter 2000 rise 2 fall 3
listen admin_stats
        bind 0.0.0.0:9188
        mode http
        log 127.0.0.1 local0 err
        stats refresh 30s
        stats uri /haproxy-status
        stats realm welcome login\ Haproxy
        stats auth admin:
[email protected]
stats hide-version stats admin if TRUE

啟動與測試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

 停止服務指令碼:

#!/bin/sh
ps -ef | grep  haproxy | grep -v grep |awk '{print $2}'|xargs kill -s 9     

HAProxy負載均衡器演算法與使用技巧

1、HAProxy支援的負載均衡演算法

(1)、roundrobin,表示簡單的輪詢,負載均衡基礎演算法

(2)、static-rr,表示根據權重

(3)、leastconn,表示最少連線者先處理

(4)、source,表示根據請求源IP

(5)、uri,表示根據請求的URI;

(6)、url_param,表示根據請求的URl引數來進行排程

(7)、hdr(name),表示根據HTTP請求頭來鎖定每一次HTTP請求;

(8)、rdp-cookie(name),表示根據據cookie(name)來鎖定並雜湊每一次TCP請求。

2、常用的負載均衡演算法

(1)輪詢演算法:roundrobin   

(2)根據請求源IP演算法:source

(3)最少連線者先處理演算法:lestconn
 

通過HAProxy的ACL規則實現智慧負載均衡

由於HAProxy可以工作在七層模型下, 因此,要實現HAProxy的強大功能,一定要使用強大靈活的ACL規則,通過ACL規則可以實現基於HAProxy的智慧負載均衡系統。HAProxy通過ACL規則完成兩種主要的功能,分別是:

1)通過設定的ACL規則檢查客戶端請求是否合法。如果符合ACL規則要求,那麼就將放行,反正,如果不符合規則,則直接中斷請求。

2)符合ACL規則要求的請求將被提交到後端的backend伺服器叢集,進而實現基於ACL規則的負載均衡。

HAProxy中的ACL規則經常使用在frontend段中,使用方法如下:

acl  自定義的acl名稱  acl方法  -i  [匹配的路徑或檔案]

其中:

acl:是一個關鍵字,表示定義ACL規則的開始。後面需要跟上自定義的ACL名稱 。

acl方法:這個欄位用來定義實現ACL的方法,HAProxy定義了很多ACL方法,經常使用的方法有hdr_reg(host)、hdr_dom(host)、hdr_beg(host)、url_sub、url_dir、path_beg、path_end等。

-i:表示忽略大小寫,後面需要跟上匹配的路徑或檔案或正則表示式。

與ACL規則一起使用的HAProxy引數還有use_backend,use_backend後面需要跟上一個backend例項名,表示在滿足ACL規則後去請求哪個backend例項,與use_backend對應的還有default_backend引數,它表示在沒有滿足ACL條件的時候預設使用哪個後端backend。

下面列舉幾個常見的ACL規則例子:

acl www_policy hdr_reg(host) -i ^(www.z.cn|z.cn)
acl bbs_policy hdr_dom(host) -i  bbs.z.cn
acl url_policy url_sub -i  buy_sid=
use_backend server_www if www_policy
use_backend server_app if url_policy
use_backend server_bbs if bbs_policy
default_backend server_cache

使用HAProxy的Web監控平臺

      HAProxy雖然實現了服務的故障轉移,但是在主機或者服務出現故障的時候,並不能發出通知告知運維人員,這對於及時性要求很高的業務系統來說,是非常不便的,不過,HAProxy似乎也考慮到了這一點,在新的版本中HAProxy推出了一個基於Web的監控平臺,通過這個平臺可以檢視此集群系統所有後端伺服器的執行狀態,在後端服務或伺服器出現故障時,監控頁面會通過不同的顏色來展示故障資訊,這在很大程度上解決了後端伺服器故障報警的問題,運維人員可通過監控這個頁面來第一時間發現節點故障,進而修復故障 

keepalived部署方法參考:keepalived + nginx 配置文件  

相關推薦

keepalived +HAproxy 配置

編譯HAProxy檔案: [[email protected] ~]# tar zcvf haproxy-1.8.14.tar.gz [[email protected] ~]# uname -r 3.10.0-327.el7.x86_64 [

Keepalived HAProxy mysql 配置HA

mysql 和 HAProxy 配置請參考  上一篇隨筆   keepalived 最簡單的配置高可用   1.修改/etc/sysctl.conf    vi /etc/sysctl.conf 首先找到net.ipv4.ip_forward=1這個配置,

利用keepalivedhaproxy配置mysql的高可用負載均衡

轉載http://www.cnblogs.com/tae44/p/4717334.html 實驗系統:CentOS 6.6_x86_64(2.6.32-504.30.3.el6.x86_64) 實驗前提:防火牆和selinux都關閉 實驗說明:本實驗共有4臺主機,I

haproxy+keepalived安裝配置

comm index keepalive 操作系統 rom sys 軟件 2.6 isa 1 環境準備 1.1 主機規劃 服務器說明 IP地址 主機名稱規則 安裝服務 haproxy主機1 10.0.0.41 haproxy01 Haproxy、Nginx、k

PYTHON學習第一模塊 Haproxy配置操作

strip uri color 操作 conn fio env print name 購物車模擬 需求: 根據用戶輸入輸出對應的backend下的 server信息可添加backend 和 sever信息可刪除backend 和sever信息 添加server信息時,

haproxy 配置https

ha今天測試配置haproxy代理https,一直報錯,後來發現,後端已經是https這裏則不需要特別指定了配置文件如下:global log 127.0.0.1 local2 chroot /var/lib/haproxy pidfile /var/

修改haproxy配置文件

border 包含 list [] ror 是否 .com text d參數 運用的知識點:   1.python簡單數據結構的使用:列表、字典等   2.python兩個模塊的使用:os和json       1.os.rename(‘文件1‘,‘文件2‘)       

Keepalived+Haproxy搭建高可用負載均衡

eas 1.5 desc patch ble set 雙機 backend sql global_defs { notification_email { [email protected]/* */ } n

公司nginx keepalived tomcat cxf 搭建高可用負載均衡實戰系列1- keepalived安裝配置

技術分享 cnblogs start ges idt def auth div .cn 1,ip說明 vip 10.50.13.67 server1 10.50.13.68 server2 10.50.13.140 2

HAProxy配置說明(轉)

limit 中標 tpch 負載 com 單個 認證 .com proxy配置 原文地址:http://www.cnblogs.com/sagech/p/5695466.html global # 全局參數的設置 log 127.0.0.1 local0 info #

Python-Day5修改haproxy配置文件

style conf time temp start 不同 退出 true server 需求: 1、查 輸入:www.oldboy.org 獲取當前backend下的所有記錄2、新建 輸入: {‘backend‘: ‘www.oldboy‘,‘recor

Keepalived+Haproxy高可用負載均衡群集

刷新 rfi opened width col vim router 一個 .com 介紹 HAProxy提供高可用性、負載均衡以及基於TCP和HTTP應用的代理,支持虛擬主機,它是免費、快速並且可靠的一種解決方案。HAProxy特別適用於那些負載特大的web站點,

keepalived 安裝配置(高可用VIP),雙主模式

keepalived 高可用 雙主模式 郵件腳本 首先需要明白我們準備使用keepalived來做什麽,今天這裏只是給大家簡單安裝和配置下keepalived實現vip對外服務,防止單點故障。keepalived是高可用高可用高可用 而非負載非負載非負載。 下面我將使用keepalived部署雙主模模式,

keepalived+lvs配置安裝

prior 轉發 響應 檢查 但是 /usr outer tar.gz 調度 安裝: tar -zxvf keepalived-1.2.2.tar.gz yum list all |grep "ipvsadm" yum -y install kernel-devel ope

Keepalived + Haproxy實現負載均衡高可用

liunx haproxy 高可用基於LVS實現Keepalived的高可用見:http://amelie.blog.51cto.com/12850951/1979636負載均衡為將用戶並發請求轉發到後臺若幹服務器,以分流方式均衡負載。均衡負載借用的軟件,我們這裏是Haproxy。而負責轉發的服務器,我們稱之

實現基於Keepalived+Haproxy+Varnish+LNMP企業級架構

實驗 keepalived+haproxy+varnish+lnmp實現基於Keepalived+Haproxy+Varnish+LNMP企業級架構Varnish知識儲備:常見的狀態引擎之間的默認處理流程為:①如果緩存命中:默認流程用戶請求–>vcl_recv–>vcl_hash–>vcl_

Python小程序—修改haproxy配置文件

format not num org list for choice ces div 程序2:修改haproxy配置文件 需求: 1 1、查 2 輸入:www.oldboy.org 3 獲取當前backend下的所有記錄 4 5 2、新建

通過腳本調用mysql來啟動keepalived配置的VIP

fail sta top usr star -h mysql log ucc mysql [root@mariadb01 ~]# cat check_mysql.sh MYSQL=/usr/bin/mysql MYSQL_HOST=localhost MYSQL_USE

主備(keepalived+haproxy)

service example gnu lose 配置文件 tween etc queue can 系統:centos6.9 mini 主機名 ip 虛擬ip kh1 192.

Keepalived+Haproxy負載均衡

後端服務 程序 dev round com 返回 androi 小寫 server HAProxy是一個使用C語言編寫的自由及開放源代碼軟件,其提供高可用性、負載均衡,以及基於TCP和HTTP的應用程序代理。 HAProxy特別適用於那些負載特大的web站點,這些站點通常又