搭建Lotus Domino羣集

浙江省電力辦公自動化系統(如下簡稱:OA系統)是全省推廣,統一軟件、統一平臺、統一規劃與實施的一套大型應用系統。它的硬件平臺採用IBM的小型機AS/400,軟件採用Lotus Domino/Notes,並實施了在一臺小型機上配置多個Domino的方案。

嘉興電力局隨着市局、縣(市)OA系統單軌制的實施,對網絡、服務器的要求不斷提升,而以往採用的單機運行配置模式,已經沒法知足連續運行的要求。所以嘉興電力局在全省電力系統第一個實現了在AS/400服務器環境下雙機運行、Domino羣集方案。在軟件級解決了系統的雙工問題,使得任何一臺單機沒法運行時,都不影響全局OA的正常應用,從而實現系統和數據的高可用性。

嘉興電力局羣集的規劃

嘉興電力局OA系統有兩臺AS/400 820小型機,每臺AS/400上配置兩塊千兆網卡,操做系統版本是V5R1,分別運行3個和4個Domino服務,Domino的版本是R5.0.5。實施羣集後,兩臺AS/400分別又增長了4個和3個Domino服務,使每臺服務器運行7個Domino服務。在此,主要以一個Domino實施羣集爲例進行介紹。因爲每臺AS/400配置雙網卡,咱們考慮爲羣集建立私有局域網,將羣集經過服務器探測和羣集複製產生的網絡通信分離到私有局域網,這樣可更多地保留主局域網的可用帶寬。

羣集的配置

配置Domino服務器

以JXPHEPMA01/Serves/ZPEPC爲例,首先,在同一Domino域中註冊另一個Domino服務器:JXPHEPMA02/Serves/ZPEPC。在JXPHEPMA01上安裝和配置JXPHEPMA02。

權限設置

設置Domino羣集中Administrator以及服務器所須要的權限:

(1) 設置建立數據庫副本的權限

在JXPHEPMA01及JXPHEPMA02服務器配置文檔的安全性頁面上,把建立數據庫副本的權限賦予系統管理員。

(2) 增長羣組

羣組名稱:JXPHEP_Cluster_01;

羣組類型:多用途;

成員:JXPHEPMA01/Serves/ZPEPC ,JXPHEPMA02/Serves/ZPEPC。

(3) 修改數據庫存取控制

修改JXPHEPMA01服務器上數據庫names.nsf、admin4.nsf、catalog.nsf、cldbdir以及全部應用數據庫的存取控制列表。在基本頁面上,添加JXPHEP_Cluster_01羣組,

用戶類型:服務器組;

存取級別:管理者。

在高級頁面上,

管理服務器:JXPHEPMA01/Serves/ZPEPC

選中此數據庫的全部副本並採用相同的存取控制列表。完成存取控制設置後,羣集服務器就對數據庫及其副本有一致的控制權限。

在羣集服務器上建立鏈接。

建立JXPHEPMA02/Serves/ZPEPC到JXPHEPMA01/Serves/ZPEPC一個鏈接。

建立羣集

在 Domino Administrator 中,單擊「配置」附籤,展開「服務器」,並單擊「全部服務器文檔」,選擇要添加到羣集的服務器:JXPHEPMA01/Serves/ZPEPC,JXPHEPMA02/Serves/ZPEPC,單擊「添加到羣集中」,當詢問選擇要添加服務器到其中的羣集時,選擇「新建羣集」,鍵入新羣集的名稱:JXPHEP_Cluster_01。將上面的數據庫及全部應用數據庫都建立副本到JXPHEPMA02服務器上。

建立私網

(1) AS/400增長IP地址。

在兩臺小型機的另一塊網卡上分別增長IP地址192.168.64.1 和 192.168.64.2,做爲每一個Domino的第二個IP地址。

(2) 羣集服務器添加端口。

在「服務器」「設置端口」中新建端口,名稱:tcp;驅動器:TCP。在「服務器」每一個羣集成員的「服務器」文檔的「端口」「Notes 網絡端口」附籤中,添加爲私有局域網,啓用新端口,如圖1所示。
圖1

(3) 修改NOTES.INI文件。

從相應的子網爲每一個端口分配 IP 地址而且將信息如下列格式寫入 NOTES.INI 文件中:

PORT1_TcpIPAddress=0,a.b.c.d:1352

PORT2_TcpIPAddress=0,e.f.g.h:1352

其中 PORT1 和 PORT2 是端口名稱,a.b.c.d 和 e.f.g.h 是這些端口的 IP 地址。如:JXPHEPMA01端口名稱爲 TCPIP 和 tcp,這些信息以下所示:

