Haproxy搭建 Web 群集實驗

2021-10-25 15:26:40 字數 3984 閱讀 4603

nginx節點伺服器部署(192.168.199.20、192.168.199.30)

啟動haproxy服務(192.168.199.10)

瀏覽器測試 web 群集

日誌定義

主機作業系統

ip位址

haproxy-server

centos7

192.168.199.10

nginx-server1

centos7

192.168.199.20

nginx-server2

centos7

192.168.199.30

客戶端centos7

192.168.199.40

systemctl stop firewalld.service

setenforce 0

cd /opt

haproxy-1.5.19.tar.gz

yum install -y pcre-devel bzip2-devel gcc gcc-c++ make

tar zxvf haproxy-1.5.19.tar.gz

cd haproxy-1.5.19/

make target=linux2628 arch=x86_64

make install

引數說明:

target=linux26 #核心版本,

#使用uname -r檢視核心,如:2.6.18-371.el5,此時該引數用target=linux26;

kernel大於2.6.28的用target=linux2628

arch=x86_64 #系統位數,64位系統

mkdir /etc/haproxy

cp examples/haproxy.cfg /etc/haproxy/

cd /etc/haproxy/

vim haproxy.cfg

global

log /dev/log local0 info #修改4~5行,配置日誌記錄,local0為日誌裝置,預設存放到系統日誌

log /dev/log local0 notice

#log loghost local0 info

maxconn 4096 #最大連線數,需考慮ulimit-n限制

#chroot /usr/share/haproxy #8行,chroot執行路徑,為該服務自設定的根目錄,一般需將此行注釋掉

uid 99 #使用者uid

gid 99 #使用者gid

daemon #守護程序模式

defaults

log global #定義日誌為global配置中的日誌定義

mode http #模式為http

option httplog #採用http日誌格式記錄日誌

option dontlognull #不記錄健康檢查日誌資訊

retries 3 #檢查節點伺服器失敗次數,連續達到三次失敗,則認為節點不可用

redispatch #當伺服器負載很高時,自動結束當前佇列處理比較久的連線

maxconn 2000 #最大連線數

contimeout 5000 #連線超時時間

clitimeout 50000 #客戶端超時時間

srvtimeout 50000 #伺服器超時時間

刪除下面的listen項(全部刪除),新增以下內容:

listen webcluster 0.0.0.0:80 #定義乙個名為webcluster的應用

option httpchk get /test.html #檢查伺服器的test.html檔案

balance roundrobin #負載均衡排程演算法使用輪潤演算法roundrobin

server inst2 192.168.199.30:80 check inter 2000 fall 3

systemctl stop firewalld

setenforce 0

yum install -y pcre-devel zlib-devel gcc gcc-c++ make

useradd -m -s /sbin/nologin nginx

cd /opt

傳入軟體包

tar zxvf nginx-1.12.0.tar.gz -c /opt/

cd nginx-1.12.0/

./configure --prefix=/usr/local/nginx --user=nginx --group=nginx

make && make install

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/

nginx #啟動nginx 服務

-----192.168.199.20-----

echo "this is test1 web" > /usr/local/nginx/html/test.html

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

-----192.168.199.30-----

echo "this is test2 web" > /usr/local/nginx/html/test.html

ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin

cp /opt/haproxy-1.5.19/examples/haproxy.init /etc/init.d/haproxy

chmod +x haproxy

chkconfig --add /etc/init.d/haproxy

ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy

service haproxy start 或 /etc/init.d/haproxy start

客戶端使用瀏覽器開啟 ,不斷重新整理瀏覽器測試負載均衡效果

vim /etc/haproxy/haproxy.cfg

global

log /dev/log local0 info

log /dev/log local0 notice

service haproxy restart

vim /etc/rsyslog.d/haproxy.conf

if ($programname == 'haproxy' and $syslogseverity-text == 'info')

then -/var/log/haproxy/haproxy-info.log

&~if ($programname == 'haproxy' and $syslogseverity-text == 'notice')

then -/var/log/haproxy/haproxy-notice.log

&~

systemctl restart rsyslog.service

tail -f/var/log/haproxy/haproxy-info.log #檢視haproxy的訪問請求日誌信

Haproxy搭建Web群集概述

博文目錄 一 haproxy概述 1 http請求 2 負載均衡常用排程演算法 3 常見的web群集排程器 二 haproxy配置項介紹 1 global配置項通常有下面配置引數 2 defaults配置項配置預設引數,一般會被應用元件繼承,如果在應用元件中沒有特別的宣告,將安裝預設配置引數 3 l...

使用Haproxy搭建Web群集

技能展示 熟悉haproxy功能及常用群集排程演算法 學會haproxy常用配置 學會haproxy引數優化 簡介 在前面已經學習了使用nginx.lvs做負載均衡群集,它們都具有各自的特點,本章將要介紹另 一款比較流行的群集排程工具haproxy,首先介紹負載均衡常用排程演算法,然後介紹hapro...

實現WEB負載均衡群集

具體步驟如下 一 director配置 二 real server 配置 1 編輯網路介面 root cluser1 root vi etc sysconfig network scripts ifcfg eth0 device eth0 bootproto static broadcast 192...