Linux中國

在 RHEL/CentOS 上為Web伺服器架設 「XR」(Crossroads) 負載均衡器

安裝 XR Crossroads 負載均衡

這裡有兩個 Web 伺服器,一個網關伺服器,我們將在網關伺服器上安裝和設置 XR 以接收客戶端請求,並分發到伺服器。

XR Crossroads 網關伺服器:172.16.1.204

Web 伺服器01:172.16.1.222

Web 伺服器02:192.168.1.161

在上述情況下,我們網關伺服器(即 XR Crossroads)的IP地址是172.16.1.204,webserver01 為172.16.1.222,它監聽8888埠,webserver02 是192.168.1.161,它監聽埠5555。

現在,我們需要的是均衡所有的請求,通過 XR 網關從網上接收請求然後分發它到兩個web伺服器已達到負載均衡

第1步:在網關伺服器上安裝 XR Crossroads 負載均衡器

1. 不幸的是,沒有為 crossroads 提供可用的 RPM 包,我們只能從源碼安裝。

要編譯 XR,你必須在系統上安裝 C++ 編譯器和 GNU make 組件,才能避免安裝錯誤。

# yum install gcc gcc-c++ make

接下來,去他們的官方網站(https://crossroads.e-tunity.com)下載此壓縮包(即 crossroads-stable.tar.gz)。

或者,您可以使用 wget 去下載包然後解壓在任何位置(如:/usr/src/),進入解壓目錄,並使用 「make install」 命令安裝。

# wget https://crossroads.e-tunity.com/downloads/crossroads-stable.tar.gz
# tar -xvf crossroads-stable.tar.gz
# cd crossroads-2.74/
# make install

Install XR Crossroads Load Balancer

安裝 XR Crossroads 負載均衡器

安裝完成後,二進位文件安裝在 /usr/sbin 目錄下,XR 的配置文件在 /etc 下名為 「xrctl.xml」 。

2. 最後一個條件,你需要兩個web伺服器。為了方便使用,我在一台伺服器中創建兩個 Python SimpleHTTPServer 實例。

要了解如何設置一個 python SimpleHTTPServer,請閱讀我們此處的文章 使用 SimpleHTTPServer 輕鬆創建兩個 web 伺服器.

正如我所說的,我們要使用兩個web伺服器,webserver01 通過8888埠運行在172.16.1.222上,webserver02 通過5555埠運行在192.168.1.161上。

XR WebServer 01

XR WebServer 01

XR WebServer 02

XR WebServer 02

第2步: 配置 XR Crossroads 負載均衡器

3. 所需都已經就緒。現在我們要做的就是配置xrctl.xml 文件並通過 XR 伺服器接受來自互聯網的請求分發到 web 伺服器上。

現在用 vi/vim 編輯器打開xrctl.xml文件。

# vim /etc/xrctl.xml

並作如下修改。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system>
<uselogger>true</uselogger>
<logdir>/tmp</logdir>
</system>
<service>
<name>Tecmint</name>
<server>
<address>172.16.1.204:8080</address>
<type>tcp</type>
<webinterface>0:8010</webinterface>
<verbose>yes</verbose>
<clientreadtimeout>0</clientreadtimeout>
<clientwritetimout>0</clientwritetimeout>
<backendreadtimeout>0</backendreadtimeout>
<backendwritetimeout>0</backendwritetimeout>
</server>
<backend>
<address>172.16.1.222:8888</address>
</backend>
<backend>
<address>192.168.1.161:5555</address>
</backend>
</service>
</configuration>

Configure XR Crossroads Load Balancer

配置 XR Crossroads 負載均衡器

在這裡,你可以看到在 xrctl.xml 中配置了一個非常基本的 XR 。我已經定義了 XR 伺服器在哪裡,XR 的後端服務和埠及 XR 的 web 管理界面是什麼。

4. 現在,你需要通過以下命令來啟動該 XR 守護進程。

# xrctl start
# xrctl status

Start XR Crossroads

啟動 XR Crossroads

5. 好的。現在是時候來檢查該配置是否可以工作正常了。打開兩個網頁瀏覽器,輸入 XR 伺服器的 IP 地址和埠,並查看輸出。

Verify Web Server Load Balancing

驗證 Web 伺服器負載均衡

太棒了。它工作正常。是時候玩玩 XR 了。(LCTT 譯註:可以看到兩個請求分別分配到了不同伺服器。)

6. 現在可以通過我們配置的網路管理界面的埠來登錄到 XR Crossroads 儀錶盤。在瀏覽器輸入你的 XR 伺服器的 IP 地址和你配置在 xrctl.xml 中的管理埠。

http://172.16.1.204:8010

XR Crossroads Dashboard

XR Crossroads 儀錶盤

看起來像上面一樣。它容易理解,用戶界面​​友好,易於使用。它在右上角顯示每個伺服器能容納多少個連接,以及關於接收該請求的附加細節。你也可以設置每個伺服器承擔的負載量,最大連接數和平均負載等。

最大的好處是,即使沒有配置文件 xrctl.xml,你也可以做到這一點。你唯一要做的就是運行以下命令,它就會把這一切搞定。

# xr --verbose --server tcp:172.16.1.204:8080 --backend 172.16.1.222:8888 --backend 192.168.1.161:5555

上面語法的詳細說明:

  • -verbose 將顯示命令執行後的信息。
  • -server 定義你在安裝包中的 XR 伺服器。
  • -backend 定義你需要平衡分配到 Web 伺服器的流量。
  • tcp 說明我們使用 TCP 服務。

欲了解更多詳情,有關文件及 CROSSROADS 的配置,請訪問他們的官方網站: https://crossroads.e-tunity.com/.

XR Corssroads 使用許多方法來提高伺服器性能,避免宕機,讓你的管理任務更輕鬆,更簡便。希望你喜歡此文章,並隨時在下面發表你的評論和建議,方便與我們保持聯繫。

via: http://www.tecmint.com/setting-up-xr-crossroads-load-balancer-for-web-servers-on-rhel-centos/

作者:Thilina Uvindasiri 譯者:strugglingyouth 校對:wxy

本文由 LCTT 原創翻譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國