日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

haproxy调度web案例

發(fā)布時(shí)間:2025/4/16 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 haproxy调度web案例 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、實(shí)驗(yàn)架構(gòu)圖

haproxy通過ACL規(guī)則來實(shí)現(xiàn)智能負(fù)載均衡
當(dāng)輸入bbs.linux.com時(shí),haproxy將請求轉(zhuǎn)發(fā)到后端bbs服務(wù)器
當(dāng)輸入blog.linux.com時(shí),haproxy將請求轉(zhuǎn)發(fā)到后端blog服務(wù)器
前端兩臺(tái)haproxy服務(wù)器通過部署keepalived來實(shí)現(xiàn)haproxy高可用

二、準(zhǔn)備工作

系統(tǒng)版本:centos7
haproxy服務(wù)器
haproxy01 192.168.122.100
haproxy02 192.168.122.200
bbs服務(wù)器
web01 192.168.122.101
web02 192.168.166.102
blog服務(wù)器
web03 192.168.122.103
web04 192.168.122.104
關(guān)閉firewalld和SElinux,各主機(jī)均為固定ip

三、部署bbs服務(wù)器和blog服務(wù)器的測試頁面

安裝httpd并啟動(dòng)

[root@web01 ~]# yum install -y httpd [root@web01 ~]# echo "web01.bbs.com" >/var/www/html/index.html [root@web01 ~]# systemctl start httpd [root@web01 ~]# systemctl enable httpd

web01與web02測試頁面分別為web01.bbs.com和web02.bbs.com
web03與web04測試頁面分別為web03.blog.com和web04.blog.com

四、在haproxy01主機(jī)上安裝haproxy,并進(jìn)行配置

[root@haproxy01 ~]# yum install -y haproxy

配置文件所在位置

[root@haproxy01 ~]# rpm -qc haproxy /etc/haproxy/haproxy.cfg /etc/logrotate.d/haproxy

打開并編輯配置文件

[root@haproxy01 ~]# vim /etc/haproxy/haproxy.cfg globalmaxconn 2000nbproc 1user nobodygroup nobodylog 127.0.0.1 local0 infodaemonpidfile /var/run/haproxy.piddefaultsmode httpretries 3timeout connect 5stimeout client 10stimeout server 30stimeout check 2slisten admin_statusbind 0.0.0.0:9088mode httplog 127.0.0.1 local0 errstats refresh 30sstats uri /haproxy-statusstats realm welcome loginstats auth admin:adminstats hide-versionstats admin if TRUEfrontend test-proxybind *:80mode httplog globaloption httplogoption forwardforacl host_bbs hdr_dom(host) -i bbs.linux.comacl host_blog hdr_beg(host) -i blog.use_backend server_bbs if host_bbsuse_backend server_blog if host_blogbackend server_bbsmode httpoption redispatchcookie SERVERIDoption abortonclosebalance roundrobinserver bbs01 192.168.122.101:80 cookie bbs01 weight 3 check inter 2000 rise 1 fall 2server bbs02 192.168.122.102:80 cookie bbs02 weight 3 check inter 2000 rise 1 fall 2backend server_blogmode httpoption redispatchcookie SERVERIDoption abortonclosebalance roundrobinserver blog01 192.168.122.103:80 cookie blog01 weight 3 check inter 2000 rise 1 fall 2server blog02 192.168.122.104:80 cookie blog02 weight 3 check inter 2000 rise 1 fall 2

啟動(dòng)haproxy服務(wù)

[root@haproxy01 ~]# systemctl start haproxy [root@haproxy01 ~]# ss -antp |grep haproxy LISTEN 0 128 *:9088 *:* users:(("haproxy",8742,4),("haproxy",8741,4)) LISTEN 0 128 *:80 *:* users:(("haproxy",8742,6),("haproxy",8741,6))

五、階段測試
打開瀏覽器,通過輸入bbs.linux.com,可看到web01和web02的負(fù)載均衡效果。通過輸入blog.linux.com,可看到web03和web04的負(fù)載均衡效果。



六、測試訪問haproxy的監(jiān)控頁面

七、安裝配置haproxy02
軟件安裝方法和配置文件與haproxy01一致

[root@haproxy02 ~]# yum install -y haproxy [root@haproxy02 ~]# scp 192.168.122.100:/etc/haproxy/haproxy.cfg /etc/haproxy/ [root@haproxy02 ~]# systemctl start haproxy [root@haproxy02 ~]# systemctl enable haproxy

