負載均衡-haproxy-keepalived-主從搭建

2020-11-14 北漂的一隻it狗

環境
os:centos6.6
keepalived+haproxy
hapromaster 192.168.1.13
haproslave 192.168.1.12
vip 192.168.1.2


1、keepalived安裝
yum install keepalived*
2、配置haproxy

cat /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
notification_email {
wolf@qq.com
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server 192.168.1.1
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_script chk_haproxy {
script "/root/ha.sh"
weight -20
interval 2
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 110
advert_int 1
track_script {
chk_haproxy
}
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.2
}
notify_master /root/ha_master.sh
}

! Configuration File for keepalived
global_defs {
notification_email {
yujinga@wolf.com
}
notification_email_from Alexandre.Cassen@firewall.loc
smtp_server smtp.wolf.com
smtp_connect_timeout 30
router_id LVS_DEVEL
}
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 100
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.1.2
}
notify_master /root/ha_master.sh
}
相關腳本
[root@hapromaster ~]# cat ha.sh
#!/bin/bash
a=`ps -ef | grep haproxy| grep -v grep |wc -l`
if [ $a == 0 ]
then
/etc/init.d/keepalived stop
echo "haproxy is down,stoping keepalive..."
exit
fi
[root@hapromaster ~]# cat ha_master.sh
#!/bin/bash
sleep 3
/etc/init.d/haproxy reload && echo "haproxy is reload........"
3、安裝haproxy
yum install haproxy*
vi /etc/haproxy/haproxy.conf
#---------------------------------------------------------------------
# Example configuration for a possible web application. See the
# full configuration options online.
#
# http://haproxy.1wt.eu/download/1.4/doc/configuration.txt
#
#---------------------------------------------------------------------
#---------------------------------------------------------------------
# Global settings
#---------------------------------------------------------------------
global
log 127.0.0.1 local0 info #[err warning info debug]
maxconn 65535
daemon
nbproc 2
user nobody
group nobody
#---------------------------------------------------------------------
# common defaults that all the 'listen' and 'backend' sections will
# use if not designated in their block
#---------------------------------------------------------------------
defaults
log global
mode http
option dontlognull
option httpclose
option abortonclose
retries 3
option redispatch
maxconn 65535
timeout connect 900000
timeout client 1800000
timeout server 1800000
option httplog
option forwardfor
stats enable
stats uri /admin?stats
stats auth admin:1qazxsw2
stats refresh 10s
#---------------------------------------------------------------------
# main frontend which proxys to the backends
#---------------------------------------------------------------------
frontend web_wumart
mode http
maxconn 65535
bind :80
acl is_laolang hdr_beg(host) -i laolang.wolf.com
acl is_gateway hdr_beg(host) -i gateway.wolf.com
acl is_wolf hdr_beg(host) -i wolf.wolf.com
use_backend laolang_server if is_laolang
use_backend gateway_server if is_gateway
use_backend wolf_server if is_wolf
#---------------------------------------------------------------------
# round robin balancing between the various backends
#---------------------------------------------------------------------
backend laolang_server
mode http
balance roundrobin
stats hide-version
option httpclose
option forwardfor
server web1 192.168.1.8:80 check inter 1500 rise 3 fall 3 weight 3
server web2 192.168.1.10:80 check inter 1500 rise 3 fall 3 weight 3
backend gateway_server
mode http
balance roundrobin
stats hide-version
option httpclose
option forwardfor
server web1 192.168.2.5:80 check inter 1500 rise 3 fall 3 weight 3
server web2 192.168.2.6:80 check inter 1500 rise 3 fall 3 weight 3
backend wolf_server
mode http
balance roundrobin
stats hide-version
option httpclose
option forwardfor
server web1 192.168.1.9:80 check inter 1500 rise 3 fall 3 weight 3
server web2 192.168.1.11:80 check inter 1500 rise 3 fall 3 weight 3
4、啟動停止
service keepalived start
service keepalived restart
service keepalived stop
service haproxy start
service haproxy stop
service haproxy restart
5、測試切換
停止主機haproxy
ip查看地址
6、監控
http://192.168.1.12/admin?stats
http://192.168.1.13/admin?stats

