紅帽 Piranha 方案實現 WEB 負載均衡

利用紅帽 Piranha 方案實現 WEB 負載均衡 
php

系統環境: RHEL6.5x86_64 small install selinux and iptables disabledhtml

Virtual IP             192.168.2.253linux

192.168.2.162    server62.exampl.com     (主節點)web

192.168.2.163    server63.example.com(備用節點)服務器

192.168.2.52      desktop52.example.com(real server)負載均衡

192.168.2.53      desktop53.example.com(real server)工具

編輯/etc/hoststs作以上解析測試

一. Piranha 方案基本簡紹. 
ui

1. Piranha 方案優勢: 
spa

1.1 配置簡潔高效: 

配置簡便一個 lvs.conf 配置文件便可搞定(類 keepalived 方案.)

1.2 WEB 配置界面. 

WEB 配置對於那些不懂 LVS 配置的人員來講很是吸引力,你幾乎只要花 15 分鐘就能夠配置好一個完美的負載均衡及高可用性方案. 

1.3    完整的功能: 

主備 LVS (Load Balancer)的 Heartbeat 和 HA (pulse, send_arp) ,Load Balancer 和 Real Server 間進程服務的 Heartbeat (nanny) 

*IPVS 功能  (lvsd) 

*IPVS 的管理  (ipvsadm) 

2. Piranha 方案原理結構描述: 

Piranha 方案是基於 LVS 基礎上設計的一套負載均衡高可用解決方案. 

LVS 運行在一對有類似配置的計算機上: 

一個做爲活動 LVS Router(Active LVS Router), 一個做爲備份 LVS Router(Backup LVS Router)。 

活動 LVS Router 服務有兩個角色: 

*  均衡負載到真實服務器上。 

*  檢查真實服務器提供的服務是否正常。 

備份 LVS Router 用來監控活動的 LVS Router,以備活動的 LVS Router 失敗時由備份 LVS Router 接管。

Pulse: 

Pulse 進程運行在活動 LVS Router 和備份 LVS Router 上。 在備份 LVS Router 上,pulse 發送一個心跳(heartbeat)到活動 LVS Router 的公網接口上以檢查活動 LVS Router 是否正常。 

在活動 LVS Router 上,pulse 啓動 lvs 進程並響應來自於備份 LVS Router 的心跳。

lvsd: 

lvs 進程調用 ipvsadm 工具去配置和維護 IPVS 路由表,併爲每個在真實服務器上的虛擬服務啓動一個 nanny 進程。 

nanny: 

每個 nanny 進程去檢查真實服務器上的虛擬服務狀態,並將故障狀況通知 lvs進程。假如一個故障被發現,lvs 進程通知 ipvsadm 在 IPVS 路由表中將此節點刪除。 

send_arp: 

若是備份 LVS Router 未收到來自於活動 LVS Router 的響應, 它將調用 send_arp 將虛擬 IP 地址再分配到備份 LVS Router 的公網接口上。 並在公網接口和局域網接口上分別發送一個命令去關掉活動 LVS Router 上的 lvs進程。同時啓動本身的 lvs 進程來調度客戶端請求。 

3. Piranha 方案基本套件安裝: 

#yum install ipvsadm modcluster piranha system‐config‐cluster php php‐cli php‐common 

4. 配置文件介紹: 

/etc/sysconfig/ha/lvs.cf          //由http://ip:3636 web界面配置的配置文件寫入此文件. 

/etc/init.d/piranha‐gui start    //啓動 piranha 服務的 WEB 配置界面. 

/etc/init.d/pulse                      //啓動 piranha 服務讀取的就是/etc/sysconfig/ha/lvs.cf. 

二. Piranha 配置 

經過 WEB 界面配置 Piranha 服務. 

# /etc/init.d/piranha‐ gui start    //啓動 Piranha 服務. 

#/usr/sbin/piranha‐ passwd    //設置密碼,請設置你的 piranha 服務 WEB 配置登錄密碼. 

http://192.168.2.162:3636    //輸入用戶名: piranha  及剛纔設置的密碼登錄. 

登錄後,選擇 Global Settings  這是對 LVS 的配置 

Primary server public IP  輸入公網 IP:192.168.2.162,應用後按 ACCEPT 按鈕保存設置。 

經過 WEB 配置主 LVS 的信息 

1. 配置主 LVS 

2.配置備份 LVS 

3. 配置添加 LVS( VIP 信息) 

4. 配置 Realserver 

 啓動節點


5.啓動 LVS 服務 pulse 

# /etc/init.d/pulse start 

Starting pulse:                                                                                        [    OK    ] 

若是不報錯,表示啓動成功! 

到此 LVS 的服務器已經配置完成了啓動兩個程序   

一、piranha‐gui    是用來配置 LVS 的 

二、pulse              是用來啓動 LVS 的 
     
  6.    備份 LVS 安裝與配置 

備份 LVS 安裝同主 LVS 安裝方法一樣.直接將 lvs.conf 拷貝到相應的目錄下: 

#scp    /etc/sysconfig/ha/lvs.cf root@192.168.2.163:/etc/sysconfig/ha/ 

# /etc/init.d/pulse start  啓動服務便可. 

7. 配置 Realserver 

#yum install -y arptables_jf

#ifconfig eth0:1 192.168.2.253 netmask 255.255.255.255

#arptables -A IN -d 192.168.2.253 -j DROP

#arptables -A OUT -s 192.168.2.253 -j mangle --mangle-ip-s 192.168.2.53

#service arptables_jf save

以上操做會自動生成文件/etc/sysconfig/arptables

#cd /var/www/html/        //進入Apache默認發佈目錄

#echo `hostname` >  index.html

#service httpd start        //啓動Apache服務

測試:

1).訪問虛擬ip查看可否訪問到兩臺realserver節點的httpd服務。刷新頁面顯示不一樣內容,說明實現了輪轉循環。

2).停掉負載主節點的pulse服務,備用節點自動接管任務。

3).交替stop掉或者所有stop掉兩臺realserver的httpd服務,查看轉發列表的變化。

                ——leeypp@gmail.com

相關文章
相關標籤/搜索