TCPIP_TcpIPAddress=0, *.*.*.*:1352

tcp_TcpIPAddress=0,192.168.64.1:1352

Server_Cluster_Default_Port=tcp

而後從新啓動服務器,讓修改的配置生效。
羣集測試

狀態測試

在Domino服務器的控制檯上鍵入:show cluster,出現Domino羣集信息,如圖2所示:

能夠看出,羣集中的服務器狀態都正常。

複製分析

從「服務器」、「分析」、「羣集分析」,如圖2所示進入:
圖2

產生羣集的分析報告,如圖3所示
圖3 經過羣集分析報告顯示的問題,對數據庫的存取控制列表進行修改,保證數據庫副本的徹底一致性。 私網測試 爲了確保羣集複製使用私有局域網,爲此,能夠查看羣集統計信息。單擊「服務器」「統計信息」附籤,展開羣集的端口名,私有局域網端口tcp的下列統計信息:BytesReceived,BytesSent;展開 Replica,Cluster,SessionBytes,並查看下列羣集複製統計信息:In,Out。比較 tcp.portname.BytesReceived 和 Replica.Cluster.SessionBytes.In的值,tcp.portname.BytesSent 和 Replica.Cluster.SessionBytes.Out 的值,這些值應彼此很是接近,但並不相同,由於私有網絡不只用於羣集複製。 郵件測試 (1) 在任意一個Domino服務器上以某一身份向某用戶User1的郵箱發信,兩個服務器刷新後,能當即收到,速度也很快。 (2) 關掉管理服務器JXPHEPMA01後,向User1發郵件,以User1的身份進去後能立刻收到郵件。 根據實際應用,再進行郵件的轉發、刪除等一系列測試工做,都可實現同步,則能夠證實郵件的羣集是成功的。 收發文的測試 在任意一個Domino服務器上新建一個收發文的流程後,此流程的數據庫立刻在另外一個Domino服務器上獲得更新。以相應權限進去後,也能進入流程進行操做。關掉任意一個Domino服務器後,收發文應能正常收取。 失效轉移測試 關掉JXPHEPMA01服務器後,客戶端會自動鏈接到JXPHEPMA02服務器上,在用戶層面上,沒有感受,其它應用操做均正常,只有查看當前數據庫屬性時纔會發現目前使用的是JXPHEPMA02服務器上的數據庫。 羣集應用中存在的問題 (1) 應用數據庫新建後,副本不會自動在羣集的另一臺服務器上建立,須要手工複製。並且新建的數據庫在複製前,首先要按照羣集的要求修改數據庫存取控制列表,保證從此Domino羣集中數據庫副本的一致性。 (2) 有些應用數據庫實時性很強,羣集不能保證每一秒看到的兩個數據庫副本一摸同樣。兩個用戶分別在兩個羣集服務器上,對同一個數據庫的同一條文檔進行操做時,兩邊的內容有可能會存在不一致性。針對這種狀況,能夠經過設置服務器的有效閾值來解決,若是服務器有效指標小於有效閾值,則服務器被標記爲 BUSY。服務器標記爲 BUSY 時,打開數據庫的請求將從新定向到羣集中的其它服務器。在JXPHEPMA02服務器NOTES.INI文件中添加: server_availability_threshold=100 這樣服務器被標記爲 BUSY。日常狀況下,用戶只對JXPHEPMA01上的數據庫進行操做,不過羣集間數據庫的複製照常進行,當JXPHEPMA01服務器失敗時,用戶的操做轉移到JXPHEPMA02上。這樣保證了數據庫文檔的一致性,不過羣集的負載均衡就沒法實現。 (3) 應用數據庫的副本不能實現文檔的徹底一致。這主要是數據庫設計時使用「讀者」域限制對特定文檔的存取。在存取控制列表中具備「編輯者」(或更高)存取級別的用戶,若未列入「讀者」域中,也不能讀文檔,更沒法複製該文檔。因此把服務器增長到每一個「讀者」域中,保證羣集中的服務器對數據庫的每一個文檔有讀取權限,實現副本的一致。 Domino羣集在AS/400上的實現,使得用戶能夠實現無間斷的訪問數據,平衡服務器間的工做負載,而且在擴大企業規模時保持運行。可是,Domino羣集的真正實現仍是體如今應用數據庫的羣集實現,因此在數據庫設計階段就要把羣集方案考慮進去,這樣才能達到真正意義上Domino羣集的成
相關文章
相關標籤/搜索