haproxy簡單實現反向代理+日誌配置

環境介紹

使用haproxy作爲兩臺apache服務器的反向代理

系統:CentOS7

haproxy版本:1.4.24

服務器 IP地址
haproxy 192.168.218.4
apache1 192.168.218.5
apache2 192.168.218.6

部署apache站點

使用yum方式安裝apache

yum -y install httpd

安裝httpd後會自動生成/var/www/html目錄

在該目錄下存放站點網頁,並啓動httpd服務

配置站點1

echo "this is apache1" > /var/www/html/index.html
systemctl restart httpd

配置站點2

echo "this is apache2" > /var/www/html/index.html
systemctl restart httpd

源碼編譯安裝haproxy

安裝haproxy依賴環境

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

解壓源碼包

tar xf haproxy-1.4.24.tar.gz 

可使用-C參數指定解壓路徑

進入源碼目錄,進行編譯安裝

make TARGET=linux26
make install

創建/etc/haproxy,用於存放配置文件

mkdir /etc/haproxy
# 將源碼包目錄下examples/haproxy.cfg複製到/etc/haproxy/
cp examples/haproxy.cfg /etc/haproxy/

修改配置文件/etc/haproxy/haproxy.cfg,如下圖
在這裏插入圖片描述

將haproxy添加到service服務

# 將源碼目錄下的examples/haproxy.init複製到/etc/init.d/下
cp /root/haproxy-1.4.24/examples/haproxy.init /etc/init.d/haproxy
# 添加執行權限
chmod +x /etc/init.d/haproxy 
# 添加service服務
chkconfig --add /etc/init.d/haproxy 
ln -s /usr/local/sbin/haproxy /usr/sbin/

開啓服務

service haproxy start
Starting haproxy (via systemctl):                          [  OK  ]
# 查看服務狀態
netstat -antp|grep haproxy
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      2120/haproxy 

在瀏覽器中訪問haproxy,我們可以看到haproxy代理了apache的站點
在這裏插入圖片描述

在這裏插入圖片描述

haproxy日誌配置

修改配置文件

在這裏插入圖片描述

重啓haproxy服務

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 
&~

重啓rsyslog.service

systemctl restart rsyslog.service

瀏覽器多刷新幾次後,增加了訪問日誌,再查看日誌文件/var/log/haproxy/haproxy-info.log
在這裏插入圖片描述
就能看到測試的訪問請求

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章