您好,登錄后才能下訂單哦!
下文給大家帶來haproxy的負載均衡是如何實現的,希望能夠給大家在實際運用中帶來一定的幫助,負載均衡涉及的東西比較多,理論也不多,網上有很多書籍,今天我們就用億速云在行業內累計的經驗來做一個解答。
開啟三臺虛擬機:
192.168.80.103
192.168.80.104
192.168.80.105
在80.103里:
systemctl stop firewalld //關閉防火墻
setenforce 0 //關閉監控
yum install lrz* -y //安裝上傳軟件
把haproxy包拉入
tar xf haproxy-1.5.15.tar.gz -C /opt/ //解壓包并且放入/opt文件中
cd /opt/haproxy-1.5.15/
源碼編譯安裝haproxy
yum install -y \
pcre-devel \
bzip2-devel \
gcc \
gcc-c++ \
make
uname -r //內核版本
make TARGET=linux26 PREFIX=/usr/local/haproxy //標識64為系統
make install PREFIX=/usr/local/haproxy
mkdir /etc/haproxy
useradd -s /sbin/nologin -M haproxy
id haproxy
cd /usr/local/haproxy/
cd /opt/haproxy-1.5.15/
cd examples/
cp haproxy.cfg /etc/haproxy/
cd /etc/haproxy/
vi haproxy.cfg
修改后:
srvtimeout 50000 后面的內容全刪了,再添加下面新的內容:
-----------------------------------------統計頁面配置------------------------------------
listen admin_stats #為haproxy訪問狀態監控頁面配置,取名為admin_stats
bind 0.0.0.0:8089 //監聽端口
stats enable //啟用監聽端口
mode http #http的7層模式
log global # 繼承global中log的定義
stats uri /stats #監控頁面的url訪問路徑,即http://ip/stats 訪問監控頁面
stats realm Haproxy\ Statistics #監控頁面的密碼框提示信息
stats auth admin:admin #監控頁面的用戶和密碼admin,可以設置多個用戶名
#stats hide-version //隱藏統計頁面上HAProxy的版本信息
stats admin if TRUE //當通過認證才可管理
stats refresh 30s //頁面自動刷新時間30s
:wq //保存退出
cd -
cp haproxy.init /etc/init.d/haproxy
vi /etc/init.d/haproxy
chmod +x /etc/init.d/haproxy //給這個文件設置權限
ll /etc/init.d/haproxy
chkconfig --add haproxy //添加系統服務
ln -s /usr/local/haproxy/sbin/haproxy /usr/sbin/haproxy //軟鏈接
service haproxy start //啟動haproxy
netstat -anp | grep haproxy //查看haproxy服務是否開啟
在網頁上輸入IP地址:8089/stats
service haproxy stop //關閉haproxy
vi /etc/haproxy/haproxy.cfg
在里面添加以下內容:
------------------------web設置--------------------------------
listen webcluster #定義webcluster云服務器組。
bind 0.0.0.0:80 #定義haproxy前端部分監聽的端口。
mode http #http的7層模式
option httpchk GET /index.html #心跳檢測
log global #繼承global中log的定義
maxconn 3000 #server進程可接受的最大并發連接數
balance roundrobin #負載均衡的方式:輪詢
server web01 192.168.80.104:80 check inter 2000 fall 5
server web02 192.168.80.105:80 check inter 2000 fall 5
:wq //保存退出
注:
后端服務器 web1 和 web2 ,IP 地址分別為 192.168.80.10 和 192.168.80.20
check:對當前server做健康狀態檢測
inter <delay>:檢測之間的時間間隔,默認為2000ms
fall <count>:連續多少次檢測結果為“失敗”才標記為不可用;默認為3
rise <count>:連續多少次檢測結果為“成功”才標記為可用;默認為2
service haproxy start //開啟haproxy
netstat -anp | grep haproxy //查看haproxy服務是否開啟
在網頁上輸入http://192.168.80103:8089/stats //統計頁面
在網頁上輸入http://192.168.80103 //負載均衡
在80.104里:
systemctl stop firewalld
setenforce 0
yum install httpd -y //安裝httpd
vi /etc/httpd/conf/httpd.conf
把ServerName www.example.com:80 前面的#去掉
cd /var/www/html/
echo "<h3>server aa</h3>" > index.html
systemctl start httpd
在網頁輸入192.168.80.104
在80.105里:
systemctl stop firewalld
setenforce 0
yum install httpd -y //安裝httpd
vi /etc/httpd/conf/httpd.conf
把ServerName www.example.com:80 前面的#去掉
cd /var/www/html/
echo "<h3>server bb</h3>" > index.html
systemctl start httpd
在網頁輸入192.168.80.105
看了以上關于haproxy的負載均衡是如何實現的,如果大家還有什么地方需要了解的可以在億速云行業資訊里查找自己感興趣的或者找我們的專業技術工程師解答的,億速云技術工程師在行業內擁有十幾年的經驗了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。