rhel5下實現基於DNS的多機均衡負載

2021-09-04 05:54:06 字數 3401 閱讀 6385

實現的軟體是lbnamed,主要特徵介紹如下:

一、基於perl的dns服務端。應用簡單。

二、自動檢測各個

伺服器的負荷。然後再按結果優先分配dns解析。

三、dns解析實時生效。不會被dns

伺服器快取。

四、安裝方法簡單。

lbnamed目前最新版本是lbnamed-2.3.2,這裡採用lbnamed-1.2.1版本。

官方**是

1、lbcd是lbnamed所用到的

伺服器端檢測

伺服器負荷

程式,每個需要均衡負荷的

伺服器都需要安裝、執行它的。上面給出的lbcd是最新版本的,編譯安裝如下:

# tar -xvzf lbcd-3.3.0.tar.gz

# cd lbcd-3.3.0

# ./configure

# make;make install

完了後lbcd程式存在與/usr/local/sbin/目錄下,不用加什麼引數就可以執行,停止則是lbcd -s。

2、lbnamed是由perl編寫的,在安裝前請確定你安裝了perl軟體,1.2.1版本裡包含了perl4和perl5兩種,我這裡用的是perl5.

# tar -xvzf lbnamed-1.2.1.tar.gz

# cd lbnamed-1.2.1

# cd perl5

注意:lbnamed

程式是主

程式。提供dns動態解析。嚴格來說。它已是乙個dns

伺服器端

程式了。

poller是為lbnamed提供各個均衡

伺服器的負荷情況。(配合我們之前安裝的lbcd

程式使用)

但二個程式可能都需要更改,請看

程式第一行的perl

程式位址。改為你的perl位址。

下來編輯程式的配置檔案:

1、lbnamed.conf 修改以下幾處:

$hostmaster = "schemers.leland.stanford.edu"; 將schemers.leland.stanford.edu改為你

伺服器的名字。比如server1.rhel5.net。

將所有stanford.edu改為你的網域名稱(比如rhel5.net),這個很重要。我建議不要更改best,當然你也可以改,根據具體情況而定吧。

2、sweet.config 這個

檔案可以是用其它

檔名的,具體在lbnamed.conf有設定。我建議大家清空這個

檔案。它的配置方法如下: 負荷

伺服器host   負重   組

例如,我的如下:

server1.rhel5.net 1 server1

server2.rhel5.net 2 server2

192.168.1.10 server1.rhel5.net server1

192.168.1.20 server2.rhel5.net server2

這樣poller程式就能檢測192.168.1.10和192.168.1.20的負荷情況了。

到此,配置完畢!分別在server1和server2上執行lbcd程式,完了後啟動lbnamed程式,如下:

# ./lbnamed -l lb.log -d

-d 意為debug

-l 在執行時加上logfile檔案引數,這裡我用的lb.log檔案作為lbnamed的日誌檔案。

檢查下lb.log檔案:

# cat lb.log

06/26 10:27 7175 lbnamed starting poller

06/26 10:27 7175 lbnamed load_config

loading server1 1 server1.rhel5.net

loading server2 2 server2.rhel5.net

如果你沒有那些記錄,請檢視

檔案sweet.config.unreach,這是代表poller

程式無法接收到對方

伺服器的負荷資訊,請檢查lbcd

程式是否執行!

在windows下測試:

c:\documents and settings\jacky.lee>nslookup

default server:  perl-doc.rhel5.net

address:  192.168.1.10

> server 192.168.1.20

default server:  dns2.rhel5.net

address:  192.168.1.20

> set type=all

>

www.rhel5.net

server:  dns2.rhel5.net

address:  192.168.1.20

www.rhel5.net   canonical name = www2.rhel5.net

rhel5.net       nameserver = dns1.rhel5.net

rhel5.net       nameserver = dns2.rhel5.net

dns1.rhel5.net  internet address = 192.168.1.10

dns2.rhel5.net  internet address = 192.168.1.20

> mail.rhel5.net

server:  dns2.rhel5.net

address:  192.168.1.20

mail.rhel5.net  canonical name = mail2.rhel5.net

rhel5.net       nameserver = dns2.rhel5.net

rhel5.net       nameserver = dns1.rhel5.net

dns1.rhel5.net  internet address = 192.168.1.10

dns2.rhel5.net  internet address = 192.168.1.20

> bind.rhel5.net

server:  dns2.rhel5.net

address:  192.168.1.20

bind.rhel5.net  canonical name = bind-doc.rhel5.net

rhel5.net       nameserver = dns1.rhel5.net

rhel5.net       nameserver = dns2.rhel5.net

dns1.rhel5.net  internet address = 192.168.1.10

dns2.rhel5.net  internet address = 192.168.1.20

RHEL5下重設密碼

linux系統忘記密碼是很鬱悶的的事情,進不了系統,又不想重灌系統,那有沒有好的解決辦呢?下面以 的形式介紹一下具體的操作步驟!一 保證系統的grub沒有被加密,如果被加密的話,至少要知道grub的密碼 二 重啟系統,進入下面的介面 開機後,如果沒有設定grub密碼,那系統會自動到達這個介面,如果有...

rhel5下openwebmail的配置

一 安裝配置 本文使用rpm格式安裝軟體包,一台rhel5.2伺服器,網域名稱為 rhel5.net,ip為192.168.1.105,所有需要安裝的軟體 cyrus sasl dovecot httpd perl text iconv perl suidperl perl compress zli...

RHEL5下如何使用LUN

lun logic unit number 類似於linux下的lv 邏輯卷 可以理解為儲存裝置分配給主機使用的空間。它區分intiator端和target端。一般intiator端指前端主機,target端指後端儲存。那我們linux主機要使用lun,首先是在後端儲存上建立raid 建立熱備盤 建...