八、配置keepalived實(shí)現(xiàn)haproxy高可用

分別在兩臺(tái)haproxy主機(jī)上安裝keepalived

[root@haproxy01 ~]# yum install -y keepalivedhaproxy01主機(jī)keepalived配置文件如下 [root@haproxy01 ~]# vim /etc/keepalived/keepalived.conf ! Configuration File for keepalivedglobal_defs {router_id haproxy01 }vrrp_instance VI_1 {state MASTERinterface eth0virtual_router_id 80priority 100advert_int 1authentication {auth_type PASSauth_pass redhat}virtual_ipaddress {192.168.122.111} } [root@haproxy01 ~]# scp /etc/keepalived/keepalived.conf 192.168.122.200:/etc/keepalived/haproxy02主機(jī)keepalived配置文件如下[root@haproxy01 ~]# scp /etc/keepalived/keepalived.conf 192.168.122.200:/etc/keepalived/ ! Configuration File for keepalivedglobal_defs {router_id haproxy02 }vrrp_instance VI_1 {state BACKUPinterface eth0virtual_router_id 80priority 50advert_int 1authentication {auth_type PASSauth_pass redhat}virtual_ipaddress {192.168.122.111} }

分別啟動(dòng)keepalived服務(wù)

[root@haproxy01 ~]# systemctl start keepalived [root@haproxy01 ~]# systemctl enable keepalived ln -s '/usr/lib/systemd/system/keepalived.service' '/etc/systemd/system/multi-user.target.wants/keepalived.service' [root@haproxy01 ~]# systemctl status keepalived keepalived.service - LVS and VRRP High Availability MonitorLoaded: loaded (/usr/lib/systemd/system/keepalived.service; enabled)Active: active (running) since 二 2018-06-05 19:56:24 CST; 33s agoMain PID: 8821 (keepalived)CGroup: /system.slice/keepalived.service├─8821 /usr/sbin/keepalived -D├─8822 /usr/sbin/keepalived -D└─8823 /usr/sbin/keepalived -D [root@haproxy01 ~]# ip addr show eth0 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000link/ether 52:54:00:4f:62:e6 brd ff:ff:ff:ff:ff:ffinet 192.168.122.100/24 brd 192.168.122.255 scope global eth0valid_lft forever preferred_lft foreverinet 192.168.122.111/32 scope global eth0valid_lft forever preferred_lft foreverinet6 fe80::5054:ff:fe4f:62e6/64 scope link valid_lft forever preferred_lft forever [root@haproxy02 ~]# systemctl start keepalived [root@haproxy02 ~]# systemctl enable keepalived ln -s '/usr/lib/systemd/system/keepalived.service' '/etc/systemd/system/multi-user.target.wants/keepalived.service' [root@haproxy02 ~]# systemctl status keepalived keepalived.service - LVS and VRRP High Availability MonitorLoaded: loaded (/usr/lib/systemd/system/keepalived.service; enabled)Active: active (running) since 二 2018-06-05 19:57:24 CST; 12s agoMain PID: 8738 (keepalived)CGroup: /system.slice/keepalived.service├─8738 /usr/sbin/keepalived -D├─8739 /usr/sbin/keepalived -D└─8740 /usr/sbin/keepalived -D

配置haproxy的記錄日志

[root@haproxy02 ~]# vim /etc/sysconfig/rsyslog # Options for rsyslogd # Syslogd options are deprecated since rsyslog v3. # If you want to use them, switch to compatibility mode 2 by "-c 2" # See rsyslogd(8) for more details SYSLOGD_OPTIONS="-c 2 -r" [root@haproxy02 ~]# vim /etc/rsyslog.conf $ModLoad imudp $UDPServerRun 514local0.* /var/log/haproxy.log [root@haproxy02 ~]# systemctl restart rsyslog.service haproxy.service [root@haproxy02 ~]# ls /var/log/ anaconda boot.log cron dmesg.old lastlog messages rhsm spooler tuned yum.log audit btmp dmesg haproxy.log maillog ppp secure tallylog wtmp [root@haproxy02 ~]# tail -f /var/log/haproxy.log Jun 5 20:13:58 localhost haproxy[8805]: Proxy test-proxy started.

轉(zhuǎn)載于:https://blog.51cto.com/12244079/2125240

總結(jié)

以上是生活随笔為你收集整理的haproxy调度web案例的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。