相關焦點

  • Haproxy + keepalived 負載均衡日誌定製
    定製輸出日誌的好處用戶所有請求都通過負載均衡器,因此在此處收集日誌,比在各後端真實伺服器收集日誌再匯總要有效得多。工作目標ü 記錄用戶訪問日誌:haproxy產生。ü 記錄keepalived日誌:keepalived啟動、運行狀態,用於排錯。
  • 搭建高可用負載均衡器: haproxy+keepalived
    但是隨著業務發展,單伺服器的問題就凸顯出來了:·當伺服器掛掉時,業務就會中斷·當業務量增加,單臺伺服器性能變差,如何透明的擴展伺服器和帶寬,增加伺服器吞吐量負載均衡器可以解決以上問題1 負載均衡器拓撲圖
  • Haproxy負載均衡+Keepalived高可用集群實戰
    且其中不存在負載均衡機制。 最為簡單的負載均衡方式,將網絡流量引導至多臺伺服器以使用四層(即傳輸層)負載均衡。七層負載均衡 網絡流量使用7層負載均衡意味著均衡器能夠根據用戶的請求內容將請求轉發至不同後端伺服器
  • keepalived+Haproxy解決會話保持和七層處理?
    之前玩mycat為啥要用keepalived+Haproxy,而不用nginx或者lvs等等其他負載均衡呢?LVS 是四層負載均衡,LVS 不像 HAProxy 等七層軟負載面向的是 HTTP 包,所以七層負載可以做的 URL 解析等工作,LVS 無法完成。
  • 微服務管理平臺nacos虛擬ip負載均衡集群模式搭建
    微服務管理平臺nacos虛擬ip負載均衡集群模式搭建一、Nacos簡介Nacos是用於微服務管理的平臺,其核心功能是服務註冊與發現、服務配置管理。Nacos作為服務註冊發現組件,可以替換Spring Cloud應用中傳統的服務註冊於發現組件,如:Eureka、consul等,支持服務的健康檢查。
  • 如何在Linux上使用HAProxy配置HTTP負載均衡系統?
    在大多數情況下,一套合適的負載均衡解決方案有望滿足這個要求。今天我將為各位介紹如何使用HAProxy搭建一套HTTP負載均衡系統。HTTP負載均衡簡介HTTP負載均衡是一種網絡解決方案,負責在託管相同應用內容的幾臺伺服器之間分配進入的HTTP或HTTPS流量。
  • 如何基於搭建Nginx+Keepalived雙機熱備環境?
    寫在前面最近出版了《海量數據處理與大數據技術實戰》,詳情可以關注 冰河技術 微信公眾號也有不少小夥伴讓我更新一篇基於主從模式搭建Nginx+keepalived負載均衡技術負載均衡技術對於一個網站尤其是大型網站的web伺服器集群來說是至關重要的!做好負載均衡架構,可以實現故障轉移和高可用環境,避免單點故障,保證網站健康持續運行。由於業務擴展,網站的訪問量不斷加大,負載越來越高。
  • Haproxy是啥?能幹啥?
    Haproxy與keepalived VRRP 介紹軟體:haproxy---主要是做負載均衡的7層,也可以做4層負載均衡 apache也可以做7層負載均衡,但是很麻煩。實際工作中沒有人用。負載均衡是通過OSI協議對應的 7層負載均衡:用的7層http協議, 4層負載均衡:用的是tcp協議加埠號做的負載均衡ha-proxy概述ha-proxy是一款高性能的負載均衡軟體。因為其專注於負載均衡這一些事情,因此與nginx比起來在負載均衡這件事情上做更好,更專業。
  • 企業高並發的成熟解決方案:[2]負載均衡LVS_2
    接著企業高並發的成熟解決方案: 負載均衡LVS_1來,請接著往下看。謝謝!第三步: 通過4臺伺服器的IP,對應的分配負載均衡伺服器,以及APP伺服器負載均衡主機:  192.168.197.131負載均衡備機:  192.168.197.4APP伺服器1:   192.168.197.132APP伺服器2:   192.168.197.133虛擬IP(訪問IP): 192.168.197.100第四步: 開始搭建負載均衡1.
  • 流量紅利下怎麼用雙機搭建高可用與負載均衡——(上)
    為什麼要搭建高可用,為什麼要搭建負載均衡?流量紅利的時代,做了網站沒有流量就是擺設,但是流量大了怎麼辦,單機頂不住怎麼辦上雙機,但是雙機怎麼更好的利用呢?本文從項目親身經驗一一道來。       #清空mark標記,使得LVS負載均衡對所有請求不生效  16.       iptables -F -t mangle  17.
  • Nginx+Keepalived(雙機熱備)搭建高可用負載均衡環境(HA)
    引用於 http://blog.csdn.net/xyang81/article/details/52554398keepalived服務安裝完成之後,後面的主要工作就是在keepalived.conf文件中配置HA和負載均衡。
  • Haproxy 1.5.0 正式發布,Web 負載均衡
    lines removed, 122279 lines addedmany extremely useful bug reports (too many to list)73 code/doc contributors 改進記錄: http://www.haproxy.org
  • HAProxy負載均衡器的安裝及配置
    【51CTO.com 獨家特稿】軟體負載均衡一般通過兩種方式來實現:基於作業系統的軟負載實現和基於第三方應用的軟負載實現。LVS就是基於Linux作業系統實現的一種軟負載,HAProxy就是開源的並且基於第三應用實現的軟負載。HAProxy相比LVS的使用要簡單很多,功能方面也很豐富。
  • linux安裝nginx——搭建高可用集群(lvs+keepalived+nginx)
    /nginx/sbin/nginxnetstat -tunlp | grep nginx1 .1 linux 安裝nginx 參考視頻:2 LVS作用LVS是一個開源的軟體,可以實現傳輸層四層負載均衡目前有三種IP負載均衡技術(VS/NAT、VS/TUN和VS/DR);八種調度算法(rr,wrr,lc,wlc,lblc,lblcr,dh,sh)。
  • MYSQL負載均衡集群構建
    將 keepalived 安裝成 Linux 系統服務因為沒有使用 keepalived 的默認路徑安裝(默認是/usr/local) ,安裝完成之後,需要做一些工作 複製默認配置文件到默認路徑[root@localhost keepalived-1.2.18]# mkdir /etc/keepalived[root@localhost keepalived
  • 實戰經歷:MySQL主主模式+Keepalived高可用
    今天閒來無事,打算搭建一個MySQL的高可用架構,採用的是MySQL的主主結構,再外加Keepalived,對外統一提供虛IP。先來說說背景吧,現在的項目為了高可用性,都是避免單節點的存在的,比如,我們的應用程式,都是部署多個節點,通過Nginx做負載均衡,某個節點出現問題,並不會影響整體應用。那麼資料庫層如何搭建高可用的架構呢?今天我們就來看看。
  • 流量紅利下怎麼用雙機搭建高可用與負載均衡——(下)
    在上一篇文章中我們介紹了用雙機搭建高可用與負載均衡,相信很多小夥伴已經學會了哦,但是很多小夥伴問,裡面的一些腳本怎麼處理,裡面的iptables怎麼配置,今天我們接著往下看。#start keepalived vrrp 相關 必須配置此內容否則主備無法進入到指定角色 9.-A INPUT -p vrrp -j ACCEPT  10.
  • Centos7搭建LVS+Keepalived高可用Web
    LVS + Keepalived 高可用集群Keepalived的設計目標是構建高可用的LVS負載均衡的集群,可以調用ipvsadm工具創建虛擬機,不僅僅用作雙機熱備,還可以使用keepalived構建更加方便快捷的節點,進行相關的健康檢查,自動移除失效節點,恢復後再重新加入。