Sun Java System Directory Server Enterprise Edition 6.0 管理指南

經由 WAN 的複寫

目錄伺服器可讓您執行所有格式的複寫,包含透過廣域網路 (WAN) 連線的機器之間的多重主伺服器複寫。此複寫可讓供應者伺服器初始化與更新用戶時,使用較高延遲與較低頻寬的最佳網路頻寬。


備註 –

部署或疑難排解經由 WAN 複寫的複寫拓樸時,必須檢查網路速度、延遲與資料封包遺失。這幾方面任何一個網路問題都可能會導致複寫延遲。

此外,複寫資料傳輸率在頻寬方面一律會比可用實際媒體允許的速率低。如果複本之間的更新磁碟區無法實際符合可用的頻寬,調校將無法避免複本在沉重的更新負載下有所差異。複寫延遲與更新效能受到許多因素的影響,包含但不限於:修改率、項目大小、伺服器硬體、錯誤率、平均延遲與平均頻寬。

如果您對貴環境中的複寫有任何疑問,請連絡 Sun 服務提供者。


複寫機制的內部參數預設會針對 WAN 進行最佳化。但是,如果複寫因為上述因素過慢,您可能需要憑經驗調整視窗大小與群組大小參數。您也能排程複寫避開網路尖峰時段,因而改善整體網路使用率。最後,目錄伺服器支援壓縮複寫資料以最佳情況使用頻寬。

配置網路參數

視窗與群組網路參數可決定複寫機制如何將項目群組化,以用更有效率的方式將其在網路上進行傳送。這些參數會影響供應者與用戶如何交換複寫更新訊息與回應。這些參數可配置於每個複寫協議中,讓您可以根據各用戶的特定網路條件自訂複寫效能。

監視您所做的任何修改效果,並據以調整參數。如需相關指示,請參閱取得複寫狀態。您無須中斷複寫以修改視窗大小與群組大小參數。

配置視窗大小

視窗大小 (預設值 10) 表示不需要用戶立即回應即可傳送的最大更新訊息數目。

快速連續傳送多則訊息,會比在每則訊息之後等待回應來得有效率。您可以使用適當的視窗大小,降低複本等待複寫更新或回應抵達的時間。

如果用戶複本比供應者慢,請將視窗大小增加到比預設值還要高的值,例如 100,並在進一步調整之前再次檢查複寫效能。當複寫更新率很高而使得更新之間的時間縮短時,即使是區域網路 (LAN) 連線的複本也會從較高的視窗大小獲益。

Procedure配置視窗大小

您可以使用 DSCC 執行此作業。如需有關資訊,請參閱目錄服務控制中心介面與 DSCC 線上說明。

    修改視窗大小。


    $ dsconf set-repl-agmt-prop -h host -p port suffix-DN consumer-host:consumer-port transport-window-size:value
    

    例如:


    $ dsconf set-repl-agmt-prop -h host2 -p 1389 dc=example,dc=com host1:1389 \
     transport-window-size:20

配置群組大小

群組大小 (預設值 1) 表示可以隨附在單一更新訊息中的最大資料修改數目。如果網路連線阻礙了複寫的進行,請將群組大小增加為比預設值還要高的值,例如 10,再重新檢查複寫效能。

增加群組大小時,請確定以下為真:

Procedure配置群組大小

您可以使用 DSCC 執行此作業。如需有關資訊,請參閱目錄服務控制中心介面與 DSCC 線上說明。

    修改群組大小。


    $ dsconf set-repl-agmt-prop -h host -p port suffix-DN \
     consumer-host:consumer-port transport-group-size:value
    

    例如:


    $ dsconf set-repl-agmt-prop -h host2 -p 1389 dc=example,dc=com host1:1389 \
     transport-group-size:10

排程複寫活動

如果複本之間立即同步化不是很重要,您可以在網路使用率低的期間排程複寫。資料複寫的完成速度應於網路使用率高時快得多。

您可以排程複寫在一天當中的某個時間開始與結束,以每天或每週為基準。您可以透過用戶各自的複寫協議,獨立為每個用戶執行此項作業。新排程會立即生效,而導致對應用戶的下一個資料複寫延遲到排程允許的第一個複寫完成。

Procedure排程複寫活動

您可以使用 DSCC 執行此作業。如需有關資訊,請參閱目錄服務控制中心介面與 DSCC 線上說明。

    修改複寫排程。


    $ dsconf set-repl-agmt-prop -h host -p port suffix-DN \
     host:port repl-schedule:value
    

    例如,若要設定複寫在每晚 2:00 與 4:00 之間執行,請鍵入:


    $ dsconf set-repl-agmt-prop -h host2 -p 1389 dc=example,dc=com host1:1389 \
     repl-schedule:"0200-0400 0123456"

    其中 0123456 表示一週內的各天,0 表示星期日,1 表示星期一,依此類推。

配置複寫壓縮

若要降低複寫使用的頻寬,可以配置複寫在更新用戶時壓縮要傳送的資料。複寫機制使用 Zlib 壓縮程式庫。供應者與用戶必須執行於 Solaris 或 Linux 平台上,才能啟用壓縮。

您應該憑經驗測試與選取壓縮層級,以在 WAN 環境中使用預期複寫時達到最佳結果。由於壓縮與解壓縮運算會使複寫變慢,因此請勿在具有廣域網路頻寬的地方設定 LAN 中的此參數。

Procedure配置複寫壓縮

無法使用 DSCC 執行此作業。請依照此程序中的說明使用指令行。

    在主伺服器的複寫協議項目上配置複寫壓縮。


    $ dsconf set-repl-agmt-prop -h host -p port suffix-DN \
     consumer-host:consumer-port transport-compression:level
    

    其中 level 可以是 highmediumlownone

    例如,若要在傳送複寫更新給 host1:1389 上的用戶時使用最快速的壓縮,請鍵入:


    $ dsconf set-repl-agmt-prop -h host2 -p 1389 dc=example,dc=com host1:1389 \
     transport-compression:high

    如需設定壓縮層級的更多資訊,請參閱「Sun Java System Directory Server Enterprise Edition 6.0 Reference」