Load Balancer 管理手冊


注意

使用本資訊及其支援的產品之前, 請先閱讀附錄 E, 注意事項下的一般資訊。

第一版 (2002 年 11 月)

(C) Copyright International Business Machines Corporation 2002. All rights reserved.
Note to U.S. government Users -- Documentation related ...


目錄

  • 關於本書
  • 本書讀者
  • 參考資訊
  • 可存取性
  • 如何傳達您的意見
  • 相關的文件及網站

  • Load Balancer 簡介

  • Load Balancer 的概觀
  • 何謂 Load Balancer?
  • 我可以使用哪些 Load Balancer 元件?
  • 使用 Load Balancer 有哪些優點?
  • 何謂高可用性?
  • Dispatcher
  • CBR 或 Site Selector
  • Cisco CSS Controller 或 Nortel Alteon Controller
  • 此版次中有哪些新特性?
  • Load Balancer 各項元件的概觀
  • Load Balancer 有哪些元件?
  • Dispatcher 元件的概觀
  • 透過 Dispatcher 管理本端伺服器
  • 使用 Metric Server 來管理伺服器
  • 透過 Dispatcher 管理本端及遠端伺服器
  • Content Based Routing (CBR) 元件的概觀
  • 用 CBR 來管理本端伺服器
  • Site Selector 元件的概觀
  • 以 Site Selector 及 Metric Server 來管理本端及遠端的伺服器
  • Cisco CSS Controller 元件的概觀
  • Nortel Alteon Controller 元件的概觀
  • 管理您的網路:決定要使用哪些 Load Balancer 特性
  • 管理程式、通告器及 Metric Server 等功能 (Dispatcher、CBR 及 Site Selector 元件)
  • Dispatcher 元件特性
  • 遠端管理
  • 並列
  • 高可用性
  • 主從相關性
  • 規則型平衡負載
  • 使用 Dispatcher 之 cbr 轉送方法的根據內容遞送
  • 廣域平衡負載
  • 埠對映
  • 在專用網路上設定 Dispatcher
  • 萬用字元叢集及萬用字元埠
  • "拒絕服務" 攻擊偵測
  • 二進位記載
  • 警示
  • Content Based Routing (CBR) 元件特性
  • 比較 CBR 元件及 Dispatcher 元件的 cbr 轉送方法
  • 遠端管理
  • 並列
  • 具有多重 Caching Proxy 實例的 CBR
  • 為 SSL 連線提供根據內容遞送
  • 伺服器分割
  • 規則型平衡負載
  • 主從相關性
  • 使用 Dispatcher 及 CBR 的高可用性
  • 二進位記載
  • 警示
  • Site Selector 元件特性
  • 遠端管理
  • 並列
  • 高可用性
  • 主從相關性
  • 規則型平衡負載
  • 廣域平衡負載
  • 警示
  • Cisco CSS Controller 元件特性
  • 遠端管理
  • 並列
  • 高可用性
  • 二進位記載
  • 警示
  • Nortel Alteon Controller 元件特性
  • 遠端管理
  • 並列
  • 高可用性
  • 二進位記載
  • 警示
  • 安裝 Load Balancer
  • AIX 的基本需求
  • 安裝 AIX 版
  • 開始之前
  • 安裝步驟
  • Red Hat Linux、SuSE Linux 或 SuSE SLES Linux 的基本需求
  • 支援的 Linux 核心程式版本名稱
  • 安裝 Linux
  • 開始之前
  • 安裝步驟
  • Solaris 的基本需求
  • 安裝 Solaris 版
  • 開始之前
  • 安裝步驟
  • Windows 2000 的基本需求
  • 安裝 Windows 2000
  • 開始之前
  • 安裝步驟

  • Dispatcher 元件

  • 快速入門配置
  • 您將需要的項目
  • 如何準備
  • 配置 Dispatcher 元件
  • 使用指令行來配置
  • 測試您的配置
  • 使用圖形式使用者介面 (GUI) 來配置
  • 配置精靈
  • 叢集、埠、伺服器等配置的類型
  • 規劃 Dispatcher 元件
  • 硬體與軟體的基本需求
  • 規劃考量
  • 轉送方法
  • Dispatcher 的 MAC 層次遞送 (mac 轉送方法)
  • Dispatcher 的 NAT/NAPT (nat 轉送方法)
  • Dispatcher 的根據內容遞送 (cbr 轉送方法)
  • 配置 Dispatcher 之 nat 或 cbr 轉送方法的範例步驟
  • 伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器
  • 使用 HTTP/HTTPS 通告器進行伺服器分割
  • 將實體伺服器配置到邏輯伺服器中的範例
  • 高可用性
  • 簡單高可用性
  • 共同高可用性
  • 配置 Dispatcher 元件
  • 配置作業的概觀
  • 配置方法
  • 指令行
  • Script
  • GUI
  • 使用配置精靈來配置
  • 設定 Dispatcher 機器
  • 步驟 1. 啟動伺服器功能
  • 步驟 2. 啟動執行器功能
  • 步驟 3. 定義非轉送的位址 (如果與主電腦名稱不同)
  • 步驟 4. 定義叢集及設定叢集選項
  • 步驟 5. 設定網路介面卡的別名
  • 步驟 6. 定義埠及設定埠選項
  • 步驟 7. 定義平衡負載伺服器機器
  • 步驟 8. 啟動管理程式功能 (選用性的)
  • 步驟 9. 啟動通告器功能 (選用性的)
  • 步驟 10. 依需要設定叢集比例
  • 設定伺服器機器以進行平衡負載
  • 步驟 1. 設定迴圈裝置別名
  • 步驟 2. 檢查額外路徑
  • 步驟 3. 刪除任一額外路徑
  • 步驟 4. 驗證伺服器是否已適當地配置
  • 安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)

  • Content Based Routing (CBR) 元件

  • 快速入門配置
  • 您將需要的項目
  • 如何準備
  • 配置 CBR 元件
  • 使用指令行來配置
  • 測試您的配置
  • 使用圖形式使用者介面 (GUI) 來配置
  • 使用配置精靈來配置
  • 叢集、埠、伺服器等配置的類型
  • 規劃 Content Based Routing 元件
  • 硬體與軟體的基本需求
  • 規劃考量
  • 平衡負載不同類型內容的要求
  • 分割您站台的內容以加快回應時間
  • 提供備份的 Web 伺服器內容
  • 使用多重 Caching Proxy 程序來增進 CPU 使用率
  • 使用規則型平衡負載及 CBR
  • 平衡負載完全安全 (SSL) 連線
  • 平衡負載 SSL 中的 client-to-proxy 及 HTTP 中的 proxy-to-serve
  • 平衡負載 WebSphere Application Servers (WAS)
  • 配置 Content Based Routing 元件
  • 配置作業的概觀
  • 配置方法
  • 指令行
  • Script
  • GUI
  • 配置精靈
  • 設定 CBR 機器
  • 步驟 1. 配置 Caching Proxy 以使用 CBR
  • 步驟 2. 啟動伺服器功能
  • 步驟 3. 啟動執行器功能
  • 步驟 4. 定義叢集及設定叢集選項
  • 步驟 5. 為網路介面卡設定別名 (選用性的)
  • 步驟 6. 定義埠及設定埠選項
  • 步驟 7. 定義已平衡負載的伺服器機器
  • 步驟 8. 新增規則至您的配置中
  • 步驟 9. 為您的規則新增伺服器
  • 步驟 10. 啟動管理程式功能 (選用性的)
  • 步驟 11. 啟動通告器功能 (選用性的)
  • 步驟 12. 依需要設定叢集比例
  • 步驟 13. 啟動 Caching Proxy
  • CBR 配置範例

  • Site Selector 元件

  • 快速入門配置
  • 您將需要的項目
  • 如何準備
  • 配置 Site Selector 元件
  • 使用指令行來配置
  • 測試您的配置
  • 使用圖形式使用者介面 (GUI) 來配置
  • 使用配置精靈來配置
  • 規劃 Site Selector 元件
  • 硬體與軟體的基本需求
  • 規劃考量
  • TTL 注意事項
  • 使用「網路接近」特性
  • 配置 Site Selector 元件
  • 配置作業的概觀
  • 配置方法
  • 指令行
  • Script
  • GUI
  • 配置精靈
  • 設定 Site Selector 機器
  • 步驟 1. 啟動伺服器功能
  • 步驟 2. 啟動名稱伺服器
  • 步驟 3. 定義站台名稱並設定站台名稱選項
  • 步驟 4. 定義平衡負載的伺服器機器
  • 步驟 5. 啟動管理程式功能 (選用性的)
  • 步驟 6. 啟動通告器功能 (選用性的)
  • 步驟 7. 定義系統測量單位 (選用性的)
  • 步驟 8. 依需要設定站台名稱比例
  • 設定伺服器機器以進行平衡負載

  • Cisco CSS Controller 元件

  • 快速入門配置
  • 您將需要的項目
  • 如何準備
  • 配置 Cisco CSS Controller 元件
  • 使用指令行來配置
  • 測試您的配置
  • 使用圖形式使用者介面 (GUI) 來配置
  • 規劃 Cisco CSS Controller 元件
  • 硬體與軟體的基本需求
  • 硬體基本需求
  • 軟體基本需求
  • 規劃考量
  • 在網路中設置顧問
  • 高可用性
  • 計算加權值
  • 問題判定
  • 配置 Cisco CSS Controller 元件
  • 配置作業的概觀
  • 配置方法
  • 指令行
  • XML
  • GUI
  • 設定 Controller for Cisco CSS Switches 機器
  • 步驟 1. 啟動伺服器功能
  • 步驟 2. 啟動指令行介面
  • 步驟 3. 配置顧問
  • 步驟 3. 配置 ownercontent
  • 步驟 4. 驗證服務程式已正確定義
  • 步驟 5. 配置測量單位
  • 步驟 6. 啟動顧問
  • 步驟 7. 啟動 Metric Server (選用性的)
  • 步驟 8. 配置高可用性 (選用性的)
  • 測試您的配置

  • Nortel Alteon Controller 元件

  • 快速入門配置
  • 您將需要的項目
  • 如何準備
  • 配置 Nortel Alteon Controller 元件
  • 使用指令行來配置
  • 測試您的配置
  • 使用圖形式使用者介面 (GUI) 來配置
  • 規劃 Nortel Alteon Controller 元件
  • 硬體與軟體的基本需求
  • 硬體基本需求
  • 軟體基本需求
  • 規劃考量
  • 在網路中設置顧問
  • 交換器上的伺服器屬性 (由控制器設定)
  • 配置備份伺服器
  • 配置群組
  • 高可用性
  • 調整
  • 問題判定
  • 配置 Nortel Alteon Controller 元件
  • 配置作業的概觀
  • 配置方法
  • 指令行
  • XML
  • GUI
  • 設定 Nortel Alteon Controller
  • 步驟 1. 啟動伺服器功能
  • 步驟 2. 啟動指令行介面
  • 步驟 3. 定義 Nortel Alteon Web Switch 顧問
  • 步驟 4. 新增服務程式至交換器顧問
  • 步驟 5. 配置測量單位
  • 步驟 6. 啟動顧問
  • 步驟 7. 配置高可用性 (選用性的)
  • 步驟 8. 啟動 Metric Server (選用性的)
  • 步驟 9. 重新整理 Nortel Alteon Controller 配置
  • 測試您的配置

  • Load Balancer 功能及進階特性

  • Dispatcher、CBR 及 Site Selector 的管理程式、通告器及 Metric Server 等功能
  • 將 Load Balancer 所提供的平衡負載最佳化
  • 狀態資訊所給定的重要性比例
  • 加權
  • 管理程式間隔
  • 感應臨界值
  • 平順指數
  • 使用 script 產生警示或記錄伺服器失敗
  • 通告器
  • 通告器如何運作
  • 啟動及停止通告器
  • 通告器間隔
  • 通告器報告逾時
  • 伺服器的通告器連結逾時及接收逾時
  • 通告器重試
  • 通告器列示
  • 使用要求/回應 (URL) 選項,配置 HTTP 通告器
  • 在雙層 WAN 配置中使用 Self 通告器
  • 建立自行設定 (可自訂的) 通告器
  • WAS 通告器
  • 命名慣例
  • 編譯
  • 執行
  • 必要常式
  • 搜尋次序
  • 命名及路徑
  • 範例通告器
  • Metric Server
  • WLM 限制
  • 先決條件
  • 如何使用 Metric Server
  • 工作量管理程式通告器
  • Metric Server 限制
  • Dispatcher、CBR 及 Site Selector 的進階特性
  • 使用並列伺服器
  • 對於 Dispatcher 元件
  • 對於 CBR 元件
  • 對於 Site Selector 元件
  • 高可用性
  • 配置高可用性
  • 使用通訊檢查訊息及連繫目標的失敗偵測能力
  • 復原策略
  • 使用 script
  • 配置規則型平衡負載
  • 如何評估規則?
  • 根據從屬站 IP 位址來使用規則
  • 根據從屬站埠來使用規則
  • 根據一天的時間來使用規則
  • 依據服務程式類型 (TOS) 使用規則
  • 使用基於每秒連線數的規則
  • 使用基於作用中連線總數的規則
  • 使用基於保留頻寬及共用頻寬的規則
  • 全部測量單位規則
  • 平均測量單位規則
  • 使用永遠為真的規則
  • 根據要求內容來使用規則
  • 埠相關性置換
  • 在您的配置中新增規則
  • 規則的伺服器評估選項
  • Load Balancer 的相關性特性如何運作
  • 停用相關性時的行為
  • 啟用相關性時的行為
  • 跨埠相關性
  • 相關性位址遮罩 (stickymask)
  • 靜止伺服器連線處理
  • 基於從屬站要求內容之規則上的相關性選項
  • 主動 cookie 相關性
  • 被動 cookie 相關性
  • URI 相關性
  • 配置廣域 Dispatcher 支援
  • 指令語法
  • 使用具有 Dispatcher 廣域支援的遠端通告器
  • 配置範例
  • GRE (同屬遞送封裝) 支援
  • 使用外顯鏈結
  • 使用專用網路配置
  • 使用萬用字元叢集來結合伺服器配置
  • 使用萬用字元叢集來平衡防火牆的資料流量
  • 將萬用字元叢集與 Caching Proxy 搭配使用來進行透通式 Proxy
  • 使用萬用字元埠來引導未配置埠的資料傳輸
  • 拒絕服務攻擊偵測
  • 使用二進位記載功能來分析伺服器統計值
  • Cisco CSS Controller 及 Nortel Alteon Controller 的進階特性
  • 並列
  • 高可用性
  • 配置
  • 故障偵測
  • 復原策略
  • 範例
  • 將 Load Balancer 所提供的平衡負載最佳化
  • 給與測量單位資訊的重要性
  • 加權
  • 加權值計算休眠時間
  • 感應臨界值
  • 通告器
  • 通告器如何運作
  • 通告器休眠時間
  • 伺服器的通告器連結逾時及接收逾時
  • 通告器重試
  • 建立自行設定 (可自訂的) 通告器
  • 命名慣例
  • 編譯
  • 執行
  • 必要常式
  • 搜尋次序
  • 命名及路徑
  • 範例通告器
  • Metric Server
  • 先決條件
  • 如何使用 Metric Server
  • 工作量管理程式通告器
  • 使用二進位記載功能來分析伺服器統計值
  • 使用 script 產生警示或記錄伺服器失敗

  • Load Balancer 管理及疑難排解

  • 操作與管理 Load Balancer
  • Load Balancer 的遠端管理
  • 遠端方法呼叫 (RMI)
  • Web 型管理
  • 使用 Load Balancer 日誌
  • 若是 Dispatcher、CBR 及 Site Selector
  • 若是 Cisco CSS Controller 及 Nortel Alteon Controller
  • 使用 Dispatcher 元件
  • 啟動及停止 Dispatcher
  • 使用閒置逾時值
  • 使用 FIN 計數可控制垃圾收集
  • 報告 GUI -- 監督程式功能表選項
  • 搭配使用簡易網路管理通信協定與 Dispatcher 元件
  • 使用 ipchains 或 iptables 來拒絕所有資料傳輸以 (強化) Load Balancer 方框 (於 Linux 上)
  • 使用 Content Based Routing 元件
  • 啟動及停止 CBR
  • 控制 CBR
  • 使用 CBR 日誌
  • 使用 Site Selector 元件
  • 啟動及停止 Site Selector
  • 控制 Site Selector
  • 使用 Site Selector 日誌
  • 使用 Cisco CSS Controller 元件
  • 啟動及停止 Cisco CSS Controller
  • 控制 Cisco CSS Controller
  • 使用 Cisco CSS Controller 日誌
  • 使用 Nortel Alteon Controller 元件
  • 啟動及停止 Nortel Alteon Controller
  • 控制 Nortel Alteon Controller
  • 使用 Nortel Alteon Controller 日誌
  • 使用 Metric Server 元件
  • 啟動及停止 Metric Server
  • 使用 Metric Server 日誌
  • 疑難排解
  • 收集疑難排解資訊
  • 一般資訊 (始終為必要的)
  • 高可用性 (HA) 問題
  • 通告器問題
  • Content based routing 問題
  • 無法找到叢集
  • 所有其它失敗
  • 升級版
  • Java
  • 有用的鏈結
  • 疑難排解表
  • 檢查 Dispatcher 埠號
  • 檢查 CBR 埠號
  • 檢查 Site Selector 埠號
  • 檢查 Cisco CSS Controller 埠號
  • 檢查 Nortel Alteon Controller 埠號
  • 解決常見的問題--Dispatcher
  • 問題:Dispatcher 沒有執行
  • 問題:Dispatcher 及伺服器沒有回應
  • 問題:未平衡 Dispatcher 要求
  • 問題:Dispatcher 高可用性並未運作
  • 問題:無法新增通訊檢查訊息 (Windows 2000)
  • 問題:額外路由 (Windows 2000)
  • 問題:通告器未正確地運作
  • 問題:Dispatcher、Microsoft IIS 及 SSL 並未運作 (Windows 2000)
  • 問題:Dispatcher 與遠端機器的連線
  • 問題:dscontrol 或 lbadmin 指令失敗
  • 問題:嘗試檢視線上說明時出現「找不到檔案...」之錯誤訊息 (Windows 2000)
  • 問題:在 Solaris 2.7 上啟動 dsserver 時出現疑似錯誤訊息
  • 問題:圖形式使用者介面 (GUI) 未正確啟動
  • 問題:若已安裝 Caching Proxy 則執行 Dispatcher 時發生錯誤
  • 問題:圖形式使用者介面 (GUI) 未正確顯示
  • 問題:在 Windows 2000 上,說明視窗有時會隱身在其它已開啟視窗的後面
  • 問題:Load Balancer 無法處理及轉送框架
  • 問題:啟動 Load Balancer 執行器時出現藍色螢幕
  • 問題:偵測路徑會阻礙傳回 Load Balancer 資料傳輸
  • 問題:通告器顯示所有伺服器皆已當機
  • 問題:Load Balancer 的廣域模式下之高可用性無法運作
  • 問題:嘗試載入大型配置檔時 GUI 停止動作 (或出現異常行為)
  • 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
  • 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
  • 問題:更新配置後 lbadmin 便切斷伺服器的連線
  • 問題:IP 位址在遠端連線上並未正確解析
  • 問題:韓文 Load Balancer 介面在 AIX 及 Linux 上顯示重疊或奇怪的字形
  • 問題:在 Windows 上,發出 hostname 之類的指令時,傳回的是別名位址而非本端位址
  • 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
  • 問題:執行 rmmod ibmnd 時發生異常行為 (Linux)
  • 問題:在 Dispatcher 機器上執行指令時,回應時間變慢
  • 問題:SSL 或 HTTPS 通告器未登錄伺服器負載 (使用 mac 轉送時)
  • 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
  • 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
  • 問題:已啟動 Socket 儲存區且 Web 伺服器連結到 0.0.0.0
  • 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
  • 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型
  • 解決常見問題--CBR
  • 問題:CBR 無法執行
  • 問題:cbrcontrol 或 lbadmin 指令失敗
  • 問題:相關要求未經平衡負載
  • 問題:在 Solaris 上,cbrcontrol executor start 指令失敗
  • 問題:語法或配置錯誤
  • 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
  • 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
  • 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
  • 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
  • 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
  • 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
  • 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型
  • 解決常見的問題--Site Selector
  • 問題:Site Selector 沒有執行
  • 問題:Site Selector 無法環繞來自 Solaris 從屬站的資料傳輸
  • 問題:sscontrol 或 lbadmin 指令失敗
  • 問題:ssserver 無法在 Windows 2000 上啟動
  • 問題:具有重複路由的 Site Selector 並未正確地平衡負載
  • 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
  • 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
  • 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
  • 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
  • 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
  • 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
  • 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型
  • 解決常見的問題--Cisco CSS Controller
  • 問題:ccoserver 無法啟動
  • 問題:ccocontrol 或 lbadmin 指令失敗
  • 問題:無法在埠 13099 上建立登錄
  • 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
  • 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
  • 問題:新增顧問時收到連線錯誤
  • 問題:未更新交換器上的加權值
  • 問題:Refresh 指令並未更新顧問配置
  • 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
  • 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
  • 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
  • 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型
  • 解決常見的問題--Nortel Alteon Controller
  • 問題:nalserver 無法啟動
  • 問題:nalcontrol 或 lbadmin 指令失敗
  • 問題:無法在埠 14099 上建立登錄
  • 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
  • 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
  • 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
  • 問題:新增顧問時收到連線錯誤
  • 問題:未更新交換器上的加權值
  • 問題:Refresh 指令並未更新顧問配置
  • 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
  • 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型
  • 解決常見的問題 -- Metric Server
  • 問題:Metric Server在 Windows 2000 上執行 .bat 或 .cmd 使用者測量檔時,出現 IOException
  • 問題:Metric Server 並未向 Load Balancer 機器報告負載
  • 問題:Metric Server 日誌報告需要簽名才能存取代理程式
  • 問題:在 AIX 上,在高負荷情況下執行 Metric Server 時,ps -vg 指令輸出可能會毀損。

  • 指令參照

  • 如何閱讀語法圖
  • 符號及標點符號
  • 參數
  • 語法範例
  • Dispatcher 及 CBR 的指令參照
  • CBR 及 Dispatcher 的配置差異
  • dscontrol advisor -- 控制通告器
  • dscontrol binlog -- 控制二進位日誌檔
  • dscontrol cluster -- 配置叢集
  • dscontrol executor -- 控制執行器
  • dscontrol file -- 管理配置檔
  • dscontrol help -- 顯示或列印這個指令的說明
  • dscontrol highavailability -- 控制高可用性
  • dscontrol host -- 配置遠端機器
  • dscontrol logstatus -- 顯示伺服器日誌設定
  • dscontrol manager -- 控制管理程式
  • dscontrol metric -- 配置系統測量單位
  • dscontrol port -- 配置埠
  • dscontrol rule -- 配置規則
  • dscontrol server -- 配置伺服器
  • dscontrol set -- 配置伺服器日誌
  • dscontrol status -- 顯示管理程式及通告器是否正在執行
  • dscontrol subagent -- 配置 SNMP 子代理程式
  • Site Selector 指令參照
  • sscontrol advisor -- 控制通告器
  • sscontrol file -- 管理配置檔
  • sscontrol help -- 顯示或列印這個指令的說明
  • sscontrol logstatus -- 顯示伺服器日誌設定
  • sscontrol manager -- 控制管理程式
  • sscontrol metric -- 配置系統測量單位
  • sscontrol nameserver -- 控制 NameServer
  • sscontrol rule -- 配置規則
  • sscontrol server -- 配置伺服器
  • sscontrol set -- 配置伺服器日誌
  • sscontrol sitename -- 配置 sitename
  • sscontrol status -- 顯示管理程式及通告器是否正在執行
  • Cisco CSS Controller 的指令參照
  • ccocontrol consultant -- 配置及控制顧問
  • ccocontrol controller -- 管理控制器
  • ccocontrol file -- 管理配置檔
  • ccocontrol help -- 顯示或列印這個指令的說明
  • ccocontrol highavailability -- 控制高可用性
  • ccocontrol metriccollector -- 配置測量單位收集器
  • ccocontrol ownercontent -- 控制擁有者名稱及內容規則
  • ccocontrol service -- 配置服務程式
  • Nortel Alteon Controller 的指令參照
  • nalcontrol consultant -- 配置及控制顧問
  • nalcontrol controller -- 管理控制器
  • nalcontrol file -- 管理配置檔
  • nalcontrol help -- 顯示或列印這個指令的說明
  • nalcontrol highavailability -- 控制高可用性
  • nalcontrol metriccollector -- 配置測量單位收集器
  • nalcontrol server -- 配置伺服器
  • nalcontrol service -- 配置服務

  • 附錄與後記

  • 附錄 A. GUI:一般指示

  • 附錄 B. 內容規則 (型樣) 語法
  • 內容規則 (型樣) 語法:
  • 保留的關鍵字
  • 附錄 C. 配置檔範例
  • 範例 Load Balancer 配置檔
  • Dispatcher 配置檔--AIX、Red Hat Linux 及 Solaris
  • Dispatcher 配置檔--Windows
  • 範例通告器
  • 附錄 D. 使用 Dispatcher、CBR 及 Caching Proxy 的兩層高可用性配置範例
  • 伺服器機器設定
  • 附錄 E. 注意事項
  • 商標
  • 名詞解釋

  • 索引

    1. AIX installp 影像
    2. AIX 安裝指令
    3. Linux 核心程式版本支援表格
    4. Dispatcher 功能的配置作業
    5. 設定 Dispatcher 之迴圈裝置 (lo0) 別名的指令
    6. 刪除 Dispatcher 之額外路徑的指令
    7. CBR 元件的配置作業
    8. 為網路介面卡設定別名的指令
    9. Site Selector 元件的配置作業
    10. Cisco CSS Controller 元件的配置作業
    11. Nortel Alteon Controller 元件的配置作業
    12. Load Balancer 的進階配置作業
    13. Load Balancer 的進階配置作業
    14. Dispatcher 疑難排解表
    15. CBR 疑難排解表
    16. Site Selector 疑難排解表
    17. Controller for Cisco CSS Switches 疑難排解表
    18. Nortel Alteon Controller 疑難排解表
    19. Metric Server 疑難排解表

    1. 使用 Dispatcher 來管理本端伺服器的站台之實體表示法範例
    2. 使用 Dispatcher 及 Metric Server 來管理伺服器的站台範例
    3. 使用 Dispatcher 管理本端及遠端伺服器的站台範例
    4. 使用 CBR 管理本端伺服器之站台的範例
    5. 使用 Site Selector 及 Metric Server 來管理本端與遠端伺服器的站台範例
    6. 使用 Cisco CSS Controller 及 Metric Server 來管理本端服務的站台範例
    7. 使用 Nortel Alteon Controller 來管理本端伺服器的站台範例
    8. 簡單的本端 Dispatcher 配置
    9. 具備單一叢集及 2 個埠的 Dispatcher 配置範例
    10. 配置有兩個叢集且每個叢集都有一個埠之 Dispatcher 範例
    11. 配置有兩個叢集且每個叢集都有 2 個埠的 Dispatcher 範例
    12. Dispatcher 其 nat 或 cbr 轉送方法的使用範例
    13. 使用簡單高可用性的 Dispatcher 的範例
    14. 使用共同高可用性的 Dispatcher 的範例
    15. Dispatcher 機器所需的 IP 位址的範例
    16. 簡單的本端 CBR 配置
    17. 具備單一叢集及 2 個埠的 CBR 配置範例
    18. 配置有兩個叢集且每個叢集都有一個埠之 CBR 範例
    19. 配置有兩個叢集且每個叢集都有 2 個埠 CBR 範例
    20. Dispatcher、CBR 及 WAS 部署作業的配置
    21. AIX、Linux 及 Solaris 的 CBR 配置檔
    22. Windows 2000 的 CBR 配置檔
    23. 簡單的 Site Selector 配置
    24. DNS 環境的範例
    25. 簡單的 Cisco CSS Controller 配置
    26. 將顧問連結至交換器後方的範例
    27. 顧問範例 (具有選用的高可用性友機),配置在交換器之後,而使用者介面在交換器前方
    28. 簡單的 Nortel Alteon Controller 配置
    29. 將顧問連結至交換器後方的範例
    30. 透過交換器前方內部網路來連結的顧問範例
    31. 顧問位於交換器後方而使用者介面位於交換器前方的範例
    32. 配置有備份伺服器的顧問範例
    33. Nortel Alteon Controller 及 Nortel Alteon Web Switch 高可用性的範例
    34. 使用 self 通告器的雙層 WAN 配置範例
    35. 單一 LAN 區段組成的配置範例
    36. 使用本端及遠端伺服器配置的範例
    37. 使用遠端 Load Balancer 的廣域範例配置
    38. 使用支援 GRE 之伺服器平台的廣域範例配置
    39. 使用 Dispatcher 的專用網路的範例
    40. AIX 及 Solaris 的 SNMP 指令
    41. 顯示 GUI 樹狀結構並展開 Dispatcher 元件的圖形式使用者介面 (GUI)
    42. 顯示 GUI 樹狀結構並展開 CBR 元件的圖形式使用者介面 (GUI)
    43. 顯示 GUI 樹狀結構並展開 Site Selector 元件的圖形式使用者介面 (GUI)
    44. 顯示 GUI 樹狀結構並展開 Cisco CSS Controller 元件的圖形式使用者介面 (GUI)
    45. 顯示 GUI 樹狀結構並展開 Nortel Alteon Controller 元件的圖形式使用者介面 (GUI)
    46. 使用 Dispatcher、CBR 及 Caching Proxy 的兩層高可用性配置範例

    關於本書

    本書將說明如何規劃、安裝、配置、 使用及疑難排解 IBM(R)WebSphere(R) Application Server Load Balancer for AIX、Linux、Solaris 及 Windows 2000。 本產品先前稱做 Edge Server Network Dispatcher、SecureWay Network Dispatcher、eNetwork Dispatcher 及 Interactive Network Dispatcher。


    本書讀者

    Load Balancer 管理手冊是針對熟悉作業系統及熟悉提供網際網路服務的有經驗網路及系統管理員而撰寫的。不需要之前使用 Load Balancer 的經驗。

    本書不支援先前版次的 Load Balancer。


    參考資訊

    造訪 Edge Components InfoCenter (ecinfocenter) 網站以取得最新詳細資訊,讓您瞭解如何使用 Load Balancer for Edge Component,來發揮伺服器的最大效能。其中也包含了配置範例及內容。

    Edge Components InfoCenter 網站鏈結到本書的最新版本 (以 HTML 及 PDF 格式表示)。

    如需有關 Load Balancer 最近的更新內容與用法提示,請造訪下列網站支援頁面, 然後按一下 Search for Load Balancer hints and tips。 您可以從 Edge Components InfoCenter 鏈結到這個網站。

    若要存取這些以及相關的網頁,請到列示於 相關的文件及網站 的 URL。


    可存取性

    協助工具特性協助殘障使用者,如行動不便者或視障者,來順利使用軟體產品。 這些是 Load Balancer 中的主要協助工具特性:


    如何傳達您的意見

    您的回應對我們十分重要,因為它有助於我們提供最正確且高品質的資訊。 如果您對本書或其它 Edge 元件文件有任何意見:


    相關的文件及網站


    Load Balancer 簡介

    本篇提供 Load Balancer 及其元件的概觀、可用配置特性的高階說明、 軟硬體需求的清單,以及安裝指示。它含有下列各章:


    Load Balancer 的概觀

    本章將提供 Load Balancer 的概觀,其中包含下列段落:

    如需每一個 Load Balancer 元件提供的配置特性的高階清單,協助您規劃要使用哪些特性來管理您的網路,請參閱管理您的網路:決定要使用哪些 Load Balancer 特性


    何謂 Load Balancer?

    Load Balancer 是一種軟體解決方案,用於將外來的從屬站要求分送給各個伺服器。 它會將 TCP/IP 階段作業要求引導給伺服器群組內不同的伺服器, 藉此來提升伺服器的效能;在這種方式中,可以平衡所有伺服器之間的要求。 這種平衡負載將不會影響到使用者及其它應用程式。Load Balancer 對如下各種應用程式相當有用: E-mail 伺服器、全球資訊網 (World Wide Web) 伺服器、分散式平行資料庫查詢, 以及其它 TCP/IP 應用程式。

    當搭配 Web 伺服器使用時,Load Balancer 可以對尖峰需求的問題, 提供強大、有彈性及可調整的解決方案,使您的站台發揮最大的效能。如果需求量過大,到站訪客無法順利進入時,可用 Load Balancer 自動尋找最佳伺服器來處理進入的要求,進而提高客戶的滿意度以及您的利潤。


    我可以使用哪些 Load Balancer 元件?

    Load Balancer 是由以下五種元件組成,它們可單獨使用,或一起使用而提供更好的平衡負載效果:

    有關 Dispatcher、CBR、Site Selector、Cisco CSS Controller 及 Nortel Alteon Controller 等元件的進一步資訊,請參閱Load Balancer 有哪些元件?


    使用 Load Balancer 有哪些優點?

    連上全球 Internet 的使用者及網路的數目激增,這種快速成長導致規模不足的問題, 進而限制了存取受歡迎站台的使用者數目。

    目前,網路管理者可以各顯神通,以五花八門的手法,努力擴大存取數目。這些方法中, 有一些容許使用者在最初選用的伺服器較慢或未回應時,可以隨機選擇不同的伺服器。 這種方法既費事,又麻煩,效率極差。另一種方法就是標準的循環法, 領域名稱伺服器輪流選取伺服器來處理要求。 這種方法有進步,但是,仍然沒有效率,因為它盲目地轉遞要求, 完全不考慮伺服器的工作負荷。此外,即使伺服器發生故障,要求仍會繼續傳送進來。

    因為需要功能更強大的解決方案,所以產生了 Load Balancer。 比早期解決方案及競爭對手的解決方案功能來得更強。

    可調整規模

    隨著從屬站要求數目的增加,您可以動態地新增伺服器, 如此每天可在數十甚至數百台的伺服器上,提供數千萬個要求的支援。

    有效使用設備

    平衡負載可藉著將標準環繞式方法常見的熱點減至最少,確保每一組伺服器發揮其硬體的最大作用。

    容易整合

    Load Balancer 是使用標準的 TCP/IP 通訊協定。您可以將它新增到現存的網路中, 而不必更動網路設備,易於安裝及配置。

    低的額外資源消耗

    使用簡單 mac 層次轉送方法時,Dispatcher 元件只會觀察從屬站到伺服器的入埠資料流量。 毋需察看伺服器至從屬站的離埠資料流量。與其它應用程式相較下, 將大大地減少對應用程式的影響,因而可以改善網路的效能。

    高可用性

    Dispatcher、Cisco CSS Controller 及 Nortel Alteon Controller 元件提供內建的高可用性,以便在主要伺服器機器發生故障時, 能隨時利用備妥的備份機器,來接管平衡負載的工作。當其中一個伺服器發生故障時, 其他伺服器將繼續服務要求。這將消除任何作為單一故障點的伺服器,因而使得站台高度可用。

    進一步資訊,請參閱何謂高可用性?

    根據內容遞送 (使用 CBR 元件或 Dispatcher 元件)

    搭配 Caching Proxy 時,CBR 元件即能根據所要求的內容,將 HTTP 及 HTTPS (SSL) 要求 proxy 到特定伺服器。 例如,若有一個要求在 URL 的目錄部份包含字串 '/cgi-bin/',而且伺服器名稱為本端伺服器, CBR 便可以將要求引導至特別配置來處理 CGI 要求的一組伺服器中的最佳伺服器。

    Dispatcher 元件亦具備根據內容遞送能力,但它不需安裝 Caching Proxy。 由於 Dispatcher 元件的根據內容遞送作業是在收到封包時於核心程式中執行, 因此其所提供的根據內容遞送快於 CBR 元件。 Dispatcher 元件會針對 HTTP (使用 "內容" 類型規則) 及 HTTPS (使用 SSL 階段作業 ID 相關性) 來執行根據內容遞送。

    註:
    根據 HTTP 要求的內容來平衡負載資料傳輸時, 只有 CBR 元件可對 HTTPS (SSL) 使用內容規則,其間需要解密及重新加密訊息。

    何謂高可用性?

    Dispatcher

    Dispatcher 元件具備內建的高可用性特性,可從網路消除作為單一故障點的 Dispatcher。 這種特性必需使用第二台 Dispatcher 機器, 來監督主要機器, 並在主要機器發生故障時,隨時接管平衡負載的作業。 Dispatcher 還具備共同高可用性,容許兩台機器同為彼此的主要及次要 (備用) 機器。請參閱配置高可用性

    CBR 或 Site Selector

    使用兩層配置且 Dispatcher 機器正平衡負載多重伺服器 (具有 CBR 或 Site Selector) 的資料傳輸時, 您可以針對 Load Balancer 的這些元件達到某種層次的高可用性。

    Cisco CSS Controller 或 Nortel Alteon Controller

    控制器具有高可用性特性,可消除作為單一故障點的控制器。 機器上的控制器可以配置成主要控制器,不同機器上的控制器則可以配置成備份控制器。 備份控制器會監督主要控制器,並等待萬一主要控制器發生故障時,接管提供伺服器加權值給交換器的作業。相關資訊,請參閱高可用性


    此版次中有哪些新特性?

    Load Balancer for IBM WebSphere Application Server 版本 5.0 含有若干新的特性。其中最重要的新特性如下。


    Load Balancer 各項元件的概觀

    本章將提供 Load Balancer 各項元件的概觀,其中包含下列各節:

    如需每一個 Load Balancer 元件提供的配置特性的高階清單,協助您規劃要使用哪些特性來管理您的網路,請參閱管理您的網路:決定要使用哪些 Load Balancer 特性


    Load Balancer 有哪些元件?

    Load Balancer 共有五項元件:Dispatcher、Content Based Routing (CBR)、Site Selector、Cisco CSS Controller 及 Nortel Alteon Controller。 Load Balancer 會依據您的站台配置,來提供您個別或搭配使用這些元件的彈性。 本章將分別提供這些元件的概觀。


    Dispatcher 元件的概觀

    Dispatcher 元件會透過平衡負載及管理軟體的獨特組合, 來平衡您的伺服器之間的資料傳輸。Dispatcher 也可以偵測出發生故障的伺服器,並在轉送資料時繞過該伺服器。 Dispatcher 可支援 HTTP、FTP、SSL、SMTP、NNTP、IMAP、POP3、Telnet 及任何其它 TCP 或無狀態 UDP 型的應用程式。

    所有傳給 Dispatcher 機器的從屬站要求,都會依據某些動態設定的加權值,被引導至「最佳」伺服器。 在處理配置期間,您可以使用加權值的預設值,或變更這些值。

    Dispatcher 提供三種轉送方法 (於埠上指定):

    Dispatcher 元件是穩定且有效管理大規模、可調整之伺服器網路的關鍵。 透過 Dispatcher,您可以將許多個別的伺服器鏈結起來,使之形同單一的虛擬伺服器。 因此,您的站台將以單一 IP 位址出現在全世界面前。Dispatcher 功能在不受領域名稱伺服器的影響下運作;所有要求都將傳送至 Dispatcher 機器的 IP 位址。

    Dispatcher 可為叢集伺服器帶來平衡資料傳輸負載的獨特優點,因而能夠穩定且有效地管理您的站台。

    透過 Dispatcher 管理本端伺服器

    圖 1. 使用 Dispatcher 來管理本端伺服器的站台之實體表示法範例

    使用 Dispatcher 管理本端伺服器的站台之實體呈現

    圖 1顯示使用「乙太網路」配置的站台之實體呈現。 您可在不變更網路設備下,安裝 Dispatcher 機器。在從屬站要求經由 Dispatcher 引導至最佳伺服器後,回應將在沒有 Dispatcher 的參與下,以 MAC 轉送方法直接從伺服器傳送至從屬站。

    使用 Metric Server 來管理伺服器

    圖 2. 使用 Dispatcher 及 Metric Server 來管理伺服器的站台範例

    以 Dispatcher 及 Metric Server 來管理伺服器的站台

    圖 2 說明所有伺服器均位在區域網路中的站台。Dispatcher 元件可用來轉送要求,而 Metric Server 則可用來提供系統負載資訊給 Dispatcher 機器。

    在這個範例中,Metric Server 常駐程式會安裝在每一個後端伺服器上。 您可以將 Metric Server 搭配 Dispatcher 元件或任何其他 Load Balancer 元件來使用。

    透過 Dispatcher 管理本端及遠端伺服器

    圖 3. 使用 Dispatcher 管理本端及遠端伺服器的站台範例

    以 Dispatcher 來管理本端及遠端伺服器的站台

    Dispatcher 中的廣域支援可讓您使用本端伺服器及遠端伺服器 (不同子網路上的伺服器)。 圖 3 所示的配置中,某一本端 Dispatcher (Dispatcher 1) 可當作所有要求的進入點。它會將這些要求在自己的本端伺服器間 (伺服器 A、伺服器 B、伺服器 C) 分送,並分送給遠端 Dispatcher (Dispatcher 2),而後者將平衡負載給其本端伺服器 (伺服器 G、伺服器 H、伺服器 I)。

    當使用 Dispatcher 的 NAT 轉送方法或使用 GRE 支援時,不須在遠端站台 (伺服器 D、伺服器 E 及伺服器 F 所在之處) 使用 Dispatcher,同樣可達成 Dispatcher 廣域支援。 如需進一步資訊,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)GRE (同屬遞送封裝) 支援


    Content Based Routing (CBR) 元件的概觀

    CBR 可搭配 Caching Proxy 將從屬站要求轉遞至指定的 HTTP 或 HTTPS (SSL) 伺服器。 它可讓您處理快取明細, 以低網路頻寬需求,即可獲得較快的速度來擷取 Web 文件。CBR 以及 Caching Proxy 會用指定的規則類型來檢查 HTTP 要求。

    CBR 可讓您指定一組伺服器,以根據符合要求內容的正規表示式來處理要求。 因為 CBR 可讓您針對每種類型的要求來指定多重伺服器, 所以可將要求平衡負載,以獲得最佳的從屬站回應。伺服器群組中若有伺服器發生故障,CBR 也會偵測到, 並停止將要求遞送至該伺服器。CBR 元件所使用的平衡負載演算法,與 Dispatcher 元件所使用的證明演算法相同。

    當 Caching Proxy 收到要求時,會用定義於 CBR 元件中的規則來加以檢查。 如果找到符合的項目,就會選擇與該規則相關的其中一個伺服器來處理要求。 然後 Caching Proxy 會執行其一般的處理程序,以將要求 proxy 至所選擇的伺服器。

    除了高可用性、子代理程式、 廣域及少數其它配置指令以外,CBR 的功能皆與 Dispatcher 相同。

    須先執行 Caching Proxy,之後 CBR 才可平衡負載從屬站要求。

    用 CBR 來管理本端伺服器

    圖 4. 使用 CBR 管理本端伺服器之站台的範例

    以 CBR 來管理本端伺服器的站台

    圖 4 顯示站台的邏輯表示法,其中是以 CBR 來從本端伺服器 proxy 一些內容。CBR 元件會使用 Caching Proxy,根據 URL 的內容,將從屬站要求 (HTTP 或 HTTPS) 轉送給伺服器。


    Site Selector 元件的概觀

    Site Selector 可作為名稱伺服器,搭配網域名稱系統中的其他名稱伺服器,以所收集的測量值與加權值,來平衡負載一組伺服器。 您可以建立站台配置,藉以依據從屬站要求所使用的網域名稱,來平衡負載一組伺服器間的資料傳輸。

    從屬站會向其網路中的名稱伺服器送出解析網域名稱的要求。 名稱伺服器會將此要求轉送給 Site Selector 機器。 Site Selector 接著便將網域名稱解析成 IP 位址,而此位址屬於站台名稱下所配置的某一伺服器。 Site Selector 會將選定伺服器的 IP 位址傳回給名稱伺服器。 名稱伺服器傳回 IP 位址給從屬站。

    Metric Server 是 Load Balancer 的系統監督元件,必須安裝至您配置中每個已平衡負載的伺服器上。 透過 Metric Server,Site Selector 即可監督伺服器的活動層次,偵測伺服器何時負載最小,以及偵測失敗的伺服器。 資料流量可測量伺服器的工作負荷。藉由自行設定系統測量單位 Script 檔,您即可控制用於量測負載的測量類型。 您可以配置 Site Selector 來配合您的環境, 您應考慮的因素如下:存取率、使用者總數及存取類型 (例如,短查詢、長時間執行的查詢,或密集載入 CPU)。

    以 Site Selector 及 Metric Server 來管理本端及遠端的伺服器

    圖 5. 使用 Site Selector 及 Metric Server 來管理本端與遠端伺服器的站台範例

    以 Site Selector 及 Metric Server 來管理伺服器的站台

    圖 5 所示為使用 Site Selector 元件來回答要求的站台。伺服器 1、伺服器 2 及伺服器 3 為本端站台。 伺服器 4、伺服器 5 及伺服器 6 則為遠端站台。

    若某一從屬站向從屬站名稱伺服器送出網域名稱解析要求。 從屬站名稱伺服器會透過 DNS 將要求轉送給 Site Selector 機器 (路徑 1)。 Site Selector 接著會將網域名稱解析成其中一個伺服器的 IP 位址。 之後,Site Selector 會將選定伺服器的 IP 位址傳回給從屬站名稱伺服器。 名稱伺服器再將 IP 位址傳回給從屬站。

    在從屬站收到伺服器的 IP 位址後,從屬站即會把應用程式要求直接遞送到所選定的伺服器 (路徑 2)。

    註:
    在這個範例中,Metric Server 會向 Site Selector 機器提供系統負載資訊。 每一個後端伺服器皆已安裝 Metric Server 代理程式。 搭配使用 Metric Server 與 Site Selector;否則 Site Selector 只能用環繞式選取方法來進行平衡負載。

    Cisco CSS Controller 元件的概觀

    Cisco CSS Controller 搭配 Cisco 的 CSS 11000 系列交換器,即可構成完整的解決方案。 此種合併解決方案將 CSS 11000 系列強大的封包轉送及內容遞送功能, 與 Load Balancer 用以決定服務 (後端伺服器應用程式或資料庫) 可用性與負載資訊的精密自覺演算法相結合。 Cisco CSS Controller 功能會利用 Load Balancer 的加權值計算演算法、標準及自訂的通告器,以及 Metric Server,來決定服務的測量單位、狀況及負載。 藉助這些資訊,Cisco CSS Controller 即可產生服務加權值,傳給 Cisco CSS Switch 以進行最佳服務選取、負載最佳化及容錯。

    Cisco CSS Controller 會追蹤許多基準,包含:

    當 Cisco CSS Switch (不具 Cisco CSS Controller) 要判定內容提供服務的狀況時,它會使用內容要求的回應時間或其它網路基準。 待 Cisco CSS Controller 就位後,這些活動即會從 Cisco CSS Switch 卸載至 Cisco CSS Controller。Cisco CSS Controller 會影響服務的加權值或提供內容的能力, 並在服務重新獲得或喪失可用性時,視需要啟動或暫停服務。

    Cisco CSS Controller:

    加權值將引用至埠上的所有服務中。對任何特定埠而言,系統將依據服務彼此的相對加權值,在服務之間分送要求。 例如,如果有一個服務設定為加權值 10,而另一個為 5,則設定為 10 的服務取得的要求數目是設定為 5 的服務的兩倍。 這些加權值是用 SNMP 來提供給 Cisco CSS Switch。 任何服務,只要它的加權值設得較高,Cisco CSS Switch 便會導引更多要求給該服務。

    圖 6. 使用 Cisco CSS Controller 及 Metric Server 來管理本端服務的站台範例

    以 Cisco CSS Controller 及 Metric Server 來管理服務的站台

    Cisco CSS Controller 搭配使用 Cisco CSS Switch 時,可提供「集兩者之優點」的解決方案,同時兼納全線速的內容交換與精密的應用程式意識、容錯及服務負載最佳化。 Cisco CSS Controller 是 Cisco CSS Switch 與 IBM WebSphere Application Server 之間的整體補充解決方案的一部份。


    Nortel Alteon Controller 元件的概觀

    Nortel Alteon Controller 聯合 Nortel Alteon 系列 Web 交換器來提供一種補充解決方案, 它會將交換器的封包轉送速度及功能與 Load Balancer 的精密自覺演算法結合一起,來決定伺服器加權值。

    Nortel Alteon Controller 可讓您開發自訂的通告器,以更具智慧、應用程式自覺的方式,針對用於部署服務程式的應用程式,進行可用性與負載的評估。

    Metric Server 則可提供系統負載資訊 (例如 CPU 及記憶體使用率資訊) 和組織架構,供您開發自訂的系統負載測量方式。

    Nortel Alteon Controller 會收集許多類型的測量單位資料,來決定 Nortel Alteon Web Switch 所平衡負載的伺服器的加權值,包括:

    Nortel Alteon Controller 使用 SNMP 與交換器通信。配置、狀態及連結資訊是從交換器擷取而來的。 一旦控制器算出伺服器加權值,就會在交換器上設定它們。交換器使用控制器所設定的加權值, 選取最佳的伺服器來處理服務的從屬站要求。

    圖 7. 使用 Nortel Alteon Controller 來管理本端伺服器的站台範例

    以 Nortel Alteon Controller 來管理伺服器的站台

    您可以用瀏覽器、遠端 GUI 或遠端指令行介面,來管理此控制器。

    結合 Nortel Alteon 系列 Web 交換器的 Nortel Alteon Controller,可提供「集兩者之優點」的解決方案, 同時兼納全線速的封包交換與精密的應用程式意識、容錯及伺服器負載最佳化。Nortel Alteon Controller 是 Nortel Alteon 系列 Web 交換器與 IBM WebSphere 之間的補充解決方案的一部份。


    管理您的網路:決定要使用哪些 Load Balancer 特性

    本章將列出 Load Balancer 元件的配置特性,使您可以決定要使用哪些特性來管理網路:

    若需 Load Balancer 高層次的總覽,請參閱Load Balancer 的概觀


    管理程式、通告器及 Metric Server 等功能 (Dispatcher、CBR 及 Site Selector 元件)

    若要使各個伺服器的平衡負載作業最佳化並確保選用「正確」的伺服器,請參閱:

    _ 將 Load Balancer 所提供的平衡負載最佳化

    _ 通告器

    _ Metric Server


    Dispatcher 元件特性

    Dispatcher 可支援伺服器之間 HTTP、FTP、SSL、SMTP、NNTP、IMAP、POP3、Telnet 及任何其它 TCP 或無狀態 UDP 型應用程式的平衡負載。

    遠端管理

    _ 若要從不同於 Load Balancer 所在的機器來執行 Load Balancer 配置,請參閱Load Balancer 的遠端管理

    並列

    _ 若要在要平衡負載之 Web 伺服器所處的同一機器上執行 Dispatcher,請參閱使用並列伺服器

    高可用性

    _ 若要使用 Dispatcher 來移除網路中的單一故障點限制,請參閱簡單高可用性共同高可用性

    主從相關性

    平衡負載 SSL (HTTPS) 資料傳輸時:

    _ 若要確定從屬站使用相同的 SSL 伺服器進行多重連線,請參閱Load Balancer 的相關性特性如何運作

    _ 若要確定從屬站使用相同的伺服器進行 HTTP 及 SSL 資料傳輸,請參閱跨埠相關性

    _ 若要確定從屬站使用相同的伺服器進行多重連線,請參閱Load Balancer 的相關性特性如何運作

    _ 若要確定一群從屬站使用相同的伺服器進行多重連線,請參閱相關性位址遮罩 (stickymask)

    _ 若要從您的配置中移除某一伺服器 (例如,為了進行維護) 而不干擾從屬站資料傳輸,請參閱靜止伺服器連線處理

    規則型平衡負載

    要將從屬站引導至不同的伺服器組以取得相同 web 位址,您可以在 Dispatcher 配置中新增「規則」。 相關資訊,請參閱配置規則型平衡負載

    _ 若要根據從屬站來源 IP 位址來引導從屬站到不同的伺服器組,請參閱根據從屬站 IP 位址來使用規則

    _ 若要根據從屬站埠來引導從屬站到不同的伺服器組,請參閱根據從屬站埠來使用規則

    _ 若要根據一天的時間來引導從屬站到不同的伺服器組,請參閱根據一天的時間來使用規則

    _ 若要根據網路封包中的「服務程式類型 (TOS)」位元來引導從屬站到伺服器,請參閱依據服務程式類型 (TOS) 使用規則

    _ 若要根據站台資料傳輸來引導從屬站到不同的伺服器組:

    _ 使用每秒連線數時,請參閱使用基於每秒連線數的規則

    _ 使用作用中連線總數時,請參閱使用基於作用中連線總數的規則

    _ 保留及共用不同 Web 位址的頻寬時,請參閱使用基於保留頻寬及共用頻寬的規則

    _ 確定已正確測量伺服器組的資料傳輸,請參閱規則的伺服器評估選項

    _ 若要將超出的資料傳輸引導至預設的伺服器組 (例如,會回應「站台忙線」的伺服器),請參閱使用永遠為真的規則

    _ 若要置換從屬站相關性以確定從屬站不會「滯留」於超溢伺服器,請參閱埠相關性置換

    使用 Dispatcher 之 cbr 轉送方法的根據內容遞送

    若要確定 HTTPS (SSL) 從屬站會返回相同的 SSL 伺服器 (根據從屬站要求中的 SSL ID)

    _ 請參閱第 *** 頁。

    若要根據比對從屬站要求之 URL 內容的規則,將 HTTP 從屬站引導至不同的伺服器組,請參閱Dispatcher 的根據內容遞送 (cbr 轉送方法)根據要求內容來使用規則以取得進一步資訊。

    _ 若要分辨特定的 URL 及其服務應用程式,請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器

    _ 若要確定從屬站在多重連線中,使用 Web 伺服器所建立的 cookie 來要求類似的內容時,會傳回相同的伺服器,請參閱被動 cookie 相關性

    _ 若要將 Web 資料傳輸平衡負載到 caching-proxy 伺服器,使唯一的內容可快取到各個伺服器 (藉由消除多重機器上冗餘的內容快取,進而增加站台的大小),請參閱URI 相關性

    比較 Dispatcher 元件的 cbr 轉送方法與 CBR 元件

    使用 Dispatcher 的 cbr 轉送方法時,其優點在於它對從屬站要求的回應速度,將比 CBR 元件來得快。 另外,Dispatcher 的 cbr 轉送需要安裝及使用 Caching Proxy。

    如果您的網路含有完整的安全 SSL (從屬站到伺服器) 資料傳輸時,使用 CBR 元件 (搭配 Caching Proxy) 的優點是它可以處理所需的加密/解密,以便進行根據內容遞送。 對完整的安全連線而言,Dispatcher 的 cbr 轉送僅能配置有 SSL ID 相關性,因為它無法處理加密/解密,藉以在從屬站要求的 URL 上,執行真正的根據內容遞送。

    廣域平衡負載

    _ 若要用 Dispatcher 的廣域特性來平衡負載遠端伺服器,請參閱配置廣域 Dispatcher 支援GRE (同屬遞送封裝) 支援

    註:
    如果遠端站台不支援 GRE,遠端站台即需要額外的 Dispatcher。

    _ 若要用 Dispatcher 的 nat 轉送方法來平衡負載遠端伺服器,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)

    註:
    如果使用 nat 轉送方法,在遠端站台中將需要額外 Dispatcher。

    埠對映

    _ 若要將某一 Web 位址平衡負載給同一機器上的多個伺服器常駐程式,而每一常駐程式負責接收唯一的埠,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)

    在專用網路上設定 Dispatcher

    _ 若要將 Dispatcher 資料傳輸放到不同於從屬站資料傳輸的網路上 (藉由減少外部網路的競爭來增進效能),請參閱使用專用網路配置

    萬用字元叢集及萬用字元埠

    _ 若要將多重 Web 位址合併成單一配置,請參閱使用萬用字元叢集來結合伺服器配置

    _ 若要平衡負載防火牆,請參閱使用萬用字元叢集來平衡防火牆的資料流量

    _ 若要引導所有目的地埠的資料傳輸,請參閱使用萬用字元埠來引導未配置埠的資料傳輸

    "拒絕服務" 攻擊偵測

    _ 若要偵測可能的 "拒絕服務" 攻擊,請參閱拒絕服務攻擊偵測

    二進位記載

    _ 若要分析伺服器資料傳輸量,請參閱使用二進位記載功能來分析伺服器統計值

    警示

    _ 若要在伺服器被標註為開機中或當機時產生警示,請參閱使用 script 產生警示或記錄伺服器失敗


    Content Based Routing (CBR) 元件特性

    CBR 可整合平衡負載與 WebSphere Application Server 的 Caching Proxy,以便將從屬站要求 proxy 到指定的 HTTP 或 HTTPS (SSL) 伺服器。 若要使用 CBR,必須在同一伺服器上安裝及配置 Caching Proxy。 有關如何配置 Caching Proxy 以使用 CBR 的詳細資訊,請參閱步驟 1. 配置 Caching Proxy 以使用 CBR

    透過 CBR 元件 (或 Dispatcher 元件的 cbr 轉送方法),您便可為您的從屬站提供下列好處:

    _ 將不同內容類型的要求平衡負載到伺服器組。(請參閱平衡負載不同類型內容的要求。)

    _ 以最佳方式從 Web 伺服器中區分站台的內容,來增進回應時間。(請參閱分割您站台的內容以加快回應時間。)

    _ 藉由將多重伺服器分派給每種類型的內容,來確保伺服器故障時,從屬站的資料傳輸不致中斷。(請參閱提供備份的 Web 伺服器內容。)

    比較 CBR 元件及 Dispatcher 元件的 cbr 轉送方法

    如果您的網路需要完整的安全 SSL 資料傳輸 (從屬站到伺服器) 時,使用 CBR 元件 (搭配 Caching Proxy) 的優點是,它可以處理 SSL 加密/解密,以便進行根據內容遞送。

    對完整的安全 SSL 連線而言,Dispatcher 的 cbr 轉送僅能配置有 SSL ID 相關性,因為它無法處理加密/解密,藉以在從屬站要求的 URL 上,執行真正的根據內容遞送。

    對 HTTP 資料傳輸而言,使用 Dispatcher 的 cbr 轉送方法時,其優點在於它對從屬站要求的回應速度,將比 CBR 元件來得快。 另外,Dispatcher 的 cbr 轉送需要安裝及使用 Caching Proxy。

    遠端管理

    _ 若要從不同於 Load Balancer 所在的機器來執行 Load Balancer 配置,請參閱Load Balancer 的遠端管理

    並列

    _ CBR 可在正進行平衡負載之伺服器的相同機器上執行。 請參閱使用並列伺服器,以取得進一步資訊。

    具有多重 Caching Proxy 實例的 CBR

    _ 若要藉多重 Caching Proxy 程序來增進 CPU 使用率,請參閱使用多重 Caching Proxy 程序來增進 CPU 使用率

    為 SSL 連線提供根據內容遞送

    若要允許進行根據內容遞送 SSL 資料傳輸:

    _ 兩端皆使用安全連線 (從屬站對 proxy 以及 proxy 對從屬站),請參閱平衡負載完全安全 (SSL) 連線

    _ 僅在從屬站對 proxy 端使用安全連線,請參閱平衡負載 SSL 中的 client-to-proxy 及 HTTP 中的 proxy-to-serve

    伺服器分割

    _ 若要分辨特定的 URL 及其服務應用程式,請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器

    規則型平衡負載

    要將從屬站引導至不同的伺服器組以取得相同 web 位址,您可以在 CBR 配置中新增「規則」。 相關資訊,請參閱配置規則型平衡負載

    _ 若要根據所要求 URL 的內容來引導從屬站到不同的伺服器組,請參閱根據要求內容來使用規則

    _ 若要根據從屬站來源 IP 位址來引導從屬站到不同的伺服器組,請參閱根據從屬站 IP 位址來使用規則

    _ 若要根據一天的時間來引導從屬站到不同的伺服器組,請參閱根據一天的時間來使用規則

    _ 若要根據站台資料傳輸來引導從屬站到不同的伺服器組:

    使用每秒連線數時,請參閱使用基於每秒連線數的規則

    使用作用中連線總數時,請參閱使用基於作用中連線總數的規則

    _ 若要將超出的資料傳輸引導至預設的伺服器組 (例如,會回應「站台忙線」的伺服器),請參閱使用永遠為真的規則

    _ 若要置換從屬站相關性以確定從屬站不會「滯留」於超溢伺服器,請參閱埠相關性置換

    主從相關性

    _ 若要確定從屬站會返回相同的伺服器來進行多重連線,請參閱Load Balancer 的相關性特性如何運作

    _ 若要從您的配置中移除某一伺服器 (例如,為了進行維護) 而不干擾從屬站資料傳輸,請參閱靜止伺服器連線處理

    _ 若要確定從屬站在多重連線中,不依賴 Web 伺服器所建立的 cookie 來要求類似的內容時,會回到相同的伺服器,請參閱主動 cookie 相關性

    _ 若要確定從屬站在多重連線中,使用 Web 伺服器所建立的 cookie 來要求類似的內容時,會回到相同的伺服器,請參閱被動 cookie 相關性

    _ 若要將 Web 資料傳輸平衡負載到 caching-proxy 伺服器,使唯一的內容可快取到各個伺服器 (藉由消除多重機器上冗餘的內容快取,進而增加站台的大小),請參閱URI 相關性

    使用 Dispatcher 及 CBR 的高可用性

    _ 若要用 Dispatcher 以具有 CBR 的兩層配置,在您的網路中移除單一故障點限制,請參閱何謂高可用性?

    二進位記載

    _ 若要分析伺服器資料傳輸量,請參閱使用二進位記載功能來分析伺服器統計值

    警示

    _ 若要在伺服器被標註為開機中或當機時產生警示,請參閱使用 script 產生警示或記錄伺服器失敗


    Site Selector 元件特性

    Site Selector 會針對一組伺服器來平衡負載名稱服務要求。

    遠端管理

    _ 若要從不同於 Load Balancer 所在的機器來執行 Load Balancer 配置,請參閱Load Balancer 的遠端管理

    並列

    _ Site Selector 可在正進行平衡負載之伺服器的相同機器上執行,而不須執行額外的配置步驟。

    高可用性

    _ 假設母項名稱伺服器及正常 DNS 復原方法的正確配置皆已齊備,即可透過「網域名稱系統 (DNS)」方法以多重備援 Site Selector 來提供高可用性。 正常 DNS 復原方法的範例有:重新傳輸查詢及重試區域轉送。

    _ 若要用 Dispatcher 以具有 Site Selector 的兩層配置,在您的網路中移除單一故障點限制,請參閱何謂高可用性?

    主從相關性

    _ 若要確定從屬站使用相同的伺服器進行多重名稱伺服器要求,請參閱Load Balancer 的相關性特性如何運作

    _ 若要確定使用標準 DNS 方法來設定「維持時間 (TTL)」的主從相關性,請參閱TTL 注意事項

    規則型平衡負載

    要將從屬站要求引導至不同的伺服器組以進行網域名稱解析,您可以在 Site Selector 配置中新增「規則」。相關資訊,請參閱配置規則型平衡負載

    _ 若要根據從屬站來源 IP 位址來引導從屬站到不同的伺服器組,請參閱根據從屬站 IP 位址來使用規則

    _ 若要根據一天的時間來引導從屬站到不同的伺服器組,請參閱根據一天的時間來使用規則

    _ 若要根據伺服器組的測量單位負載值來引導從屬站到不同的伺服器組,請參閱:

    全部測量單位規則

    平均測量單位規則

    _ 若要將超出的資料傳輸引導至預設的伺服器組 (例如,會回應「站台忙線」的伺服器),請參閱使用永遠為真的規則

    廣域平衡負載

    Site Selector 同時可在區域網路 (LAN) 或廣域網路 (WAN) 中執行。

    在 WAN 環境下:

    _ 若要使用加權環繞式選取方法,來平衡負載從屬站名稱伺服器要求,其間不需要額外的配置步驟。

    _ 若要考慮從屬站名稱伺服器與提供所要求的應用程式之伺服器 (目的地伺服器) 的網路接近性, 請參閱使用「網路接近」特性

    警示

    _ 若要在伺服器被標註為開機中或當機時產生警示,請參閱使用 script 產生警示或記錄伺服器失敗


    Cisco CSS Controller 元件特性

    Cisco CSS Controller 會使用較大的應用程式及系統意識,來增強 Cisco 交換器的伺服器平衡負載功能。 控制器使用更多的應用程式感應式及系統感應式測量單位,來動態計算伺服器加權值。 加權值是使用 SNMP 來提供給交換器。 交換器處理從屬站要求時,使用加權值會導致伺服器負載最佳化並改善容錯。

    若要使各個伺服器的平衡負載作業最佳化並確保選用「正確」的伺服器,請參閱:

    _ 將 Load Balancer 所提供的平衡負載最佳化

    _ 通告器建立自行設定 (可自訂的) 通告器

    _ Metric Server

    遠端管理

    _ 若要從不同於 Load Balancer 所在的機器來執行 Load Balancer 配置,請參閱Load Balancer 的遠端管理

    並列

    _ Cisco CSS Controller 可在正進行平衡負載之伺服器的相同機器上執行,而不須執行額外的配置步驟。

    高可用性

    _ 若要移除您網路中的單一故障點限制,Cisco CSS Switch 及 Cisco CSS Controller 皆須具備高可用性功能。 對於交換器而言,透過使用 CSS 備援通信協定,可提供高可用性功能。對 Cisco CSS Controller 而言,則使用了專屬通信協定,來達成兩個控制器的快速待命配置。

    有關配置高可用性的進一步資訊,請參閱高可用性

    二進位記載

    _ 若要分析伺服器資料傳輸量,請參閱使用二進位記載功能來分析伺服器統計值

    警示

    _ 若要在伺服器被標註為開機中或當機時產生警示,請參閱使用 script 產生警示或記錄伺服器失敗


    Nortel Alteon Controller 元件特性

    Nortel Alteon Controller 會使用較大的應用程式及系統意識,來增強 Nortel Alteon 交換器的伺服器平衡負載功能。 控制器使用更多的應用程式感應式及系統感應式測量單位,來動態計算伺服器加權值。 加權值是使用 SNMP 來提供給交換器。 交換器處理從屬站要求時,使用加權值會導致伺服器負載最佳化並改善容錯。

    若要使各個伺服器的平衡負載作業最佳化並確保選用「正確」的伺服器,請參閱:

    _ 將 Load Balancer 所提供的平衡負載最佳化

    _ 通告器建立自行設定 (可自訂的) 通告器

    _ Metric Server

    遠端管理

    _ 若要從不同於 Load Balancer 所在的機器來執行 Load Balancer 配置,請參閱Load Balancer 的遠端管理

    並列

    _ Nortel Alteon Controller 可在正進行平衡負載之伺服器的相同機器上執行,而不須執行額外的配置步驟。

    高可用性

    _ 若要移除您網路中的單一故障點限制,Nortel Alteon Web Switch 及 Nortel Alteon Controller 皆須具備高可用性功能。 對交換器而言,透過使用備援通信協定來連接伺服器並提供服務,可提供高可用性功能。 Nortel Alteon Controller 使用容許兩個控制器的快速待命配置的專屬通信協定來提供高可用性。

    有關配置高可用性的進一步資訊,請參閱高可用性

    二進位記載

    _ 若要分析伺服器資料傳輸量,請參閱使用二進位記載功能來分析伺服器統計值

    警示

    _ 若要在伺服器被標註為開機中或當機時產生警示,請參閱使用 script 產生警示或記錄伺服器失敗


    安裝 Load Balancer

    本章將說明 Load Balancer 在 AIX(R)、Linux、Solaris 及 Windows(R) 2000 上的軟硬體基本需求以及安裝作業。 有關使用系統包裝工具時的 Load Balancer 安裝指示,請先遵循下列指示:

    有關使用 Product Setup Program 的安裝指示,請參閱 Edge Components 的概念、規劃與安裝文件。

    註:

    1. 如果您是從前一版進行移轉,請注意 Load Balancer 的安裝目錄結構可能會不同。 您必須確定您的任何配置檔是否都在 ...ibm/edge/lb/servers/configurations/component 目錄中 (其中 component 是 dispatcher、cbr、ss、cco 或 nal)。

    2. 另外,您還須確定自己的任何 script (如 goIdle 及 goStandby) 是否都在 .../ibm/edge/lb/servers/bin 目錄中,以便加以執行。

    3. 所需的 Java(TM) Load Balancer 層次是 1.3.1.x. 的任何版本。為了您的方便,在 WebSphere Application Server Edge Components 光碟片中提供您支援的 JAVA 版本。

      由於某些位在 Load Balancer 機器上的應用程式可能會需要其它版本的 Java,所以當您升級時必須安裝正確版本的 Java。安裝多重版本時,為確定 Load Balancer 元件是否使用了正確的 Java 版本,請執行下列步驟:

      1. 為您的作業系統安裝正確版本的 Java 1.3。
      2. 編輯 Load Balancer Script 檔以使用 Java 1.3。在預設的狀況下,Script 檔是位於下列目錄中:

        Unix 型作業系統
        /usr/bin/<scriptfile>

        Windows 2000
        C:\WINNT\System32\<scriptfile.cmd>

        針對您所升級之 Load Balancer 各個元件,編輯其 Script 檔。 各元件的 Script 檔包括:

        管理
        lbadmin, lbkeys

        Dispatcher
        dsserver, dscontrol, dswizard

        Content Based Routing (CBR)
        cbrserver, cbrcontrol, cbrwizard

        Site Selector
        ssserver, sscontrol, sswizard

        Cisco CSS Controller
        ccoserver, ccocontrol

        Nortel Alteon Controller
        nalserver, nalcontrol
        註:
        在預設的狀況下,這些檔案都是唯讀的;所以您必須先變更它們的許可權,才可儲存變更內容。
      3. 只要 Script 檔中出現 "java" 或 "javaw" 指令之處,請併入一路徑作為前置符號,指出該指令位於 Java 1.3 安裝目錄中。

        例如:在 Windows 2000 上,如果 Java 1.3 是安裝在 C:\Program Files\IBM\Java13\jre\bin 下,請在 Script 檔中變更下列內容,

        從:
        javaw

        變更為:
        C:\Program Files\IBM\Java13\jre\bin\javaw

    AIX 的基本需求

    安裝 AIX 版

    表 1 所列為 Load Balancer 的 installp 影像。

    表 1. AIX installp 影像

    Administration (管理,含訊息) ibmlb.admin.rte ibmlb.msg.<language>.admin
    Base (基本) ibmlb.base.rte
    裝置驅動程式 ibmlb.lb.driver
    License ibmlb.lb.license
    Load Balancer 元件 (含訊息) ibmlb.<component>.rte ibmlb.msg.<language>.lb
    Documentation (文件,含訊息) ibmlb.doc.rte ibmlb.msg.<language>.doc
    Metric Server ibmlb.ms.rte

    其中的 <component> 可以是:disp (Dispatcher)、cbr (CBR)、ss (Site Selector)、 cco (Cisco CSS Controller) 或 nal (Nortel Alteon Controller)。可選用性地選取要安裝的元件。

    而 <language> 則可為下列其中一項:

    開始之前

    如果您已安裝較舊的版本,則在安裝現行版本之前,必須先解除安裝舊的版本。

    首先,確定所有的執行器與伺服器皆已停止。 然後,若要解除安裝整個產品,請輸入 installp -u ibmlb (或之前的名稱,例如,"ibmnd")。如果要解除安裝特定的檔案集,請明確列示那些檔案而非指定套裝軟體名稱。

    在您安裝產品時,可讓您選擇安裝任何或所有下列選項:

    安裝步驟

    請遵循這些步驟,來安裝 Load Balancer for AIX:

    1. 以 Root 身分登入。
    2. 插入產品媒體,或是如果您是從 Web 安裝,則將安裝壓縮檔複製到目錄中。
    3. 安裝「安裝壓縮檔」。建議您最好使用 SMIT 來安裝 Load Balancer for AIX, 因為 SMIT 將確定會自動安裝所有訊息。

      使用 SMIT

      選取
      軟體安裝及維護

      選取
      安裝與更新軟體

      選取
      從最新的可用軟體來安裝及更新

      鍵入
      含有安裝壓縮檔的裝置或目錄

      鍵入
      在「要安裝的 *SOFTWARE」行上,鍵入適當資訊以指定選項 (或選取「清單」)

      按下
      確定

      當指令完成時,請按完成,然後從「跳出」功能表中選取跳出 Smit 或按 F12。 如果使用 SMITTY, 請按 F10,以跳出程式。

      使用指令行:

      如果從 CD 中進行安裝,您必須鍵入下列指令來裝載 CD:

      mkdir /cdrom
      mount -v cdrfs -p -r /dev/cd0 /cdrom
      

      請參閱下表,決定要輸入哪一個指令來為 AIX 安裝想要的 Load Balancer 套裝軟體:

      表 2. AIX 安裝指令

      Administration (管理,含訊息) installp -acXgd device ibmlb.admin.rte ibmlb.msg.<language>.admin
      Base (基本) installp -acXgd device ibmlb.base.rte
      裝置驅動程式 installp -acXgd device ibmlb.lb.driver
      License installp -acXgd device ibmlb.lb.license
      Load Balancer 元件 (含訊息)。 包括:Dispatcher、CBR、Site Selector、Cisco CSS Controller 及 Nortel Alteon Controller installp -acXgd device ibmlb.<component>.rte ibmlb.msg.<language>.lb
      Documents (含訊息) installp -acXgd device ibmlb.doc.rte ibmlb.msg.<language>.lb
      Metric Server installp -acXgd device ibmlb.ms.rte

      其中 device 是:

      確定摘要中的結果直欄含有 SUCCESS, 表示已順利地安裝 (引用) Load Balancer 的每一個部份。 除非已順利地引用您想要安裝的所有部份, 否則請勿繼續。

      註:
      如果要產生任何 installp 壓縮檔中的檔案集列示, 包括所有可用的訊息目錄,請鍵入
      installp -ld device 
      

      其中 device 是:

      • /cdrom,如果您是從 CD 中進行安裝的話。
      • /dir (含有安裝壓縮檔的目錄),如果您是從檔案系統中進行安裝的話。

      欲卸載 CD 時,請鍵入:

      unmount /cdrom
      
    4. 若要驗證產品是否已安裝妥當。請鍵入下列指令:
      lslpp -h | grep ibmlb
      

      如果您安裝了整個產品,此指令會傳回下列訊息:

      ibmlb.admin.rte
      ibmlb.base.rte
      ibmlb.doc.rte
      ibmlb.ms.rte
      ibmlb.msg.<language>.admin.rte
      ibmlb.msg.<language>.doc
      ibmlb.msg.<language>.lb.rte
      ibmlb.lb.driver
      ibmlb.lb.license
      ibmlb.<component>.rte
       
      

    Load Balancer 的安裝路徑包括:

    若要使用「遠端方法呼叫 (RMI)」,來遠端管理 Load Balancer, 您將需要在從屬站上安裝管理、基本、元件及軟體授權套裝軟體。

    如需 RMI 的相關資訊,請參閱遠端方法呼叫 (RMI)


    Red Hat Linux、SuSE Linux 或 SuSE SLES Linux 的基本需求


    表 3. Linux 核心程式版本支援表格

    作業系統 核心程式版本
    Red Hat 進階伺服器 2.1 2.4.9-e.3, 2.4.9-e.3smp, 2.4.9-e.3enterprise
    SuSE 7.3 Professional 2.4.10-4GB, 2.4.10-64GB-SMP, 2.4.16-4GB, 2.4.16-64GB-SMP
    SuSE 7.0 SLES 2.4.7-4GB, 2.4.7-64GB

    支援的 Linux 核心程式版本名稱

    Load Balancer 支援表 3中所列的核心程式版本名稱。 因此,如果您使用已修補的核心程式,則名稱必須符合表格中的名稱。 另一個選擇方案就是使用符號名稱 "ibmnd" 建立 Load Balancer 核心程式模組的符號鏈結。若要建立符號名稱,請從指令提示發出下列指令:

    ln -s /opt/ibm/edge/lb/servers/bin/ibmnd-a.b.c-xy
      /opt/ibm/edge/lb/servers/bin/ibmnd
     
    

    例如,如果您正在使用 RedHat 2.4.7-10 核心程式,且已對 ARP 修正程式修補了它, 則在您完成編譯及啟動新的修補核心程式時,核心程式的名稱可能是 2.4.7-10-arpfix。 因此,指令 "uname -r" 將傳回 "2.4.7-10-arpfix。" 在這種情況中, 我們將無法載入 Load Balancer 核心程式模組,因為名稱變更了。但是, 藉由將 ibmnd-2.4.7-10 的符號鏈結建立成 ibmnd,我們將強迫載入 2.4.7-10 的核心程式模組,即使名稱不符,也是如此。請小心, 如果您升級到新的核心程式版本且忘了符號鏈結存在,可能會導致執行錯誤。

    進一步資訊,請參閱安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)

    安裝 Linux

    本節將說明如何使用產品 CD,將 Load Balancer 安裝至 Red Hat Linux 或 SuSE Linux 上。

    開始之前

    在開始安裝程序之前,請確定您具有可安裝軟體的 Root 權限。

    如果您已安裝較舊的版本,則在安裝現行版本之前,必須先解除舊版的安裝。

    首先,確定所有的執行器與伺服器皆已停止。 然後,若要解除安裝整個產品,請輸入 rpm -e pkgname。 當解除安裝時,請反轉安裝套裝軟體時所用的次序, 以確定管理套裝軟體是最後一個要解除安裝的套裝軟體。

    安裝步驟

    要安裝 Load Balancer 時,請進行下列動作:

    1. 準備安裝。
    2. 若要驗證產品是否已安裝妥當。請鍵入下列指令:

      rpm -qa | grep ibmlb

      若安裝整個產品,應會產生一個報表,如下所示:

    若要使用「遠端方法呼叫 (RMI)」,來遠端管理 Load Balancer, 您將需要在從屬站上安裝管理、基本、元件及軟體授權套裝軟體。

    如需 RMI 的相關資訊,請參閱遠端方法呼叫 (RMI)


    Solaris 的基本需求

    安裝 Solaris 版

    本段將說明如何使用產品光碟片在 Solaris 上安裝 Load Balancer。

    開始之前

    在開始安裝程序之前,請確定您具有可安裝軟體的 Root 權限。

    如果您已安裝較舊的版本,則在安裝現行版本之前,必須先解除舊版的安裝。 首先,請確定您已停止執行器及伺服器。 然後,若要解除安裝 Load Balancer,請輸入 pkgrm pkgname

    安裝步驟

    要安裝 Load Balancer 時,請進行下列動作:

    1. 準備安裝。

      在指令提示中,鍵入 pkgadd -d pathname, 其中 pathname 是光碟機的裝置名稱,或是套裝軟體所在之硬碟機上的目錄;例如,pkgadd -d /cdrom/cdrom0/

      將列出套裝軟體,以供您安裝。包括:

      如果您要安裝所有的套裝軟體,請直接鍵入 『all』,並按 Return 鍵。 如果只想安裝部份元件,請輸入對應於所要安裝之套裝軟體的名稱 (以空格或逗點隔開),然後按 Return 鍵。 程式可能會提示您變更現存目錄或檔案上的許可權。 直接按 Return 鍵,或回答 『Yes』。您必須安裝必備套裝軟體 (因為它是按字母順序來安裝,而不是以必備條件順序來安裝)。 如果輸入 『all』,就只要在每個提示下回答 『yes』,如此便可順利完成安裝。

      所有的套裝軟體皆相依於共通的 ND 套裝軟體,ibmlbadm。 此共通的套裝軟體必須隨任何其它的套裝軟體一起安裝。

      例如,如果只想安裝 Dispatcher 元件以及說明文件與 Metric Server,您必須安裝: ibmdisp、ibmlblic、ibmlbbase、ibmlbadm、ibmlbdoc 及 ibmlbms。

      若要使用「遠端方法呼叫 (RMI)」,來遠端管理 Load Balancer, 您將需要在從屬站上安裝管理、基本、元件及軟體授權套裝軟體。

      如需 RMI 的相關資訊,請參閱遠端方法呼叫 (RMI)

      Load Balancer 元件會常駐在 /opt/ibm/edge/lb/servers 安裝目錄中。

    2. 所安裝的 Administration 會常駐在目錄 /opt/ibm/edge/lb/admin
    3. 所安裝的 Metric Server 會常駐在目錄 /opt/ibm/edge/lb/ms
    4. 所安裝的說明文件會常駐在目錄 /opt/ibm/edge/lb/documentation
    5. 若要驗證產品是否已安裝妥當。發出下列指令:pkginfo | grep ibm

    Windows 2000 的基本需求

    安裝 Windows 2000

    本節將說明如何使用產品 CD 將 Load Balancer 安裝在 Windows 2000 上。

    安裝作業套裝軟體

    您可以選擇所要安裝的套裝軟體。

    包括:

    若要使用「遠端方法呼叫 (RMI)」,來遠端管理 Load Balancer, 您將需要在從屬站上安裝管理、基本、元件及軟體授權套裝軟體。

    如需 RMI 的相關資訊,請參閱遠端方法呼叫 (RMI)

    開始之前

    下列支援 Windows 2000 版的 Load Balancer:

    註:
    Windows 2000 版的 Load Balancer 將無法在其它版的 Windows 上執行。

    限制:Windows 2000 版的 Load Balancer 無法安裝至裝有 IBM Firewall 的相同機器上。

    在開始安裝之前,請確定您已用「管理者」身分或以具有管理專用權的使用者身分登入。

    如果您已安裝較舊的版本,則在安裝現行版本之前,必須先解除舊版的安裝。

    若要使用新增/移除程式來進行解除安裝,請執行下列步驟:

    1. 按一下開始->設定->控制台
    2. 按兩下新增/移除程式
    3. 選取 Load Balancer (或之前的名稱,例如,Network Dispatcher)
    4. 按一下變更/移除按鈕

    安裝步驟

    要安裝 Load Balancer 時,請進行下列動作:

    1. 將 Load Balancer 光碟片插入光碟機中,即自動出現安裝視窗。
    2. 只有當 CD 沒有自動在電腦上執行時,才需要使用下列步驟。 使用您的滑鼠,按一下滑鼠左鍵來執行這些作業:
    3. 選取您要用來讀取安裝處理的語言
    4. 按一下確定
    5. 遵循安裝程式的指示來執行。
    6. 如果您想要變更磁碟機或目錄目的地,請按一下瀏覽
    7. 您可以選取「所有 Load Balancer 產品」或「您選擇的元件」。
    8. 在完成安裝後,將有一則訊息告訴您,在使用 Load Balancer 前先重新啟動系統。您必須比照執行以確定所有檔案皆已安裝,且 IBMLBPATH 環境變數已新增到登錄中。

    Load Balancer 的安裝路徑包括:


    Dispatcher 元件

    本篇提供快速入門配置的相關資訊、規劃注意事項,以及說明配置 Load Balancer Dispatcher 元件的方法。 它含有下列各章:


    快速入門配置

    此快速入門範例將示範如何以 Dispatcher 元件的 mac 轉送方法,來配置三個本端附加的工作站,以便平衡負載兩個 Web 伺服器之間的 Web 資料傳輸。 對平衡任何其它的 TCP 或沒有狀態的 UDP 應用程式資料傳輸而言,配置基本上相同。

    註:
    使用 AIX、Linux 或 Solaris 版的 Dispatcher 時,只需使用兩個工作站 (而 Dispatcher 位在其中一個 Web 伺服器工作站上) 即可完成配置。 這代表並置配置。有關設定更複雜的配置程序,請參閱設定 Dispatcher 機器

    圖 8. 簡單的本端 Dispatcher 配置

    此圖形所示為「從屬站」、Internet 雲團、Load Balancer 機器及兩個具有已識別位址的本端附加伺服器。

    MAC 轉送是預設的轉送正向方法,其間 Dispatcher 會將進入的要求平衡負載至伺服器,伺服器再將回應直接傳回到從屬站。 有關 Dispatcher 之 MAC 轉送方法的進一步資訊,請參閱Dispatcher 的 MAC 層次遞送 (mac 轉送方法)


    您將需要的項目

    若要進行快速入門範例,則需要三個工作站及四個 IP 位址。其中一個工作站要用來當作 Dispatcher;另外兩個則用來當作 Web 伺服器。 每一個 Web 伺服器都需要一個 IP 位址。 Dispatcher 工作站需要兩個位址:非轉送的位址 (NFA) 及您提供給從屬站以存取網站的叢集位址 (用來平衡負載)。

    註:
    此 NFA 就是 hostname 指令所傳回的位址。 此位址是供管理之用,例如遠端配置。

    如何準備

    1. 對於此本端附加的配置範例而言,設定您的工作站,使它們位在相同的 LAN 區段上。 確定三台機器之間的網路資料傳輸不必經由任何路由器或橋接器來傳遞。(有關如何以遠端伺服器來設定配置的詳細資訊,請參閱配置廣域 Dispatcher 支援。)
    2. 配置三個工作站的網路卡。 在此範例中,我們假設您有下列網路配置:
      工作站 名稱 IP 位址
      1 server1.intersplash.com 9.47.47.101
      2 server2.intersplash.com 9.47.47.102
      3 server3.intersplash.com 9.47.47.103
      網路遮罩 = 255.255.255.0

      每一個工作站都只包含一個標準的「乙太網路」網路介面卡。

    3. 確定 server1.intersplash.com 可以 ping 到 server2.intersplash.com 及 server3.intersplash.com。
    4. 確定 server2.intersplash.com 及 server3.intersplash.com 可以 ping 到 server1.intersplash.com。
    5. 確定兩個 Web 伺服器 (伺服器 2 及伺服器 3) 上的內容都相同。 此動作可藉由複製兩個工作站上的資料、 使用共用檔案系統如 NFS、AFS(R) 或 DFS(TM),或藉由適合您的站台的任何其它方法來完成。
    6. 確定 server2.intersplash.com 及 server3.intersplash.com 上的 Web 伺服器都可運作。 使用 web 瀏覽器直接從 http://server2.intersplash.comhttp://server3.intersplash.com 要求網頁。
    7. 對這個 LAN 區段取得另一個有效的 IP 位址。這是您對要存取您的站台的從屬站提供的位址。 我們將在本例中使用:
      Name= www.Intersplash.com
      IP=9.47.47.104
      
    8. 配置兩個 Web 伺服器工作站,以接受 www.intersplash.com 的資料傳輸。

      新增 www.intersplash.com 的別名到 server2.intersplash.com 和 server3.intersplash.com 上的迴圈介面。

    9. 刪除為迴圈介面建立別名時所可能建立的額外路由。請參閱步驟 2. 檢查額外路徑

      您現在已經完成了兩個 web 伺服器工作站所需的所有配置步驟。


    配置 Dispatcher 元件

    有了 Dispatcher,您就可以用指令行、配置精靈或圖形式使用者介面 (GUI) 來建立配置。

    註:
    參數值須以英文字元來鍵入。唯一的例外是主電腦名稱與檔名此兩者的參數值。

    使用指令行來配置

    如果您要使用指令行,請遵循下列步驟:

    1. 在 Dispatcher 上啟動 dsserver:

    2. 啟動 Dispatcher 的執行器功能:

      dscontrol executor start

    3. 新增叢集位址到 Dispatcher 配置:

      dscontrol cluster add www.Intersplash.com

    4. 新增 HTTP 通訊協定埠到 Dispatcher 配置:

      dscontrol port add www.Intersplash.com:80

    5. 將每一個 Web 伺服器新增到 Dispatcher 配置中:

      dscontrol server add www.Intersplash.com:80:server2.intersplash.com

      dscontrol server add www.Intersplash.com:80:server3.intersplash.com

    6. 配置工作站來接收叢集位址的資料傳輸:

      dscontrol executor configure www.Intersplash.com

    7. 啟動 Dispatcher 的管理程式功能:

      dscontrol manager start

      Dispatcher 現在將根據伺服器的效能來執行平衡負載。

    8. 啟動 Dispatcher 的通告器功能:

      dscontrol advisor start http 80

      Dispatcher 現在會確定從屬站要求並沒有傳送到失敗的 Web 伺服器。

    您具備本端附加伺服器的基本配置現在已經完成。

    測試您的配置

    測試配置是否可運作。

    1. 從 Web 瀏覽器跳至 http://www.Intersplash.com 位置。如果出現網頁,則表示全部可運作。
    2. 在 Web 瀏覽器中重新載入網頁。
    3. 查看下列指令的結果:dscontrol server report www.Intersplash.com:80:。 這兩個伺服器的連線總數直欄應加總為 『2』。

    使用圖形式使用者介面 (GUI) 來配置

    如需使用 Dispatcher GUI 的相關資訊,請參閱GUI附錄 A, GUI:一般指示

    配置精靈

    如需使用配置精靈的相關資訊,請參閱使用配置精靈來配置


    叢集、埠、伺服器等配置的類型

    可配置 Load Balancer 來支援您站台的方法有許多種。如果您對所有您的客戶將連接的站台, 僅具有一個主電腦名稱,則您可以定義伺服器的單一叢集。對於其中每一個伺服器, 請配置 Load Balancer 藉以通信的埠。請參閱圖 9

    圖 9. 具備單一叢集及 2 個埠的 Dispatcher 配置範例

    簡單配置

    本例中的 Dispatcher 元件,有一個叢集是在 www.productworks.com 所定義。 這個叢集有兩個埠: HTTP 的埠 80 及 SSL 的埠 443。當從屬站對 http://www.productworks.com (埠 80) 發出要求時所連接的伺服器, 與從屬站對 https://www.productworks.com (埠 443) 發出要求時所連接的伺服器不同。

    如果您有一個非常大的站台,它具有許多專門用於每一個支援的通訊協定的伺服器, 則其它配置 Load Balancer 的方法可能較合適。在這個情況下, 您可能想要對每一個具有單一埠,但有多個伺服器的通訊協定來定義叢集, 如圖 10 中所示一般。

    圖 10. 配置有兩個叢集且每個叢集都有一個埠之 Dispatcher 範例

    具有兩個叢集且每個叢集都有單一埠的配置

    對於本例中的 Dispatcher 元件,我們定義了兩個叢集:埠 80 (HTTP) 的 www.productworks.com 以及埠 443 (SSL) 的 www.testworks.com。

    若您的站台主控數個公司或部門的內容,且它們都以不同 URL 進入您的站台,則可能需要使用第三種方法來配置 Load Balancer。 此時,您最好先為每一公司或部門定義一叢集,然後定義任何您想要在該 URL 中接收連線的埠,如圖 11 中所示。

    圖 11. 配置有兩個叢集且每個叢集都有 2 個埠的 Dispatcher 範例

    具有兩個叢集且每個叢集都有兩個埠的配置

    對本例中的 Dispatcher 元件而言,我們定義了兩個叢集,且各叢集在 www.productworks.com 及 www.testworks.com 等站台分別具有埠 80 (HTTP) 以及埠 23 (Telnet)。


    規劃 Dispatcher 元件

    本章將說明在安裝與配置 Dispatcher 元件之前,網路規劃者應該考慮的事項。

    本章包括下列各節:

    註:
    就先前的版本而言,當產品為 Network Dispatcher 時,Dispatcher 控制指令的名稱是 ndcontrol。 此 Dispatcher 控制指令的名稱目前已改成 dscontrol

    硬體與軟體的基本需求

    平台基本需求:


    規劃考量

    Dispatcher 是由下列功能所組成:

    Dispatcher 的三個主要功能 (執行器、管理程式及通告器) 會互動, 以平衡及配送伺服器之間的進入要求。除了平衡負載相關要求外,執行器還會監督新連線、作用中連線及已完成連線的數目。 執行器還會執行已完成或重設連線的垃圾收集,並提供此類資訊給管理程式。

    管理程式會收集來自執行器、通告器及系統監督程式 (諸如 Metric Server) 的資訊。 依據管理程式所收到的資訊,它將調整伺服器機器在每一個埠上的加權值, 並提供執行器在平衡新連線時所使用的新加權值。

    通告器將監督已指定的埠上的每一個伺服器,來判斷伺服器的回應時間及可用性, 然後提供這個資訊給管理程式。通告器也會監督伺服器在開機中或已關機。 在沒有管理程式及通告器的情況下,執行器將依據目前的伺服器加權值,執行循環排程。


    轉送方法

    透過 Dispatcher,您可以從埠層次所指定的下列三種轉送方法中擇一使用: MAC 轉送、NAT/NAPT 轉送或 CBR (根據內容遞送) 轉送。

    Dispatcher 的 MAC 層次遞送 (mac 轉送方法)

    使用 Dispatcher 的 MAC 轉送方法 (預設轉送方法) 時,Dispatcher 會將外來要求平衡載入到選取的伺服器,而此伺服器會將回應直接傳回給從屬站,其間不再涉及 Dispatcher。 在此種轉送方法下,Dispatcher 只會查看入埠的從屬站到伺服器流程。 毋需察看伺服器至從屬站的離埠資料流量。如此可大幅減少對應用程式的影響,進而改善網路的效能。

    使用 dscontrol port add cluster:port method value 指令來新增埠時,即可選取此種轉送方法。 預設的轉送方法值是 mac。您只能在新增埠時,才可指定 method 參數。 一旦新增了埠後,您就不能再變更轉送方法的設定。 相關資訊,請參閱dscontrol port -- 配置埠

    Dispatcher 的 NAT/NAPT (nat 轉送方法)

    使用 Dispatcher 的網址轉換 (NAT) 或網址埠轉換 (NAPT) 功能,來移除欲設放在本端附加網路中經平衡負載之伺服器的限制。 當您想將伺服器設放在遠端位置時,可使用 NAT 轉送方法技術而非使用 GRE/WAN 封裝技術。 您還可使用 NAPT 特性,來存取常駐於各個經平衡負載之伺服器機器上的多個伺服器常駐程式,而各個常駐程式分別負責接收一個唯一的埠。

    您可以用兩種不同的方法來配置具有多重常駐程式的伺服器:

    此應用程式可與較高層次的應用程式通信協定配合使用,如 HTTP、SSL、IMAP、POP3、NNTP、SMTP、Telnet 等。

    限制:

    若要實行 NAT/NAPT (另請參閱配置 Dispatcher 之 nat 或 cbr 轉送方法的範例步驟):

    Dispatcher 的根據內容遞送 (cbr 轉送方法)

    Dispatcher 元件可讓您針對 HTTP (使用「內容」類型規則) 及 HTTPS (使用 SSL 階段作業 ID 相關性) 來執行根據內容遞送,而不需使用 Caching Proxy。 對 HTTP 及 HTTPS 資料傳輸而言,Dispatcher 元件的 cbr 轉送方法所提供的根據內容遞送,比需要 Caching Proxy 的 CBR 元件更快。

    若是 HTTP:Dispatcher 的根據內容遞送 的伺服器選取是以 URL 或 HTTP 表頭的內容為依據。 它是使用「內容」類型規則來配置。 配置內容規則時,請為此規則指定搜尋字串 "pattern" 以及一組伺服器。 處理新的外來要求時,此規則會將所指定的字串,與從屬站的 URL 或從屬站要求中所指定的 HTTP 表頭加以比較。

    如果 Dispatcher 在從屬站要求中找到此字串,Dispatcher 即會轉送該要求給規則中所列的伺服器之一。 Dispatcher 接著會將來自伺服器的回應資料,傳回給從屬站 ("cbr" 轉送方法)。

    如果 Dispatcher 未在從屬站要求中找到該字串,Dispatcher 將不會選取規則所列的伺服器。

    註:
    內容規則是在 Dispatcher 元件中配置,其方法與 CBR 元件中的配置相同。 Dispatcher 可以使用內容規則來進行 HTTP 資料傳輸。 不過,CBR 元件則可用內容規則進行 HTTP 及 HTTPS (SSL) 兩種資料傳輸。

    若是 HTTPS (SSL):Dispatcher 的根據內容遞送是根據從屬站要求的 SSL ID 階段作業欄位來進行平衡負載。 透過 SSL,從屬站要求可包含前一階段作業的 SSL 階段作業 ID,而伺服器則可保有其先前 SSL 連線的快取。 Dispatcher 的 SSL ID 階段作業相關性,可讓從屬站及伺服器透過先前與伺服器之連線的安全參數,來建立新的連線。 由於可消除 SSL 安全性參數的重新協商過程,諸如共用金鑰與加密演算法,伺服器將可節省 CPU 處理週期,而從屬站亦可較快取得回應。 為了能夠啟動 SSL 階段作業 ID 相關性:指定給埠的 protocol 類型必須是 SSL 且埠 stickytime 設成非零值。超過 stickytime 時,從屬站可能會被送到與之前不同的伺服器。

    若要實作 Dispatcher 的根據內容遞送 (另請參閱配置 Dispatcher 之 nat 或 cbr 轉送方法的範例步驟):

    註:
    Dispatcher 的根據內容遞送支援高可用性的連線記錄複製特性 (可在備份 Dispatcher 機器接管主要機器時,確保從屬站的連線不致中斷)。

    配置 Dispatcher 之 nat 或 cbr 轉送方法的範例步驟

    圖 12. Dispatcher 其 nat 或 cbr 轉送方法的使用範例

    使用 Dispatcher 之 nat 或 cbr 轉送的配置

    圖 12 而言,以下是配置 Dispatcher 之 nat 或 cbr 轉送方法時,變動最少的必要步驟:

    1.啟動執行器
    dscontrol executor start
     
    2.定義從屬站閘道
      dscontrol executor set clientgateway 1.2.3.5
     
    3.定義叢集位址
      dscontrol cluster add 1.2.3.44
     
    4.配置叢集位址
      dscontrol executor configure 1.2.3.44
     
    5.定義具有 nat 或 cbr 方法的埠
      dscontrol port add 1.2.3.44:80 method nat
    或
      dscontrol port add 1.2.3.44:80 method cbr protocol http
     
    6.在 Load Balancer 上配置別名回覆位址 (使用乙太網路卡 0)
      dscontrol executor configure 10.10.10.99
     或使用 ifconfig/dsconfig 指令:
      AIX:ifconfig en0 alias 10.10.10.99 netmask 255.255.255.0
      Linux:ifconfig eth0:1 10.10.10.99 netmask 255.255.255.0 up
      Solaris 7:ifconfig hme0:1 10.10.10.99 netmask 255.255.255.0 up
      Solaris 8:ifconfig hme0 addif 10.10.10.99 netmask 255.255.255.0 up
      Windows:dsconfig en0 alias 10.10.10.99 netmask 255.255.255.0
     
    7.定義後端伺服器
      dscontrol server add 1.2.3.4:80:192.10.10.10
        router 10.10.10.6 returnaddress 10.10.10.99
       
    

    從屬站閘道 (1.2.3.5) 是 Load Balancer 與從屬站之間的路由器 1 位址。 路由器 (10.10.10.6) 是 Load Balancer 與後端伺服器之間的路由器 2 位址。 如果您不確定 clientgateway 或路由器 2 位址,您可以使用 traceroute 程式及從屬站 (或伺服器) 位址來判定路由器位址。 根據您所用的作業系統,此程式的實際語法可能會有所不同。 有關此程式的進一步資訊,請參閱您的作業系統說明文件。

    如果伺服器位在與 Load Balancer 相同的子網路上,也就是說沒有使用 traceroute 來傳回任何路由器時,請輸入伺服器位址作為路由器位址。 路由器位址就是在步驟 7 中於 Load Balancer 機器上所配置的位址。


    伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器

    透過伺服器分割,您可以進一步分辨特定 URL 及其特定的應用程式。 例如,某一 Web 伺服器可服務 JSP 頁面、HTML 頁面、GIF 檔案、資料庫要求等等。 Load Balancer 現在提供了分割能力,可將一個特定叢集與埠的伺服器分割成數個邏輯伺服器。 如此即可讓您通告機器上的特定服務進行偵測,是 servlet 引擎執行速度較快,還是資料庫要求執行速度較快,或是根本不執行。

    伺服器分割可讓 Load Balancer 進行偵測,例如偵測 HTML 服務正快速服務頁面,但資料庫連線已中斷之情形。 如此可讓您在分送負載時是根據較精細的服務程式特定的工作負荷,而非單靠整個伺服器的加權值。

    使用 HTTP/HTTPS 通告器進行伺服器分割

    伺服器分割若搭配 HTTP 及 HTTPS 通告器將非常有用。 例如,如果您的 HTML 伺服器負責處理 HTML、GIF 及 JSP 頁面, 當您在埠 80 配置 (藉由新增) 此伺服器一次時, 您僅會收到一個代表整個 HTTP 伺服器的負載值。這可能會誤導, 因為伺服器上可能並沒有 GIF 服務程式在運作。Dispatcher 雖仍會轉送 GIF 頁面給伺服器,但從屬站將會看到逾時或失敗。

    如果您在埠上配置伺服器三次 (例如,ServerHTML、ServerGIF、ServerJSP), 並針對各個邏輯伺服器而用不同字串來定義伺服器 advisorrequest 參數, 您將可在伺服器上查詢特定服務的狀況。ServerHTML、ServerGIF 及 ServerJSP 代表三個邏輯伺服器, 它們是從同一個實體伺服器分割而來。對 ServerJSP 而言,您可以定義 advisorrequest 字串, 來查詢機器上負責處理 JSP 頁面的服務程式。對 ServerGIF 而言,您可以定義 advisorrequest 字串,來查詢 GIF 服務程式。 對 ServerHTML 而言,您可以定義 advisorrequest 來查詢 HTML 服務程式。 因此,如果從屬站未自 advisorrequest 取得回應來查詢 GIF 服務程式時, Dispatcher 會將該邏輯伺服器 (ServerGIF) 標示為當機, 而另兩個邏輯伺服器則可能依然正常運行。Dispatcher 雖不再轉送 GIF 給實體伺服器,但它仍可以傳送 JSP 及 HTML 要求給伺服器。

    有關 advisorrequest 參數的進一步資訊,請參閱使用要求/回應 (URL) 選項,配置 HTTP 通告器

    將實體伺服器配置到邏輯伺服器中的範例

    在 Dispatcher 配置中,您可以用 cluster:port:server 體系來代表實體伺服器或邏輯伺服器。此伺服器可以是機器 (實體伺服器) 的唯一 IP 位址,格式為代號名稱或帶點十進位數。 或者,如果您配置伺服器的方式是用來代表經過分割的伺服器, 您就必須在 dscontrol server add 指令的 address 參數上, 提供可解析的伺服器位址給實體伺服器。相關資訊,請參閱dscontrol server -- 配置伺服器

    以下範例即把實體伺服器分割成邏輯伺服器,以便處理不同類型的要求。

    Cluster: 1.1.1.1
            Port:  80
                 Server: A (IP address 1.1.1.2)
                           HTML server
                 Server: B (IP address 1.1.1.2)
                           GIF server
                 Server: C (IP address 1.1.1.3)
                           HTML server
                 Server: D (IP address 1.1.1.3)
                           JSP server
                 Server: E (IP address 1.1.1.4)
                           GIF server
                 Server: F (IP address 1.1.1.4)
                           JSP server
            Rule1: /*.htm
                 Server: A
                 Server: C
            Rule2: /*.jsp
                 Server: D
                 Server: F
            Rule3: /*.gif
                 Server: B
                 Server: E
    

    本例中,伺服器 1.1.1.2 被分割為 2 個邏輯伺服器:"A" (處理 HTML 要求) 及 "B" (處理 GIF 要求)。 伺服器 1.1.1.3 被分割成 2 個邏輯伺服器:"C" (處理 HTML 要求) 及 "D" (處理 JSP 要求)。 伺服器 1.1.1.4 被分割成 2 個邏輯伺服器:"E" (處理 GIF 要求) 及 "F" (處理 JSP 要求)。


    高可用性

    簡單高可用性

    圖 13. 使用簡單高可用性的 Dispatcher 的範例

    使用簡單高可用性配置的 Dispatcher

    高可用性特性包括第二台 Dispatcher 機器的使用。第一台 Dispatcher 機器像是在單一 Dispatcher 配置時,會執行所有從屬站資料傳輸的平衡負載。第二台 Dispatcher 機器監督第一台 Dispatcher 機器的「狀況」;如果偵測到第一台 Dispatcher 機器故障,則會接管平衡負載的作業。

    這兩台機器均會指定一個特定的角色,不是主要,就是備份。主要機器會在有連線的情況下,將連線資料傳送給備份機器。當主要機器為使用中 (正在執行平衡負載中) 時,備份機器則為備用狀態;它會持續更新,並在必要時準備接管作業。

    這兩台機器間的通訊階段作業就是通訊檢查訊息。通訊檢查訊息可容許每台機器去監督另一台機器的狀況。

    如果備份機器偵測到使用中的機器發生故障, 它將接管它的工作並開始平衡負載。此時,這兩台機器的狀態將會互換: 備份機器變成現行, 而主要機器則變成備用狀態。

    在高可用性配置中,主要及備份機器必須位在相同的子網路中。

    關於配置高可用性的資訊,請參閱高可用性

    共同高可用性

    圖 14. 使用共同高可用性的 Dispatcher 的範例

    使用共同高可用性配置的 Dispatcher

    共同高可用性特性包括使用兩台 Dispatcher 機器。這兩台機器會主動執行從屬站資料傳輸的平衡負載,且互為彼此的備份。在簡單高可用性配置中,只有一台機器會執行平衡負載。在共同高可用性配置中,這兩台機器都會平衡從屬站資料傳輸部份的資料流量。

    若是共同高可用性,會依據叢集位址將從屬站資料傳輸分派給每台 Dispatcher 機器。每個叢集都可用其主要 Dispatcher 的 NFA (非轉送的位址) 予以配置。主要 Dispatcher 機器一般會執行該叢集的平衡負載。發生失敗事件時,另一台機器會執行自己叢集及失敗 Dispatcher 之叢集的平衡負載。

    含共用 "叢集組 A" 及共用 "叢集組 B" 之共同高可用性配置的圖例,請參閱圖 14。每個 Dispatcher 都可主動為其主要叢集遞送封包。 如果任一 Dispatcher 發生故障且無法再主動為其主要叢集遞送封包,則另一個 Dispatcher 即可接管而為其備份叢集遞送封包。

    註:
    這兩台機器的共用叢集組必須配置為相同。亦即,在這兩個配置中,所用的埠及每一個埠下的伺服器都必須相同。

    關於配置高可用性及共同高可用性的資訊,請參閱高可用性


    配置 Dispatcher 元件

    在遵循本章中的步驟之前,請參閱規劃 Dispatcher 元件。 本章將說明如何為 Load Balancer 的 Dispatcher 元件建立基本配置。

    註:
    對先前的版本而言,當產品名稱為 Network Dispatcher 時,Dispatcher 控制指令的名稱是 ndcontrol。 此 Dispatcher 控制指令的名稱目前已改成 dscontrol

    配置作業的概觀

    註:
    在您開始本表格中的配置步驟之前, 請確定您的 Dispatcher 機器及所有伺服器機器均已連上網路、具有有效的 IP 位址, 以及能夠彼此測試對方是否在運行中。

    表 4. Dispatcher 功能的配置作業

    作業 說明 相關資訊
    設定 Dispatcher 機器。

    設定您的平衡負載配置。

    設定 Dispatcher 機器
    將機器設定為要執行平衡負載的功能。 設定迴圈裝置的別名、檢查是否有多餘的路徑,以及刪除任何多餘的路徑。 設定伺服器機器以進行平衡負載

    配置方法

    Dispatcher 有四個基本配置方法:

    指令行

    這是配置 Dispatcher 最直接的方法。指令參數值必須以英文字元輸入。 唯一的例外是主電腦名稱 (用於 cluster、server 及 highavailability 等指令中) 及檔名 (用於 file 指令中)。

    若要從指令行啟動 Dispatcher:

    1. 從指令提示發出 dsserver 指令。 若要停止此服務,請鍵入:dsserver stop
      註:
      若是 Windows 2000,請按一下開始 > 設定 > 控制台 > 系統管理工具 > 服務。用滑鼠右鍵按一下 IBM Dispatcher,然後選取啟動。若要停止服務,請遵循相同的步驟,然後選取停止
    2. 然後,發出您想要用來設定您的配置的 Dispatcher 控制指令。本手冊中的程序是假設使用的是指令行。 其指令為 dscontrol。指令的相關資訊,請參閱Dispatcher 及 CBR 的指令參照

    您可以使用精簡版的 nalcontrol 指令參數,方法是鍵入代表參數的唯一字母。 例如,要取得存檔指令的說明,您可以鍵入 dscontrol he f 而非 dscontrol help file

    您可以輸入 dscontrol 指令參數的精簡版本。 只需要輸入參數的專用字母即可。例如,要取得存檔指令的說明,您可以鍵入 dscontrol he f 而非 dscontrol help file

    若要啟動指令行介面:請發出 dscontrol 以接收 dscontrol 指令提示。

    若要結束指令行介面:請發出 exitquit

    Script

    配置 Dispatcher 的指令可以輸入到配置 script 檔中,並且可以一起執行。 請參閱範例 Load Balancer 配置檔

    註:
    若要快速執行 Script 檔 (例如,myscript) 的內容,請使用下列其中一項指令:

    若要將現行配置存入 Script 檔 (例如,savescript) 中,請執行下列指令:

    dscontrol file save savescript
    

    此指令會將配置 Script 檔存入 ...ibm/edge/lb/servers/configurations/dispatcher 目錄中。

    GUI

    如需圖形式使用者介面 (GUI) 的一般指示與範例,請參閱圖 41

    若要啟動 GUI,請遵循下列步驟

    1. 確定 dsserver 正在執行
    2. 然後,請執行下列其中一項:

    若要從 GUI 來配置 Dispatcher 元件, 您必須先在樹狀結構中選取 Dispatcher。 一旦連接到「主電腦」,即可啟動執行器及管理程式。您也可以建立含有埠及伺服器的叢集,並啟動管理程式的通告器。

    GUI 可以用來執行任何您會以 dscontrol 指令來執行的作業。 例如,在使用指令行來定義叢集時,您可輸入 dscontrol cluster add cluster 指令。 若要從 GUI 來定義叢集,您可在「執行器」上按一下右鍵,然後在蹦現功能表中,對新增叢集按一下左鍵。 在蹦現視窗中鍵入叢集位址,然後按一下確定

    您可以用主電腦蹦現功能表中所顯示的載入新配置 (以完全取代現行配置) 及附加至現行配置 (以更新現行配置) 等選項,來載入先前即已存在的 Dispatcher 配置檔。 您應定期使用另存配置檔選項 (也在主電腦蹦現功能表中) 來儲存您的 Dispatcher。 位於 GUI 頂端的檔案功能表可讓您將現行的主電腦連線存檔,或是復置所有的 Load Balancer 元件之現存檔案中的連線。

    您也可以從遠端執行配置指令。相關資訊,請參閱遠端方法呼叫 (RMI)

    若要從 GUI 執行指令:請高亮度顯示 GUI 樹狀結構中的「主電腦」節點,並從「主電腦」蹦現功能表中選取傳送指令....。 在指令輸入欄位中,鍵入要執行的指令,例如:executor report。 您在現行階段作業中所執行的指令,其結果及歷程將出現在所提供的視窗中。

    您可以藉由按一下 Load Balancer 視窗右上角的問號圖示,來存取說明

    使用 GUI 的相關資訊,請參閱附錄 A, GUI:一般指示

    使用配置精靈來配置

    如果您要使用配置精靈,請遵循下列步驟:

    1. 在 Dispatcher 上啟動 dsserver:

    2. 啟動 Dispatcher 的精靈功能,dswizard

    精靈會一步步地指引您處理建立 Dispatcher 元件的基本配置。 它將會問您有關您的網路的問題。 並且會指引您設定 Dispatcher 的叢集,以平衡一群伺服器之間的資料流量。


    設定 Dispatcher 機器

    在設定 Dispatcher 機器之前,您必須是 root 使用者 (對 AIX、Linux 或 Solaris 而言),或是 Windows 2000 上的管理者。

    對於 AIX、Linux 及 Solaris 而言,Load Balancer 可以具有並列 伺服器。這僅表示 Load Balancer 可實際常駐在正進行平衡負載的伺服器機器上。

    您將至少需要 Dispatcher 機器的兩個有效 IP 位址:

    僅適用於 Solaris:

    1. 在預設的狀況下,Dispatcher 是配置來平衡負載 100Mbps 的「乙太網路」介面卡上的資料傳輸。 若要變更預設設定,您必須按下述方式編輯 /opt/ibm/edge/lb/servers/ibmnd.conf 檔案:

      ibmnd.conf 檔案可提供 Solaris autopush 指令的輸入,且必須 autopush 指令相容。

    2. 啟動或停止 Dispatcher 執行器,皆會取消配置 ibmnd.conf 檔案中所列配接卡上的所有別名。 若要自動重設配置此類配接卡上的別名 (但 Load Balancer 的 Dispatcher 元件所用者除外),可使用 goAliases script 檔。 範例 script 位在 ...ibm/edge/lb/servers/samples 目錄下,此 script 必須先移至 ...ibm/edge/lb/servers/bin 才可執行。 goAliases script 在 Dispatcher 執行器啟動或停止時皆會自動執行。

      例如,如果配置了叢集 X 及 Y 供 ibmnd.conf 所列之任何配接卡上的 CBR 元件使用,叢集 X 及 Y 會在 dscontrol executor startdscontrol executor stop 等指令發出時取消配置。 而這可能並非所要的結果。 當在 goAliases script 中配置了叢集 X 及 Y 後,這些叢集會在 Dispatcher 執行器啟動或停止後自動重設配置。

    僅適用於 Windows 2000:確定未針對 TCP/IP 通信協定啟用 IP 轉送。(請參閱 Windows 2000 TCP/IP 配置)。

    圖 15 顯示設定一個具有單一叢集、兩個埠及三台伺服器的 Dispatcher 之範例。

    圖 15. Dispatcher 機器所需的 IP 位址的範例


    關於本程序中所使用的指令的解說,請參閱Dispatcher 及 CBR 的指令參照

    關於範例配置檔,請參閱範例 Load Balancer 配置檔

    步驟 1. 啟動伺服器功能

    AIX、Linux 及 Solaris:若要啟動伺服器功能,請鍵入 dsserver

    Windows 2000:伺服器功能會以服務程式的形式自動啟動。

    註:
    當啟動 dsserver 時,預設配置檔 (default.cfg) 即會自動載入。

    如果使用者決定將 Dispatcher 配置儲存在 default.cfg 中,則下次啟動 dsserver 時,此檔案中所儲存的所有內容將會自動載入。

    步驟 2. 啟動執行器功能

    欲啟動執行器功能時,請輸入 dscontrol executor start 指令。 此時,您也可以變更不同的執行器設定。請參閱Dispatcher 及 CBR 的指令參照

    步驟 3. 定義非轉送的位址 (如果與主電腦名稱不同)

    非轉送的位址是用來連接機器,以便進行管理作業, 像是使用 Telnet 或 SMTP 來連接這台機器。在預設的狀況下, 這個位址是主電腦名稱。

    若要定義非轉送的位址時,請輸入 dscontrol executor set nfa IP_address 指令,或編輯範例配置檔。 IP_address 是符號式名稱或帶有點的十進位位址。

    步驟 4. 定義叢集及設定叢集選項

    Dispatcher 會將傳給叢集位址的要求,平衡分配到對該叢集的埠所配置的伺服器。

    叢集可以是符號式名稱、帶點十進位數位址,或是定義萬用字元叢集的特殊位址 0.0.0.0。 若要定義叢集,請發出指令 dscontrol cluster add。 若要設定叢集選項,請發出指令 dscontrol cluster set 或用 GUI 來發出指令。 萬用字元叢集可以用來找出多個符合的 IP 位址,以平衡進入之封包的資料流量。如需進一步資訊,請參閱使用萬用字元叢集來結合伺服器配置使用萬用字元叢集來平衡防火牆的資料流量將萬用字元叢集與 Caching Proxy 搭配使用來進行透通式 Proxy

    步驟 5. 設定網路介面卡的別名

    一旦定義了叢集,通常您必須在 Dispatcher 機器的其中一個網路介面卡上配置叢集位址。

    要執行此作業,請發出指令 dscontrol executor configure cluster_address 此指令將會尋找一個其現行位址屬於相同子網路的配接卡,來作為叢集位址。 然後它會針對該叢集位址發出作業系統的配接卡配置指令,並使用所找到的配接卡以及該配接卡上所找到的現有位址之網路遮罩。例如:

    dscontrol executor configure 204.67.172.72
    

    在您不想要配置叢集位址的情況下,會以高可用性模式來將叢集加入備用的伺服器, 或是將叢集加入廣域配送器,作為遠端伺服器。 如果您以單機模式來使用範例 goIdle script,您也不需執行 executor configure 指令。 goIdle script 的相關資訊,請參閱使用 script

    在少數情況下,您可能會有一個叢集位址不符合現存位址的任何子網路。 此時,請使用第二種形式的 executor configure 指令,並明確地提供介面名稱及網路遮罩。 使用 dscontrol executor configure cluster_address interface_name netmask

    範例如下:

    dscontrol executor configure 204.67.172.72 en0 255.255.0.0
    (AIX)
    dscontrol executor configure 204.67.172.72 eth0:1 255.255.0.0
    (Linux)
    dscontrol executor configure 204.67.172.72 le0:1 255.255.0.0
    (Solaris 7)
    dscontrol executor configure 204.67.172.72 le0 255.255.0.0
    (Solaris 8)
    dscontrol executor configure 204.67.172.72 en1 255.255.0.0
    (Windows 2000)
     
    

    Windows 2000

    要在 Windows 2000 上使用第二種形式的 executor configure 指令,您必須決定所要使用的介面名稱。

    如果在您的機器上只有一張乙太網路卡,則介面名稱會是 en1。 同樣地,如果您只有一張「記號環」卡,則介面名稱會是 tr1。 如果您有多張其中一種類型的卡,您便需要判斷卡的對映。 請使用下列步驟:

    1. 在指令提示中啟動 regedit
    2. 依序按一下 HKEY_LOCAL_MACHINESoftwareMicrosoftWindows NT(R)Current Version
    3. 然後,按一下 NetworkCards。

    網路介面配接卡將列示在「網路卡」之下。請在每一個網路介面配接卡上按一下, 以判斷它是「乙太網路」或「記號環」介面。 介面的類型列示在說明直欄中。 由 dsconfig 所指派的名稱會對映到介面類型。 例如,列示中的第一個「乙太網路」介面將被 dsconfig 指定為 en0, 第二個會被指定為 en1,依此類推;第一個「記號環」介面則被指定為 tr0, 第二個被指定為 tr1,依此類推。

    註:
    Windows 2000 登錄是從 1 開始指定配接卡的號碼,而非從 0 開始。

    在您取得這個對映資訊後,您可以在網路介面上,建立叢集位址的別名。

    使用 ifconfig/dsconfig 來配置叢集別名

    executor configure 指令只會執行 ifconfig (或在 Windows 2000 上執行 dsonfig) 指令,所以如果您願意,還是可以使用 ifconfig (dsconfig) 指令。

    Windows 2000

    Dispatcher 元件有提供 dsconfig 這個指令,讓您可用指令行來配置叢集別名。 dsconfig 指令的語法與 UNIX(R) ifconfig 指令相同。

    dsconfig en0 alias 204.67.172.72 netmask 255.255.0.0
    
    註:
    netmask 參數是必需的。它的格式應該是帶有點的十進位數字 (255.255.0.0), 或十六進位數字 (0xffff0000) 格式。

    若要決定介面名稱,請使用與用在 executor configure 指令之第二種形式的相同技術。

    Solaris

    當使用連結特定的伺服器應用程式,而這些應用程式會連結到不含伺服器 IP 的 IP 位址清單時,請使用 arp publish 指令而非 ifconfig,以便動態地設定 Load Balancer 機器上的 IP 位址。

    例如:

     arp -s <cluster> <Load Balancer MAC address> pub
    

    步驟 6. 定義埠及設定埠選項

    若要定義埠,可輸入 dscontrol port add cluster:port 指令、編輯範例配置檔、或使用 GUI。 cluster 可以是符號式名稱, 也可以是帶點十進位數位址。Port 則是您將對該通訊協定使用的埠的號碼。 此時,您也可以變更不同的埠設定。您必須定義並配置一個埠的所有伺服器。請參閱Dispatcher 及 CBR 的指令參照

    埠號 0 (零) 是用來指定萬用字元埠的。 不是要傳送到叢集上任何已定義之埠的資料傳輸,將接受此埠。 萬用字元埠將會用來配置所有埠的規則及伺服器。 如果有多個埠具有相同的伺服器/規則配置,您也可以使用此功能。 一個埠上的資料傳輸會影響其它埠上平衡負載的決策。 使用萬用字元埠之時機的相關資訊,請參閱使用萬用字元埠來引導未配置埠的資料傳輸

    註:
    萬用字元埠不得用於管理 FTP 資料傳輸。

    步驟 7. 定義平衡負載伺服器機器

    若要定義平衡負載伺服器機器,可輸入 dscontrol server add cluster:port:server 指令,編輯範例配置檔,或使用 GUI。 Clusterserver 可以是符號式名稱或帶點十進位數位址。Port 則是您將對該通訊協定使用的埠的號碼。 您必須定義一個以上的伺服器給叢集上的一個埠,以執行平衡負載。

    連結特定伺服器: 如果 Dispatcher 元件是對連結特定伺服器進行平衡負載,則伺服器必須配置為可以連結叢集位址。 既然 Dispatcher 轉送封包時不會變更目的地 IP 位址,因此當封包到達伺服器時,仍會含有叢集位址作為目的地。 如果伺服器配置為要連結到叢集位址以外的某一 IP 位址,此伺服器將無法接受送往該叢集的封包/要求。

    註:
    若是 Solaris 及 Linux:使用通告器時,連結特定伺服器將不得並列。

    多重位址並列: 在並列配置中,並列伺服器機器的位址不必相同於非轉送的位址 (NFA)。 如果您的機器已定義有多重 IP 位址,您即可使用另一個位址。 對 Dispatcher 元件而言,必須用 dscontrol server 指令將並列伺服器機器定義為 collocated。 並置伺服器的相關資訊,請參閱使用並列伺服器

    有關 dscontrol server 指令語法的進一步資訊,請參閱dscontrol server -- 配置伺服器

    步驟 8. 啟動管理程式功能 (選用性的)

    管理程式功能可增進平衡負載。若要啟動管理程式,可輸入 dscontrol manager start 指令,編輯範例配置檔,或使用 GUI。

    步驟 9. 啟動通告器功能 (選用性的)

    通告器可提供管理程式有關平衡負載伺服器機器回應要求的能力之詳細資訊。 通告器是專用於某個通訊協定。例如,若要啟動 HTTP 通告器, 請發出下列指令:

    dscontrol advisor start http port
    

    如需通告器的清單以及其預設埠,請參閱Dispatcher 及 CBR 的指令參照。有關各種通告器的說明,請參閱通告器列示

    步驟 10. 依需要設定叢集比例

    如果啟動通告器,您可以修改平衡負載決策中所含之通告器資訊的重要性比例。 若要設定叢集比例,請發出 dscontrol cluster set cluster proportions 指令。相關資訊,請參閱狀態資訊所給定的重要性比例


    設定伺服器機器以進行平衡負載

    如果伺服器是並列的 (Dispatcher 常駐在其所平衡負載的同一機器上),或者使用的是 nat 或 cbr 轉送方法,請不要執行下列程序。

    使用 mac 轉送方法時,Dispatcher 只能搭配後端伺服器使用,讓迴圈配接卡配置額外的 IP 位址,而後端伺服器絕不會就其回應 ARP (位址解析通信協定) 要求。 請遵循本節所列的步驟,來設定平衡負載的伺服器機器。

    步驟 1. 設定迴圈裝置別名

    要讓平衡負載的伺服器機器能夠運作,您必須將迴圈裝置 (通常稱為 lo0) 設定 (或最好是別名) 成叢集位址。 使用 mac 轉送方法時,在將封包轉遞給 TCP 伺服器機器之前,Dispatcher 元件並不會變更 TCP/IP 封包中的目的地 IP 位址。 藉著將迴圈裝置設定或設定別名成叢集位址,平衡負載伺服器機器會接受要送給該叢集位址的封包。

    如果您的作業系統支援網路介面別名 (如 AIX、Linux、Solaris 或 Windows 2000),則應將迴圈裝置的別名設定成叢集位址。 使用支援別名之作業系統的優點是,您能夠配置經過平衡負載的伺服器機器,以服務多個叢集位址。

    註:
    少部份的 Linux 核心程式版本需要修補程式,才能建立迴圈裝置的別名。 請參閱安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應),以決定是否需要 Linux 核心修補程式。

    對於 2.2.14 或更高版本的 Linux 核心程式,請在 ifconfig 指令之前發出下列指令:

    echo 1 > /proc/sys/net/ipv4/conf/lo/hidden
    echo 1 > /proc/sys/net/ipv4/conf/all/hidden
    

    如果您伺服器的作業系統不支援別名,則必須將迴圈裝置設定成叢集位址。

    請將指令用於表 5 中所示的作業系統中,以設定或命名迴圈裝置的別名。

    表 5. 設定 Dispatcher 之迴圈裝置 (lo0) 別名的指令

    AIX
    ifconfig lo0 alias cluster_address netmask netmask
    HP-UX ifconfig lo0 cluster_address
    Linux ifconfig lo:1 cluster_address netmask 255.255.255.255 up
    OS/2(R) ifconfig lo cluster_address
    Solaris 7 ifconfig lo0:1 cluster_address 127.0.0.1 up
    Solaris 8 ifconfig lo0:1 plumb cluster_address netmask netmask up
    Windows 2000
    1. 依序按一下開始設定控制台
    2. 如果尚未做這些的處理,請新增 MS Loopback Adapter Driver。

      1. 按兩下新增/移除硬體。這樣會啟動「新增/移除硬體精靈」。
      2. 按一下「下一步」並選取新增/疑難排解裝置後,再按一下「下一步」。
      3. 螢幕會閃爍,然後會出現選擇硬體裝置畫面。
      4. 如果 MS Loopback Adapter 出現在清單中,即表示其已安裝 - 請按一下「取消」結束。
      5. 如果 MS Loopback Adapter 並未出現在清單中 - 請選取新增一項裝置,再按一下「下一步」。
      6. 若要從列示中選取硬體,請在尋找新硬體畫面後,再依序按一下「否」及「下一步」。
      7. 選取網路介面卡並按一下「下一步」。
      8. 選取網路介面卡畫面中,從「製造商」列示中選取 Microsoft 後,再選取 Microsoft Loopback Adapter
      9. 按一下「下一步」,再按一下「下一步」,以安裝預設設定 (或選取從磁片安裝 後,再插入 CD 並從此處安裝)。
      10. 按一下「完成」以完成安裝。
    3. 控制台中按兩下網路和撥號連線
    4. 選取裝置名置為 『Microsoft Loopback Adapter" 的連線,然後在它上面按一下滑鼠右鍵。
    5. 從下拉功能表中選取內容
    6. 選取 Internet 通訊協定 (TCP/IP),然後按一下內容
    7. 按一下使用下列 IP 位址。將叢集位址填入 IP 位址中,而將預設子網路遮罩 (255.0.0.0) 填入子網路遮罩中。

      註:
      請不要輸入路由器位址。 並將 localhost 當成預設 DNS 伺服器。
    Windows NT
    1. 按一下開始,再按一下設定
    2. 按一下控制台,再按兩下網路
    3. 如果尚未做這些的處理,請新增 MS Loopback Adapter Driver。

      1. 在「網路」視窗中,按一下介面卡
      2. 選取 MS Loopback Adapter,再按一下確定
      3. 提示時,請插入安裝 CD 或磁片。
      4. 在「網路」視窗中,按一下通信協定
      5. 選取 TCP/IP 通信協定,再按一下內容
      6. 選取 MS Loopback Adapter,再按一下確定
    4. 將迴圈位址設成您的叢集位址。接受預設子網路遮罩 (255.0.0.0),不要輸入閘道位址。

    註:
    您必須跳出並重新進入「網路設定」,然後 MS Loopback Driver 就會顯示在「TCP/IP 配置」之下。
    OS/390(R) 在 OS/390 系統上配置迴圈別名
    • 在 IP 參數成員 (檔案) 中,管理者必須在「主電腦」位址列示中建立項目。例如,

      HOME
      ;Address                   Link
      192.168.252.11             tr0
      192.168.100.100            1tr1
      192.168.252.12             loopback
      
    • 可將數個位址定義給迴圈。
    • 127.0.0.1 是預設配置的位址。

    步驟 2. 檢查額外路徑

    在部份作業系統上,可能已建立預設路徑,且需要予以移除。

    Windows 2000 範例:

    1. 鍵入 route print 後,會顯示與下表類似的表格。(此範例會顯示尋找及移除叢集 9.67.133.158 (含預設網路遮罩 255.0.0.0) 的額外路徑。)
      現行路徑:
       
      網址            網路遮罩        閘道位址         介面           測量單位
      0.0.0.0         0.0.0.0         9.67.128.1       9.67.133.67     1
      9.0.0.0         255.0.0.0       9.67.133.158     9.67.133.158    1
      9.67.128.0      255.255.248.0   9.67.133.67      9.67.133.67     1
      9.67.133.67     255.255.255.255 127.0.0.1        127.0.0.1       1
      9.67.133.158    255.255.255.255 127.0.0.1        127.0.0.1       1
      9.255.255.255   255.255.255.255 9.67.133.67      9.67.133.67     1
      127.0.0.0       255.0.0.0       127.0.0.1        127.0.0.1       1
      224.0.0.0       224.0.0.0       9.67.133.158     9.67.133.158    1
      224.0.0.0       224.0.0.0       9.67.133.67      9.67.133.67     1
      255.255.255.255 255.255.255.255 9.67.133.67      9.67.133.67     1  
      
    2. 在「閘道位址」直欄中尋找您的叢集位址。 如果您有額外路徑,則叢集位址會出現兩次。而在上面所提供的範例中,叢集位址 (9.67.133.158) 出現在第 2 列及第 8 列中。
    3. 尋找叢集位址所在之列中的網址。 您需有其中一個路徑,而刪除其它額外的路徑。要刪除的額外路徑會是以叢集位址前四個數字開頭且後接有三個零的網址。在所顯示的範例中,額外路徑是位在第二列中,它的網址為 9.0.0.0
                9.0.0.0    255.0.0.0   9.67.133.158  9.67.133.158     1 
       
      

    步驟 3. 刪除任一額外路徑

    您必須刪除額外的路徑。請將指令用於表 6 中所示的作業系統中,以刪除額外路徑。

    範例:若要如步驟 2 之「現行路徑」範例表所示方式來刪除額外路徑,請鍵入:

    route delete 9.0.0.0 9.67.133.158
    

    表 6. 刪除 Dispatcher 之額外路徑的指令

    HP-UX
    route delete cluster_address cluster_address
    Windows 2000 或 Windows NT route delete network_address cluster_address (在 MS-DOS 提示中)

    註:
    只要一重新啟動伺服器,您就必須刪除額外路徑。

    使用圖 15中所顯示的範例,並設定執行 AIX 的伺服器機器時,指令應為:

      route delete -net  204.0.0.0  204.67.172.72 
    

    步驟 4. 驗證伺服器是否已適當地配置

    要驗證後端伺服器是否已適當地配置,請在未執行 Load Balancer 且已取消配置 cluster 時,從相同子網路上的不同機器,執行下列步驟:

    1. 發出指令:
      arp -d cluster
      
    2. 發出指令:
      ping cluster
      

      此時不應有任何回應。 如果 ping 出現回應,請確定您並未將叢集位址 ifconfig 成介面。 確定並無機器對此叢集位址具有已發佈的 arp 項目。

      註:
      若是版本 2.2.12 及 2.2.13 的 Linux 核心程式,請確定 /proc/sys/net/ipv4/conf/lo/ arp_invisible 中存有 "1"。

      若是版本 2.2.14 或更高版本的 Linux 核心程式,請確定 /proc/sys/net/ipv4/conf/lo/hidden 及 /proc/sys/net/ipv4/conf/all/hidden 中存有 "1"。

    3. Ping 後端伺服器,然後立即發出下列指令:
      arp -a
      

      在指令的輸出中,您應會看到伺服器的 MAC 位址。 發出指令:

      arp -s cluster server_mac_address 
      
    4. Ping 叢集。此時應會取得回應。請針對您預期後端伺服器所要處理的叢集,發出 http、telnet 或其它請求。 確定其適當地運作。
    5. 發出指令:
      arp -d cluster
      
    6. Ping 叢集。此時不應有任何回應。
      註:
      如果出現回應,請發出 arp cluster 指示,以取得未經配置之機器的 MAC 位址。 然後,重複步驟 1 到 6。

    安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)

    僅適用於 Linux:若要設定迴圈裝置的別名,可能需有特定的修補程式 (視 Linux 核心版本而定)。

    修補程式可確保唯有具備 ARP 要求中所要求的 IP 位址之網路卡埠,才會傳送 ARP 回應。 若無此修補程式,Linux 將在網路上發出迴圈別名的 ARP 回應。 此修補程式亦會更正 ARP 競爭條件,此條件常見於具有不同 IP 位址的多個網路卡埠同時出現於同一實體網路時。

    若有下列情形,即必須安裝修補伺服器:

    對於 Load Balancer 機器而言,因為僅支援表 3 中的中所列的核心程式版本名稱, 所以完成編譯的核心修補程式名稱必須符合表格內所列的名稱。如需 Linux 核心修補程式的進一步資訊, 請參閱支援的 Linux 核心程式版本名稱

    註:
    此 Linux 核心修補程式是用來於測試 IBM 產品,而且在 IBM 測試環境下表現良好。 您應自行評估此程式碼在您環境中的使用性,並決定其是否符合您的需求。此程式碼可能會包括在以後的 Linux 基本原始程式版本中。

    Content Based Routing (CBR) 元件

    本篇提供快速入門配置的相關資訊、規劃注意事項,以及說明配置 Load Balancer CBR 元件的方法。 它含有下列各章:


    快速入門配置

    此快速入門範例將示範如何使用 CBR 與 Caching Proxy 來配置三個本端附加工作站,以便平衡負載兩個 Web 伺服器之間的 Web 資料傳輸。 (為求簡單,此範例所舉的伺服器皆位於相同的 LAN 區段上,因為 CBR 並不限制使用位於相同 LAN 區段上的伺服器)。

    圖 16. 簡單的本端 CBR 配置

    此圖形所示為「從屬站」、Internet 雲團、Load Balancer 機器及兩個具有已識別位址的本端附加伺服器。


    您將需要的項目

    若要進行快速入門範例,則需要三個工作站及四個 IP 位址。其中一個工作站要用來當作 CBR;另外兩個工作站則用來當作 Web 伺服器。 每一個 Web 伺服器都需要一個 IP 位址。 CBR 工作站需要一個實際的位址,以及一個用於平衡負載的位址。

    若要使用 CBR,必須在同一伺服器上安裝 Caching Proxy。若要對 CBR 配置 Caching Proxy,請參閱步驟 1. 配置 Caching Proxy 以使用 CBR


    如何準備

    1. 設定您的工作站,使它們位在相同的 LAN 區段上。 確定三台機器之間的網路資料傳輸不必經由任何路由器或橋接器來傳遞。
    2. 配置三個工作站的網路卡。 在此範例中,我們假設您有下列網路配置:
      工作站 名稱 IP 位址
      1 server1.mywebsite.com 9.27.27.101
      2 server2.mywebsite.com 9.27.27.102
      3 server3.mywebsite.com 9.27.27.103
      網路遮罩 = 255.255.255.0

      每一個工作站都只包含一個標準的「乙太網路」網路介面卡。

    3. 確定 server1.mywebsite.com 可以同時 ping 到 server2.mywebsite.com 及 server3.mywebsite.com。
    4. 確定 server2.mywebsite.com 與 server3.mywebsite.com 可 ping 到 server1.mywebsite.com。
    5. 確定 server2.mywebsite.com 與 server3.mywebsite.com 上的 Web 伺服器皆運作正常。 使用 Web 瀏覽器直接從 http://server2.mywebsite.com (例如,.../member/index.html) 及 http://server3.mywebsite.com (例如,.../guest/index.html) 要求網頁。
    6. 對這個 LAN 區段取得另一個有效的 IP 位址。這是您對要存取您站台的從屬站所提供的叢集位址。 我們將在本例中使用:
      Name= www.mywebsite.com
      IP=9.27.27.104
      

    配置 CBR 元件

    有了 CBR ,您就可以用指令行、配置精靈或圖形式使用者介面 (GUI) 來建立配置。 在此快速入門範例中,相關的配置步驟是以指令行來作示範。

    註:
    參數值須以英文字元來鍵入。唯一的例外是主電腦名稱與檔名此兩者的參數值。

    使用指令行來配置

    從指令提示,遵循下列步驟:

    1. 啟動 cbrserver。以 Root 使用者或管理者身份執行下列指令:cbrserver
      註:
      若是 Windows 2000:從「服務」畫面啟動 cbrserver (IBM Content Based Routing): 開始 > 設定 > 控制台 > 系統管理工具 > 服務
    2. 啟動 CBR 的執行器功能:

      cbrcontrol executor start

    3. 啟動 Caching Proxy。(啟動執行器功能後即可隨時啟動 Caching Proxy):

      ibmproxy

      註:
      若是 Windows 2000:您也可以從「服務」畫面啟動 Caching Proxy: 開始 > 設定 > 控制台 > 系統管理工具 > 服務
    4. 新增叢集 (主電腦名稱、從屬站所連結的網站) 給 CBR 配置:

      cbrcontrol cluster add www.mywebsite.com

    5. 將網站的叢集位址 (9.27.27.104) 新增至 CBR 機器上的網路介面卡。 相關資訊,請參閱步驟 5. 為網路介面卡設定別名 (選用性的)
    6. 新增 http 通信協定埠給 CBR 配置:

      cbrcontrol port add www.mywebsite.com:80

    7. 將每一個 Web 伺服器新增到 CBR 配置中:

      cbrcontrol server add www.mywebsite.com:80:server2.mywebsite.com

      cbrcontrol server add www.mywebsite.com:80:server3.mywebsite.com

    8. 新增內容規則給您的 CBR 配置。 (內容規則可定義要如何識別 URL 要求,以及如何將它傳送至某個伺服器或伺服器組):

      cbrcontrol rule add www.mywebsite.com:80:memberRule type content pattern uri=*/member/*

      cbrcontrol rule add www.mywebsite.com:80:guestRule type content pattern uri=*/guest/*

      本例中,透過內容規則,從屬站對網站 www.mywebsite.com 的要求,會根據 URI 要求路徑中的目錄而送給不同的伺服器。相關資訊,請參閱附錄 B, 內容規則 (型樣) 語法

    9. 新增伺服器到您的規則中:

      cbrcontrol rule useserver www.mywebsite:80:memberRule server2.mywebsite.com

      cbrcontrol rule useserver www.mywebsite:80:guestRule server3.mywebsite.com

      CBR 現在將根據內容規則來執行平衡負載。 從屬站之 URL 要求如果內含 /member/,將會被導送給 server2.mywebsite.com。 而從屬站之 URL 要求如果內含 /guest/ 則會被導送給 server3.mywebsite.com。

    10. 啟動 CBR 的管理程式功能:

      cbrcontrol manager start

    11. 啟動 CBR 的通告器功能:

      cbrcontrol advisor start http 80

      CBR 現在會確定從屬站要求並沒有傳送到失敗的 Web 伺服器。

    您具備本端附加伺服器的基本配置現在已經完成。

    測試您的配置

    測試配置是否可運作。

    1. 從 Web 瀏覽器跳至 http://www.mywebsite.com/member/index.htm 位置。 如果出現網頁,則表示全部可運作。
    2. 在 Web 瀏覽器中重新載入網頁。
    3. 查看下列指令的結果:

       cbrcontrol server report www.mywebsite.com:80:
      
      這兩個伺服器的連線總數直欄應加總為 『2』。

    使用圖形式使用者介面 (GUI) 來配置

    如需使用 CBR GUI 的相關資訊,請參閱GUI及參閱附錄 A, GUI:一般指示

    使用配置精靈來配置

    如需使用 CBR 精靈的相關資訊,請參閱配置精靈


    叢集、埠、伺服器等配置的類型

    可配置 CBR 來支援您站台的方法有許多種。如果您對所有您的客戶將連接的站台, 僅具有一個主電腦名稱,則您可以定義伺服器的單一叢集。對於其中每一個伺服器,您都要配置 CBR 藉以通信的埠。請參閱圖 9

    圖 17. 具備單一叢集及 2 個埠的 CBR 配置範例

    簡單配置

    本例中的 CBR 元件,有一個叢集是在 www.productworks.com 所定義。 這個叢集有兩個埠: HTTP 為埠 80,SSL 為埠 443。當從屬站對 http://www.productworks.com (埠 80) 發出要求時所連接的伺服器, 與從屬站對 https://www.productworks.com (埠 443) 發出要求時所連接的伺服器不同。

    如果您有一個非常大的站台,它具有許多專門用於每一個支援的通訊協定的伺服器, 則其它配置 CBR 的方法較合適。在這個情況下, 您可能想要對每一個具有單一埠,但有多個伺服器的通訊協定來定義叢集, 如圖 10 中所示一般。

    圖 18. 配置有兩個叢集且每個叢集都有一個埠之 CBR 範例

    具有兩個叢集且每個叢集都有單一埠的配置

    對於本例中的 CBR 元件,我們定義了兩個叢集:埠 80 (HTTP) 為 www.productworks.com,埠 443 (SSL) 為 www.testworks.com。

    若您的站台主控數個公司或部門的內容,且它們都以不同 URL 進入您的站台,則需使用第三種方法來配置 CBR。 此時,您最好先為每一公司或部門定義一叢集,然後定義任何您想要在該 URL 中接收連線的埠,如圖 11 中所示。

    圖 19. 配置有兩個叢集且每個叢集都有 2 個埠 CBR 範例

    具有兩個叢集且每個叢集都有兩個埠的配置

    對本例中的 CBR 元件而言,我們定義了兩個叢集,且各叢集在 www.productworks.com 及 www.testworks.com 等站台分別具有埠 80 (HTTP) 及埠 443 (SSL)。


    規劃 Content Based Routing 元件

    本章將說明在安裝與配置具有 Caching Proxy 的 CBR 元件之前,網路規劃者應該考慮的事項。

    本章包括下列各節:


    硬體與軟體的基本需求

    平台基本需求:


    規劃考量

    CBR 元件可讓您平衡負載 HTTP 及 SSL 資料傳輸,使用 Caching Proxy 來 proxy 要求

    透過 CBR,您可以平衡負載透過 CBR 配置檔 (以 cbrcontrol 指令) 所配置的伺服器,或是平衡負載來自 WAS 配置檔的伺服器。 有關平衡負載來自 WAS 配置檔之伺服器的進一步資訊,請參閱平衡負載 WebSphere Application Servers (WAS)

    CBR 的元件結構與 Dispatcher 極為相似。 CBR 是由下列功能所組成:

    CBR 的三個主要功能 (執行器、管理程式及通告器) 會互動, 以平衡及配送伺服器之間的進入要求。 除了平衡負載要求外,執行器還會監督新連線及現行連線的數目, 並且會提供這個資訊給管理程式。

    平衡負載不同類型內容的要求

    CBR 元件可讓您指定一組伺服器,以根據符合從屬站要求內容的正規表示式來處理要求。 CBR 可讓您分割您的站台,如此一來,不同的內容或應用程式服務就可以由不同組的伺服器來服務。此分割動作將會透通至存取您的站台的從屬站。

    分割您站台的內容以加快回應時間

    分割您的站台的其中一種方法,就是指派一些伺服器來專門處理 cgi 要求, 並指派另一組伺服器來處理所有其它的要求。 這樣可以停止計算密集的 cgi script,以防止降低伺服器處理一般 HTML 資料傳輸的速度, 以讓從屬站獲得較佳的整體回應時間。 若使用這個機制,您也可以指派功能更強大的工作站來應付一般的要求。 這樣可以提供從屬站較合適的回應時間,而不需花費來將您所有的伺服器升級。 您也可以指派功能更強大的工作站來應付 cgi 要求。

    另一個分割站台的可能性,就是將正在存取需要註冊之呼叫的從屬站導向一組伺服器, 並將其它所有的要求導向第二組伺服器。 這樣可以防止您站台上的任意瀏覽器用盡已確定註冊之從屬站所能使用的資源 。 如此也可以讓您使用功能更強大的工作站來服務這些已登錄的從屬站。

    您當然也可以將上述方法合併使用,以獲得更大的彈性及更好的服務。

    提供備份的 Web 伺服器內容

    因為 CBR 可讓您針對每種類型的要求來指定多重伺服器, 所以可將要求平衡負載,以獲得最佳的從屬站回應。 若將多重伺服器分派給每種類型的內容, 則某個工作站或伺服器失敗時,您會受到保護。CBR 會辨識失敗狀況,並繼續將從屬站要求平衡地傳送到該組的其它伺服器中。

    使用多重 Caching Proxy 程序來增進 CPU 使用率

    Caching Proxy 會透過其 plugin 介面與 CBR 程序通信。

    CBR 必須在本端機器上執行,這個作業才能運作。因為這些是兩個個別的程序, 所以多個 Caching Proxy 實例可以在執行中並使用單一 CBR 實例。 您可以配置這個設定,以便在 Caching Proxy 之間分離位址或功能, 或是使數個 Caching Proxy 處理從屬站資料傳輸,來改善機器的資源使用率。Proxy 實例可以監聽不同的埠,或連結到同一埠上的唯一 IP 位址, 取決於哪一個最適合於資料傳輸需求。

    使用規則型平衡負載及 CBR

    CBR 以及 Caching Proxy 會用指定的規則類型來檢查 HTTP 要求。 在執行時,Caching Proxy 會接收從屬站要求,並查詢 CBR 元件,以取得最佳伺服器。 根據此查詢,CBR 會將要求與一組按優先次序排列的規則比對。找到符合的規則後,就會從預先配置之伺服器組中選擇適當的伺服器。最後,CBR 會通知 Caching Proxy 所選擇的伺服器為何,而且會將要求 proxy 到該伺服器。

    一旦您將叢集定義為平衡負載,您必須確定對該叢集所做的所有要求, 都具有一個將會選擇伺服器的規則。 如果沒有找到符合特定要求的規則,從屬站就會從 Caching Proxy 接收一個錯誤頁面。 確定所有要求都會符合某個規則的最簡單方法,就是以極高的優先順序來建立一個「永遠為真」的規則。 請確定優先順序較低之規則所無法明確處理的所有要求,都能夠由此規則所使用的伺服器加以處理。 (備註:優先順序較低之規則會先被評估。)

    進一步資訊,請參閱配置規則型平衡負載

    平衡負載完全安全 (SSL) 連線

    具備 Caching Proxy 的 CBR 可接收從屬站到 proxy (client-to-proxy 端) 的 SSL 傳輸,並支援從 proxy 到 SSL 伺服器 (proxy-to-server 端) 的傳輸。 藉由在 CBR 配置中定義伺服器上的 SSL 埠以接收來自從屬站的 SSL 要求,您即能維護完全安全的站台,以 CBR 來平衡負載安全 (SSL) 伺服器。

    要讓 IBM Caching Proxy 在 proxy-to-server 端啟用 SSL 加密,ibmproxy.conf 檔中須新增一配置陳述式。

    其格式須為:

    proxy uri_pattern url_pattern address
    

    其中的 uri_pattern 是要比對的型樣 (例如:/secure/*),url_pattern 是置換 URL (例如:https://clusterA/secure/*),而 address 則是叢集位址 (例如:clusterA)。

    平衡負載 SSL 中的 client-to-proxy 及 HTTP 中的 proxy-to-serve

    具備 Caching Proxy 的 CBR 還可接收來自從屬站的 SSL 傳輸,然後解密 SSL 要求,之後再將此要求 proxy 到某一 HTTP 伺服器。 要使 CBR 支援 SSL 中的 client-to-proxy 及 HTTP 中的 proxy-to-server,有一選用性的關鍵字 mapport (於 cbrcontrol server 指令中) 可以使用。 當您需要指出伺服器上的埠不同於從屬站的進入埠時,即可使用此關鍵字。 以下是利用 mapport 關鍵字來新增某埠的範例,其中從屬站的埠是 443 (SSL) 而伺服器的埠是 80 (HTTP):

    cbrcontrol server add cluster:443 mapport 80
    

    mapport 的埠號可以是任何正整數值。預設值是從屬站之進入埠的埠號值。

    由於 CBR 須能將 HTTP 要求通告給埠 443 (SSL) 上所配置的伺服器,有一個特殊的通告器 ssl2http 因此產生。 此通告器是在埠 443 (從屬站的進入埠) 上啟動,並通告針對該埠所配置的伺服器。 若配置了兩個叢集且各叢集都具有埠 443 以及用不同 mapport 所配置的伺服器,則單一實例的通告器可據以開啟適當的埠。 以下是此種配置的範例:

    Executor
        Cluster1
           Port:443
               Server1 mapport 80
               Server2 mapport 8080
        Cluster2
           Port:443
               Server3 mapport 80
               Server4 mapport 8080
        Manager
          Advisor ssl2http 443
     
    

    平衡負載 WebSphere Application Servers (WAS)

    透過 CBR,您便能平衡負載放在叢集化 WAS (版本 5) 伺服器上的 Web 應用程式要求。 圖 20 所示為一種配置設置,其中有一高可用性 Dispatcher 機器會平衡負載第一層的 CBR (具備 Caching Proxy) 與第二層的 WebSphere Application Servers (以及 Web HTTP 伺服器)。

    圖 20. Dispatcher、CBR 及 WAS 部署作業的配置

    此圖形所示為「從屬站」、Internet 雲團、 高度可用的 Dispatcher 機器,其正在平衡負載第一層的 CBR 以及第二層的 WAS。

    CBR 可用 WAS 形式的相關性,同時讓有狀態與無狀態的要求被遞送到正確的 WAS 伺服器。 配置可藉由自動將 WAS HTTP plugin 配置檔 (具有 plugin-cfg.xml 的預設檔名) 對映至某一 CBR 配置來處理。 您可以用 cbrcontrol file newload 指令來載入 WAS HTTP plugin 配置檔。 此指令會將 WAS 配置檔對映到 CBR 配置。 若要儲存此配置檔,請使用 cbrcontrol file save 指令。

    一旦 Load Balancer 載入了 plugin 配置檔並對映至 CBR 配置,如果您需要變更 WAS 叢集配置,建議您最好重新載入已更新的 WAS HTTP plugin 配置檔。 以 newload 指令進行重新載入是更新 WAS 叢集配置的最佳方法,而不是用指令行或 GUI 將伺服器新增至 WAS 規則來更新配置。

    註:
    cbrcontrol file appendload 指令支援載入 WAS HTTP plugin 配置檔。您只能在現有 CBR 配置檔或已載入的 WAS HTTP plugin 配置上,appendload 標準的 CBR 配置檔。

    作為從 WAS 叢集配置到 CBR 配置之對映作業的一部份,所有規則以及關聯於 WAS plugin 配置檔所建規則的伺服器,皆具有下列資訊以識別其來源:

    位於後端 WAS 機器上的 WLMServlet 會執行伺服器當機偵測,並提供伺服器加權值資訊給 Load Balancer 的 WLMServlet Advisor。

    只有「WLMServlet 通告器」可在已配置成屬於 WAS 叢集的伺服器上進行通告。 其間 WLMServlet 不須常駐在 WAS 機器上。 如果 WLMServlet 未出現,伺服器加權值將預設成 WAS plugin 配置檔中所指定的加權值。


    配置 Content Based Routing 元件

    在執行本章中的步驟之前,請參閱規劃 Content Based Routing 元件。 本章將說明如何為 Load Balancer 的 CBR 元件建立基本配置。


    配置作業的概觀

    註:
    在您開始本表格中的配置步驟之前, 請確定您的 CBR 機器及所有伺服器機器均已連上網路、具有有效的 IP 位址, 以及能夠彼此測試 (ping) 對方是否在運行中。


    表 7. CBR 元件的配置作業

    作業 說明 相關資訊
    設定 CBR 機器。 找出基本需求。 設定 CBR 機器
    將機器設定為要執行平衡負載的功能。 設定您的平衡負載配置。 步驟 7. 定義已平衡負載的伺服器機器

    配置方法

    若要建立 Load Balancer 的 CBR 元件的基本配置,基本方法有四種:

    若要使用 CBR,須已安裝 Caching Proxy。

    註:
    Caching Proxy 是一種服務程式,在預設的狀況下會於安裝後自動啟動。 您必須先停止 Caching Proxy,然後才可啟動 CBR 伺服器功能 (cbrserver)。 建議您最好修改 Caching Proxy 服務程式,使其可以手動啟動,而非自動啟動。

    指令行

    這是配置 CBR 的最直接的方法。指令參數值須以英文字元輸入。 唯一的例外是主電腦名稱 (例如,用於叢集與伺服器指令) 及檔名。

    若要從指令行啟動 CBR:

    您可以輸入縮寫版的 cbrcontrol 指令參數。 只需要輸入參數的專用字母即可。例如,要取得存檔指令的說明,您可以鍵入 cbrcontrol he f 而非 cbrcontrol help file

    若要啟動指令行介面:請發出 cbrcontrol 以接收 cbrcontrol 指令提示。

    若要結束指令行介面:請發出 exitquit

    註:

    1. 在 Windows 2000 上,Dispatcher 元件的 dsserver 會自動啟動。 如果您只有使用 CBR 而無 Dispatcher 元件,可用下列方式來防止 dsserver 自動啟動:

      1. 在「Windows 2000 服務」視窗中,於 IBM Dispatcher 上按一下右鍵。
      2. 選取「內容」。
      3. 啟動類型欄位中,選取「手動」。
      4. 按一下「確定」,然後關閉「服務」視窗。

    2. 若您是從作業系統的指令提示而非 cbrcontrol>> 提示來配置 Content Based Routing (CBR) 時,請小心使用下列字元:

      ( ) 左括弧及右括弧

      & '&' 符號

      | 垂直線

      ! 驚嘆號

      * 星號

      作業系統的 Shell 可能會將這些字元解譯為特殊字元,並在 cbrcontrol 加以評估前將其轉換成替代文字。

      上述清單中的特殊字元對 cbrcontrol rule add 指令而言皆屬選用字元,而且是在指定內容規則的型樣時才使用。 例如,下列指令只在使用 cbrcontrol>> 提示時才屬有效。

      rule add 10.1.203.4:80:cbr_prod_rule_ek type content
        pattern client=181.0.153.222&uri=/nipoek/*
      

      若要使此同一指令在作業系統的提示下可以作用,須在型樣前後加上雙引號 (" "),如下所示:

      cbrcontrol rule add 10.1.203.4:80:cbr_prod_rule_ek type content
        pattern "client=181.0.153.222&uri=/nipoek/*"
      

      如果未使用引號,當規則存入 CBR 時,部份型樣將遭截斷。 請注意:使用 cbrcontrol>> 指令提示時,引號並不受支援。

    Script

    用於配置 CBR 的指令可以輸入到某一配置 script 檔中,然後一起執行。

    註:
    若要快速執行 Script 檔 (例如,myscript) 的內容,請使用下列一項指令:

    若要將現行配置存入 Script 檔 (例如,savescript) 中,請執行下列指令:

    cbrcontrol file save savescript
    

    此指令會將配置 Script 檔存入 ...ibm/edge/lb/servers/configurations/cbr 目錄。

    GUI

    如需圖形式使用者介面 (GUI) 的一般指示與範例,請參閱圖 41

    若要啟動 GUI,請遵循下列步驟

    1. 確定 cbrserver 正在執行。 以 Root 使用者或管理者身份,從指令提示發出下列指令:cbrserver
    2. 然後,請執行下列其中一項:
    3. 啟動 Caching Proxy。(在 GUI 中,您必須先連線至「主電腦」,並啟動 CBR 元件的「執行器」,之後才可啟動 Caching Proxy)。 然後,執行下列其中一項:

    若要從 GUI 來配置 CBR 元件,您必須先在樹狀結構中選取 Content Based Routing。 一旦連接到「主電腦」,即可啟動管理程式。您也可以建立含有埠及伺服器的叢集,並啟動管理程式的通告器。

    GUI 可以用來執行任何您會以 cbrcontrol 指令來執行的作業。例如,在使用指令行來定義叢集時,您會輸入 cbrcontrol cluster add cluster 指令。 若要從 GUI 來定義叢集,您可在執行器上按一下右鍵,然後在蹦現功能表中,對新增叢集按一下左鍵。 在蹦現視窗中鍵入叢集位址,然後按一下確定

    您可以用主電腦蹦現功能表中所顯示的載入新配置 (以完全取代現行配置) 及附加至現行配置 (以更新現行配置) 等選項,來載入先前即已存在的 CBR 配置檔。 您應定期使用另存配置檔選項 (也在主電腦蹦現功能表中) 來儲存您的 CBR。 位於 GUI 頂端的檔案功能表可讓您將現行的主電腦連線存到檔案中,或是復置所有的 Load Balancer 元件之現存檔案中的連線。

    您可以藉由按一下 Load Balancer 視窗右上角的問號圖示,來存取說明

    若要從 GUI 執行指令:請高亮度顯示 GUI 樹狀結構中的「主電腦」節點,並從「主電腦」蹦現功能表中選取傳送指令...。 在指令輸入欄位中,鍵入要執行的指令,例如:executor report。 您在現行階段作業中所執行的指令,其結果及歷程將出現在所提供的視窗中。

    使用 GUI 的相關資訊,請參閱附錄 A, GUI:一般指示

    配置精靈

    如果您要使用配置精靈,請遵循下列步驟:

    1. 啟動 cbrserver:以 Root 使用者或管理者身份,在指令提示下發出 cbrserver
    2. 啟動 CBR 的精靈功能:

      藉由發出 cbrwizard,從指令提示下起動此精靈。 或者, 從 GUI 中呈現的 CBR 元件功能表選取「配置精靈」。

    3. 啟動 Caching Proxy 以便平衡負載 HTTP 或 HTTPS (SSL) 資料傳輸。

      若是 AIX、Linux 或 Solaris:若要啟動 Caching Proxy,請輸入 ibmproxy

      若是 Windows 2000:若要啟動 Caching Proxy,請至「服務」畫面, 依序選取開始 > 設定 > 控制台 > 系統管理工具 > 服務

    CBR 精靈會一步步地指引您如何建立 CBR 元件的基本配置。它會詢問您一些關於網路的問題, 並指引您設定一個叢集,使得 CBR 能夠平衡一群伺服器之間的資料流量。


    設定 CBR 機器

    在設定 CBR 機器之前,您必須是 root 使用者 (對 AIX、Linux 或 Solaris 而言),或是 Windows 2000 上的管理者。

    所要設定之伺服器的每一個叢集都必須要有一個 IP 位址。 叢集位址是一個與主電腦名稱有關聯的位址 (如 www.company.com)。 從屬站將使用這個 IP 位址叢集,來連接叢集中的伺服器。 特別的是,這個位址可在由從屬站提出的 URL 要求中找到。 對同一叢集位址提出的所有要求都是由 CBR 來平衡負載。

    僅適用於 Solaris:在使用 CBR 元件前,須先修改 IPC (跨處理通信) 的系統預設值。 共用記憶體區段的最大大小及號誌識別碼的數目皆須增加。 若要調整您的系統以支援 CBR,請編輯您系統上的 /etc/system 檔案,新增下列陳述式,然後重新啟動:

    set shmsys:shminfo_shmmax=0x02000000
    set semsys:seminfo_semmap=750
    set semsys:seminfo_semmni=30
    set semsys:seminfo_semmns=750
    set semsys:seminfo_semmnu=30
    set semsys:seminfo_semume=30
    

    若未將共用記憶體區段增加至上述之值,cbrcontrol executor start 指令將會失敗。

    步驟 1. 配置 Caching Proxy 以使用 CBR

    若要使用 CBR,須已安裝 Caching Proxy。

    註:
    Caching Proxy 是一種服務程式,在預設的狀況下會於安裝後自動啟動。 您必須先停止 Caching Proxy,然後才可啟動 CBR 伺服器功能。 建議您最好修改 Caching Proxy 服務程式,使其可以手動啟動,而非自動啟動。

    您必須對 Caching Proxy 配置檔 (ibmproxy.conf) 進行下列修改:

    確定送入的 URL 指引 CacheByIncomingUrl 是 "off" (預設值)。

    在配置檔的對映規則區段中,對於每一個叢集,新增如下的對映規則:

    Proxy    /*  http://cluster.domain.com/*    cluster.domain.com
    
    註:
    CBR 稍後會設定通信協定、伺服器及目標埠。

    CBR Plug-in 有四個項目必須編輯:

    每一個項目都必須在單一行上。 ibmproxy.conf 檔中有數個 "ServerInit" 實例,每一個 plug-in 皆有一個。 "CBR Plug-in" 的項目須經編輯並取消備註。

    以下所示為 AIX、Linux、Solaris 及 Windows 2000 等類配置檔的特定新增內容。

    圖 21. AIX、Linux 及 Solaris 的 CBR 配置檔


    ServerInit  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndServerInit
     
    PostAuth  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndPostAuth
     
    PostExit  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndPostExit
     
    ServerTerm  /opt/ibm/edge/lb/servers/lib/libndcbr.so:ndServerTerm
    

    圖 22. Windows 2000 的 CBR 配置檔


    ServerInit  c:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndServerInit
     
    PostAuth  c:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndPostAuth
     
    PostExit  c:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndPostExit
     
    ServerTerm  c:\Program Files\IBM\edge\lb\servers\lib\libndcbr.dll:ndServerTerm
    

    步驟 2. 啟動伺服器功能

    若要啟動 CBR 伺服器功能,請在指令行上鍵入 cbrserver

    當啟動 cbrserver 時,預設配置檔 (default.cfg) 會自動載入。

    如果使用者決定將 CBR 配置存入 default.cfg,則在下次啟動 cbrserver 時,系統會自動載入此檔案中儲存的所有內容。

    步驟 3. 啟動執行器功能

    欲啟動執行器功能時,請輸入 cbrcontrol executor start 指令。 此時,您也可以變更不同的執行器設定。請參閱dscontrol executor -- 控制執行器

    步驟 4. 定義叢集及設定叢集選項

    CBR 會將針對叢集所傳送的要求,平衡分配到在該叢集的埠上所配置的對應伺服器。

    此叢集即為位於 URL 的主電腦部份中的符號名稱,而且應該符合 ibmproxy.conf 檔的 Proxy 陳述式中所使用的名稱。

    若要定義一個叢集,請發出下列指令:

    cbrcontrol cluster add cluster
    

    若要設定叢集選項,請發出下列指令:

    cbrcontrol cluster set cluster option value
    

    相關資訊,請參閱Dispatcher 及 CBR 的指令參照

    步驟 5. 為網路介面卡設定別名 (選用性的)

    如果您正在執行配置為反向 Proxy 的 Caching Proxy,則在為多重網站進行平衡負載時,您至少須為 Load Balancer 方框的一個網路介面卡,新增各網站的叢集位址。 如果不是,則可省略此步驟。

    若是 AIX、Linux 或 Solaris:若要新增叢集位址給網路介面,請使用 ifconfig 指令。 對應於您的作業系統的指令如表 8 所示。


    表 8. 為網路介面卡設定別名的指令

    AIX ifconfig interface_name alias cluster_address netmask netmask
    Linux ifconfig interface_name cluster_address netmask netmask up
    Solaris 7 ifconfig interface_name cluster_address netmask netmask up
    Solaris 8 ifconfig addif interface_name cluster_address netmask netmask up

    註:
    對 Linux 及 Solaris 而言,interface_name 須具有所新增之各個叢集位址的唯一號碼,例如:eth0:1、eth0:2 等等。

    若是 Windows:若要新增叢集位址給網路介面,請執行下列步驟:

    1. 依序按一下開始設定控制台
    2. 按兩下網路和撥號連線
    3. 區域連線上按一下滑鼠右鍵。
    4. 選取內容
    5. 選取 Internet 通信協定 (TCP/IP),然後按一下內容
    6. 選取使用下列 IP 位址,然後按一下進階
    7. 按一下新增,然後鍵入叢集的 IP 位址子網路遮罩

    步驟 6. 定義埠及設定埠選項

    埠號是伺服器應用程式所監聽的埠。對於具有正執行 HTTP 資料傳輸的 Caching Proxy 的 CBR 而言,埠號通常是埠 80。

    若要定義您已在前一步驟中定義的叢集埠,請發出下列指令:

    cbrcontrol port add cluster:port
    

    若要設定埠選項,請發出下列指令:

    cbrcontrol port set cluster:port option value
    

    相關資訊,請參閱Dispatcher 及 CBR 的指令參照

    步驟 7. 定義已平衡負載的伺服器機器

    伺服器機器是執行您想要平衡負載之應用程式的機器。 server 是伺服器機器的符號式名稱或帶點十進位數位址。若要在叢集及埠上定義伺服器,請發出下列指令:

    cbrcontrol server add cluster:port:server 
    

    叢集上的每一個埠都必須定義一個以上的伺服器,以執行平衡負載。

    步驟 8. 新增規則至您的配置中

    這是利用 Caching Proxy 配置 CBR 時的關鍵步驟。 規則可定義要如何分辨 URL 要求,並將它傳送至伺服器組中的一個適當的伺服器。 CBR 所使用的這個特殊規則類型就叫做內容規則。 若要定義內容規則,請發出下列指令:

    cbrcontrol rule add cluster:port:rule type content pattern pattern
    

    pattern 是正規表示式,它將會與每一個從屬站要求中的 URL 作比較。 有關如何配置型樣的進一步資訊,請參閱附錄 B, 內容規則 (型樣) 語法

    Dispatcher 中所定義的部份其它規則類型也可以用在 CBR 中。相關資訊,請參閱配置規則型平衡負載

    步驟 9. 為您的規則新增伺服器

    當從屬站要求符合某個規則後,就會在該規則的伺服器群組中找尋最佳 的伺服器。 規則的伺服器組是埠中所定義之伺服器的子集。 若要新增伺服器到規則的伺服器組,請發出下列指令:

    cbrcontrol rule useserver cluster:port:rule server
    

    步驟 10. 啟動管理程式功能 (選用性的)

    管理程式功能可增進平衡負載。若要啟動管理程式,請發出下列指令:

    cbrcontrol manager start
    

    步驟 11. 啟動通告器功能 (選用性的)

    通告器將提供管理程式有關平衡負載伺服器機器能夠回應要求的詳細資訊。 通告器是專用於某個通訊協定。例如,若要啟動 HTTP 通告器, 請發出下列指令:

    cbrcontrol advisor start http port
    

    步驟 12. 依需要設定叢集比例

    如果啟動通告器,您可以修改平衡負載決策中所含之通告器資訊的重要性比例。 若要設定叢集比例,請發出 cbrcontrol cluster set cluster proportions 指令。 相關資訊,請參閱狀態資訊所給定的重要性比例

    步驟 13. 啟動 Caching Proxy

    在新的環境中,啟動 Caching Proxy:從指令提示發出 ibmproxy

    註:
    若是 Windows 2000:從「服務」畫面啟動 Caching Proxy:開始 -> 設定 -> 控制台 -> 系統管理工具 -> 服務

    CBR 配置範例

    若要配置 CBR,請遵循下列步驟:

    1. 啟動 CBR:發出 cbrserver 指令。
    2. 啟動指令行介面:發出 cbrcontrol 指令。
    3. cbrcontrol 會提示您發出下列指令。 (cluster(c),port(p),rule(r),server(s))
    4. 啟動 Caching Proxy:發出 ibmproxy 指令。 (若是 Windows 2000,請從「服務」畫面啟動 Caching Proxy)。
    5. 從瀏覽器移除所有的 Proxy 配置。
    6. http://c/ 載入至您的瀏覽器中,其中的 "'c" 是您在上面所配置的叢集。

    Site Selector 元件

    本篇提供快速入門配置的相關資訊、規劃注意事項,以及說明配置 Load Balancer Site Selector 元件的方法。 它含有下列各章:


    快速入門配置

    此快速入門範例將說明如何利用 Site Selector 建立站台名稱配置,並根據從屬站要求所用的網域名稱,以 Site Selector 來平衡負載一組伺服器間的資料傳輸。

    圖 23. 簡單的 Site Selector 配置

    此圖形所示為「從屬站」、Internet 雲團、Load Balancer 機器及兩個具有已識別位址的本端附加伺服器。


    您將需要的項目

    就此快速入門配置範例而言,您將需要下列項目:


    如何準備

    在此快速入門範例中,該公司的站台網域是 mywebshop.com。 由於 Site Selector 將被平衡負載給此網域中一個以上的 URL 或站台,所以您將須定義子網域 (apps.mywebshop.com)。 Site Selector 對 apps.mywebservice.com 子網域具有權限。 子網域 apps.mywebshop.com 會包含下列站台名稱:marketing.apps.mywebshop.com 及 developer.apps.mywebshop.com。

    1. 更新公司站台的網域名稱伺服器 (請參閱圖 23)。 在 named.data 檔中對子網域 (apps.mywebshop.com) 建立一個名稱伺服器記錄,其中的 Site Selector 是具有權限的名稱伺服器:

      apps.mywebshop.com. IN NS siteselector.mywebshop.com

    2. 確定 URL 或站台並未在現行網域名稱系統中解析。
    3. 在您想交由 Site Selector 進行平衡負載的伺服器 (伺服器 1、伺服器 2、伺服器 3、伺服器 4) 上安裝 Metric Server。請參閱Metric Server,以取得進一步資訊。

    配置 Site Selector 元件

    有了 Site Selector,您就可以用指令行、配置精靈或圖形式使用者介面 (GUI) 來建立配置。 在此快速入門範例中,相關的配置步驟是以指令行來作示範。

    註:
    參數值須以英文字元來鍵入。唯一的例外是主電腦名稱與檔名此兩者的參數值。

    使用指令行來配置

    從指令提示,遵循下列步驟:

    1. 在 Site Selector 上啟動 ssserver。以 Root 使用者或管理者身份,從指令提示發出下列指令:ssserver
      註:
      若是 Windows 2000:從「服務」畫面啟動 ssserver (IBM Site Selector): 開始 > 設定 > 控制台 > 系統管理工具 > 服務
    2. 在 Site Selector 配置站台名稱 (marketing.apps.mywebshop.com 及 developer.apps.mywebshop.com):

      sscontrol sitename add marketing.apps.mywebshop.com

      sscontrol sitename add developer.apps.mywebshop.com

    3. 新增伺服器到 Site Selector 配置。 (配置 server1 及 server2 給站台名稱 marketing.apps.mywebshop.com。 配置 server3 及 server4 給站台名稱 developer.apps.myeebshop.com):

      sscontrol server add marketing.apps.mywebshop.com:server1+server2

      sscontrol server add developer.apps.mywebshop.com:server3+server4

    4. 啟動 Site Selector 的管理程式功能:

      sscontrol manager start

    5. 啟動 Site Selector 的通告器功能 (marketing.apps.mywebshop.com 的 HTTP 通告器及 developer.apps.mywebshop 的 FTP 通告器):

      sscontrol advisor start http marketing.apps.mywebshop.com:80

      sscontrol advisor start ftp developer.apps.mywebshop.com:21

      Site Selector 現在會確定從屬站要求並沒有傳送到失敗的伺服器。

    6. 在 Site Selector 配置上啟動名稱伺服器:

      sscontrol nameserver start

    7. 確定已在各個已平衡負載的伺服器上啟動 Metric Server。

    您的基本 Site Selector 配置現在已經完成。

    測試您的配置

    測試配置是否可運作。

    1. 嘗試去 ping 站台名稱。名稱將解析為其中一個已配置之伺服器的 IP 位址
    2. 連結至應用程式、瀏覽站台名稱並做出有效的要求。例如:
    3. 查看下列指令的結果:

      sscontrol server status marketing.apps.mywebshop.com:

      sscontrol server status developer.apps.mywebshop.com:

      各伺服器的點閱項目應加總為 ping 及應用程式要求

    使用圖形式使用者介面 (GUI) 來配置

    如需使用 Site Selector GUI 的相關資訊,請參閱GUI附錄 A, GUI:一般指示

    使用配置精靈來配置

    如需使用 Site Selector 精靈的相關資訊,請參閱配置精靈


    規劃 Site Selector 元件

    本章將說明在安裝與配置 Site Selector 元件之前,網路規劃者應該考慮的事項。

    本章包括下列各節:


    硬體與軟體的基本需求


    規劃考量

    Site Selector 可與網域名稱伺服器搭配使用,以所收集的測量值與加權值,來平衡負載一組伺服器。 您可以建立站台配置,藉以依據從屬站要求所使用的網域名稱,來平衡負載一組伺服器間的資料傳輸。

    圖 24. DNS 環境的範例


    在您的 DNS 環境中設定 Site Selector 的子網域時,Site Selector 須對其本身的子網域具有權限。 例如 (請參閱圖 24),貴公司對 company.com 網域已具有權限。 在公司內部,另有一些子網域。 Site Selector 將具有 siteload.company.com 的權限,而 DNS 伺服器則仍然保有 atlanta.company.comboston.company.com 的權限。

    為使公司的名稱伺服器可將 Site Selector 辨識為對 siteload 子網域具有權限,則必須在它的指名的資料檔中新增名稱伺服器項目。 例如,在 AIX 上,此名稱伺服器項目可能如下:

    siteload.company.com. IN NS siteselector.company.com.
    

    其中的 siteselector.company.com 是 Site Selector 機器的主電腦名稱。 若要供 DNS 伺服器使用,還須在任何其它已命名的資料庫檔案中製作相等的項目。

    從屬站會向其網路中的名稱伺服器送出要求,為其解析網域名稱。 名稱伺服器會將此要求轉送給 Site Selector 機器。 Site Selector 接著便將網域名稱解析成 IP 位址,而此位址屬於站台名稱下所配置的某一伺服器。 Site Selector 會將選定伺服器的 IP 位址傳回給名稱伺服器。 名稱伺服器則會將 IP 位址傳回給從屬站。 (Site Selector 擔當非遞迴 (葉節點) 名稱伺服器,如果它無法解析網域名稱要求即會傳回錯誤。)

    請參閱圖 5,其中所示的站台搭配使用了 Site Selector 與 DNS 系統,來平衡負載本端及遠端伺服器。

    Site Selector 是由下列功能所組成:

    Site Selector 的四個主要功能 (名稱伺服器、管理程式、Metric Server 及通告器) 會彼此互動,以平衡及解析各伺服器之間的進入要求。

    TTL 注意事項

    使用 DNS 型平衡負載時,須停用名稱解析的快取功能。TTL (維持時間) 值會決定 DNS 型平衡負載的效益。 TTL 將決定另一個 nameserver 把已解析回應存入快取的時間長短。 TTL 值愈小,愈可快速分辨伺服器或網路負載中的微妙變化。 不過,停用快取會使從屬站在進行每一個名稱解析要求時皆須聯繫具有權限之名稱伺服器,因而可能增加從屬站的潛伏期。 選擇 TTL 值時,須務必注意停用快取會對環境造成的影響。 另外還須注意 DNS 型平衡負載極可能會受從屬站端的名稱解析快取所限制。

    TTL 可用 sscontrol sitename [add | set] 指令來配置。相關資訊,請參閱sscontrol sitename -- 配置 sitename

    使用「網路接近」特性

    所謂網路接近是指計算各伺服器距要求方從屬站的接近程度。 要決定網路接近,Metric Server 代理程式 (須常駐於各個已平衡負載的伺服器上) 會傳送一個 ping 給從屬站 IP 位址, 並將回應時間傳回給 Site Selector。Site Selector 將會在平衡負載決策中使用此接近回應。Site Selector 會合併網路接近回應值與來自管理程式的加權值,以便為伺服器建立合併的最終加權值。

    將網路接近特性搭配 Site Selector 來使用是選用性的。

    Site Selector 提供有下列網路接近選項,可依據站台名稱來加以設定:

    網路接近選項可在 sscontrol sitename [add | set] 指令上設定。 相關資訊,請參閱Site Selector 指令參照


    配置 Site Selector 元件

    在遵循本章中的步驟之前,請參閱規劃 Site Selector 元件。 本章將說明如何為 Load Balancer 的 Site Selector 元件建立基本配置。


    配置作業的概觀

    註:
    在您開始本表格中的配置步驟之前, 請確定您的 Site Selector 機器及所有伺服器機器均已連上網路、具有有效的 IP 位址, 以及能夠彼此測試對方是否在運行中。

    表 9. Site Selector 元件的配置作業

    作業 說明 相關資訊
    設定 Site Selector 機器。 找出基本需求。 設定 Site Selector 機器
    將機器設定為要執行平衡負載的功能。 設定您的平衡負載配置。 步驟 4. 定義平衡負載的伺服器機器

    配置方法

    若要針對 Load Balancer 的 Site Selector 元件建立基本配置,共有四種方法可供配置 Site Selector 元件:

    指令行

    這是配置 Site Selector 的最直接方法。指令參數值必須以英文字元輸入。 唯一的例外是主電腦名稱 (例如,站台名稱與伺服器指令中所用者) 及檔名。

    若要從指令行啟動 Site Selector:

    1. 從指令提示發出 ssserver 指令。 若要停止此服務,請鍵入:ssserver stop
      註:
      若是 Windows 2000,請按一下開始 > 設定 > 控制台 > 系統管理工具 > 服務。用滑鼠右鍵按一下 IBM Site Selector,然後選取啟動。若要停止服務,請遵循相同的步驟,然後選取停止
    2. 然後,發出您想執行的 Site Selector 控制指令,以便設定您的配置。 本手冊中的程序是假設使用的是指令行。 其指令為 sscontrol。指令的相關資訊,請參閱Site Selector 指令參照

    您可以輸入 sscontrol 指令參數的精簡版本。 只需要輸入參數的專用字母即可。例如,若要取得有關存檔指令的說明,您可以鍵入 sscontrol he f 而非 sscontrol help file

    若要啟動指令行介面:請發出 sscontrol 以接收 sscontrol 指令提示。

    若要結束指令行介面:請發出 exitquit

    註:
    在 Windows 2000 上,Dispatcher 元件的 dsserver 會自動啟動。 如果您只有使用 Site Selector 而無 Dispatcher 元件,可用下列方式來防止 dsserver 自動啟動:

    1. 在「Windows 2000 服務」視窗中,於 IBM Dispatcher 上按一下右鍵。
    2. 選取「內容」。
    3. 啟動類型欄位中,選取「手動」。
    4. 按一下「確定」,然後關閉「服務」視窗。

    Script

    用於配置 Site Selector 的指令可以輸入到某一配置 script 檔中,然後一起執行。

    註:
    若要快速執行 Script 檔 (例如,myscript) 的內容,請使用下列其中一項指令:

    若要將現行配置存入 Script 檔 (例如,savescript) 中,請執行下列指令:

    sscontrol file save savescript
    

    此指令會將配置 Script 檔存入 ...ibm/edge/lb/servers/configurations/ss 目錄中。

    GUI

    如需 GUI 的一般指示與範例,請參閱圖 41

    若要啟動 GUI,請遵循下列步驟

    1. 確定 ssserver 正在執行。以 Root 使用者或管理者身份,從指令提示發出下列指令:ssserver
    2. 然後,請執行下列其中一項:

    若要從 GUI 來配置 Site Selector 元件,您必須先在樹狀結構中選取 Site Selector。一旦連接到「主電腦」,即可啟動管理程式。 您也可以建立含有埠及伺服器的站台名稱,並啟動管理程式的通告器。

    GUI 可以用來執行任何您會以 sscontrol 指令來執行的作業。 例如,使用指令行來定義站台名稱時,您會輸入 sscontrol sitename add sitename 指令。 若要從 GUI 來定義站台名稱,您可在名稱伺服器上按一下右鍵,然後在蹦現功能表中,對新增站台名稱按一下左鍵。 在蹦現視窗中輸入站台名稱,然後按一下確定

    您可以用主電腦蹦現功能表中所顯示的載入新配置 (以完全取代現行配置) 及附加至現行配置 (以更新現行配置) 等選項,來載入先前即已存在的 Site Selector 配置檔。 您應定期使用另存配置檔選項 (也在主電腦蹦現功能表中) 將您的 Site Selector 配置存檔。 位於 GUI 頂端的檔案功能表,可讓您將現行的主電腦連線存檔,或是復置所有 Load Balancer 元件其現有檔案中的連線。

    若要從 GUI 執行指令:請高亮度顯示 GUI 樹狀結構中的「主電腦」節點,並從「主電腦」蹦現功能表中選取傳送指令....。 在指令輸入欄位中,鍵入要執行的指令,例如:nameserver status。 您在現行階段作業中所執行的指令,其結果及歷程將出現在所提供的視窗中。

    您可以藉由按一下 Load Balancer 視窗右上角的問號圖示,來存取說明

    使用 GUI 的相關資訊,請參閱附錄 A, GUI:一般指示

    配置精靈

    如果您要使用配置精靈,請遵循下列步驟:

    1. 在 Site Selector 上啟動 ssserver:

    2. 啟動 Site Selector 的精靈功能,sswizard

      您可以發出 sswizard,從指令提示啟動這個精靈。 或者,從 GUI 中呈現的 Site Selector 元件功能表選取「配置精靈」。

    Site Selector 精靈會一步步地指引您如何建立 Site Selector 元件的基本配置。 它會詢問您一些關於網路的問題,並指引您設定站台名稱,使得 Site Selector 能夠平衡負載一組伺服器之間的資料傳輸。


    設定 Site Selector 機器

    在設定 Site Selector 機器之前,您必須是 root 使用者 (對 AIX、Linux 或 Solaris 而言),或是 Windows 2000 上的管理者。

    您將須用無法解析的 DNS 主電腦名稱,來作為您所設定之一組伺服器的站台名稱。 此站台名稱即為從屬站存取您的站台時所用的名稱 (例如 www.yourcompany.com)。 Site Selector 將會用 DNS 在此組伺服器之間,平衡負載此站台名稱的資料傳輸。

    步驟 1. 啟動伺服器功能

    AIX、Linux 及 Solaris:若要啟動伺服器功能,請輸入 ssserver

    註:
    當啟動 ssserver 時,預設配置檔 (default.cfg) 即會自動載入。

    如果您決定將配置存入 default.cfg,則在下次啟動 ssserver 時,系統會自動載入此檔案中儲存的所有內容。

    步驟 2. 啟動名稱伺服器

    若要啟動名稱伺服器,請輸入 sscontrol nameserver start 指令。

    選用性地,以 bindaddress 關鍵字啟動「名稱伺服器」,以便只連結到指定的位址。

    步驟 3. 定義站台名稱並設定站台名稱選項

    Site Selector 會將傳送給站台名稱的要求,平衡分配到針對其所配置的對應伺服器。

    站台名稱是一種不可解析的主電腦名稱 (從屬站會對其提出要求)。 站台名稱必須是完整定義的網域名稱 (例如,www.dnsdownload.com)。 當從屬站要求此站台名稱時,所傳回的將是與站台名稱相關的 IP 位址之一。

    若要定義站台名稱,請發出下列指令:

    sscontrol sitename add sitename
    

    若要設定站台名稱選項,請發出下列指令:

    sscontrol sitename set sitename option value
    

    進一步資訊,請參閱Site Selector 指令參照

    步驟 4. 定義平衡負載的伺服器機器

    伺服器機器是執行您想要平衡負載之應用程式的機器。 server 是伺服器機器的符號式名稱或帶點十進位數位址。若要從步驟 3 的站台名稱上定義伺服器,請發出下列指令:

    sscontrol server add sitename:server 
    

    您必須在站台名稱下定義一個以上的伺服器,才可執行平衡負載。

    步驟 5. 啟動管理程式功能 (選用性的)

    管理程式功能可增進平衡負載。在啟動管理程式功能之前,請確定所有已平衡負載的機器皆安裝了測量單位伺服器。

    若要啟動管理程式,請發出下列指令:

    sscontrol manager start
    

    步驟 6. 啟動通告器功能 (選用性的)

    通告器將提供管理程式有關平衡負載伺服器機器能夠回應要求的詳細資訊。 通告器是專用於某個通訊協定。Load Balancer 提供有許多通告器。 例如,若要啟動特定站台名稱的 HTTP 通告器,請發出下列指令:

    sscontrol advisor start http sitename:port
    

    步驟 7. 定義系統測量單位 (選用性的)

    有關如何使用系統測量單位及 Metric Server 的詳細資訊,請參閱Metric Server

    步驟 8. 依需要設定站台名稱比例

    如果啟動通告器,您可以修改平衡負載決策中所內含之通告器 (埠) 資訊的重要性比例。 若要設定站台名稱比例,請發出 sscontrol sitename set sitename proportions 指令。相關資訊,請參閱狀態資訊所給定的重要性比例


    設定伺服器機器以進行平衡負載

    建議您搭配使用 Metric Server 與 Site Selector 元件。 有關如何在 Site Selector 所平衡負載之所有伺服器機器上設定 Metric Server 的詳細資訊,請參閱Metric Server


    Cisco CSS Controller 元件

    本篇提供快速入門配置的相關資訊、規劃注意事項,以及說明配置 Load Balancer Cisco CSS Controller 元件的方法。 它含有下列各章:


    快速入門配置

    此快速入門範例將說明如何使用 Cisco CSS Controller 元件來建立配置。 Cisco CSS Controller 會提供伺服器加權資訊,以便在進行平衡負載決策時,輔助 Cisco CSS Switch 決定最佳的伺服器選項。

    圖 25. 簡單的 Cisco CSS Controller 配置

    顯示基本 Cisco CSS Controller 配置的圖形


    您將需要的項目

    就此快速入門配置範例而言,您將需要下列項目:


    如何準備

    開始配置此範例之前,確定已完成下列步驟:


    配置 Cisco CSS Controller 元件

    透過 Cisco CSS Controller,您可以用指令行或圖形式使用者介面 (GUI) 來建立配置。 在此快速入門範例中,相關的配置步驟是以指令行來作示範。

    註:
    參數值須以英文字元來鍵入。 唯一的例外是主電腦名稱與檔名此兩者的參數值。

    使用指令行來配置

    從指令提示,遵循下列步驟:

    1. 在 Cisco CSS Controller 上啟動 ccoserver。以 Root 使用者或管理者身份,從指令提示發出下列指令:ccoserver
    2. 新增一交換器顧問到 Cisco CSS Controller 配置中,並指定 Cisco CSS Switch IP 介面位址與讀/寫團體名稱。 這些值必須符合 Cisco CSS Switch 上的對應屬性:

      ccocontrol consultant add SwConsultant-1 address 9.17.32.50 community public

      如此即會檢查 Cisco CSS Switch 的連通性,而且會驗證 SNMP 讀/寫團體名稱是否正確運作。

    3. 新增 ownercontent (OwnerContent-1) 給交換器顧問,並指定 ownername (OwnerName-1) 及 contentrule (ContentRule-1):

      ccocontrol ownercontent add SwConsultant-1:OwnerContent-1 ownername OwnerName-1 contentrule ContentRule-1

      這些值必須符合 Cisco CSS Switch 上的對應屬性。

      Cisco CSS Controller 此時可透過 SNMP 與交換器通信,並會從交換器取得所需的配置資訊。 經過此步驟後,您應該會在 Cisco CSS Controller 中看到相關資訊,指出 Cisco CSS Switch 上已配置哪些服務給指定的 ownercontent。

    4. 配置用於收集 (作用中連線、連線速率、HTTP) 的測量單位類型,以及 ownercontent 上各測量單位的比例:

      ccocontrol ownercontent metrics SwConsultant-1:OwnerContent-1 activeconn 45 connrate 45 http 10

      此指令將會配置您要從服務收集哪些測量單位資訊及比例,以便用於加權值計算。 所有測量單位的合計比例須等於 100。

    5. 啟動 Cisco CSS Controller 的交換器顧問功能:

      ccocontrol consultant start SwConsultant-1

      透過此指令,所有的測量單位收集器將會啟動,服務加權值計算也會展開。 Cisco CSS Controller 會將其服務加權值計算的結果透過 SNMP 傳給 Cisco CSS Switch。

    您的基本 Cisco CSS Controller 配置現在已經完成。

    測試您的配置

    測試配置是否可運作。

    1. 從 Client Web 瀏覽器跳至 http://www.Intersplash.com 位置。如果出現網頁,則表示全部可運作。
    2. 在 Web 瀏覽器中重新載入網頁。
    3. 查看下列指令的結果:ccocontrol service report SwConsultant-1:OwnerContent-1:Service-1。這兩個 Web 伺服器的連線總數直欄應加總為 『2』。

    使用圖形式使用者介面 (GUI) 來配置

    如需使用 Cisco CSS Controller GUI 的相關資訊,請參閱GUI附錄 A, GUI:一般指示


    規劃 Cisco CSS Controller 元件

    本章將說明在安裝與配置 Cisco CSS Controller 元件之前,網路規劃者所應考慮的事項。

    本章包含:


    硬體與軟體的基本需求

    硬體基本需求

    軟體基本需求


    規劃考量

    Cisco CSS Controller 可管理一組交換器顧問。每一顧問會決定由單一交換器所平衡負載之伺服器的加權值。 由顧問提供加權值的交換器則會經過配置來進行內容平衡負載。 顧問會透過 SNMP 通信協定將計算出來的加權值傳給交換器。 當平衡負載演算法為加權環繞式時,交換器會用加權值來針對其所平衡負載的內容規則選取服務程式。 要決定加權值時,顧問會用到下列的一或多項資訊:

    有關內容平衡負載的說明與如何配置交換器的詳細資訊,請參閱 Cisco Content Services Switch Getting Started Guide

    為使顧問取得所需資訊以決定服務加權值,您必須具有:

    在網路中設置顧問

    圖 26 中所示,我們建議應將顧問連結到其為之提供加權值的交換器後側的網路。 要啟用控制器、交換器及服務程式之間的連通性,有些參數必須在交換器上配置,而有些則須在控制器上配置。

    圖 26 中:

    如需配置 VLAN 及交換器 IP 路由的詳細資訊,請參閱 Cisco Content Services Switch Getting Started Guide

    圖 26. 將顧問連結至交換器後方的範例

    交換器後方的顧問

    您可以使用下列任何介面來管理 Cisco CSS Controller:

    若要進行遠端管理,在圖 27 中:

    詳細資訊,請參閱 Cisco Content Services Switch Getting Started Guide

    圖 27. 顧問範例 (具有選用的高可用性友機),配置在交換器之後,而使用者介面在交換器前方

    顧問位於交換器後方;使用者介面位於交換器、選用的高可用性友機前方

    高可用性

    控制器高可用性可加強 Load Balancer 的容錯功能。 控制器高可用性的設計中心為封包轉送高可用性, 其包括兩個同時執行的控制器,一個扮演主要角色,另一個則扮演次要角色。

    每一個控制器都是以相同的交換器資訊來配置的,而且一次僅有一個作用中的控制器。這表示,如同高可用性邏輯所決定的一般,僅作用中控制器會利用新的加權值計算及更新交換器。

    控制器高可用性使用簡單使用者資料圖通信協定 (UDP) 封包,透過您配置的位址及埠, 與它的友機通信。當資訊屬於高可用性 (連繫資訊) 時,這些封包會用來在控制器之間交換此資訊,並且決定友機控制器可用性 (通訊檢查訊息)。如果備用控制器判定作用中控制器因為任何理由而發生故障, 則備用控制器將從故障的作用中控制器接管。然後,備用控制器將變成作用中控制器, 而且開始以新的加權值計算及更新交換器。

    除了友機可用性之外,您可以配置連繫目標以取得高可用性。 控制器高可用性會使用連繫資訊,來判定哪一個控制器是作用中, 哪一個是備用的。作用中控制器就是可以 ping 多個目標且可以從它的友機連繫的控制器。

    請參閱高可用性,以取得進一步資訊。

    計算加權值

    如果顧問判定一個服務無法使用時,它會在交換器上暫停該服務,以防止交換器對要求進行平衡負載時會考慮使用此伺服器。 當服務再次可用時,顧問將在交換器上啟動服務,以便在對要求進行平衡負載時考慮使用它。

    問題判定

    Cisco CSS Controller 會將登錄項目傳遞到下列日誌:

    這些日誌位於下列目錄:

    在每一種日誌中,您都可設定日誌大小與記載層次。 相關資訊,請參閱使用 Load Balancer 日誌


    配置 Cisco CSS Controller 元件

    在遵循本章中的步驟之前,請參閱規劃 Cisco CSS Controller 元件。 本章將說明如何為 Load Balancer 的 Cisco CSS Controller 元件建立基本配置。


    配置作業的概觀

    開始本章所列的任何配置方法之前:

    1. 確定已適當地配置您的 Cisco CSS Switch 及所有伺服器機器。
    2. 配置 Cisco CSS Controller,確定 Cisco CSS Switch 的位址及 SNMP 團體名稱符合 Cisco CSS Switch 上的對應屬性。 有關如何配置顧問的資訊,請參閱ccocontrol consultant -- 配置及控制顧問


    表 10. Cisco CSS Controller 元件的配置作業

    作業 說明 相關資訊
    設定 Cisco CSS Controller 機器 找出基本需求 設定 Controller for Cisco CSS Switches 機器
    測試您的配置 確認配置是否可運作 測試您的配置

    配置方法

    若要建立 Load Balancer 的 Cisco CSS Controller 元件的基本配置,其方法有三種:

    指令行

    這是配置 Cisco CSS Controller 的最直接方法。本手冊中的程序是假設使用的是指令行。 指令參數值必須以英文字元輸入。 唯一的例外是主電腦名稱 (例如,用於 consultant add 指令) 及檔名。

    若要從指令行啟動 Cisco CSS Controller:

    1. 從指令提示發出 ccoserver 指令。 若要停止服務,請鍵入:ccoserver stop

      註:

      1. 若是 Windows 2000,請按一下開始 > 設定 > 控制台 > 系統管理工具 > 服務。用滑鼠右鍵按一下 IBM Cisco CSS Controller,然後選取啟動。若要停止服務,請遵循相同的步驟,然後選取停止

      2. 在 Windows 2000,您可以在開機期間自動啟動 ccoserver
        1. 按一下開始 > 設定 > 控制台 > 系統管理工具 > 服務
        2. 用滑鼠右鍵按一下 IBM Cisco CSS Controller,然後選取內容
        3. 按一下啟動類型欄位的箭頭,然後選取自動
        4. 按一下確定
    2. 然後,發出您想用來設定您的配置的 Cisco CSS Controller 控制指令。本手冊中的程序是假設使用的是指令行。 此指令為 ccocontrol。指令的相關資訊,請參閱Cisco CSS Controller 的指令參照

    您可以輸入縮寫版的 ccocontrol 指令參數。 只需要輸入參數的專用字母即可。例如,若要取得有關存檔指令的說明, 您可以鍵入 ccocontrol he f 而非 ccocontrol help file

    若要啟動指令行介面:請發出 ccocontrol 以接收 ccocontrol 指令提示。

    若要結束指令行介面:請發出 exitquit

    註:
    在 Windows 2000 上,Dispatcher 元件的 dsserver 會自動啟動。 如果您只有使用 Cisco CSS Controller 而無 Dispatcher 元件,可用下列方式來防止 dsserver 自動啟動:

    1. 在「Windows 2000 服務」視窗中,用滑鼠右鍵按一下 IBM Dispatcher
    2. 選取內容
    3. 啟動類型欄位中,選取手動
    4. 按一下確定,然後關閉「服務」視窗。

    XML

    目前定義的配置可以儲存到 XML 檔。 如此可讓您在稍後想要快速地重新建立配置時載入配置。

    若要執行 XML 檔 (例如,myscript.xml) 的內容,請使用下列指令之一:

    XML 檔儲存在 ...ibm/edge/lb/servers/configurations/cco/ 目錄。

    GUI

    如需圖形式使用者介面 (GUI) 的一般指示與範例,請參閱圖 41

    若要啟動 GUI,請遵循下列步驟

    1. 如果 ccoserver 尚未執行,以 root 身份執行下列指令來加以啟動:

      ccoserver .

    2. 然後,請執行下列其中一項:

    若要透過 GUI 來配置 Cisco CSS Controller 元件:

    1. 在樹狀結構中的 Cisco CSS Controller 上按一下右鍵。
    2. 連線到「主電腦」。
    3. 建立一或多個交換器顧問,其中含有所要的 ownercontent 及其相關測量單位。
    4. 啟動顧問。

    您可以使用 GUI 來執行任何您會以 ccocontrol 指令來執行的作業。例如:

    若要從 GUI 執行指令:

    1. 用滑鼠右鍵按一下主電腦節點,然後選取傳送指令...
    2. 在「指令」輸入欄位中,鍵入要執行的指令;例如,consultant report
    3. 按一下「傳送」。

    您在現行階段作業中所執行的指令的結果及歷程,將出現在「結果」方框中。

    若要存取說明,可按一下 Load Balancer 視窗右上角的問號圖示。

    使用 GUI 的相關資訊,請參閱附錄 A, GUI:一般指示


    設定 Controller for Cisco CSS Switches 機器

    在設定 Cisco CSS Controller 機器之前,您必須是 root 使用者 (對 AIX、Linux 或 Solaris 而言),或是 Windows 2000 上的管理者。

    Consultant 須能連結至 Cisco CSS Switch 並為 Cisco CSS Switch 管理者。

    配置顧問時,您必須配置位址及 SNMP 團體名稱,使其符合 Cisco CSS Switch 上的對應屬性。

    關於本程序中所使用的指令的解說,請參閱Cisco CSS Controller 的指令參照

    步驟 1. 啟動伺服器功能

    如果尚未執行 ccoserver,請以 root 身份鍵入 ccoserver 來加以啟動。

    註:
    若是 Windows 2000,請按一下「開始」 > 「設定」 > 「控制台」 > 「系統管理工具」 > 「服務」。用滑鼠右鍵按一下 IBM Cisco Controller,然後選取「啟動」。

    步驟 2. 啟動指令行介面

    鍵入 ccocontrol 以啟動指令行介面。

    步驟 3. 配置顧問

    您必須配置交換器位址與 SNMP 團體名稱。 這些值必須符合 Cisco CSS Switch 上的對應屬性。

    若要新增顧問,請鍵入:

    consultant add switchConsultantID address switchIPAddress 
    community communityName
    

    步驟 3. 配置 ownercontent

    所謂 ownercontent 是一擁有者的內容規則表示法,並且是在 Cisco CSS Switch 上所定義。 擁有者名稱及內容規則名稱皆須符合交換器上所定義的內容。

    若要定義 ownercontent,請鍵入:

    ownercontent add switchConsultantID:ownercontentID ownername ownerName
    contentrule contentRuleName
    

    步驟 4. 驗證服務程式已正確定義

    定義好 ownercontent 之後,顧問便會藉由擷取交換器上所配置的服務程式,來完成配置。 請比較交換器與顧問兩者的配置,以確定服務程式相符。

    步驟 5. 配置測量單位

    測量單位是決定服務加權值與相關比例 (某一測量單位相較於另一測量單位的重要性) 時所用的單位,它可以是連線資料測量單位、應用程式通告器測量單位及測量單位伺服器測量單位的任意組合。 比例的合計必須始終為 100。

    當 ownercontent 完成配置後,預設的測量單位將會定義為 activeconnconnrate。 如果您想要額外的測量單位,還是不同於預設值的測量單位,請鍵入:

    ownercontent metrics switchConsultantID:ownercontentID metric1 proportion1
    metric2 proportion2...metricN proportionN
    

    步驟 6. 啟動顧問

    若要啟動顧問,請鍵入:

    consultant start switchConsultantID
    

    如此即會啟動測量單位收集器,並開始進行加權計算。

    步驟 7. 啟動 Metric Server (選用性的)

    如果系統測量單位已在步驟 5 中定義,即必須在服務程式機器上啟動測量單位伺服器。 有關使用測量單位伺服器的資訊,請參閱Metric Server

    步驟 8. 配置高可用性 (選用性的)

    若要配置高可用性,請鍵入:

    highavailability add address IPaddress partneraddress IPaddress port 80
    role primary
    

    在高可用性的環境下,您可以配置多重交換器。 為確定在某一交換器接管另一交換器時皆有加權資訊可用,須配置 Cisco CSS Controller 使其提供加權給所有交換器及其備份。

    如需如何使用及配置控制器高可用性的詳細資訊,請參閱Cisco CSS Controller 及 Nortel Alteon Controller 的進階特性


    測試您的配置

    測試配置是否可運作。

    1. 將 consultant loglevel 設成 4。
    2. 從 Cisco CSS Switch 切斷某一伺服器的連線達一分鐘,將應用程式伺服器關機一分鐘。
    3. 將伺服器重新連線,或重新啟動應用程式伺服器。
    4. 將 consultant loglevel 設回所要的層次 (1)。
    5. 檢視位於下列目錄的 consultant.log 檔案,並尋找 setServerWeights setting service

    Nortel Alteon Controller 元件

    本篇提供快速入門配置的相關資訊、規劃注意事項,以及說明配置 Load Balancer Nortel Alteon Controller 元件的方法。 它含有下列各章:


    快速入門配置

    此快速入門範例將說明如何使用 Nortel Alteon Controller 元件來建立配置。 Nortel Alteon Controller 提供伺服器加權值給 Nortel Alteon Web Switch。這些加權值是用來選取交換器將對其進行平衡負載的服務的伺服器。

    圖 28. 簡單的 Nortel Alteon Controller 配置

    顯示「從屬站」、Internet 雲團、Nortel Alteon Controller 機器、Nortel Alteon Web Switch 及伺服器機器的圖形。


    您將需要的項目

    就此快速入門配置範例而言,您將需要下列項目:


    如何準備

    開始配置此範例之前,確定已完成下列步驟:


    配置 Nortel Alteon Controller 元件

    透過 Nortel Alteon Controller,您可以用指令行或圖形式使用者介面 (GUI) 來建立配置。 在此快速入門範例中,相關的配置步驟是以指令行來作示範。

    註:
    參數值須以英文字元來鍵入。唯一的例外是主電腦名稱與檔名此兩者的參數值。

    使用指令行來配置

    從指令提示,遵循下列步驟:

    1. 在 Nortel Alteon Controller 上啟動 nalserver。以 Root 使用者或管理者身份,從指令提示發出下列指令:nalserver
    2. 新增顧問到 Nortel Alteon Controller 配置中,並指定 Nortel Alteon Web Switch IP 介面位址。 (如果它不同於預設值 (public, private),只須指定讀取團體及寫入團體):

      nalcontrol consultant add Consultant-1 address 9.87.32.50

      如此即會檢查與 Nortel Alteon Web Switch 的連通性,而且會驗證 SNMP 團體名稱是否正確運作。

    3. 新增服務程式 (Service-1) 給顧問 (Consultant-1),為此服務程式指定虛擬伺服器識別碼 (1) 及虛擬埠號 (80):

      nalcontrol service add Consultant-1:Service-1 vsid 1 vport 80

      Nortel Alteon Controller 此時將透過 SNMP 與交換器通信,並會從交換器取得所需的配置資訊。經此步驟之後,您應該會在 Nortel Alteon Controller 中看到相關資訊,指出 Nortel Alteon Web Switch 上已配置哪些伺服器給服務程式。

    4. 配置要針對一組與服務相關的伺服器而收集的測量單位:

      nalcontrol service metrics Consultant-1:Service-1 http 40 activeconn 30 connrate 30

      此指令將會配置在加權值計算期間,您要從伺服器收集哪些測量單位資訊,以及那些測量單位的相對重要性。

    5. 啟動 Nortel Alteon Controller 的顧問功能:

      nalcontrol consultant start Consultant-1

      透過此指令,所有的測量單位收集器將會啟動,伺服器加權值計算也會展開。 Nortel Alteon Controller 會將其伺服器加權值計算的結果透過 SNMP 傳給 Nortel Alteon Web Switch。

    您的基本 Nortel Alteon Controller 配置現在已經完成。

    測試您的配置

    測試配置是否可運作。

    1. 從 Client Web 瀏覽器跳至 http://www.Intersplash.com 位置。如果出現網頁,則表示全部可運作。
    2. 在 Web 瀏覽器中重新載入網頁。
    3. 查看下列指令的結果:nalcontrol service report Consultant-1:Service-1。 這兩個 Web 伺服器的連線總數直欄應加總為 『2』。

    使用圖形式使用者介面 (GUI) 來配置

    如需使用 Nortel Alteon Controller GUI 的相關資訊,請參閱GUI附錄 A, GUI:一般指示


    規劃 Nortel Alteon Controller 元件

    本章將說明在安裝與配置 Nortel Alteon Controller 元件之前,網路規劃者所應考慮的事項。

    本章包含:


    硬體與軟體的基本需求

    硬體基本需求

    軟體基本需求


    規劃考量

    Nortel Alteon Controller 可管理一組交換器顧問。每一種顧問會決定由單一交換器所平衡負載之伺服器的加權值。 由顧問提供加權值的交換器則會經過配置來進行伺服器平衡負載。 顧問會透過 SNMP 通信協定將計算出來的加權值傳給交換器。 交換器會用加權值來針對其所平衡負載的服務程式選取伺服器。 要決定加權值時,顧問會用到下列的一或多項資訊:

    有關伺服器平衡負載的說明與如何配置交換器的詳細資訊,請參閱您的 Nortel Alteon Web OS Application Guide。

    為使顧問取得所需資訊以決定伺服器加權值,您必須具有:

    在網路中設置顧問

    顧問可以連結至網路,且位於其負責提供加權值之交換器的前方或後方。 要啟用控制器、交換器及伺服器之間的連通性,有些參數必須在交換器上配置,有些則在控制器上配置。

    圖 29 中:

    有關配置 VLAN 及交換器 IP 路由的詳細資訊,請參閱您的「Nortel Alteon Web OS Application Guide」或「指令參考手冊」。

    圖 29. 將顧問連結至交換器後方的範例

    交換器後方的顧問

    圖 30 中:

    圖 30. 透過交換器前方內部網路來連結的顧問範例

    透過交換器前方內部網路來連結的顧問

    您可以使用下列任何介面來管理 Nortel Alteon Controller:

    圖 31 中:

    圖 31. 顧問位於交換器後方而使用者介面位於交換器前方的範例

    顧問位於交換器後方;使用者介面位於交換器前方

    交換器上的伺服器屬性 (由控制器設定)

    當一顧問針對交換器所平衡負載且其負責提供服務的伺服器來計算加權值時,顧問會停用交換器的正常伺服器狀況檢查,以減少不必要的伺服器資料傳輸。 當顧問停止為服務程式提供加權值時,顧問會重新啟用狀況檢查。 伺服器狀況檢查間隔對應於 MIB 變數 slbNewCgRealServerPingInterval。

    如果顧問判定一伺服器無法使用時,它會將伺服器的最大連線數設成零,以防止交換器對要求進行平衡負載時會考慮使用此伺服器。 當伺服器再度可供使用時,最大連線數即會復置為原始值。 伺服器最大連線數目值對應於 MIB 變數 slbNewCfgRealServerMaxCons。

    當計算實際伺服器的加權值時,將設定伺服器的加權值。伺服器加權值對應於 MIB 變數 slbNewCfgRealServerWeight。

    配置備份伺服器

    交換器可讓某些伺服器的配置作為其它伺服器的備份。 如果交換器決定一個具有備份的伺服器無法使用時,該交換器可能開始傳送要求給此備份機器。 當顧問為具有備份之服務程式計算加權值時,它會同時計算備份與主要伺服器的加權值,以便在需要備份機器時,可提供加權值供伺服器選取。

    備份伺服器的加權值可能會高於主伺服器的加權值。 這是因為並無要求會轉送給它,因此它會具有低負載,直到交換器決定加以使用。

    若要避免閒置伺服器資源,常規是指定給某個服務的伺服器將作為指定給不同服務的伺服器的備份。當實施如此的配置時,避免指定同一個實際伺服器給多個同時作用中的服務。 如果發生這種情況,伺服器所屬的每一個服務的顧問將改寫伺服器的加權值。

    每一個實際伺服器都是以整數加以識別,而且都具有加權值及 IP 位址屬性。 兩個實際伺服器可能具有同一個 IP 位址。 在這種情況中,兩個實際伺服器會與同一實際伺服器機器產生關聯。 識別為備份的實際伺服器應該僅配置成單一服務的備份。 如果相同的實體伺服器機器將為已指定給多個服務的伺服器備份, 您必須為每一個服務配置它們一次,並且給與伺服器每一個服務所專用的伺服器識別。這容許備份對於它們正要備份的每一個服務,具有已指定給它們的唯一加權值。

    圖 32. 配置有備份伺服器的顧問範例

    配置有備份伺服器的顧問

    配置群組

    交換器上的伺服器可被配置為多個群組的一部份,而此交換器上的群組則可配置來服務多重服務程式。

    由於可對多重服務配置相同的伺服器,所以將對伺服器是其一部份的每一個服務計算加權值。 因此,加權值可能會不正確,因為任何時候都不知道該加權值所適用的服務。

    此外,如果顧問正在決定某一服務而非另一個的加權值,顧問未計算其加權值的服務很可能已停用伺服器狀況檢查功能。 此時,該交換器可能不會正確地平衡負載該服務程式。

    由於有這些可能性,您必須確定未將實際伺服器指定給要進行平衡負載的多重服務。 這不表示同一伺服器機器無法服務多個服務的要求。 它表示具有唯一識別碼的實際伺服器必須在交換器上加以配置,然後伺服器機器就可以處理每一個服務的要求。

    高可用性

    Nortel Alteon Controller 及 Nortel Alteon Web Switch 兩者皆具有高可用性功能。

    您可以配置兩個控制器使其在快速待命配置下於不同的系統上執行。

    當您配置兩個或以上的交換器作為虛擬 IP 介面路由器 (VIR),或作為虛擬 IP 伺服器路由器 (VSR) 時,這些交換器可互為彼此的備份。

    一個顧問 (受控制器管理) 只為一個交換器提供加權值。 由於備份交換器可能隨時會接管主要機器,因此您必須配置控制器,使其對有可能成為主要機器的各個交換器皆設有一個顧問。 在此方式下,當某一伺服器成為主要機器時,即可確保其將會取得加權值。

    此外,當控制器連結至 VIR 時,如果其與某一交換器斷線,將確保能與伺服器、交換器及備份控制器通信。

    有關交換器之高可用性的詳細資訊,請參閱您的「Nortel Alteon Web OS Application Guide」。

    控制器高可用性可加強 Load Balancer 的容錯功能。 控制器高可用性的設計中心為傳統封包轉送高可用性, 其包括兩個同時執行的控制器,一個扮演主要角色,另一個則扮演次要角色。

    每一個控制器都是以相同的交換器資訊來配置的。 類似於傳統的高可用性,一次僅能有一個作用中的控制器。 這表示,如同高可用性邏輯所決定的一般,僅作用中控制器會利用新的加權值計算及更新交換器。

    控制器高可用性使用簡單使用者資料圖通信協定 (UDP) 封包,透過您配置的位址及埠, 與它的友機通信。當資訊屬於高可用性 (連繫資訊) 時,這些封包會用來在控制器之間交換此資訊,並且決定友機控制器可用性 (通訊檢查訊息)。如果備用控制器判定作用中控制器因為任何理由而發生故障, 則備用控制器將從故障的作用中控制器接管。然後,備用控制器將變成作用中控制器, 而且開始以新的加權值計算及更新交換器。

    除了友機可用性之外,您可以配置連繫目標以取得高可用性。 如同傳統高可用性一般,控制器高可用性會使用連繫資訊,來判定哪一個控制器是作用中, 哪一個是備用的。作用中控制器就是可以 ping 多個目標且可以從它的友機連繫的控制器。

    請參閱高可用性,以取得進一步資訊。

    圖 33 中:

    圖 33. Nortel Alteon Controller 及 Nortel Alteon Web Switch 高可用性的範例

    控制器及交換器高可用性

    調整

    為避免加權值的變更過於頻繁,您可以為顧問配置感應臨界值。 感應臨界值可指定當變更加權值之前,新加權值及舊加權值之間須發生的變更數。 請參閱感應臨界值,以取得進一步資訊。

    如果交換器太忙於更新加權值,您可以增加顧問休眠時間,來減少控制器與伺服器及交換器之間的資料傳輸。 休眠時間設定不同加權設定循環間的休眠秒數。

    如果伺服器處理太多來自顧問的監督要求,您可以修改測量單位收集器的休眠時間。 詳細說明,請參閱加權值計算休眠時間

    問題判定

    Cisco CSS Controller 會將登錄項目傳遞到下列日誌:

    這些日誌位於下列目錄:

    在每一種日誌中,您都可設定日誌大小與記載層次。 相關資訊,請參閱使用 Load Balancer 日誌


    配置 Nortel Alteon Controller 元件

    在遵循本章中的步驟之前,請參閱規劃 Nortel Alteon Controller 元件。 本章將說明如何為 Load Balancer 的 Nortel Alteon Controller 元件建立基本配置。


    配置作業的概觀

    開始本章所列的任何配置方法之前,請確定已適當地配置您的 Nortel Alteon Web Switch 及所有伺服器機器。


    表 11. Nortel Alteon Controller 元件的配置作業

    作業 說明 相關資訊
    配置 Nortel Alteon Web Switch 及伺服器 配置交換器。 配置交換器,第 (SETSWITCH)
    設定 Nortel Alteon Controller 機器 配置控制器。 步驟 1. 啟動伺服器功能
    測試您的配置 確認配置是否可運作 測試您的配置

    配置方法

    若要建立 Load Balancer 的 Nortel Alteon Controller 元件的基本配置,其方法有三種:

    指令行

    這是配置 Nortel Alteon Controller 的最直接方法。 本手冊中的程序是假設使用的是指令行。

    若要從指令行啟動 Nortel Alteon Controller:

    1. 從指令提示發出 nalserver 指令。 若要停止此服務程式,請鍵入:nalserver stop

      註:

      1. 若是 Windows 2000,請按一下「開始」 > 「設定」 > 「控制台」 > 「系統管理工具」 > 「服務」。 用滑鼠右鍵按一下 IBM Nortel Alteon Controller,然後選取「啟動」。 若要停止服務,請遵循相同的步驟,然後選取「停止」。

      2. 在 Windows 2000,您可以在開機期間自動啟動 nalserver:
        1. 按一下「開始」 > 「設定」 > 「控制台」 > 「系統管理工具」 > 「服務」。
        2. 用滑鼠右鍵按一下 IBM Nortel Alteon Controller,然後選取「內容」。
        3. 按一下「啟動類型」欄位的箭頭,然後選取「自動」。
        4. 按一下「確定」。
    2. 然後,發出您想用來設定您的配置的 Nortel Alteon Controller 控制指令。本手冊中的程序是假設使用的是指令行。 其指令為 nalcontrol。指令的相關資訊,請參閱Nortel Alteon Controller 的指令參照

    您可以使用縮寫版的 nalcontrol 指令參數,方法是鍵入代表參數的唯一字母。 例如,要取得存檔指令的說明,您可以鍵入 nalcontrol he f 而非 nalcontrol help file

    若要結束指令行介面:鍵入 exitquit

    註:

    1. 所有的指令參數值都須使用英文字元。 唯一的例外是主電腦名稱 (用於 server 指令中) 與檔名 (用於 file 指令中)。

    2. 在 Windows 2000 上,Dispatcher 元件的 dsserver 會自動啟動。 如果您只有使用 Nortel Alteon Controller 而無 Dispatcher 元件,可用下列方式來防止 ndserver 自動啟動:

      1. 在「Windows 2000 服務」視窗中,於 IBM Dispatcher 上按一下右鍵。
      2. 選取「內容」。
      3. 啟動類型欄位中,選取「手動」。
      4. 按一下「確定」,然後關閉「服務」視窗。

    XML

    目前定義的配置可以儲存到 XML 檔。 如此可讓您在稍後想要快速地重新建立配置時載入配置。

    若要執行 XML 檔 (例如,myscript.xml) 的內容,請使用下列指令:

    XML 檔儲存在 ...ibm/edge/lb/servers/configurations/nal/ 目錄。

    GUI

    如需圖形式使用者介面 (GUI) 的範例,請參閱圖 41

    啟動 GUI 的程序如下:

    1. 如果 nalserver 尚未執行,請以 root 身份鍵入 nalserver 來加以啟動。
    2. 然後,請執行下列其中一項:

    若要透過 GUI 來配置 Nortel Alteon Controller 元件:

    1. 在樹狀結構中的 Nortel Alteon Controller 上按一下右鍵。
    2. 連線到「主電腦」。
    3. 建立一或多個交換器顧問,其中含有所要的服務及其相關測量單位。
    4. 啟動顧問。

    GUI 可以用來執行任何您會以 nalcontrol 指令來執行的作業。 例如:

    若要從 GUI 執行指令:

    1. 用滑鼠右鍵按一下主電腦節點,然後選取傳送指令...。
    2. 在「指令」輸入欄位中,鍵入要執行的指令;例如,consultant report
    3. 按一下「傳送」。

    您在現行階段作業中所執行的指令的結果及歷程,將出現在「結果」方框中。

    若要存取「說明」,可按一下 Load Balancer 視窗右上角的問號圖示。

    使用 GUI 的相關資訊,請參閱附錄 A, GUI:一般指示


    設定 Nortel Alteon Controller

    關於本程序中所使用的指令的解說,請參閱Nortel Alteon Controller 的指令參照

    在設定 Nortel Alteon Controller 機器之前:

    步驟 1. 啟動伺服器功能

    如果尚未執行 nalserver,請鍵入 nalserver 作為根目錄來加以啟動。

    註:
    若是 Windows 2000,請按一下「開始」 > 「設定」 > 「控制台」 > 「系統管理工具」 > 「服務」。 用滑鼠右鍵按一下 IBM Nortel Alteon Controller,然後選取「啟動」。

    步驟 2. 啟動指令行介面

    鍵入 nalcontrol 以啟動指令行介面。

    步驟 3. 定義 Nortel Alteon Web Switch 顧問

    若要新增交換器顧問,請鍵入:

    consultant add switchconsultantID address switchIPAddress 
    

    步驟 4. 新增服務程式至交換器顧問

    若要新增服務程式,請鍵入:

    service add  switchConsultantID:serviceID vsid  virtualServerID vport
    virtualPortNumber
    

    服務是由虛擬伺服器識別碼 (VSID) 與虛擬埠 (VPORT) 號碼所識別, 此兩者皆與先前在交換器上所配置的虛擬伺服器有關聯。

    步驟 5. 配置測量單位

    測量單位是用來決定伺服器加權值的資訊。 每一個測量單位都指定有一個比例,以指出它相對於其他測量單位的重要性。您可以配置任何測量單位組合:連線資料測量單位、應用程式通告器測量單位及測量單位伺服器測量單位。 比例的合計必須始終為 100。

    當服務程式完成配置後,預設的測量單位將會定義為 activeconnconnrate。 如果您想要額外的測量單位,還是不同於預設值的測量單位,請鍵入:

    service metrics switchConsultantID:serviceID metricName 50
    metricName2 50
    

    步驟 6. 啟動顧問

    若要啟動顧問,請鍵入:

    consultant start switchConsultantID
    

    如此即會啟動測量單位收集器,並開始進行加權值計算。

    步驟 7. 配置高可用性 (選用性的)

    若要配置高可用性,請鍵入:

    highavailability add address IPaddress partneraddress IPaddress port 80
    role primary
    

    如需如何使用及配置控制器高可用性的詳細資訊,請參閱Cisco CSS Controller 及 Nortel Alteon Controller 的進階特性

    步驟 8. 啟動 Metric Server (選用性的)

    如果系統測量單位已在步驟 5 中定義,即必須在服務程式機器上啟動測量單位伺服器。 有關使用測量單位伺服器的資訊,請參閱Metric Server

    步驟 9. 重新整理 Nortel Alteon Controller 配置

    如果您修改了 Nortel Alteon Web Switch 上的配置,即可重新整理控制器配置。 類型:

    service refresh
    

    我們建議在您重新整理配置之前,應該先停止顧問。 在 refresh 指令更新配置後,重新啟動顧問。


    測試您的配置

    測試配置是否可運作。

    1. 將 consultant loglevel 設成 4。
    2. 從 Nortel Alteon Web Switch 切斷某一伺服器的連線達一分鐘,將應用程式伺服器關機一分鐘。
    3. 將伺服器重新連線,或重新啟動應用程式伺服器。
    4. 將 consultant loglevel 設回所要的層次 (1)。
    5. 檢視位於下列目錄的 consultant.log 檔案,並尋找 setServerWeights setting service。這表示已嘗試將加權值傳送到交換器。
    6. 顯示交換器上的伺服器加權值,並驗證這些加權值符合控制器報告上所顯示的加權值。

    Load Balancer 功能及進階特性

    本篇提供 Load Balancer 可用功能及進階配置特性的相關資訊。它含有下列各章:


    Dispatcher、CBR 及 Site Selector 的管理程式、通告器及 Metric Server 等功能

    本章將說明如何配置平衡負載參數,以及如何設定 Load Balancer 的管理程式、通告器及 Metric Server 等功能。

    註:
    讀取本章時,如果您不是使用 Dispatcher 元件,請將「dscontrol」改成下列項目:

    表 12. Load Balancer 的進階配置作業

    作業 說明 相關資訊
    可選擇是否要變更平衡負載設定

    您可以變更下列平衡負載設定:

    • 狀態資訊所給定的重要性比例

      預設比例為 50-50-0-0。如果您使用預設值,將不會使用來自通告器、Metric Server 及 WLM 的資訊。

    • 加權
    • 管理程式固定加權
    • 管理程式間隔
    • 感應臨界值
    • 平順指數

    將 Load Balancer 所提供的平衡負載最佳化
    在管理程式將伺服器標示為當機/開機時,使用 script 來產生警示或記錄伺服器失敗 Load Balancer 提供了使用者呼叫,可在管理程式將伺服器標示為當機/開機時,觸發可由您自行設定的 script 使用 script 產生警示或記錄伺服器失敗
    使用通告器 說明及列出通告器,藉以報告伺服器的特定狀態 通告器
    使用 HTTP 通告器要求/回應 (URL) 選項 定義唯一的從屬站 HTTP URL 字串,專用於您想在機器上查詢的服務 使用要求/回應 (URL) 選項,配置 HTTP 通告器
    使用 Self 通告器 提供 Load Balancer 雙層 WAN 配置中的後端伺服器負載狀態 在雙層 WAN 配置中使用 Self 通告器
    建立自行設定通告器 說明如何撰寫您自行設定的通告器 建立自行設定 (可自訂的) 通告器
    使用 Metric Server 代理程式 Metric Server 會提供系統負載資訊給 Load Balancer Metric Server
    使用工作量管理程式通告器 (WLM) WLM 通告器會提供系統負載資訊給 Load Balancer 工作量管理程式通告器

    將 Load Balancer 所提供的平衡負載最佳化

    Load Balancer 的管理程式功能將依據下列設定,進行平衡負載:

    您可以變更這些設定,使您的網路的平衡負載最佳化。

    狀態資訊所給定的重要性比例

    管理程式可以在它的加權決策中使用下列部份或所有的外部因素:

    與每一個伺服器的現行加權及計算所需的其他資訊一起,管理程式將自執行器取得前兩個值 (作用中連線及新連線)。這些值是依據執行器內部所產生及儲存的資訊而定。

    註:
    若為 Site Selector,管理程式會從 Metric Server 取得前兩個值 (CPU 及記憶體)。

    您可在每個叢集 (或站台名稱) 的基礎上,變更這四個值的相對重要性比例。 將比例視為百分比;相對比例的和必須等於 100%。預設比例為 50/50/0/0, 這個比例會忽略通告器及系統資訊。在您的環境中,可能需要嘗試不同的比例,以發現提供最佳效能的組合。

    註:
    當新增通告器 (而非 WLM) 時,如果埠比例為 0,則管理程式會將此值增加為 1。 因為相對比例的總和必須為 100,最高值則減少 1。

    在新增 WLM 通告器時,如果系統測量單位管理程式是 0,則管理程式會將此值增加為1。因為相對比例的總和必須為 100,最高值則減少 1。

    現行連線的數目取決於從屬站的數目, 以及使用進行平衡負載作業的伺服器機器所提供之服務所需的時間長度。 如果從屬站連線是快速的 (如使用 HTTP GET 來伺服的小 Web 網頁), 則現行連線的數目將相當少。如果從屬站連線是較慢的 (如資料庫查詢), 則現行連線的數目將比較高。

    您應避免將作用中及新連線的比例值設得太低。除非您已先分別將這兩個值至少設定為 20,否則您會停用平衡及平順負載。

    若要設定重要性比例值, 請使用 dscontrol cluster set cluster proportions 指令。請參閱dscontrol cluster -- 配置叢集,以取得進一步資訊。

    加權

    加權是由管理程式函數依據執行器中的內部計數器、來自通告器的反饋信息以及來自系統監督程式 (例如 Metric Server) 的反饋信息所設定的。若您要在執行管理程式時,以手動方式設定加權,請在 dscontrol 伺服器指令上,指定 fixedweight 選項。如需 fixedweight 選項的說明,請參閱管理程式固定加權

    加權將引用至埠上的所有伺服器中。對任何特殊埠而言,將依據它們彼此的相對加權, 在伺服器之間分送要求。例如,如果有一個伺服器設定為加權 10,而另一個為 5,則設定為 10 的伺服器取得的要求數目應該是設定為 5 的伺服器的兩倍。

    若要指定適用於任何伺服器的最大加權界限,請使用 dscontrol port set port weightbound weight 指令。 這個指令將影響每個伺服器可取得的要求多寡。如果您將最大加權設定為 1, 則在靜止時,所有伺服器可具有加權 1,或在中斷連接時,可具有 -1。 當您增加這個數目時,伺服器的加權值的差異將增加。在最大加權為 2 時, 某個伺服器所取得的要求數目可以是另一個的兩倍。在最大加權為 10 時, 某個伺服器所取得的要求數目可以是另一個的十倍。預設最大加權為 20。

    如果通告器發現伺服器已關閉,便會告訴管理程式, 而將伺服器的加權設定為零。因此,只要加權維持在零, 執行器就不會將任何其它的連線傳送到該伺服器。 如果在變更加權之前,該伺服器已有現行連線,則會讓它們正常地完成。

    管理程式固定加權

    若沒有管理程式,通告器將無法執行且無法偵測伺服器是否已關閉。如果您選擇執行通告器,但不要管理程式去更新您為特定伺服器設定的加權,則在 dscontrol server 指令上使用 fixedweight 選項。例如:

    dscontrol server set cluster:port:server fixedweight yes
    

    將 fixedweight 設定為 yes 之後,使用 dscontrol server set weight 指令設定您所需要的加權值。 當管理程式執行時,伺服器加權值會保持固定,直到您發出另一個將 fixedweight 設定為 no 的 dscontrol server 指令。如需進一步資訊,請參閱dscontrol server -- 配置伺服器

    傳送 TCP 重設到當機伺服器 (僅適用於 Dispatcher 元件)

    如果 TCP 重設為啟動的,則 Dispatcher 在從屬站具有與伺服器 (加權值為 0) 的連線時,會傳送 TCP 重設到從屬站。如果伺服器配置為 0 或通告器將它標示為當機時,伺服器的加權值可能為 0。TCP 重設會導致立即關閉連線。 這項特性對長效的連線很有用,它加速了從屬站重建失敗連線的能力。若要啟動 TCP 重設,請使用 dscontrol port add|set port reset yes 指令。重設的預設值為 no。

    註:
    TCP 重設套用到所有 Dispatcher 的 forward 方法。 不過,若要使用 TCP 重設特性,則必須將 dscontrol executor 指令上的 clientgateway 設定到路由器位址。

    與 TCP 重設一起用來配置的有用特性是 advisor retry 利用這項特性,通告器具有能力在將伺服器標示為當機之前重試連線。如此可以協助防止通告器貿然地將伺服器標示為當機,導致連線重設的問題。那只是因為通告器第一次嘗試失敗並不必然表示現存的連線也失敗。相關資訊,請參閱通告器重試

    管理程式間隔

    為使整體效能最佳化,會限制管理程式與執行器的互動次數。 您可輸入 dscontrol manager intervaldscontrol manager refresh 指令,以變更此間隔。

    管理程式間隔會指定管理程式多久將更新執行器在遞送連線時所使用的伺服器加權。 如果管理程式間隔太短,表示效能不佳,這是因為管理程式常常岔斷執行器所致。 如果管理程式間隔太高,表示執行器的遞送要求不是依據精確、最新的資訊而定。

    例如,欲將管理程式間隔設定為 1 秒時,請鍵入下列指令:

     dscontrol manager interval 1
    

    管理程式重新整理週期會指定管理程式隔多久將要求執行器提供狀態資訊。重新整理週期是依據間隔時間而定。

    例如,欲將管理程式重新整理週期設定為 3 時,請鍵入下列指令:

      dscontrol manager refresh 3
    

    這個指令將使得管理程式在要求執行器提供資訊之前,先等待 3 個間隔。

    感應臨界值

    您還可使用其它的方法,最佳化您伺服器的平衡負載。為了保持高速運作,只有在加權發生了重大變更時,才會更新伺服器的加權。 當伺服器狀態僅有些許變更或沒有變更時, 持續地更新加權,將會產生不必要的額外執行時間。 當埠上所有伺服器總加權的百分比加權在變更後大於感應臨界值時, 管理程式將會更新執行器用來分送連線的加權。例如, 假設總加權從 100 變更為 105。變更是 5%。如果預設的感應臨界值是 5, 管理程式將不會更新執行器所使用的加權,因為百分比變更不在臨界值之上。不過, 如果總加權從 100 變更為 106,管理程式就會更新加權。 若要將管理程式的感應臨界值設定為預設值 (例如 6) 以外的值,請鍵入下列指令:

      dscontrol manager sensitivity 6
    

    多數情況下,您可以不必更改此值。

    平順指數

    管理程式將以動態方式來計算伺服器加權。因此, 更新過的加權可能會與先前的加權有很大的不同。在大多數的情況下, 都將不會發生問題。然而,有時候可能會在平衡負載要求的方式上產生變動。 例如,一個伺服器可能會因為高加權所致, 而收到大多數的要求。管理程式將看到伺服器具有相當多的現行連線,使得伺服器的回應變得緩慢。 然後,它會將加權移至可用的伺服器,但在該處也會發生相同的效果, 造成資源的浪費。

    欲解決這個問題時,管理程式將使用平順指數。 平順指數將限制伺服器加權可變更的數量,因此可以有效地緩和在分送要求時所產生的變更。 較高的平順指數將使伺服器加權的變更不大。較低的指數將使伺服器加權的變更非常大。平順指數的預設值為 1.5。在 1.5 時,伺服器加權是相當動態的。指數 4 或 5 將使得加權更穩定。 例如,欲將平順指數設為 4 時,請鍵入下列指令:

      dscontrol manager smoothing 4
    

    多數情況下,您可以不必更改此值。

    使用 script 產生警示或記錄伺服器失敗

    Load Balancer 提供使用者呼叫,觸發您可自行設定的 script。 您可建立執行自動化動作的 script,例如,當管理程式中斷連接伺服器,或單純記錄失敗事件時,對管理者的警示。您可自行設定的範例 script,位於 ...ibm/edge/lb/servers/samples 安裝目錄中。為了要執行檔案,您必須將它們移至 ...ibm/edge/lb/servers/bin 目錄,並移除「.sample」副檔名。下列為提供的範例 script:


    通告器

    通告器是 Load Balancer 內部的代理程式。其目的是要評估伺服器機器的狀況及資料流量。 它們會嘗試性地讓類從屬站與伺服器交換,以完成評估。 通告器可以 被考慮為應用程式伺服器的輕裝備從屬站。

    此產品有提供數個特定通訊協定的通告器,可供最常用的通訊協定使用。 然而,將提供的所有通告器與 Load Balancer 的每一個元件一起使用是無意義的。(例如,您不會將 Telnet 通告器與 CBR 元件一起使用。) Load Balancer 亦支援讓使用者撰寫其自己之通告器的『自行設定通告器』概念。

    在 Linux 上使用連結特定伺服器應用程式的限制: 當使用連結特定應用程式 (包括如 CBR 或 Site Selector 等的其他 Load Balancer 元件) 平衡負載伺服器,且它們正連結到叢集 IP 位址時,Load Balancer 支援通告器的使用。

    在 Solaris 上使用連結特定伺服器應用程式的限制: 如果使用 arp punlish 代替 ifconfig alias 指令,則當使用連結特定應用程式 (包括如 CBR 或 Site Selector 等的其他 Load Balancer 元件 ) 平衡負載伺服器,且它們正連結到叢集 IP 位址時,Load Balancer 支援通告器的使用。 然而,在對連結特定伺服器應用程式使用通告器時,請勿在具有伺服器應用程式相同的機器上並列 Load Balancer。

    註:
    當 Load Balancer 正在具有多重網路配接卡的電腦上執行,且您要通告器資料傳輸流經特定的配接卡時,您可強迫封包的來源 IP 位址成為特定位址。若要強迫通告器封包來源端位址成為特定位址,請在適當的 Load Balancer 啟動 script 檔 (dsserver、cbrserver 或 ssserver) 中,將下列所示新增至 java...SRV_XXXConfigServer... 那一行:

    -DND_ADV_SRC_ADDR=dotted-decimal_IP_address
    

    通告器如何運作

    通告器會定期開啟與每一個伺服器的 TCP 連線,並且將要求訊息傳送至伺服器。 訊息的內容會特別針對在伺服器上執行的通訊協定。 例如,HTTP 通告器將 HTTP 『HEAD』 要求傳送至伺服器。

    通告器會傾聽來自伺服器的回應。在取得回應之後,通告器就會建立伺服器的指示。 為了要計算這個「資料流量」的值,大部份的通告器都會測量伺服器回應的時間, 然後使用這個值 (以毫秒計) 來作為資料流量。

    之後,通告器便會將資料流量值報告給管理程式功能, 在管理程式報告中,此值會出現在『Port』直欄中。 然後管理程式會從其所有的來源,根據分配比例,計算集成加權值, 並且將這些加權值設定在執行器功能中。 「執行器」會使用這些加權值,為新進入的從屬站連線平衡負載。

    如果通告器判定伺服器運作正常,就會報告一個非零值的正資料流量數給「管理程式」。 如果通告器判定伺服器並沒有在運作,就會傳回一個特殊的資料流量值 (-1)。 「管理程式」及「執行器」將不會再轉送任何進一步的連線給該伺服器,直到伺服器再次啟動為止。

    啟動及停止通告器

    您可在所有叢集 (群組通告器) 之間,啟動特定埠的通告器。或者,您可選擇在相同埠但在不同叢集上執行不同的通告器 (叢集/站台特定通告器)。例如,如果您的 Load Balancer 具有三個已定義的叢集 (clusterA、clusterB、clusterC),每一個都有埠 80,您可執行下列作業:

    使用上述的群組通告器配置範例,您可以選擇只停止其中一個叢集或兩個叢集 (clusterBclusterC) 上埠 80 的自行設定通告器 ADV_custom

    通告器間隔

    註:
    通告器預設值對於大多數的可能情況, 應該都可以有效地運作。輸入預設值以外的值時, 請特別小心。

    通告器間隔會設定通告器隔多久將向它所監督的埠上的伺服器要求狀態資訊, 然後向管理程式報告結果。如果通告器間隔太短,表示效能不佳,這是因為通告器常常岔斷執行器所致。 如果通告器間隔太長,表示管理程式關於加權的決定不是依據精確、最新的資訊而定。

    例如,欲對埠 80 的 HTTP 通告器,將間隔設定為 3 秒時,請鍵入下列指令:

      dscontrol advisor interval http 80 3
    

    指定的通告器間隔若小於管理程式間隔,則不具意義。預設的通告器間隔為 7 秒鐘。

    通告器報告逾時

    請確定管理程式在其平衡負載決策中,並未使用逾時的資訊,管理程式將不使用其時間戳記比通告器報告逾時中的時間設定還早的通告器資訊。通告器報告逾時應大於通告器輪詢間隔。如果逾時值較小,則管理程式將忽略邏輯上應該使用的報告。在預設的狀況下,通告器報告不逾時 -- 預設值是無限的。

    例如,若要針對埠 80 的 HTTP 通告器,將通告器報告逾時設定為 30 秒時,請鍵入下列指令:

    dscontrol advisor timeout http 80 30
    

    如需設定通告器報告逾時的進一步資訊,請參閱dscontrol advisor -- 控制通告器

    伺服器的通告器連結逾時及接收逾時

    針對 Load Balancer,您可以設定通告器藉以偵測伺服器 (服務程式) 上特定埠失敗的逾時值。失敗伺服器逾時值 (connecttimeout 及 receivetimeout) 會判定報告連結或接收失敗之前,通告器的等待時間。

    欲取得最快的失敗伺服器偵測,請將通告器連結及接收逾時值設定為最小值 (1 秒鐘),然後將通告器及管理程式間隔設定為最小值 (1 秒鐘)。

    註:
    如果您的環境因為有中到大量的資料傳輸,而使得伺服器回應時間增加,請注意不要將 connecttimeout 及 receivetimeout 值設定得太小,否則通告器可能會過早將忙線伺服器標示為失敗。

    例如,欲對埠 80 上的 HTTP 通告器,將 connecttimeout 及 receivetimeout 設定為 9 秒時,請鍵入下列指令:

    dscontrol advisor connecttimeout http 80 9
    dscontrol advisor receivetimeout http 80 9
    

    預設的連結及接收逾時為 3 乘以指定的通告器間隔時間值。

    通告器重試

    通告器有能力在將伺服器標示為當機之前重試連線。通告器在伺服器查詢失敗重試次數加上 1 之前,不會將伺服器標示為當機。重試的建議值應該大於 3。下列指令對埠 389 上的 LDAP 通告器設定重試值為 2:

    dscontrol advisor retry ldap 389 2
    

    通告器列示

    使用要求/回應 (URL) 選項,配置 HTTP 通告器

    HTTP 通告器的 URL 選項可供 Dispatcher 及 CBR 元件使用。

    在您已啟動 HTTP 通告器之後,可定義唯一的從屬站 HTTP URL 字串,專用於您想在伺服器上查詢的服務程式。 這樣可讓 HTTP 通告器評估伺服器內個別服務程式的狀況。您可使用具有相同實體 IP 位址的唯一伺服器名稱定義邏輯伺服器,以完成此作業。請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器,以取得進一步資訊。

    對於 HTTP 埠之下每一個定義的邏輯伺服器,您可指定唯一的從屬站 HTTP URL 字串, 專用於您想在伺服器上查詢的服務程式。HTTP 通告器使用 advisorrequest 字串來查詢伺服器的狀況。預設值為 HEAD / HTTP/1.0advisorresponse 字串是 HTTP 通告器掃描 HTTP 回應的通告器回應。 HTTP 通告器使用 advisorresponse 字串來比較從伺服器接收的實際回應。預設值是空值。

    重要事項:如果在 HTTP URL 字串內包含空白:

    當您建立由 HTTP 通告器傳送至後端伺服器,以查看其是否正常運作的要求時,您可以鍵入 HTTP 要求的開始,而 Load Balancer 則使用下列內容完成要求的結尾:

    \r\nAccept:
    */*\r\nUser-Agent:IBM_Network_Dispatcher_HTTP_Advisor\r\n\r\n
    

    如果您要在 Load Balancer 於要求尾端附加此字串之前,新增其它 HTTP 表頭欄位,您可在要求中併入自己的 \r\n 字串。下列範例說明您在 HTTP 主電腦表頭欄位中可能鍵入以加入要求中的內容:

    GET /pub/WWW/TheProject.html HTTP/1.0 \r\nHost: www.w3.org
    
    註:
    在啟動指定 HTTP 埠號的 HTTP 通告器之後,會啟用該 HTTP 埠之下伺服器的通告器要求/回應值。

    請參閱dscontrol server -- 配置伺服器,以取得進一步資訊。

    在雙層 WAN 配置中使用 Self 通告器

    在 Dispatcher 元件上有 self 通告器可使用。

    對於雙層 WAN (廣域網路) 配置中的 Load Balancer,Dispatcher 提供會收集後端伺服器載入狀態資訊的 self 通告器。

    圖 34. 使用 self 通告器的雙層 WAN 配置範例

    使用 self 通告器的雙層 WAN 配置

    在此範例中,self 通告器及 Metric Server 常駐於由頂層 Load Balancer 所平衡負載的兩個 Dispatcher 機器上。self 通告器特別測量後端伺服器的執行器層次上 Dispatcher 每秒鐘連線速率。

    self 通告器將結果寫入 dsloadstat 檔案。Load Balancer 亦提供一個被稱為 dsload 的外部測量單位。在每一部 Dispatcher 機器上的 Metric Server 代理程式會執行它呼叫外部測量單位 dsload 的配置。dsload script 從 dsloadstat 檔擷取字串,並將之傳回 Metric Server 代理程式。接著,每一個 Metric Server 代理程式 (來自每一個 Dispatcher) 將載入狀態值傳回頂層 Load Balancer,用來判定哪一個 Dispatcher 要轉送從屬站要求。

    dsload 可執行檔常駐在 Load Balancer 的 ...ibm/edge/lb/ms/script 目錄。

    如需在 WAN 配置中使用 Dispatcher 的進一步資訊,請參閱配置廣域 Dispatcher 支援。如需 Metric Server 的進一步資訊,請參閱Metric Server


    建立自行設定 (可自訂的) 通告器

    自行設定 (可自訂的) 通告器是一小段 Java 程式碼,您可以將它作為由基本程式碼呼叫的類別檔案來提供。基本程式碼提供所有的管理服務程式,例如:啟動及關閉自行設定通告器的實例、 提供狀態及報告,以及在日誌檔中記錄歷程資訊。而且它也會將結果報告給管理程式元件。基本程式碼會周期性編碼通告器循環,在此循環中, 它會個別評估其配置中的所有伺服器。您可以開啟與伺服器機器的連線,以將它啟動。如果 socket 開啟了,基本程式碼就會呼叫自行設定通告器中的 『getLoad』 方法 (功能)。然後自行設定通告器就會執行任何用來評估伺服器狀況所必需的步驟。一般而言,它會將使用者定義的訊息傳送至伺服器,然後等待回應。(對 socket 的存取權限會提供給自行設定通告器。) 基本程式碼會關閉與伺服器之間的 socket,並且將資料流量資訊報告給「管理程式」。

    基本程式碼及自行設定通告器的操作模式有一般及置換二種。 而操作模式的選擇則是在自行設定通告器檔案中,用建構元方法及參數來指定。

    在一般的模式中,自行設定通告器會與伺服器交換資料, 而基本通告器程式碼會指定交換的時間,並計算資料流量值。 然後基本程式碼會將這個資料流量值報告給管理程式。 自行設定通告器只需要傳回一個 0 (成功時) 或 -1 (發生錯誤時)。 若要指定一般模式,建構元中的置換旗號要設定為 false。

    在置換模式中,基本程式碼不會執行任何時間測量工作。 自行設定通告器程式碼會執行其特殊需求所必要的任何作業,然後傳回實際的資料流量號碼。 基本程式碼將會接受此號碼,並且將它報告給管理程式。 為獲得最佳結果,請將介於 10 及 1000 之間的資料流量號碼正常化, 10 代表快速伺服器,而 1000 代表慢速伺服器。 若要指定置換模式,建構元中的置換旗號要設定為 true。

    有了此特性,您可以撰寫您自己的通告器, 該通告器將提供您所需的伺服器的相關精確資訊。 Load Balancer 產品提供一個名為 ADV_sample.java 的範例自行設定通告器。 安裝 Load Balancer 後,您可在 ...<install directory>/servers/samples/CustomAdvisors 安裝目錄,找到範例程式碼。

    預設安裝目錄是:

    註:
    如果您在 Dispatcher 或任何其它適用的 Load Balancer 元件中,新增自行設定通告器,您必須停止然後重新啟動 dsserver (或 Windows 的服務程式),以啟動 Java 程序,讀取新的自行設定通告器類別檔。自行設定通告器類別檔僅在啟動時載入。且不需停止執行器。即使 dsserver 或服務程式已停止,執行器仍繼續執行。

    WAS 通告器

    Load Balancer 安裝目錄中提供 WebSphere Application Server (WAS) 通告器專用的範例自行設定通告器檔案。

    WebSphere Application Server 通告器範例檔和 ADV_sample.java 檔位於相同的範例目錄。

    命名慣例

    您的自行設定通告器檔名必須使用『ADV_myadvisor.java』的格式。必須用大寫的前置符號『 ADV_』來作為開頭。所有後續的字元都必須是小寫字母。

    根據 Java 慣例,定義於檔案中的類別名稱必須符合檔案的名稱。 如果您要複製範例碼,請務必將檔案中所有的 『ADV_sample』 實例變更為您的新類別名稱。

    編譯

    自行設定通告器是用 Java 語言來撰寫的。您必須取得並安裝適用於您的機器的 Java 1.3 編譯器。在編譯期間,會參考到下列檔案:

    您的 classpath 在編譯期間必須同時指向自行設定通告器及基礎類別檔。

    Windows 2000 上的編譯指令如下:

    javac -classpath <install_dir>\lb\servers\lib\ibmnd.jar ADV_fred.java
     
    

    其中:

    編譯的輸出結果是一個類別檔案,例如:

    ADV_fred.class
    

    啟動通告器之前,將類別檔複製到 ...ibm/edge/lb/servers/lib/CustomAdvisors 安裝目錄。

    註:
    如果您願意,您可以在一個作業系統上編譯自行設定通告器, 並且在另一個作業系統上執行。 例如,您可能在 Windows 2000 上編譯通告器、將類別檔 (二進位) 複製到 AIX 機器,並在該處執行自行設定通告器。

    在 AIX、Linux 及 Sun 的語法類似。

    執行

    欲執行自行設定通告器,您必須先將類別檔複製到正確的安裝目錄:

    ...ibm/edge/lb/servers/lib/CustomAdvisors/ADV_fred.class
    

    配置該元件,啟動其管理程式功能,並發出指令,以啟動您的自行設定通告器:

    dscontrol advisor start fred 123
     
    

    其中:

    必要常式

    和所有的通告器一樣,自行設定通告器會擴充通告器基礎 (稱為 ADV_Base) 的功能。 這是實際執行大部份通告器功能 (例如,將資料流量回報管理程式, 以供管理程式的加權演算法使用) 的通告器基礎。 通告器基礎也會執行 socket 連線及關閉作業,並提供傳送和接收方法供通告器使用。 通告器本身僅可用來將資料傳送到和接收自所通告的伺服器上的埠。 通告器基礎內的 TCP 方法會適時計算資料流量。必要時, ADV_base 中建構元內的旗號,會以通告器傳回的新資料流量,來覆寫現存的資料流量。

    註:
    根據建構元中的設定值,通告器基礎會在指定間隔對加權演算法提供資料流量。 如果可以傳回有效資料流量的實際通告器尚未完成, 通告器基礎會使用先前的資料流量。

    以下是基礎類別方法:

    搜尋次序

    Load Balancer 先查詢它所提供的本機通告器清單。 如果沒有找到指定的通告器,則 Load Balancer 會查詢客戶的自行設定通告器清單。

    命名及路徑

    範例通告器

    對範例通告器所列的程式,是包含在範例通告器中。 安裝之後,可在 ...ibm/edge/lb/servers/samples/CustomAdvisors 目錄中找到此範例通告器。


    Metric Server

    此特性適用於所有的 Load Balancer 元件。

    Metric Server 以系統特定測量單位表格,提供 Load Balancer 有關伺服器的載入資訊,並報告於伺服器的狀況上。Load Balancer 管理程式查詢常駐於每一個伺服器上的 Metric Server 代理程式,並使用收集自代理程式的測量單位來為平衡負載程序指定加權。結果也會置於管理程式報告中。

    註:
    當每一個伺服器的兩個或多個測量單位收集並正常化為單一的系統負載值時,可能會發生捨入誤差。

    若要取得配置範例,請參閱圖 5

    WLM 限制

    Metric Server 和 WLM 通告器一樣,都是作為一個整體在伺服器系統上報告,而不是在個別通訊協定特定的伺服器常駐程式上報告。WLM 及 Metric Server 都會將結果置入管理程式報告的系統直欄。但結果是,不支援同時執行 WLM 通告器及 Metric Server。

    先決條件

    在平衡負載的所有伺服器上都必須安裝並執行 Metric Server 代理程式。

    如何使用 Metric Server

    以下為配置 Dispatcher 的 Metric Server 的步驟。 可使用類似的步驟來配置其他 Load Balancer 元件的 Metric Server。

    要讓 Metric Server 在本端主電腦以外的位址上執行,您需要編輯平衡負載伺服器機器上的 metricserver 檔案。 在 metricserver 檔案中找到「java」之後,請插入下列內容:

    -Djava.rmi.server.hostname=OTHER_ADDRESS
    

    此外,在 metricserver 檔案中的 if 陳述式之前,新增下行:hostname OTHER_ADDRESS

    若為 Windows 2000:您也會需要指定 Microsoft 堆疊上 OTHER_ADDRESS 的別名。若要指定 Microsoft 堆疊上位址的別名,請參閱第 *** 頁。


    工作量管理程式通告器

    WLM 是在 MVS 主電腦上執行的程式碼。您可以查詢此程式碼, 以詢問 MVS 機器上的資料流量。

    當「MVS 工作負荷管理」在您的 OS/390 系統上配置好了之後, Dispatcher 即可從 WLM 接收容量資訊,並且在平衡負載處理中使用此資訊。 若使用 WLM 通告器,Dispatcher 會根據 Dispatcher 主電腦表, 定期透過每一個伺服器上的 WLM 埠來開啟連線,並接收所傳回的容量整數。 由於這些整數是代表仍可使用的容量數, 而 Dispatcher 期望值代表每一台機器上的資料流量, 所以通告器會將容量整數轉化,並將其正常化為資料流量值 (意即, 大的容量整數,小的資料流量值,都代表情況較良好的伺服器)。 最後的資料流量結果會放在管理程式報告的「系統」直欄中。

    WLM 通告器及其它 Dispatcher 通告器之間,有幾項重要的差異:

    1. 其它通告器會以用來傳送一般從屬站資料傳輸的同一個埠, 來開啟與伺服器的連線。而 WLM 通告器則是使用與一般資料傳輸不同的埠, 來開啟與伺服器的連線。每一個伺服器機器上的 WLM 代理程式, 都必須配置來傾聽啟動「Dispatcher WLM 通告器」時所使用的同一個埠。 預設 WLM 埠為 10007。
    2. 其它通告器只會評估定義於 Dispatcher cluster:port:server 配置中的伺服器, 在此配置中,伺服器的埠會配合通告器的埠。 WLM 通告器會通知 Dispatcher cluster:port:server 配置中的每一台伺服器。 因此,當您使用 WLM 通告器時,絕不可以定義任何非 WLM 伺服器。
    3. 其它通告器會將其資料流量資訊放在其「埠」直欄下的管理程式報告中。 而 WLM 通告器會將其資料流量資訊放在其系統直欄下的管理程式報告中。
    4. 若要同時使用特定通訊協定的通告器及 WLM 通告器,也是有可能的。 特定通訊協定的通告器會將伺服器登記在其一般的資料傳輸埠上, 而 WLM 通告器則會使用 WLM 埠來登記系統資料流量。

    Metric Server 限制

    WLM 代理程式和 Metric Server 代理程式一樣,都是作為一個整體在伺服器系統上報告,而不是在個別通訊協定特定的伺服器常駐程式上報告。Metric Server 及 WLM 都會將其結果置入管理程式報告的系統直欄。但結果是,不支援同時執行 WLM 通告器及 Metric Server。


    Dispatcher、CBR 及 Site Selector 的進階特性

    本章將說明如何配置平衡負載參數,以及如何設定 Load Balancer 以使用進階功能。

    註:
    讀取本章時,如果您不是使用 Dispatcher 元件,請將 dscontrol 改為下列項目:

    表 13. Load Balancer 的進階配置作業

    作業 說明 相關資訊
    將 Load Balancer 並列到其所平衡負載的機器上 設定已並列 Load Balancer 的機器。 使用並列伺服器
    配置高可用性或共同高可用性 設定第二個 Dispatcher 機器,以作為備份。 高可用性
    配置規則型平衡負載 定義使用您的伺服器子集的條件。 配置規則型平衡負載
    使用埠相關性置換,提供一種機制,讓伺服器置換埠滯留特性 容許伺服器置換它的埠上的滯留時間設定。 埠相關性置換
    使用滯留 (相關性) 特性,將叢集埠配置成滯留埠 容許從屬站要求引導到同一伺服器。 Load Balancer 的相關性特性如何運作
    使用跨埠相關性,在埠間擴充滯留 (相關性) 特性 容許從不同埠收到的從屬站要求引導到同一伺服器。 跨埠相關性
    使用相關性位址遮罩,指定共用 IP 子網路位址 容許從同一子網路收到的從屬站要求引導到同一伺服器。 相關性位址遮罩 (stickymask)
    使用主動 cookie 相關性來平衡負載 CBR 的伺服器 一種規則選項,可讓階段作業維護特定伺服器的相關性。 主動 cookie 相關性
    使用被動 cookie 相關性,來針對 Dispatcher 的根據內容遞送及 CBR 元件,平衡負載伺服器。 一種規則選項,可讓階段作業根據 cookie 名稱/cookie 的值來維護特定伺服器的相關性。 被動 cookie 相關性
    使用 URI 相關性對具有獨特內容的 Caching Proxy 伺服器進行平衡負載,而此種內容將快取到每一個個別的伺服器上 一種規則選項,可讓階段作業根據 URI 來維護特定伺服器的相關性。 URI 相關性
    配置廣域 Dispatcher 支援 設定遠端 Dispatcher 以透過廣域網路進行平衡負載。 或者,使用支援 GRE 的伺服器平台來平衡負載整個廣域網路 (不具備遠端 Dispatcher)。 配置廣域 Dispatcher 支援
    使用明確的鏈結 避免在您的鏈結中省略 Dispatcher。 使用外顯鏈結
    使用專用網路 配置 Dispatcher,以便對專用網路上的伺服器進行平衡負載。 使用專用網路配置
    使用萬用字元叢集來組合通用伺服器配置 沒有明確地配置位址,將使用萬用字元叢集來進行平衡負載。 使用萬用字元叢集來結合伺服器配置
    使用萬用字元叢集來平衡防火牆的資料流量 所有的資料傳輸在進行平衡負載作業後傳送至防火牆。 使用萬用字元叢集來平衡防火牆的資料流量
    使用具有 Caching Proxy 的萬用字元叢集來進行透通式 proxy 允許使用 Dispatcher 來啟動透通 proxy。 將萬用字元叢集與 Caching Proxy 搭配使用來進行透通式 Proxy
    使用萬用字元埠來引導未配置的埠資料傳輸 處理沒有配置給任何特定埠的資料傳輸。 使用萬用字元埠來引導未配置埠的資料傳輸
    使用「拒絕服務攻擊」服務程式來通報管理者 (透過警示) 有潛伏的攻擊 若伺服器上出現顯著的半開啟 TCP 連線數量時,Dispatcher 即會分析相關的外來要求。 拒絕服務攻擊偵測
    使用二進位記載功能來分析伺服器統計值 允許伺服器資訊保存在二進位檔中,並可從二進位檔中擷取。 使用二進位記載功能來分析伺服器統計值

    使用並列伺服器

    Load Balancer 可常駐在與平衡負載要求之伺服器相同的機器上。 此點通常被稱為並列伺服器。並列特性適用於 Dispatcher 及 Site Selector 元件。 雖然 CBR 也支援並列,但只在使用連結特定 Web 伺服器及連結特定 Caching Proxy 時才適用。

    註:
    進行高資料傳輸期間,並列的伺服器會與 Load Balancer 競爭資源。 但是,沒有超載機器時,使用並置伺服器則會減少設定平衡負載站台所需的機器數目。

    對於 Dispatcher 元件

    Linux:為能同時配置並列及高可用性,以 MAC 轉送方法來執行 Dispatcher 元件時, 您必須安裝 Linux 核心修補程式。有關如何安裝修補程式的進一步資訊,請參閱安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)。 不過,遵循這些指示時,請跳過為迴圈配接卡建立別名的步驟。 您應新增 ifconfig 指示,以便在 goStandby 高可用性 script 檔中為迴圈配接卡建立別名, 而此檔案會在 Dispatcher 進入待機狀態時執行。

    Solaris:進入點 Dispatcher 並列時,您將無法配置 WAN 通告器。請參閱使用具有 Dispatcher 廣域支援的遠端通告器

    在較早的版次中,並不需要指定與配置中非轉送的位址 (NFA) 相同的並列伺服器位址。該限制已解除。

    若要配置要並列的伺服器,dscontrol server 指令提供一個稱為 collocated 的選項 可被設定為 yesno。 預設值是 no。伺服器的位址必須是機器上網路介面卡的有效 IP 位址。

    註:
    若是 Windows 2000:您可並列 Dispatcher,但請勿使用 collocated 關鍵字。使用 Dispatcher 的 nat 及 cbr 轉送方法時支援並列,但使用 Dispatcher 的 mac 轉送方法時則不支援。如需 Dispatcher 轉送方法的進一步資訊,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)Dispatcher 的根據內容遞送 (cbr 轉送方法)Dispatcher 的 MAC 層次遞送 (mac 轉送方法)

    您可以用下列其中一項方法來配置並列伺服器:

    有關 dscontrol server 指令語法的進一步資訊,請參閱dscontrol server -- 配置伺服器

    利用 Dispatcher 的 nat 轉送來配置伺服器並列

    如果在 Dispatcher 機器上執行下列步驟,則配置 Dispatcher 的 nat 轉送方法時,現在可對所有作業系統執行並列支援:

    對於 CBR 元件

    CBR 支援不需要其他配置之所有平台上的並列。然而,您使用的 Web 伺服器及 Caching Proxy 必須是特定連結的。

    對於 Site Selector 元件

    Site Selector 支援不需要其他配置之所有平台上的並列。


    高可用性

    高可用性功能 (可使用 dscontrol highavailability 指令來配置) 可供 Dispatcher 元件使用 (但不可供 CBR 或 Site Selector 元件使用)。

    為了要改善 Dispatcher 的可用性, Dispatcher 高可用性功能會使用下列的機制:

    註:
    對於共同高可用性的圖例及說明 配置,兩個 Dispatcher 機器在此共用兩個叢集設定,以彼此提供備份,請參閱共同高可用性。共同高可用性類似於高可用性,但就整體而言, 它特別地架構在叢集位址而非 Dispatcher 機器。當配置這兩部機器的共用叢集時, 它們必須是相同的。

    配置高可用性

    dscontrol highavailability 的完整語法在dscontrol highavailability -- 控制高可用性 中。

    若要取得下面許多作業的完整討論,請參閱設定 Dispatcher 機器

    1. 在兩台 Dispatcher 伺服器機器上啟動伺服器。
    2. 在兩台機器上啟動執行器。
    3. 請確定每一台 Dispatcher 機器的非轉送的位址 (NFA) 皆已配置完成, 而且都是有效的 IP 位址,可供 Dispatcher 機器的子網路使用。

      僅適用於 Windows 2000:此外,使用 dsconfig 指令來配置每一個非轉送位址。 例如:

      dsconfig en0 nfa_addr netmask netmask
      
    4. 在兩台機器上設定叢集、埠及伺服器資訊。

      註:
      例如,對於共同高可用性配置 (圖 14), 請按照下列方式,配置兩台 Dispatcher 之間共用的叢集設定:

      • 對於 Dispatcher 1,請發出:

        dscontrol cluster set clusterA primaryhost NFAdispatcher1
        dscontrol cluster set clusterB primaryhost NFAdispatcher2
        

      • 對於 Dispatcher 2,請發出:

        dscontrol cluster set clusterB primaryhost NFAdispatcher2
        dscontrol cluster set clusterA primaryhost NFAdispatcher1
        
    5. 在兩台機器上啟動管理程式及通告器。管理程式功能會自動啟動連繫通告器。
    6. 在這兩台 Dispatcher 機器的每一台上建立別名 script 檔。請參閱使用 script
    7. 同時在兩台機器上新增通訊檢查訊息的資訊:

      dscontrol highavailability heartbeat add sourceaddress destinationaddress
      

      註:
      Sourceaddressdestinationaddress 為 Dispatcher 機器的 IP 位址 (DNSnames 或帶有點的十進位位址)。 在每一台機器上,這些值將被保留。範例:

      Primary - highavailability heartbeat add 9.67.111.3 9.67.186.8         
      Backup  - highavailability heartbeat add 9.67.186.8 9.67.111.3
      
      至少有一個通訊檢查訊息 (heartbeat) 配對必須有當成來源及目的位址配對的 NFA。

      如果可能,建議與標準叢集資料傳輸相比的個別子網路之間,至少有一個通訊檢查訊息 (heartbeat) 配對。保留明顯的通訊檢查訊息 (heartbeat) 資料傳輸,將有助於防止在網路負載過大時的錯誤接收,也可改進錯誤替代後的完成復原時間。

    8. 使用 reach add 指令, 在這兩部機器上配置 Dispatcher 能夠連繫到 IP 位址的列示,以確保能提供完整服務。範例:

      dscontrol highavailability reach add 9.67.125.18
      
      連繫目標是建議的,但不是必要的。相關資訊,請參閱使用通訊檢查訊息及連繫目標的失敗偵測能力
    9. 將備份資訊新增到每一台機器:

      註:
      在您的機器上選取一個未使用的埠,作為 port。 您的兩台機器將透過這個埠來進行通訊。
    10. 檢查每一台機器上的高可用性狀態:

      dscontrol highavailability status
      
      每一台機器應該具有正確的角色 (備份、主要或兩者)、狀態及次狀態。 主要機器應該是現行的且是同步處理的; 而備份機器則應該在備用模式中,且應該在短時間內同步化。 策略必須是相同的。

    註:

    1. 若要在沒有備份機器的情況下,配置單一 Dispatcher 機器來遞送封包, 在啟動時,請不要發出任何高可用性指令。

    2. 若要將配置為高可用性的兩台 Dispatcher 機器,轉換為一台單獨執行的機器, 請停止其中一台機器上的執行器,然後刪除另一台機器上的高可用性特性 (通訊檢查訊息、 連繫及備份等特性)。

    3. 在上述的兩個情況中, 必要時,您必須以叢集位址設定網路介面卡的別名。

    4. 當兩台 Dispatcher 機器在高可用性配置下執行且同步化時,建議您最好先在待機機器上鍵入所有 dscontrol 指令 (以便更新配置),然後才在現行機器上鍵入這些指令。

    5. 在高可用性配置中執行兩台 Dispatcher 機器時,若您將兩台機器上的執行器、 叢集、埠或伺服器的任一參數 (例如,port stickytime) 設定為不同的值, 可能會發生無法預期的結果。

    6. 對於共同高可用性,請考慮下列情況: 其中一台 Dispatcher 必須主動地遞送它的主要叢集的路由封包,以及接管備份叢集的遞送封包。 確定這不會超過這台機器上的產量。

    7. 若為 Linux,當使用 Dispatcher 元件的 MAC 埠轉送方法同時配置高可用性及並列時,您必須安裝 Linux 核心修補程式。有關如何安裝修補程式的進一步資訊,請參閱安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)

    使用通訊檢查訊息及連繫目標的失敗偵測能力

    除了失敗偵測的基本準則 (失去現行及備用 Dispatcher 之間的連通性是透過通訊檢查訊息來偵測) 之外,還有另一個偵測故障的機制,叫做連通性基準。 當您配置 Dispatcher 時,可提供各 Dispatcher 都應能連繫到之主電腦的清單,如此才能正確地工作。

    在 Dispatcher 所使用的每一個子網路上,您應該至少要選擇一台主電腦。 主電腦可以是路由器、IP 伺服器,或是其它類型的主電腦。 主電腦可連繫性是由 ping 到主電腦的連繫通告器來取得的。 如果通訊檢查訊息無法通過,或是備用的 Dispatcher 比主要的 Dispatcher 更能夠符合可連繫性的基準時,便會產生切換動作。 若要依據所有可用的資訊來做決定, 則現行的 Dispatcher 會規律地傳送可連繫性功能給備用的 Dispatcher。 於是 Dispatcher 會比較這些功能與它本身的功能,並決定是否要切換。

    註:
    配置連繫目標時,您還必須啟動連繫通告器。管理程式功能會自動啟動連繫通告器。 有關連繫通告器的進一步資訊,請參閱第 (REACHADV) 頁。

    復原策略

    將會配置兩台 Dispatcher 機器:一為主要機器, 另一則是備份機器。 在啟動時,主要機器將傳送所有連線資料給備份機器, 直到該機器同步化為止。主要機器會變成使用中, 換言之,它將開始平衡負載。同時,備份機器將監督主要機器的狀態, 換言之,它目前處於備用狀態中。

    如果備份機器在任何時候測偵到主要機器發生故障, 它將接管主要機器的平衡負載功能,並變成使用中的機器。在主要機器再次恢復作用後, 機器將依據使用者所配置的復原策略來回應。有兩種策略:

    自動
    一旦主要機器開始重新作業時,便會繼續遞送封包。

    手動
    即使在主要機器進行作業後,備份機器仍會繼續遞送封包。需要手動介入方可使主要機器回到作用中狀態,並將備份機器重新置於備用狀態中。

    這兩台機器所設定的策略參數必須相同。

    手動復原策略容許您使用 takeover 指令, 強迫將封包遞送給特定機器。在其它機器上執行維護作業時, 手動復原會很有用。自動復原策略是針對正常無人式作業而設計的。

    對於共同高可用性配置,沒有單一個叢集的失敗。

    如果某台機器發生了問題,即使它僅影響一個叢集,則另一台機器也會接管這兩個叢集。

    註:
    在接管狀況期間,可能會遺失部份連線更新。這可能會造成現有的長執行連線 (例如 Telnet),在接管時間結束時仍被存取。

    使用 script

    欲使 Dispatcher 能夠遞送封包,必須將每個叢集位址化名為網路介面裝置別名。

    由於偵測到失效時,Dispatcher 機器將變更狀態,所以必須自動發出上述的指令。 Dispatcher 將會執行使用者所建立的 script 來做到這一點。範例 script 位在 ...ibm/edge/lb/servers/samples 目錄下,它必須先移至 ...ibm/edge/lb/servers/bin 目錄中才可執行。

    註:
    對於共同高可用性配置,Dispatcher 將呼叫每一個 『go" script, 且有一個參數會識別主要 Dispatcher 位址。

    script 必須查詢此參數,並為與主要 Dispatcher 相關的叢集位址,執行 ifconfig 指令 (若為 Windows 2000,則執行 dsconfig 指令)。

    註:
    若要為 Dispatcher 的 nat 轉送方法配置高可用性, 您必須新增回覆位址到 script 檔。

    可能會使用下列的範例 script:

    goActive
    goActive script 在 Dispatcher 變成作用中狀態且開始遞送封包時執行。

    goStandby
    goStandby script 在 Dispatcher 變成待機狀態監督作用中機器狀況,但不遞送任何套裝軟體時執行。

    goInOp
    goInOp script 在 Dispatcher 執行器已停止且在第一次啟動之前執行。

    goIdle
    goIdle script 在 Dispatcher 變成閒置狀態且開始遞送封包時執行。在尚未新增高可用性特性的情況下,例如在單機式配置中,就會發生這種情形。 在新增高可用性特性之前,或在將它們移除之後, 高可用性配置中也會有這個 Script。

    highavailChange
    highavailChange script 在每次 Dispatcher 內部的高可用性狀態變更時執行,例如被呼叫的 go script。 傳入此 script 的單一參數是 Dispatcher 剛執行之 go script 的名稱。您可建立此 script,以使用狀態變更資訊,例如,要警示「管理者」或簡化記錄事件。
    註:
    適用於 Windows 2000:在您的配置設置中,如果您使 Site Selector 平衡負載作業於高可用性環境中的兩個 Dispatcher 機器,您將需要在測量單位伺服器的 Microsoft 堆疊上新增別名。

    應在 goActive script 中新增別名。例如:

    call netsh interface ip add address "Local Area Connection"
      addr=9.37.51.28 mask=255.255.240.0
    

    在 goStandby 及 GoInOp 中,別名皆必須移除。例如:

    call netsh interface ip delete address "Local Area Connection"
      addr=9.37.51.28
    

    如果機器上有多重 NIC,則應在指令提示下發出下列指令 netsh interface ip show address,以先選取應該使用的介面。此指令將傳回目前已配置介面的清單,並且會為「區域連線」編號 (例如,「區域連線 2」),因此,您可決定您應該使用的介面。


    配置規則型平衡負載

    您可以使用規則型平衡負載,來調整封包要傳送到哪一個伺服器的時間及原因。 Load Balancer 複查所有從最高優先順序到最低優先順序的規則,在找到為真的第一個規則上停止,然後在與此規則關聯的伺服器之間,平衡負載其內容。它已經根據目的地及埠來平衡負載, 但是會使用規則來擴展您的功能以分送連接。

    在配置規則時的大部份情況下,您應配置預設的永遠為真規則,以抓取無法執行其他較高優先順序規則的要求。當所有其它的伺服器都因從屬站要求而失敗時,這可以是「抱歉,站台目前已關閉,請稍後重試」回應。

    當您基於某種理由,要使用您伺服器的子集時,應將規則型平衡負載搭配使用 Dispatcher 和 Site Selector。 您必須一律使用 CBR 元件的規則。

    您可以選擇下列類型的規則:

    建議您最好在開始在配置中新增規則之前,先規劃您希望該規則遵循的邏輯。

    如何評估規則?

    所有的規則都有名稱、類型、優先順序,可能有開始範圍及結束範圍,以及一組伺服器。此外,CBR 元件的內容類型規則具有與其關聯的相符正規表示式型樣。(有關如何使用內容規則的範例與實務,以及內容規則的有效型樣語法,請參閱附錄 B, 內容規則 (型樣) 語法。)

    規則的評估會依照優先順序的順序。換言之,優先順序 1 (較低值) 的規則將在優先順序 2 (較高值) 之前評估。將會使用最先滿足的規則。一旦有一個已經滿足的規則,將不會再評估其他規則。

    對於要滿足的規則,必須符合兩個條件:

    1. 規則的述詞必須為真。亦即,它評估的值必須在開始和結束的範圍之間, 否則,內容就必須符合內容規則的型樣中所指定的正規表示式。 對於真類型的規則,內定其為永遠滿足,而與其開始及結束範圍無關。
    2. 如果有與規則有關的伺服器,則至少必須可對其中一個伺服器轉遞封包。

    如果規則沒有與其相關的伺服器,則會滿足只需要符合條件 1 的規則。 在此案例中,Dispatcher 將放下連接要求,Site Selector 將傳回有錯誤之名稱伺服器要求,CBR 將讓 Caching Proxy 傳回錯誤頁面。

    如果沒有滿足的規則,Dispatcher 將從埠上可用的完整伺服器中選取一個伺服器,Site Selector 將從站台名稱上可用的完整伺服器中選取一個伺服器,且 CBR 將使得 Caching Proxy 傳回錯誤頁面。

    根據從屬站 IP 位址來使用規則

    只有 Dispatcher、CBR 或 Site Selector 元件才有提供此規則類型。

    如果您希望顯示客戶並且根據資源的來源位置配置資源, 則可能要根據從屬站 IP 位址來使用規則。

    例如,您注意到您的網路正在從來自特定一組 IP 位址的從屬站, 取得許多未付費且不需要的資料傳輸。因此您使用 dscontrol rule 指令建立了規則,例如:

    dscontrol rule add 9.67.131.153:80:ni type ip
      beginrange 9.0.0.0 endrange 9.255.255.255
    

    此 "ni" 規則會過濾掉來自 IBM 從屬站的任何連線。 然後,您可將 IBM 人員可存取的伺服器新增到規則中。或者, 如果您不新增任何伺服器到規則中,來自 9.x.x.x 位址的要求將不會由您的任何伺服器伺服。

    根據從屬站埠來使用規則

    只有 Dispatcher 元件才有提供此規則類型。

    如果您的從屬站使用的軟體在進行要求時會從 TCP/IP 要求特定的埠, 您可能會想要根據從屬站埠來使用規則。

    例如,您可以建立一個規則,說明從屬站埠 10002 的任何要求都要使用一組特殊的快速伺 服器,因為您知道該埠的任何從屬站要求都是來自一群傑出的客戶。

    根據一天的時間來使用規則

    只有 Dispatcher、CBR 或 Site Selector 元件才有提供此規則類型。

    基於容量規劃的理由,您可能希望根據一天的時間來使用規則。例如, 如果您的 Web 站台大部份是在每天的相同小時群組期間內使用, 您可能會想要對 HTTP 全日指派專屬的五個伺服器, 然後,在尖峰期間新增另外五個伺服器。

    您可能要根據一天的時間使用規則的另一個理由, 是當您想要關閉某些伺服器以便在每天晚上或深夜進行維護,所以您會設定規則, 以便在必要維護期間排除那些伺服器。

    依據服務程式類型 (TOS) 使用規則

    只有 Dispatcher 元件才有提供此規則類型。

    您可能想要根據 IP 標頭中的 『服務程式類型』 (TOS) 欄位, 來使用規則。例如,如果進來一個從屬站要求,它具有一個 TOS 值, 指出一般服務程式,則它可以遞送到一組伺服器。例如,如果進來一個不同從屬站要求, 它具有一個不同 TOS 值,指出較高優先順序的服務程式,則它可以遞送到不同組的伺服器組。

    TOS 規則可讓您使用 dscontrol rule 指令,充份配置 TOS 位元組中的每一個位元。 若要取得您想要其在 TOS 位元組中符合的有效位元, 請使用 0 或 1。不然,將使用值 x。 下列是新增 TOS 規則的範例:

    dscontrol rule add 9.67.131.153:80:tsr type service tos 0xx1010x
    

    使用基於每秒連線數的規則

    只有 Dispatcher 及 CBR 元件才有提供此規則類型。

    註:
    管理程式必須正在執行,下列才能運作。

    如果您需要和其它的應用程式共用您的一些伺服器,則您最好使用基於埠上每秒連線數的規則。 例如,您可以設定兩個規則:

    1. 如果埠 80 上的每秒連線數介於 0 到 2000 之間,則使用這 2 個伺服器
    2. 如果埠 80 上的每秒連線數大於 2000,則使用這 10 個伺服器

    或者,您可能正在使用 Telnet 並且想要對 Telnet 保留五個伺服器中的兩個, 除非每秒連線數增加到特定層次以上。 如此,Dispatcher 便會在尖峰時間平衡五個伺服器的資料流量。

    結合「連線」類型規則來設定規則評估選項 "upserversonrule":當使用連線類型規則並設定 upserversonrule 選項時, 如果伺服器集中的部份伺服器已關閉,則您可以確定剩餘的伺服器將不會超載。 相關資訊,請參閱規則的伺服器評估選項

    使用基於作用中連線總數的規則

    只有 Dispatcher 或 CBR 元件才有提供此規則類型。

    註:
    管理程式必須正在執行,下列才能運作。

    如果您的伺服器超出負荷並且開始丟出封包, 您可能想要根據埠上的作用中連線總數來使用規則。某些 Web 伺服器將繼續接受連線, 即使它們沒有足夠的緒可回應要求。結果,從屬站要求逾時, 並且也未對來到您的 Web 站台的客戶進行伺服。您可以根據作用中連線來使用規則, 以平衡伺服器儲存區內的容量。

    例如,您根據經驗知道您的伺服器將在接受 250 個連線之後停止伺服。 您可用 dscontrol rule 指令或 cbrcontrol rule 指令來建立規則,例如:

    dscontrol rule add 130.40.52.153:80:pool2 type active
    beginrange 250 endrange 500
     
    或 
     
    cbrcontrol rule add 130.40.52.153:80:pool2 type active
    beginrange 250 endrange 500
     
    

    然後將您目前的伺服器以及一些其它的伺服器新增到規則中,不然,這些伺服器會供其它的處理使用。

    使用基於保留頻寬及共用頻寬的規則

    只有 Dispatcher 元件才提供保留頻寬及共用頻寬的規則。

    若為頻寬規則,Dispatcher 計算頻寬作為以特定伺服器集傳送資料到從屬站的比率。Dispatcher 在伺服器、規則、埠、叢集及執行器層次追蹤容量。對每一個層次而言,都有一個位元組計數器欄位:每秒轉送的千位元組 (KB)。Dispatcher 以 60 秒鐘的間隔計算這些比率。您可從 GUI 或從指令行報告的輸出來檢視這些比率值。

    保留頻寬規則

    保留頻寬規則可讓您控制伺服器組每秒所遞送的千位元組 (KB) 數。 在配置的整個過程中,為每一個伺服器集設定臨界值 (配置指定的頻寬範圍), 您便可以控制及保證每一個叢集埠組合所使用的頻寬數量。

    下列是新增 reservedbandwidth 規則的範例:

    dscontrol rule add 9.67.131.153:80:rbw type reservedbandwidth
      beginrange 0 endrange 300
    

    所指定的開始範圍及結束範圍皆是以每秒千位元組為單位。

    共用頻寬規則

    配置共用頻寬規則之前,您必須在執行器或叢集層次,使用 dscontrol executordscontrol cluster 指令及 sharedbandwidth 選項,指定可以共用的頻寬之最大數量 (每秒千位元組 (KB))。sharebandwidth 值不應超過可用的頻寬總數 (網路容量總計)。 使用 dscontrol 指令,以設定僅提供規則上限的共用頻寬。

    下列是指令語法的範例:

    dscontrol executor set sharedbandwidth size
    dscontrol cluster [add | set] 9.12.32.9 sharedbandwidth size
    

    sharedbandwidth 的 size 是一整數值 (每秒千位元組)。預設值是零。 如果此值為 0,則頻寬無法共用。

    在叢集層次共用頻寬可讓叢集使用的頻寬為最大。只要叢集使用的頻寬低於指定的數量,便會將此規則評估為 True。如果使用的頻寬總數大於指定的數量,則此規則將評估為 False。

    執行器層次上的共用頻寬可讓整個 Dispatcher 配置共用最大頻寬量。只要在執行器層次使用的頻寬低於指定的數量,便會將此規則評估為 True。如果使用的頻寬總數大於其所定義的值,則此規則將評估為 False。

    以下是新增或設定 sharedbandwidth 規則的範例:

    dscontrol rule add 9.20.30.4:80:shbw type sharedbandwidth sharelevel value
    dscontrol rule set 9.20.34.11:80:shrule sharelevel value
    

    sharelevel 的 value 可以是 executor 或 cluster。 Sharelevel 在 sharebandwidth 規則中是必要的參數。

    使用保留頻寬及共用頻寬規則

    Dispatcher 可讓您使用保留頻寬規則,在您的配置內配置一組伺服器的指定頻寬。 藉由指定開始及結束範圍,您可控制由一組伺服器傳遞至從屬站的千位元組 (KB) 範圍。一旦規則不再評估為 True (超過結束範圍),將會評估下一個較低優先順序的規則。 如果下一個較低優先順序的規則是「永遠為真」規則,則會選取伺服器,並以「站台忙線」回應給從屬站。

    例如:請考慮埠 2222 上三個伺服器的群組。如果將保留的頻寬設定為 300,則經過 60 秒的每秒最大千位元組 (KB) 將為 300。當超出這個比率時,便不再將規則評估為 True。如果這是唯一的規則,則 Dispatcher 會選取三個伺服器的其中一個來處理要求。如果有一個較低優先順序的「永遠為真」規則,則可將要求重新導向至另一個伺服器,並以「站台忙線」來回答。

    共用頻寬規則可對從屬站提供額外伺服器存取。 特別是在當成接著保留頻寬規則的較低優先順序規則使用時,即使已超出保留的頻寬,從屬站仍可存取伺服器。

    例如:藉由使用接著保留頻寬規則的共用頻寬規則,您可讓從屬站在控制的方式下,增加對三個伺服器的存取。只要有可供使用的共用頻寬,規則都將評估為真,且會授與存取的權限。如果沒有可用的共用頻寬,則規則將不會為真,並會對下一個規則進行評估。如果接著的是「永遠為真」規則,則可依需要重新導向要求。

    藉由說明於上述範例的使用保留及共用頻寬,在授與 (或拒絕) 對伺服器的存取時,可達到更佳的彈性及控制。特定埠上的伺服器可被限制於頻寬用法中,但是只要有其他的頻寬可供使用,其他的伺服器便可使用之。

    註:
    Dispatcher 以測量流向伺服器的從屬站資料傳輸 (例如,資料「acks」),來追蹤頻寬。如果此 Dispatcher 因任何理由無法找到此資料傳輸,則在使用頻寬規則時,將無法預期其結果。

    全部測量單位規則

    只有 Site Selector 元件才有提供此規則類型。

    針對全部測量單位規則,選擇系統測量單位 (cpuload、memload、或您可以自行設定系統測量單位 script),且 Site Selector 會比較系統測量單位值 (由常駐在每一個負載平衡的伺服器上之 Metric Server 代理程式傳回) 及您在規則中指定之開始和結束範圍。伺服器集內的所有伺服器之現行系統測量單位值,必須在範圍內,以供規則啟動。

    註:
    您所選擇的系統測量單位 script 必須常駐在每一個經負載平衡的伺服器上。

    下列是將全部測量單位規則新增至配置內容的範例:

    sscontrol rule add dnsload.com:allrule1 type metricall
      metricname cpuload beginrange 0 endrange 100
     
    

    平均測量單位規則

    只有 Site Selector 元件才有提供此規則類型。

    針對平均測量單位規則,選擇系統測量單位 (cpuload、memload、或您可以自行設定系統測量單位 script),且 Site Selector 會比較系統測量單位值 (由常駐在每一個負載平衡的伺服器上之 Metric Server 代理程式傳回) 及您在規則中指定之開始和結束範圍。伺服器組內所有伺服器之現行系統測量單位的平均值,皆必須在範圍內才可讓規則生效。

    註:
    您所選擇的系統測量單位 script 必須常駐在每一個經負載平衡的伺服器上。

    下列是將平均測量單位規則新增至配置內容的範例:

    sscontrol rule add dnsload.com:avgrule1 type metricavg
      metricname cpuload beginrange 0 endrange 100
     
    

    使用永遠為真的規則

    只有 Dispatcher、CBR 或 Site Selector 元件才有提供此規則類型。

    可以建立「永遠為真」的規則。除非所有與這類規則相關的伺服器都當機, 否則將一直選取這類規則。因此它通常應該比其它的規則處於較低的優先順序。

    您甚至可以有多個「永遠為真」的規則,每個規則都有相關的一組伺服器。 會選擇具有可用伺服器的第一個為真的規則。例如, 假設您有六個伺服器。您希望其中兩個伺服器來處理所有情況下的資料傳輸, 除非這兩個伺服器都當機。如果前兩個伺服器都當機, 您希望第二組伺服器可處理資料傳輸。如果這四個伺服器都當機, 您將使用最後兩個伺服器來處理資料傳輸。您可以設定三個「永遠為真」的規則。 如此一來,只要第一組伺服器中的某一個伺服器在開機中, 這一組伺服器將一直處於選擇的狀態。如果兩個伺服器都當機, 則會選擇第二組中的一個,依此類推。

    另一個範例是,您可能希望「永遠為真」的規則可確保對於不符合任何設定規則的進入的從屬站, 將不進行伺服。您可以用 dscontrol rule 指令建立如下的規則:

    dscontrol rule add 130.40.52.153:80:jamais type true priority 100
    

    如此一來,您可以不新增任何伺服器到規則中,而使從屬站封包被捨棄,並且沒有回應。

    註:
    在建立永遠為真的規則時,您不必設定 beginrange 或 endrange。

    您可以定義多個「永遠為真」的規則,而且從此以後只要變更它們的優先順序層次, 即可調整要執行的規則。

    根據要求內容來使用規則

    只有 CBR 元件或 Dispatcher 元件 (當使用 Dispatcher 的 cbr 轉送方法時) 才有提供此規則類型。

    您會想要使用內容類型規則來將要求傳送至各個伺服器群組,尤其是設定來處 理站台的資料傳輸之子集的伺服器。 例如,您也許會使用一組伺服器來處理所有的 cgi-bin 要求, 用另一組來處理所有的串流音效要求,再用另外一組來處理所有的其它要求。 您可以將附有符合路徑之型樣的規則新增至 cgi-bin 目錄,而另一個規則符合 檔案類型或您的串流音效檔案,再另一個則為永遠為真的規則,以處理其它資 料傳輸。 然後將適當的伺服器新增至每個規則。

    重要事項:有關如何使用內容規則的範例與實務,以及內容規則的有效型樣語法,請參閱附錄 B, 內容規則 (型樣) 語法

    埠相關性置換

    透過埠相關性置換,您可以置換特定伺服器的埠滯留。例如, 您將使用一個規則來限制每一個應用程式伺服器的連線數量, 且您具有一個溢位伺服器,它具有一個恆真規則,指出 『稍後再嘗試該應用程式"。 埠具有 stickytime 值 25 分鐘,所以您不想要從屬站滯留在該伺服器上。 透過埠相關性置換,您可以變更溢位伺服器,來置換一般與該埠關聯的相關性。 下次從屬站要求此叢集時, 它的資料流量會被平衡地配送到最可用的應用程式伺服器,而不是溢位伺服器。

    請參閱dscontrol server -- 配置伺服器,以取得使用伺服器滯留 選項的埠相關性置換的指令語法之詳細資訊。

    在您的配置中新增規則

    您可以用 dscontrol rule add 指令,藉由編輯範例配置檔,或透過圖形式使用者介面 (GUI),來新增規則。 您可以對您所定義的每一個埠,新增一或多個規則。

    這項處理有兩個步驟:新增規則;然後定義如果規則為真,則哪一個伺服器要伺服。 例如, 我們的系統管理者想要追蹤站台上每個部門的 proxy 伺服器使用情況。他知道每一個部門的 IP 位址。他可以根據從屬站 IP 位址建立第一組規則, 以區隔每一部門的資料傳輸:

    dscontrol rule add 130.40.52.153:80:div1 type ip b 9.1.0.0 e 9.1.255.255
    dscontrol rule add 130.40.52.153:80:div2 type ip b 9.2.0.0 e 9.2.255.255
    dscontrol rule add 130.40.52.153:80:div3 type ip b 9.3.0.0 e 9.3.255.255
    

    接著,您可以將不同的伺服器新增至每一個規則,然後測量每個伺服器上的資 料流量,以便向使用服務的部門收取適當的費用。 例如:

    dscontrol rule useserver 130.40.52.153:80:div1 207.72.33.45
    dscontrol rule useserver 130.40.52.153:80:div2 207.72.33.63
    dscontrol rule useserver 130.40.52.153:80:div3 207.72.33.47
    

    規則的伺服器評估選項

    只有 Dispatcher 元件才有提供伺服器評估選項。

    dscontrol rule 指令上有規則的伺服器評估選項。使用 evaluate 選項來選擇要在埠上所有伺服器之間評估規則的條件,或是只在規則內的伺服器之間評估規則的條件。(在 Load Balancer 的較早版本中,您可能只能測量埠上所有伺服器間的每一個規則條件。)

    註:

    1. 伺服器評估選項僅對基於伺服器性質作決策的規則有效:連線總數 (每秒鐘) 規則、作用中連線規則及保留的頻寬規則。

    2. 「連線」類型規則具有額外可選擇的評估選項 -- upserversonrule。請參閱使用基於每秒連線數的規則,以取得進一步資訊。

    以下為在保留的頻寬規則上新增及設定 evaluate 選項的範例:

    dscontrol rule add 9.22.21.3:80:rbweval type reservedbandwidth evaluate level
    dscontrol rule set 9.22.21.3:80:rbweval evaluate level
    

    evaluate 層次可以設為 port、rule 或 upserversonrule。預設值是 port。

    評估規則中的伺服器

    測量規則內之伺服器間規則條件的選項,可讓您以下列性質配置兩個規則:

    其結果是當資料傳輸超過第一個規則內伺服器的臨界值時,會將資料傳輸傳送到第二個規則內的「站台忙線」伺服器。當資料傳輸落於第一個規則內之伺服器的臨界值之下,新的資料傳輸會再一次傳送至第一個規則的伺服器。

    評估埠上的伺服器

    使用說明於前述範例的兩個規則,如果您將第一個規則的 evalute 選項設定為 port (在埠上的所有伺服器間評估規則的條件),則當資料傳輸超出該規則的臨界值時,會將資料傳輸傳送到與第二個規則關聯的「站台忙線」伺服器。

    第一個規則測量埠上所有的伺服器資料傳輸 (包括「站台忙線」伺服器),以決定資料傳輸是否超過臨界值。 當與第一個規則連接之伺服器的擁塞減低時,在持續至「站台忙線」伺服器的資料傳輸可能會發生偶發的結果,因為埠上的資料傳輸仍超出第一個規則的臨界值。


    Load Balancer 的相關性特性如何運作

    若是 Dispatcher 及 CBR 元件:在您配置叢集的埠為滯留時,可啟用相關性特性。將叢集埠配置成滯留,可將後續從屬站要求導向到相同伺服器。 在執行器、叢集或埠層次將 stickytime 設定為一些秒數,便可完成此項作業。若將滯留時間設定為 0,即停用此特性。

    註:
    如果您正啟用跨埠相關性,共用埠的 stickytime 值必須是相同的非零值。 相關資訊,請參閱跨埠相關性

    若是 Site Selector 元件:在您配置站台名稱為滯留時,可啟用相關性特性。配置站台名稱為滯留,可讓從屬站對多重名稱服務要求,使用相同的伺服器。在站台名稱上將 stickytime 設定為一些秒數,便可完成此項作業。若將滯留時間設定為 0,即停用此特性。

    停用相關性時的行為

    在停用相關性特性時,Load Balancer 會在接收到來自從屬站的新 TCP 連線時, 立即挑選正確的伺服器,並將封包轉送到該伺服器。如果後續的連線是來自相同的從屬站,Load Balancer 會將之視為不相關的新連線,並在當時及時重新挑選正確的伺服器。

    啟用相關性時的行為

    啟用相關性特性時,如果是從相同從屬站接收到後續要求,則會將要求導向相同的伺服器。

    經過一段時間後,從屬站會完成傳送異動,而相關性記錄會移除。這就是「滯留時間」的意義。每個相關性記錄都會存留 』stickytime『 設定的秒數。在滯留時間內接收到後續連線時,相關性記錄仍為有效,而要求會送到相同的伺服器。如果未在滯留時間內接收到後續連線,則會去除該記錄;且會為那個時間之後所接收到的連線選取一個新的伺服器。

    跨埠相關性

    跨埠相關性僅適用於 Dispatcher 元件的 MAC 及 NAT/NATP 轉送方法。

    跨埠相關性是已擴充來涵蓋多埠的滯留特性。 例如,如果首先在某個埠收到從屬站要求,接著在另一個埠收到下一個要求, 則跨埠相關性將容許配送器傳送從屬站要求到同一台伺服器。若要使用這個特性,則埠必須:

    有多個埠可以鏈結到相同的 crossport。 當後續的連線來自相同埠或共用埠上的相同從屬站時,將存取相同的伺服器。 下列是將多埠配置為與埠 10 具有跨埠相關性的範例:

    dscontrol port set cluster:20 crossport 10
    dscontrol port set cluster:30 crossport 10
    dscontrol port set cluster:40 crossport 10
    

    在建立跨埠相關性後,您便可彈性地修改埠的 stickytime 值。 不過,建議您最好將所有共用埠的 stickytime 值變更為同一值, 不然,可能會發生非預期的結果。

    若要移除跨埠相關性,請將 crossport 值重設為它自己的埠號。 若要取得 crossport 選項的指令語法的詳細資訊, 請參閱dscontrol port -- 配置埠

    相關性位址遮罩 (stickymask)

    相關性位址遮罩僅適用於 Dispatcher 元件。

    相關性位址遮罩是滯留特性的加強,其作用在於根據共用子網路位址, 將從屬站分組。在 dscontrol port 指令上指定 stickymask 可讓您為 32 位元 IP 位址的共用高次序位元建立遮罩。如果配置此特性,當從屬站要求先製作與埠的連線時,來自從屬站的所有後續要求,都有相同的子網路位址 (代表該位址部份已被遮罩),且將被導向相同的伺服器。

    註:
    為了要啟動 stickymask,埠 stickytime 必須是非零值。

    例如,如果您想要讓所有具有相同網路「類別 A」位址的進入從屬站要求被導向到同一伺服器, 您可以將埠的 stickymask 值設定為 8 (位元)。若要將具有相同網路「類別 B」位址的從屬站要求建立成一個群組, 請將 stickymask 值設定為 16 (位元)。若要將具有相同網路「類別 C」位址的從屬站要求建立成一個群組, 請將 stickymask 值設定為 24 (位元)。

    為了獲致最佳的結果,當首次啟動 Load Balancer 時,請設定 stickymask 值。 如果您動態地變更 stickymask 值,結果將無法預期。

    與跨埠相關性互動:如果您將啟用跨埠相關性, 共用埠的 stickymask 值必須相同。

    相關資訊,請參閱跨埠相關性

    若要啟用相關性位址遮罩,請發出如下的 dscontrol port 指令:

    dscontrol port set cluster:port stickytime 10 stickymask 8
    

    可能的 stickymask 值是 8、16、24 及 32。值 8 指定 IP 位址 (網路「類別 A」位址) 的前 8 個高次序位元將建立遮罩。值 16 指定 IP 位址 (網路「類別 B」位址) 的前 16 個高次序位元將建立遮罩。 值 24 指定 IP 位址 (網路「類別 C」位址) 的前 24 個高次序位元將建立遮罩。如果您指定值 32,將建立整個 IP 位址遮罩, 它將有效地停用相關性位址遮罩特性。stickymask 的預設值是 32。

    若要取得 stickymask (相關性位址遮罩特性) 的指令語法的詳細資訊,請參閱dscontrol port -- 配置埠

    靜止伺服器連線處理

    靜止處理適用於 Dispatcher 及 CBR 元件。

    欲因任何理由 (更新、升級及服務程式等等) 從 Load Balancer 配置移除伺服器,您可使用 dscontrol manager quiesce 指令。在將連線指定為滯留且滯留時間尚未到期時,quiesce 次指令可讓現有的連線僅完成 (但不提供) 及轉送由從屬站至靜止伺服器的後續新連線。quiesce 次指令不接受與伺服器連接的任何其它新連線。

    滯留連線的靜止處理

    如果您已設定滯留時間,且您要在滯留時間到期之前將新連線傳送至另一個伺服器 (而非靜止的伺服器), 請使用靜止 『now" 選項。下列範例為使用 now 選項來靜止伺服器 9.40.25.67:

    dscontrol manager quiesce 9.40.25.67 now
    

    now 選項決定如何依下所示處理滯留連線:


    基於從屬站要求內容之規則上的相關性選項

    您可在 dscontrol rule 指令上指定下列相關性類型:

    相關性選項的預設值是 none。port 指令上的 stickytime 選項必須是 0 (未啟用),以將 rule 指令上的相關性選項設定為主動 cookie、被動 cookie 或 URI。在規則設定相關性時,便無法在埠上啟用滯留時間。

    主動 cookie 相關性

    主動 cookie 相關性特性僅適用於 CBR 元件。

    它提供使從屬站「滯留」於特定伺服器的方法。 設定規則的滯留時間為一個正數,並設定相關性為 『activecookie』,以啟用此功能。您可在新增規則,或使用 rule set 指令時完成。如需指令語法的詳細資訊,請參閱dscontrol rule -- 配置規則

    一旦已啟用主動 cookie 相關性的規則,新的從屬站要求將使用標準 CBR 演算法進行平衡負載,而來自相同從屬站的連續要求,將被傳送到起始選擇的伺服器。所選擇的伺服器會以 cookie 的形式保存在對從屬站的回應中。 只要從屬站未來的要求含有 cookie,而且每個要求都有在滯留時間間隔內到達, 從屬站就會維護與起始伺服器之間的相關性。

    主動 cookie 相關性是用於確定從屬站會在相同伺服器及相同期間,持續進行平衡負載。藉由傳送從屬站瀏覽器所要保存的 cookie,以完成此作業。 Cookie 包含用來決策的 cluster:port:rule、所平衡負載的伺服器,以及相關性不再有效時的逾時時間戳記。Cookie 的格式如下:IBMCBR=cluster:port:rule+server-time! 已編碼 cluster:port:ruleserver 資訊,所以不會顯示 CBR 配置。

    作用中的 cookie 相關性如何運作

    每當規則使主動 cookie 相關性開啟時,將會檢查由從屬站傳送的 cookie。

    然後這個新的 cookie 會被插入要退回到從屬站的表頭中, 而且如果從屬站的瀏覽器配置為可接收 cookie,就會傳回後續的要求。

    cookie 中之每一個相關性實例的長度為 65 個位元組,並以驚嘆號結束。因此,一個 4096 個位元組的 cookie,每一網域可保留將近 60 個個別的主動 cookie 規則。如果 cookie 已完全填滿,則將會去除所有到期的相關性實例。如果所有的實例仍然有效,則會刪除最舊的實例,然後新增現行規則的新實例。

    註:
    當舊格式的 IBNCBR cookie 出現在 Proxy 中時,CBR 將取代它的出現。

    rule 指令的主動 cookie 相關性選項,在埠滯留時間為 0 (未啟動) 時,僅能設定為 activecookie。一旦規則上的主動 cookie 相關性為作用中時,便無法在埠上啟用滯留時間。

    如何啟動主動 cookie 相關性

    欲啟動特定規則的主動 cookie 相關性,請使用 rule set 指令:

    rule set cluster:port:rule stickytime 60
    rule set cluster:port:rule affinity activecookie
    

    為何使用主動 cookie 相關性

    使規則滯留通常會用來建立 CGI 或 servlet,以將從屬站狀態保存在伺服器上。 cookie ID 所識別的狀態 (這些是伺服器 cookie)。 從屬站狀態僅與選取的伺服器有關, 所以從屬站需要來自該伺服器的 cookie,以便在要求之間維護該狀態。

    主動 cookie 相關性有效時間置換

    主動 cookie 相關性有現行伺服器時間的到期預設值,加上滯留時間間隔,外加 24 小時。如果您的從屬站 (指那些傳送要求到您的 CBR 機器的從屬站) 在他們的系統上有不正確的時間 (例如,他們的時間比伺服器時間早一天),那麼那些從屬站的系統會忽略來自 CBR 的 cookie,因為系統會假設 cookie 已經過期。如果要設定一個較長的有效時間,請修改 cbrserver script。在 Script 檔中,編輯 javaw 指令行、在 LB_SERVER_KEYS 之後新增下列參數:-DCOOKIEEXPIREINTERVAL=X,其中 X 是要新增到有效時間的天數。

    在 AIX、Solaris 和 Linux 上,cbrserver 檔是放置在 /usr/bin 目錄中。

    在 Windows 2000 上,cbrserver 檔是放置在 \winnt\system32 目錄中。

    被動 cookie 相關性

    被動 cookie 相關性適用於 Dispatcher 元件的根據內容遞送 (cbr) 轉送方法,以及 CBR 元件。 如需如何配置 Dispatcher 之 cbr 轉送方法的相關資訊,請參閱Dispatcher 的根據內容遞送 (cbr 轉送方法)

    被動 cookie 相關性提供使從屬站滯留於特定伺服器的方法。一旦您啟動規則的相關性為 passivecookie,基於伺服器產生的自我識別 cookie,被動 cookie 相關性便可讓您使用相關性,以平衡負載 Web 資料傳輸至相同的伺服器。您可於規則層次配置被動 cookie 相關性。一旦規則啟動,如果已啟用被動 cookie 相關性,Load Balancer 將依據從屬站要求之 HTTP 表頭中的 cookie 名稱來選擇伺服器。Load Balancer 將基於在先前的連線期間由伺服器產生的 cookie,將新的進入要求傳送至伺服器。如果找不到從屬站要求中的 cookie 值,或是它與任何伺服器的 cookie 值不符,則將使用加權環繞式技術選擇伺服器。

    要配置被動 cookie 相關性時:

    在埠的滯留時間為 0 (未啟用) 時,僅可將 rule 指令的被動 cookie 相關性選項,設定為 passivecookie。一旦被動 cookie 相關性在規則上已是作用中時,您便無法在埠上啟用滯留時間。

    URI 相關性

    URI 相關性適用於 Dispatcher 的 cbr 轉送方法及 CBR 元件。如需如何配置 cbr 轉送方法的相關資訊,請參閱Dispatcher 的根據內容遞送 (cbr 轉送方法)

    URI 相關性可讓您將 Web 資料傳輸平衡負載至 Caching Proxy 伺服器,這些伺服器可在每一個個別伺服器上快取唯一的內容。因此, 您可以在多個機器上消除多餘之快取內容的方式,有效地增加站台快取的容量。在規則層次配置 URI 相關性。一旦規則啟動,如果已啟用 URI 相關性,且相同的一組伺服器開機中並產生回應,則 Load Balancer 將使用相同的 URI,將新進入的從屬站要求,轉送至相同的伺服器。

    通常 Load Balancer 可將要求分送至提供相同內容的多個伺服器。當使用具有一組快取伺服器的 Load Balancer 時,經常存取的內容最後會變成所有伺服器上的快取。藉由在多重機器上複製相同的快取內容,即可支援極高的從屬站載入。這對高容體的網站特別有用。

    然而,如果您的網站支援極為不同內容的從屬站資料的適量傳輸,而您希望在多重伺服器間散佈較大量的快取,則若每一個快取伺服器內含唯一內容,且 Load Balancer 僅對具有該內容的快取伺服器分送要求時,您的站台便可有較佳的執行效能。

    使用 URI 相關性,Load Balancer 可讓您將快取內容分送至個別的伺服器,以消除多重機器上多餘的快取內容。使用 Caching Proxy 伺服器之不同內容伺服器站台的效能將因此增強功能而有所改進。它會將相同的要求傳送至相同的伺服器,藉此快取單一伺服器上的內容。快取的有效大小,也會因新增至儲存區的每一個新伺服器機器而變大。

    要配置 URI 相關性時:


    配置廣域 Dispatcher 支援

    此特性僅限用於 Dispatcher 元件。

    如果您不是使用 Dispatcher 的廣域支援,且不是使用 Dispatcher 的 nat 轉送方法,則 Dispatcher 配置需要將 Dispatcher 機器及其伺服器,全部都連接到相同的 LAN 區段 (請參閱圖 35)。從屬站的要求會進入 Dispatcher 機器,且會被傳送到伺服器。並會將來自伺服器的回應直接傳回從屬站。

    圖 35. 單一 LAN 區段組成的配置範例

    單一 LAN 區段

    廣域 Dispatcher 增強功能新增離線伺服器的支援,即為所知的遠端伺服器 (請參閱圖 36)。 如果在遠端站台中不支援 GRE,且您不是使用 Dispatcher 的 nat 轉送方法,則遠端站台必須由遠端 Dispatcher 機器 (Dispatcher 2) 及其本端環境連接伺服器 (伺服器 G、伺服器 H 及伺服器 I) 所組成。

    所有的 Dispatcher 機器必須在相同的作業系統上。 從屬站封包現在可以從網際網路到 Dispatcher 機器,再從該處到地理上的遠端 Dispatcher 機器,再到其本端環境連接的伺服器。

    圖 36. 使用本端及遠端伺服器配置的範例

    本端及遠端伺服器

    此功能可以讓叢集位址在將資料流量分送到全球各地的伺服器時, 支援全球所有的從屬站要求。

    最初接收封包的 Dispatcher 機器仍然可以有與其相連的本端伺服器, 並且可以在其本端伺服器和遠端伺服器之間分送資料流量。

    指令語法

    廣域指令並不複雜。欲配置廣域支援:

    1. 新增伺服器。當您將伺服器新增到 Dispatcher 時, 您必須定義伺服器為本端伺服器或遠端伺服器 (請參閱上述說明)。 欲新增伺服器並將之定義為本端,請發出未指定路由器的 dscontrol server add 指令。此為預設值。欲將伺服器定義為遠端伺服器, 您必須指定 Dispatcher 必須經由哪一個路由器來傳送封包,以便連繫遠端伺服器。 此伺服器必須是另一個 Dispatcher,而且其位址必須是 Dispatcher 的非轉送的位址。 例如,在 圖 37 中,如果您正在 LB 1 之下,新增 LB 2 為遠端伺服器,您必須將路由器 1 定義為路由器位址。 一般語法:
      dscontrol server add cluster:port:server router address
      

      如需路由器關鍵字的進一步資訊,請參閱dscontrol server -- 配置伺服器

    2. 配置別名。如同前述,在第一個 Dispatcher 機器 (從網際網路抵達的從屬站要求所在位置) 上, 叢集位址必須使用 executor configureifconfigdsconfig 來指定別名。然而,在遠端 Dispatcher 機器上,將會對網路介面卡配置叢集位址別名。

    使用具有 Dispatcher 廣域支援的遠端通告器

    在進入點 Dispatchers 上:大部份平台的通告器都不需特別的配置即可正常運作。

    Linux

    Solaris

    在遠端 Dispatcher 上:為每個遠端叢集位址執行下列的配置步驟。若為遠端 Load Balancer 位置的高可用性配置,您必須同時在兩個機器上執行這些步驟。

    AIX

    Linux

    Solaris

    Windows 2000

    配置範例

    圖 37. 使用遠端 Load Balancer 的廣域範例配置

    使用遠端 Load Balancer 的廣域配置

    本例適用於圖 37 中說明的配置。

    以下將說明如何配置 Dispatcher 機器,以支援埠 80 上的叢集位址 xebec。 將 LB1 定義為『進入點』 Load Balancer。假設一條乙太網路連線。請注意:LB1 已定義 5 個伺服器:三個本端伺服器 (ServerA、ServerB、ServerC),兩個遠端伺服器 (LB2 及 LB3)。 遠端 LB2 及 LB3 上,每一個都定義了三個本端伺服器。

    請在第一個 Dispatcher (LB1) 的主控台上,執行下列步驟:

    1. 啟動執行器。

      dscontrol executor start

    2. 設定 Dispatcher 機器的非轉送的位址 (NFA)。

      dscontrol executor set nfa LB1

    3. 定義叢集。

      dscontrol cluster add xebec

    4. 定義埠。

      dscontrol port add xebec:80

    5. 定義伺服器。
      1. dscontrol server add xebec:80:ServerA
      2. dscontrol server add xebec:80:ServerB
      3. dscontrol server add xebec:80:ServerC
      4. dscontrol server add xebec:80:LB2 router Router1
      5. dscontrol server add xebec:80:LB3 router Router1
    6. 若是使用 Windows 2000,請配置 Dispatcher LAN 配接卡的 NFA。

      dscontrol executor configure LB1 並且將 xebec 配置為 clusteraddr。

    7. 配置叢集位址。

      dscontrol executor configure xebec

    在第二個 Dispatcher (LB2) 的主控台:

    1. 啟動執行器。

      dscontrol executor start

    2. 設定 Dispatcher 機器的非轉送的位址 (NFA)。

      dscontrol executor set nfa LB2

    3. 定義叢集。

      dscontrol cluster add xebec

    4. 定義埠。

      dscontrol port add xebec:80

    5. 定義伺服器。
      1. dscontrol server add xebec:80:ServerD
      2. dscontrol server add xebec:80:ServerE
      3. dscontrol server add xebec:80:ServerF
    6. 若是使用 Windows 2000,請配置 Dispatcher LAN 配接卡的 NFA。

      dscontrol executor configure LB2

    在第三個 Dispatcher (LB3) 的主控台:

    1. 啟動執行器。

      dscontrol executor start

    2. 設定 Dispatcher 機器的非轉送的位址 (NFA)。

      dscontrol executor set nfa LB3

    3. 定義叢集。

      dscontrol cluster add xebec

    4. 定義埠。

      dscontrol port add xebec:80

    5. 定義伺服器。
      1. dscontrol server add xebec:80:ServerG
      2. dscontrol server add xebec:80:ServerH
      3. dscontrol server add xebec:80:ServerI
    6. 若是使用 Windows 2000,請配置 Dispatcher LAN 配接卡的 nfa。

      dscontrol executor configure LB3

    注意事項

    1. 在所有的伺服器上 (A-I),將叢集位址別名化為迴圈。
    2. 在所有加入的 Dispatcher 機器上 (進入點 Dispatcher 及所有的遠端 Dispatcher),使用 dscontrol 新增叢集及埠。
    3. 如欲取得以廣域支援使用遠端通告器的相關資訊,請參閱使用具有 Dispatcher 廣域支援的遠端通告器
    4. 廣域支援禁止無限的路由迴路。(如果 Dispatcher 機器收到另一個 Dispatcher 機器的封包, 將不會將該封包轉送到第三個 Dispatcher。) 廣域僅支援一個層次的遠端機器。
    5. 廣域支援 UDP 和 TCP。
    6. 廣域支援和「高可用性」一起運作: 每一個 Dispatcher 都可以由鄰近的備用機器 (在同一個 LAN 區段上) 備份。
    7. 「管理程式」和「通告器」都會使用廣域支援,而且如果有使用的話, 應該在所有參與的 Dispatcher 機器上啟動。
    8. Load Balancer 僅在同等的作業系統上支援 WAN。

    GRE (同屬遞送封裝) 支援

    「同屬遞送封裝 (GRE)」是在 RFC 1701 及 RFC 1702 中指定的 Internet 通訊協定。使用 GRE,Load Balancer 可將從屬站 IP 封包封裝在 IP/GRE 封包內,並將之轉送至支援 GRE 的伺服器平台上,例如 OS/390。

    GRE 支援可讓 Dispatcher 元件平衡負載封包至與一個 MAC 位址關聯的多重伺服器位址。

    Load Balancer 將 GRE 當成其 WAN 特性的一部份。這可讓 Load Balancer 對可解開 GRE 封包的伺服器系統,直接提供廣域平衡負載。如果遠端伺服器支援封裝的 GRE 封包,則在遠端站台上便不需要安裝 Load Balancer。Load Balancer 使用設定為十進位值 3735928559 的 GRE 金鑰欄位,封裝 WAN 封包。

    圖 38. 使用支援 GRE 之伺服器平台的廣域範例配置

    使用支援 GRE 之伺服器平台的廣域配置

    針對此範例 (圖 38),若要新增支援 GRE 的遠端 ServerD,請在 Load Balancer 配置內定義它,做法就像在 cluster:port:server 體系中定義 WAN 伺服器一樣:

    dscontrol server add cluster:port:ServerD router Router1

    若是 Linux,則配置 GRE excapsulation for WAN

    Linux 有原生的能力來解析 GRE,這個 GRE 容許 Load Balancer 平衡負載到 Linux/390 伺服器影像中,許多伺服器影像在此共用 MAC 位址。這允許進入點 Load Balancer 直接平衡負載到 Linux WAN 伺服器,不需要透過 Load Balancer 在遠端網站上傳送。這也同時容許進入點 Load Balancer 的通告器直接與遠端伺服器運作。

    在進入點 Load Balancer 上,依照對 WAN 的說明來配置。

    若要配置每一個 Linux 後端伺服器,則以 root 身分發出下列命令。(這些命令可能會新增到系統開機啟動機能,如此一來,變更會持續到跨越重新開機。)

    # modprobe ip_gre
    # ip tunnel add gre-nd mode gre ikey 3735928559 
    # ip link set gre-nd up
    # ip addr add cluster address dev gre-nd
     
    
    註:
    使用這些指示配置的 Linux 伺服器不需要像進入點 Load Balancer 一樣,在相同的實體區段上。這是因為 Linux 伺服器會回應 "ARP who-has" 叢集位址的要求,造成競爭條件而導致可能的「短路」,使得所有到叢集位址的資料傳輸僅指向 ARP 競賽的獲勝者。

    使用外顯鏈結

    一般而言,Dispatcher 的平衡負載功能在運作時, 不會與產品使用的站台的內容發生關聯。 不過,有一個區域,其中站台內容可能很重要, 且其中的決定的內容可能對 Dispatcher 的效率產生很大的影響。 這個區域是在鏈結定址的區域中。

    如果您的網頁指定指向站台個別伺服器的鏈結,您實際上是強迫從屬站跳至特定的機器,而略過其它實際上存在的平衡負載功能。基於這個原因,建議您務必使用包含在您呼叫中之任何鏈結的 Dispatcher 位址。 請注意,如果您的站台使用可動態建立 HTML 的自動程式設計, 則所使用的該種定址可能不會一直很明顯。欲使您的平衡負載達到最大, 您應該注意任何明確的定址,並儘可能避開它。


    使用專用網路配置

    您可以使用專用網路來設定 Dispatcher 及 TCP 伺服器機器。 這個配置可以減少可能會影響效能的公用或外部網路上的爭執。

    對 AIX 而言,如果您正在「SP 框架」中的節點上執行 Dispatcher 及 TCP 伺服器機器, 則這個配置也可以利用快速的「SP(TM) 高效能交換器」。

    欲建立專用網路時,每台機器都至少必須有兩張 LAN 卡, 且其中一張卡要連接專用網路。您也須在不同子網路上配置第二張 LAN 卡。 然後,Dispatcher 將透過專用網路,把從屬站要求傳給 TCP 伺服器機器。

    Windows 2000:請執行下列指令:

    dsconfig en1 10.0.0.x netmask 255.255.255.0
    

    其中 en1 是 Dispatcher 機器中的第二個介面卡的名稱, 10.0.0.x 則是第二個介面卡的網路位址, 而 255.255.255.0 則是專用網路的網路遮罩。

    使用 dscontrol server add 指令的新增伺服器,必須使用專用網址來新增;例如,有關圖 39 中的 Apple 伺服器範例,其指令應撰寫為:

    dscontrol server add cluster_address:80:10.0.0.1

    而非

    dscontrol server add cluster_address:80:9.67.131.18

    如果您將使用 Site Selector,以便提供資料流量資訊給 Dispatcher,則您必須 配置 Site Selector,來報告專用位址上的資料流量資訊。

    圖 39. 使用 Dispatcher 的專用網路的範例

    專用網路

    使用專用網路配置,只適用於 Configuration 元件。


    使用萬用字元叢集來結合伺服器配置

    使用萬用字元叢集來結合伺服器配置,只適用於 Dispatcher 元件。

    『 wilcard』 會參照叢集的能力, 來配合多重 IP 位址 (意即,作用為萬用字元)。 叢集位址 0.0.0.0 係用來指定萬用字元叢集。

    如果您有許多叢集位址需要平衡負載,而且對您所有的叢集而言, 埠/伺服器配置都是相同的,您就可以將所有的叢集合併成萬用字元叢集配置。

    您仍必須在 Dispatcher 工作站的其中一個網路卡上,明確地配置每一個叢集位址。 但是,您不應使用 dscontrol cluster add 指令,將任何叢集位址新增至 Dispatcher 配置。

    請只新增萬用字元叢集 (位址 0.0.0.0),並且依需要來配置埠及伺服器來平衡負載。任何傳送至任何配接卡配置位址的資料傳輸, 都會用萬用字元叢集配置來加以平衡負載。

    這個方法的優點,就是在決定要傳送到哪一個最佳伺服器時, 傳送至所有叢集位址的資料傳輸都會被列入考量。 如果有一個叢集的資料傳輸量很大,而且該叢集已經在其中一台伺服器上建立了許多作用中連線, 將會用此資訊來平衡傳送至其它叢集位址的資料傳輸。

    如果您有一些叢集位址具有唯一的埠/伺服器配置, 而另一些叢集位址具有一般的配置,您可以將萬用字元叢集與實際叢集合併在一起。 每一個唯一的配置都必須被指派至實際的叢集位址。 所有的一般配置都可以被指派至萬用字元叢集。


    使用萬用字元叢集來平衡防火牆的資料流量

    使用萬用字元叢集來平衡防火牆的資料流量,只適用於 Dispatcher 元件。 叢集位址 0.0.0.0 係用來指定萬用字元叢集。

    萬用字元叢集可以用來平衡負載,以將資料傳輸至沒有明確地配置在 Dispatcher 工作站之任何網路卡上的位址。若要執行此作業, Dispatcher 必須至少要可以看到所要平衡負載的所有資料傳輸。 如果資料傳輸的目的地是尚未明確配置在其中一個網路卡上的位址, 除非已將其設定為資料傳輸組的預設路徑, 否則 Dispatcher 工作站將無法看到資料傳輸至該位址。

    一旦將 Dispatcher 配置為預設路徑,透過 Dispatcher 機器的任何 TCP 或 UDP 資料傳輸, 都會用萬用字元叢集配置來平衡負載。

    其中一種應用程式就是要平衡防火牆的資料流量。 由於防火牆可以處理任何目的位址及任何目的埠的封包, 所以您必須要能夠在不依賴目的位址及埠的情況下平衡負載。

    防火牆可用來處理從非安全從屬站到安全伺服器之間的資料傳輸,以及來自安 全伺服器的回應,也可以處理從安全端上的從屬站到非安全端上的伺服器之間 的資料傳輸,以及回應。

    您必須設定二台 Dispatcher 機器,一台用來平衡要傳送 到非安全防火牆位址的非安全資料傳輸,另一台則用來平衡要傳送到安全防火 牆位址的安全資料傳輸。 因為這二種 Dispatcher 都必須使用具有不同伺服器位址組的萬用字元叢集及萬用字元埠, 所以這二種 Dispatcher 必須位在二個分開的工作站上。


    將萬用字元叢集與 Caching Proxy 搭配使用來進行透通式 Proxy

    將萬用字元叢集與 Caching Proxy 搭配使用來進行透通式 Proxy,僅適用於 Dispatcher 元件。叢集位址 0.0.0.0 係用來指定萬用字元叢集。

    萬用字元叢集功能,還可讓 Dispatcher 用來啟用與 Dispatcher 位於相同方框之 Caching Proxy 伺服器的透通式 Proxy 伺服器功能。此功能僅限用於 AIX,因為必須要有從 Dispatcher 元件到作業系統的 TCP 元件之間的通信。

    若要啟用此特性,您必須在埠 80 上啟動從屬站要求的 Caching Proxy 接收。然後,您就可以配置萬用字元叢集 (0.0.0.0)。請在萬用字元叢集中配置埠 80。 在埠 80 中,將 Dispatcher 機器的 NFA 配置成唯一的伺服器。 現在,傳輸到埠 80 上任何位址的任何從屬站資料傳輸,都將被傳遞到在 Dispatcher 工作站上執行的 Caching Proxy 伺服器。 然後將會照例 proxy 從屬站要求,並將回應從 Caching Proxy 傳送至從屬站。在此模式下,Dispatcher 元件不會執行任何平衡負載。


    使用萬用字元埠來引導未配置埠的資料傳輸

    萬用字元埠可以用來處理任何非明確配置之埠的資料傳輸。 它的作用之一就是平衡防火牆的資料流量。 作用之二就是確定可以適當地處理傳送至尚未的之埠的資料傳輸。 若您定義一個沒有伺服器的萬用字元埠, 您要保證傳送至尚未配置之埠的要求都會被捨棄,不會送回作業系統。 埠號 0 (零) 是用來指定萬用字元埠,例如:

    dscontrol port add cluster:0
    
    註:
    無法使用萬用字元埠來處理 FTP 資料傳輸。

    拒絕服務攻擊偵測

    此特性僅限用於 Dispatcher 元件。

    Dispatcher 有偵測潛伏的「拒絕服務」攻擊及透過警示通報管理者的能力。Dispatcher 分析伺服器上顯著數量之半開啟 TCP 連線的進入要求來完成此功能,而此項分析就是簡式拒絕服務攻擊的一般特性。在拒絕服務攻擊中,站台自大量的來源 IP 位址及來源埠號,接收大量虛構的 SYN 封包,但站台接收不到那些 TCP 連線的後續封包。這導致伺服器上有大量的半開 TCP 連線,經過一段時間伺服器會變得很慢,且不接受新進入的連線。

    Load Balancer 提供使用者呼叫,以觸發為警示管理者有可能拒絕服務攻擊所自行設定的 script。

    Dispatcher 在 ...ibm/edge/lb/servers/samples 目錄中,提供下列的範例 Script 檔:

    為了要執行檔案,您必須將它們移至 ...ibm/edge/lb/servers/bin 目錄,並移除 .sample 副檔名。

    為了實作 DoS 攻擊偵測,在 dscontrol port 指令上設定的 maxhalfopen 參數如下:

    dscontrol port set 127.40.56.1:80 maxhalfopen 1000
    

    在上例中,Dispatcher 會將目前半開連線的總數 (常駐於叢集 127.40.56.1 埠 80 上的所有伺服器) 與臨界值 1000 (由 maxhalfopen 參數所指定) 相比。如果目前的半開連線超過臨界值,則會呼叫警示 script (halfOpenAlert)。當半開連線的數目低於臨界值,則會呼叫另一個指示攻擊結束的警示 script (halfOpenAlertDone)。

    若要決定如何設定 maxhalfopen 值:在您的站台流量正常或流量大時,定期地 (或許為每 10 分鐘 ) 執行半開連線報告 ( dscontrol port halfopenaddressreport cluster:port )。半開連線報告將傳回目前的「已接收半開連線總數」。 您應將 maxhalfopen 設定為比您站台上最大數目的半開連線數還要大 50% 到 200% 的值。

    除了報告的統計資料之外,halfopenaddressreport 也會針對所有已存取導致半開連線之伺服器的從屬站位址 (高達約 8000 個位址配對),在日誌 (..ibm/edge/lb/servers/logs/dispatcher/halfOpen.log) 中產生項目。

    註:
    此為對應 halfOpenAlert 及 halfOpenAlertDone script 的 SNMP 設陷。若配置並執行 SNMP 子代理程式,將會在觸發 script 的相同條件下,傳送對應的設陷。如需 SNMP 子代理程式的進一步資訊,請參閱搭配使用簡易網路管理通信協定與 Dispatcher 元件

    若要提供對後端伺服器拒絕服務攻擊的其他保護,您可配置萬用字元叢集及埠。特別是在每一個配置的叢集新增沒有伺服器的萬用字元埠。同時新增具有萬用字元埠但沒有伺服器的萬用字元叢集。這將會捨棄未定址於非萬用字元叢集及埠的所有封包。如需萬用字元叢集及萬用字元埠的相關資訊,請參閱使用萬用字元叢集來結合伺服器配置使用萬用字元埠來引導未配置埠的資料傳輸


    使用二進位記載功能來分析伺服器統計值

    註:
    二進位記載特性並不適用於 Site Selector 元件。

    二進位記載特性可將伺服器資訊儲存於二進位檔案中。

    然後就可處理這些檔案,以分析一段時間後所收集的伺服器資訊。

    下列資訊是儲存在配置中所定義之每個伺服器的二進位日誌中。

    此資訊部份是當成管理程式週期的一部份,而從執行器中擷取出來。因此,必須執行管理程式,才能將資訊記載到二進位日誌中。

    使用 dscontrol binlog 指令集來配置二進位記載。

    start 選項會開始將伺服器資訊記載到 logs 目錄的二進位日誌中。在每個小時開始時,都會將日期及時間當成檔案名稱,來建立一個日誌。

    stop 選項會停此將伺服器資訊記載到二進位日誌中。預設會停止日誌服務程式。

    set interval 選項控制將資訊寫入日誌中的頻率。管理程式會在每個管理程式間隔時,將伺服器資訊傳送給日誌伺服器。只有在自上一筆記錄寫到日誌檔後又過了所指定的日誌間隔秒數時,才會再將資訊寫入日誌中。日誌間隔預設是設定成 60 秒。在管理程式間隔及日誌間隔之間會有部份的互動。 因為將資訊提供給日誌伺服器的速度不會快於管理程式間隔秒數,所以將日誌間隔設定小於管理程式間隔可有效率地將它設成與管理程式間隔相同。此記載技術可讓您攫取任何時間的伺服器資訊。您可攫取管理程式所看到的所有伺服器資訊變更,以計算伺服器加權。但是,此資訊量可能不需用來分析伺服器使用量及趨勢。每隔 60 秒記載一次伺服器資訊,可提供您一段時間後的伺服器資訊 Snapshot。將日誌間隔設成極小,會產生大量的資料。

    設定保留選項可接管要將日誌檔保留多久。 如果日誌檔的日期超過所指定的保留時數,日誌伺服器就會將其刪除。 只有在日誌伺服器被管理程式呼叫時,才會發生這種情形, 所以如果關閉了管理程式,將不會刪除舊的日誌檔。

    狀態選項會將日誌服務程式的現行設定傳回。 這些設定有:是否已啟動服務程式、間隔為何,以及保留多少小時。

    ...ibm/edge/lb/servers/samples/BinaryLog 目錄下,已提供有範例 Java 程式及指令檔。 這個範例顯示如何從日誌檔擷取所有的資訊,並將它列印在螢幕上。 您可以自行設定,以您指定的類型來分析這些資料。 以下是使用針對配送器提供的 script 及程式的範例:

    dslogreport 2001/05/01 8:00 2001/05/01 17:00
    

    可取得 2001 年 5 月 1 日從 8:00 AM 到 5:00 PM,Dispatcher 元件的伺服器資訊報告。 (若是 CBR,請使用 cbrlogreport。)


    Cisco CSS Controller 及 Nortel Alteon Controller 的進階特性

    本章包括下列各節:

    註:
    在本章中,xxxcontrol 表示 Cisco CSS Controller 的 ccocontrol 及 Nortel Alteon Controller 的 nalcontrol

    並列

    Cisco CSS Controller 或 Nortel Alteon Controller 可常駐在與平衡負載要求之伺服器相同的機器上。 這通常被稱為並列伺服器。不需要其它的配置步驟。

    註:
    進行高資料傳輸期間,並列的伺服器會與 Load Balancer 競爭資源。 但是,沒有超載機器時,使用並置伺服器則會減少設定平衡負載站台所需的機器數目。

    高可用性

    Cisco CSS Controller 及 Nortel Alteon Controller 現在可以使用高可用性特性。

    為了改進控制器容錯,高可用性功能含有這些特性:

    配置

    如需 xxxcontrol highavailability 的完整語法,請參閱ccocontrol highavailability -- 控制高可用性nalcontrol highavailability -- 控制高可用性

    若要配置控制器的高可用性:

    1. 在兩台控制器機器上啟動控制器伺服器。
    2. 利用相同配置來配置每一個控制器。
    3. 以下列指令配置本端高可用性角色、位址及友機位址:
      xxxcontrol highavailability add address 10.10.10.10
      partneraddress 10.10.10.20 port 143 role primary
      
    4. 以下列指令配置友機高可用性角色、位址及友機位址:
      xxxcontrol highavailability add address 10.10.10.20
      partneraddress 10.10.10.10 port 143 role secondary
      

      address 及 partneraddress 參數在主要及次要機器是相反的。

    5. 可選用性地在本端及友機控制器上配置高可用性參數;例如:
      xxxcontrol highavailability set beatinterval 1000
      
    6. 可選用性地以下列指令在本端及友機控制器上配置連繫目標:
      xxxcontrol highavailability usereach 10.20.20.20
      

      在本端及友機控制器上必須配置數目相同的連繫目標。

    7. 以下列指令啟動高可用性元件,並在本端及友機控制器上定義復原策略:
      xxxcontrol highavailability start auto
      
    8. 可選用性地以下列指令在本端及友機控制器上顯示高可用性資訊:
      xxxcontrol highavailability report
      
    9. 可選用性地以下列指令在要從作用中控制器接管的備用控制器上指定接管:
      xxxcontrol highavailability takeover
      

      僅在維護時才需要。

    註:

    1. 若要配置沒有高可用性的單一控制器,請不要發出任何高可用性指令。

    2. 若要將高可用性配置中的兩個控制器轉換為單一控制器, 請首先在備用控制器上停止高可用性;然後,可選用性地在作用中控制器上停止高可用性。

    3. 當您在高可用性配置中執行兩個控制器時,如果交換器之間的任一控制器內容不同,將發生異常結果;例如,switchconsultantid、交換器位址等。如果控制器的高可用性內容不符, 您也可能得到異常結果;例如,埠、角色、連繫目標、beatinterval、takeoverinterval 及復原策略。

    故障偵測

    除了透過通訊檢查訊息,來偵測是否失去現行及備用控制器之間的連通性之外, 可連繫性是另一個故障偵測機制。

    當配置控制器的高可用性時,您可以提供主電腦清單,每一個控制器必須連繫這些主電腦, 才能運作正常。您的控制器機器使用的每一個子網路必須至少有一個主電腦。 這些主電腦可以是路由器、IP 伺服器或其他主電腦類型。

    主電腦可連繫性是由 ping 到主電腦的連繫通告器來取得的。 如果通訊檢查訊息無法通過,或如果備用控制器比作用中控制器更能夠符合可連繫性的基準, 便會發生切換動作。 要依據所有可用的資訊來做出這個決定,作用中控制器會規律地傳送可連繫性功能給備用控制器,反之亦然。 然後,控制器會比較它們的可連繫性資訊與它們的友機資訊,並決定誰應該是作用中。

    復原策略

    兩個控制器機器的角色會配置成主要及次要。啟動時,控制器會交換資訊, 直到每一部機器都完成同步化為止。此時,主要控制器將移到作用中狀態, 並且開始計算加權值及更新交換器,次要控制器則移到備用狀態, 並監督主要控制器的可用性。

    在任何時候,如果備用機器偵測到作用中機器發生故障, 則備用機器將接管作用中 (故障) 機器的平衡負載功能,進而變成作用中機器。當主要機器再次可以運作時,兩部機器將根據復原策略的配置方法, 來決定哪一個控制器將是作用中。

    有兩種復原策略:

    自動復原

    一旦主要控制器再次可以運作,它將移到作用中狀態,同時計算並更新加權值。在主要機器成為作用中後,次要機器將移到備用狀態。

    手動復原

    即使主要控制器是可以運作,作用中的次要控制器仍會留在作用中狀態。

    主要控制器將移到備用狀態,並需要人工介入,才能移到作用中狀態。

    這兩台機器所設定的策略參數必須相同。

    範例

    如需 Cisco CSS Controller 高可用性配置範例,請參閱範例

    如需 Nortel Alteon Controller 高可用性配置範例,請參閱範例


    將 Load Balancer 所提供的平衡負載最佳化

    Load Balancer 的控制器功能將依據下列設定,進行平衡負載:

    您可以變更這些設定,使您的網路的平衡負載最佳化。

    給與測量單位資訊的重要性

    控制器可以在它的加權決策中使用下列部份或所有的測量單位收集器:

    預設測量單位是 activeconn 及 connrate。

    您可以變更測量單位值的相對重要性比例。 將比例視為百分比;相對比例的和必須等於 100%。在預設的狀況下, 將使用作用中連線及新連線測量單位,且它們的比例將設為 50/50。在您的環境中, 您可能需要嘗試不同的測量單位比例組合,以發現提供最佳效能的組合。

    若要設定比例值:

    若是 Cisco CSS Controller
    ccocontrol ownercontent metrics metricName1 proportion1 metricName2 proportion2

    若是 Nortel Alteon Controller
    nalcontrol service metrics metricName1 proportion1 metricName2 proportion2

    加權

    加權值係依據應用程式回應時間及可用性、來自通告器的反饋信息以及來自系統監督程式 (例如 Metric Server) 的反饋信息所設定的。如果您想要以手動方式設定加權值,請對伺服器指定 fixedweight 選項。 如需 fixedweight 選項的說明,請參閱控制器固定加權值

    加權值將引用至所有提供服務的伺服器。對任何特定服務而言,將依據它們彼此的相對加權值, 在伺服器之間分送要求。例如,如果有一個伺服器設定為加權 10,而另一個為 5,則設定為 10 的伺服器取得的要求數目應該是設定為 5 的伺服器的兩倍。

    如果通告器發現伺服器已關閉,伺服器的加權值將設成 -1。 若是 Cisco CSS Controller 及 Nortel Alteon Controller,將通知交換器,伺服器無法使用, 而且交換器停止指定連線給伺服器。

    控制器固定加權值

    若沒有控制器,通告器將無法執行且無法偵測伺服器是否已關閉。如果您選擇執行通告器, 但不要控制器去更新您為特定伺服器設定的加權值, 則在 ccocontrol service 指令 (若是 Cisco CSS Controller) 上, 或在 nalcontrol server 指令 (若是 Nortel Alteon Controller) 上使用 fixedweight 選項。

    使用 fixedweight 指令,將加權值設成您想要的值。 當控制器執行時,伺服器加權值會保持固定,直到您發出另一個 fixedweight 設定為 no 的指令。

    加權值計算休眠時間

    若要使整體效能最佳化,您可以限制多久收集測量單位一次。

    顧問休眠時間指定顧問多久更新伺服器加權值一次。 如果顧問休眠時間太低,表示效能不佳,這是因為顧問常常岔斷交換器所致。 如果顧問休眠時間太高,表示交換器的平衡負載不是依據精確、最新的資訊而定。

    例如,若要將顧問休眠時間設成 1 秒:

    xxxcontrol consultant set consultantID sleeptime interval
    

    感應臨界值

    您還可使用其它的方法,最佳化您伺服器的平衡負載。為了保持高速運作,只有在加權發生了重大變更時,才會更新伺服器的加權。 當伺服器狀態僅有些許變更或沒有變更時, 持續地更新加權,將會產生不必要的額外執行時間。 當所有提供服務的伺服器總加權值的百分比加權值在變更後大於感應臨界值時, 將更新 Load Balancer 用來分送連線的加權值。例如, 假設總加權從 100 變更為 105。變更是 5%。如果預設的感應臨界值是 5, 將不會更新 Load Balancer 所使用的加權值,因為百分比變更小於臨界值。不過, 如果總加權值從 100 變更為 106,將更新加權值。 若要將顧問的感應臨界值設定為預設值以外的值,請輸入下列指令:

      xxxcontrol consultant set consultantID sensitivity percentageChange
    

    多數情況下,您可以不必更改此值。


    通告器

    通告器是 Load Balancer 內部的代理程式。其目的是要評估伺服器機器的狀況及負載。 它們會嘗試性地讓類從屬站與伺服器交換,以完成評估。 將通告器視為應用程式伺服器的輕裝備從屬站。

    註:
    如需通告器的詳細清單,請參閱通告器列示

    通告器如何運作

    通告器會定期開啟與每一個伺服器的 TCP 連線,並且將要求訊息傳送至伺服器。 訊息的內容會特別針對在伺服器上執行的通訊協定。 例如,HTTP 通告器將 HTTP 『HEAD』 要求傳送至伺服器。

    通告器會傾聽來自伺服器的回應。在取得回應之後,通告器就會建立伺服器的指示。 為了要計算這個負載值,大部份的通告器都會測量伺服器回應的時間, 然後使用這個值 (以毫秒計) 來作為負載。

    之後,通告器便會將負載值報告給顧問功能, 在這裡它將出現在顧問報告中。然後,顧問會從其所有的來源,根據分配比例,計算集成加權值, 並且將這些加權值傳送到交換器。 交換器會使用這些加權值,為新進入的從屬站連線平衡負載。

    如果通告器判定伺服器運作正常,就會報告一個非零值的正負載數給顧問。 如果通告器判定伺服器並沒有在運作,就會傳回一個特殊的負載值 -1, 通知交換器,伺服器已關閉。 接著,交換器將不會再轉遞任何進一步的連線給伺服器,直到伺服器再次啟動為止。

    通告器休眠時間

    註:
    通告器預設值對於大多數的可能情況,都可以有效地運作。輸入預設值以外的值時, 請特別小心。

    通告器休眠時間會設定通告器隔多久將向它所監督的埠上的伺服器要求狀態資訊, 然後向顧問報告結果。如果通告器休眠時間太低,表示效能不佳,這是因為通告器常常岔斷伺服器所致。 如果通告器休眠時間太高,表示顧問的加權決策不是依據精確、最新的資訊而定。

    例如,若要將 HTTP 通告器的間隔設成 3 秒時,請鍵入下列指令:

    xxxcontrol metriccollector set consultantID:HTTP sleeptime 3
    

    伺服器的通告器連結逾時及接收逾時

    您可以設定通告器偵測伺服器或服務上的特定埠是否發生故障所花費的時間量。 故障伺服器逾時值 (connecttimeout 及 receivetimeout) 會判定報告連接或接收失敗之前,通告器的等待時間。

    若要取得最快的故障伺服器偵測,請將通告器連接及接收逾時值設定為最小值 (1 秒鐘),並將通告器及顧問休眠時間設定為最小值 (1 秒鐘)。

    註:
    如果您的環境遭遇適中到高容量的資料傳輸,且伺服器回應時間增加, 請不要設定太低的 timeoutconnect 及 timeoutreceive 值。 如果這些值太低,通告器可能會貿然地將忙碌伺服器標示為故障。

    若要將 HTTP 通告器的 timeoutconnect 設成 9 秒,請鍵入下列指令:

    xxxcontrol metriccollector set consultantID:HTTP timeoutconnect 9
    

    預設的連接及接收逾時是指定給通告器休眠時間之值的 3 倍。

    通告器重試

    通告器有能力在將伺服器標示為當機之前重試連線。通告器在伺服器查詢失敗重試次數加上 1 之前,不會將伺服器標示為當機。如果沒有設定重試值,則預設值為 0。

    若為 Cisco CSS 控制器,則以 ccocontrol ownercontent set 指令設定重試值。進一步資訊,請參照ccocontrol ownercontent -- 控制擁有者名稱及內容規則

    若為 Nortel Alteon 控制器,則以 nalcontrol service set 指令設定重試值。進一步資訊,請參閱nalcontrol service -- 配置服務


    建立自行設定 (可自訂的) 通告器

    註:
    在本節,伺服器將作為同屬術語, 表示 Cisco CSS Controller 的服務,或 Nortel Alteon Controller 的服務。

    自行設定 (可自訂的) 通告器是一小段 Java 程式碼, 您可以提供它作為類別檔,並透過基本程式碼來呼叫它。基本程式碼提供所有管理服務,如:

    它也會將結果報告給顧問。基本程式碼會定期地執行通告器循環,在此循環中, 它會個別評估其配置中的所有伺服器。您可以開啟與伺服器機器的連線,以將它啟動。 如果開啟了 socket,基本程式碼就會在自行設定通告器中呼叫 getLoad 方法 (函數)。 然後,自行設定通告器就會執行必需的步驟,來評估伺服器的狀況。一般而言, 它會將使用者定義的訊息傳送至伺服器,然後等待回應。(對 socket 的存取權限會提供給自行設定通告器。) 然後, 基本程式碼會關閉與伺服器之間的 socket,並且將負載資訊報告給顧問。

    基本程式碼及自行設定通告器的操作模式有一般及置換二種。 而操作模式的選擇則是在自行設定通告器檔案中,用建構元方法及參數來指定。

    在一般的模式中,自行設定通告器會與伺服器交換資料, 而基本通告器程式碼會指定交換的時間,並計算資料流量值。 然後,基本程式碼會將這個負載值報告給顧問。 自行設定通告器只需要傳回一個 0 (成功時) 或 -1 (發生錯誤時)。 若要指定一般模式,建構元中的置換旗號要設定為 false。

    在置換模式中,基本程式碼不會執行任何時間測量工作。 自行設定通告器程式碼會執行其特殊需求所必要的任何作業,然後傳回實際的資料流量號碼。 基本程式碼將會接受此號碼,並且將它報告給顧問。 為獲得最佳結果,請將介於 10 及 1000 之間的資料流量號碼正常化, 10 代表快速伺服器,而 1000 代表慢速伺服器。 若要指定置換模式,建構元中的置換旗號要設定為 true。

    有了此特性,您可以撰寫您自己的通告器,提供您所需的伺服器的相關精確資訊。 有一個範例自行設定通告器 ADV_ctlrsample.java 提供給控制器。 安裝 Load Balancer 之後,您可在 ...ibm/edge/lb/servers/samples/CustomAdvisors 安裝目錄中尋找範例程式碼。

    預設的安裝目錄為:

    註:
    如果您新增自行設定通告器到 Cisco CSS Controller 或 Nortel Alteon Controller, 則必須停止然後重新啟動 ccoservernalserver (若是 Windows 2000,請使用「服務」),來啟動 Java 程序,讀取新的自行設定通告器類別檔。 自行設定通告器類別檔僅在啟動時載入。

    命名慣例

    您的自行設定通告器檔名必須使用 myadvisor.java 的格式。必須用大寫的前置符號 ADV_ 來作為開頭。所有後續的字元都必須是小寫字母。

    根據 Java 慣例,定義於檔案中的類別名稱必須符合檔案的名稱。 如果您要複製範例碼,請務必將檔案中所有的 ADV_ctrlsample 實例變更為您的新類別名稱。

    編譯

    自行設定通告器是用 Java 語言來撰寫的。您必須取得並安裝適用於您的機器的 Java 1.3 編譯器。在編譯期間,會參照下列檔案:

    您的 classpath 在編譯期間必須同時指向自行設定通告器及基礎類別檔。

    Windows 2000 上的編譯指令如下:

    javac -classpath <install_dir>\lb\servers\lib\ibmnd.jar ADV_pam.java
     
    

    其中:

    編譯的輸出結果是一個類別檔案;例如:

    ADV_pam.class
    

    啟動通告器之前,將類別檔複製到 ...ibm/edge/lb/servers/lib/CustomAdvisors 安裝目錄。

    註:
    如果想要的話,您可以在一個作業系統上編譯自行設定通告器, 並且在另一個作業系統上執行。 例如,您可以在 Windows 2000 上編譯通告器、將類別檔 (二進位) 複製到 AIX 機器,並在該處執行自行設定通告器。

    在 AIX、Linux 及 Sun 的語法類似。

    執行

    欲執行自行設定通告器,您必須先將類別檔複製到正確的安裝目錄:

    ...ibm/edge/lb/servers/lib/CustomAdvisors/ADV_pam.class
    

    啟動顧問,然後發出這個指令來啟動您的自行設定通告器:

    若是 Cisco CSS Controller
    ccocontrol ownercontent metrics consultantID:ownerContentID pam 100

    若是 Nortel Alteon Controller
    nalcontrol service metrics consultantID:serviceID pam 100

    其中:

    必要常式

    和所有的通告器一樣,自行設定通告器會擴充通告器基礎 (稱為 ADV_Base) 的功能。 通告器基礎實際執行大部份通告器功能 (例如,將負載回報顧問, 以供顧問的加權值演算法使用)。 通告器基礎也會執行 socket 連線及關閉作業,並提供傳送和接收方法供通告器使用。 通告器本身僅可用來將資料傳送到和接收自所通告的伺服器上的埠。 通告器基礎內的 TCP 方法會適時計算資料流量。必要時, ADV_base 中建構元內的旗號,會以通告器傳回的新資料流量,來覆寫現存的資料流量。

    註:
    根據建構元中的設定值,通告器基礎會在指定間隔對加權演算法提供資料流量。 如果可以傳回有效資料流量的實際通告器尚未完成, 通告器基礎會使用先前的資料流量。

    以下是基礎類別方法:

    搜尋次序

    控制器首先會查看提供的本機通告器清單;如果它們在那裡找不到給定的通告器, 它們將查看自行設定通告器清單。

    命名及路徑

    範例通告器

    對控制器範例通告器所列的程式,是包含在範例通告器中。 安裝之後,可在 ...ibm/edge/lb/servers/samples/CustomAdvisors 目錄中找到此範例通告器。


    Metric Server

    Metric Server 以系統特定測量單位表格,提供 Load Balancer 有關伺服器的載入資訊,並報告於伺服器的狀況上。Load Balancer 顧問查詢常駐於每一個伺服器上的 Metric Server 代理程式,並使用收集自代理程式的測量單位來為平衡負載程序指定加權值。結果也會置於 Cisco CSS Controller 的服務報告或 Nortel Alteon Controller 的伺服器報告中。

    先決條件

    在平衡負載的所有伺服器上都必須安裝並執行 Metric Server 代理程式。

    如何使用 Metric Server

    以下為配置控制器的 Metric Server 的步驟。

    若要讓 Metric Server 在本端主電腦以外的位址上執行,請編輯平衡負載伺服器機器上的 metricserver 檔案。 在 metricserver 檔中的 java 後,插入下列內容:

    -Djava.rmi.server.hostname=OTHER_ADDRESS
    

    此外,在 metricserver 檔案中的 "if" 陳述式之前,新增這一行:hostname OTHER_ADDRESS

    若是 Windows 2000:請指定 Microsoft 堆疊上 OTHER_ADDRESS 的別名。 若要指定 Microsoft 堆疊上位址的別名,請參閱第 *** 頁。


    工作量管理程式通告器

    WLM 是在 MVS 主電腦上執行的程式碼。您可以查詢此程式碼, 以詢問 MVS 機器上的資料流量。

    當「MVS 工作量管理」在您的 OS/390 系統上配置好了之後, 控制器即可從 WLM 接收容量資訊,並且在平衡負載處理中使用此資訊。 若使用 WLM 通告器,控制器會根據控制器主電腦表, 定期透過每一個伺服器上的 WLM 埠來開啟連線,並接收所傳回的容量整數。 由於這些整數是代表仍可使用的容量數, 而顧問期望值代表每一台機器上的負載, 所以通告器會將容量整數轉化,並將其正常化為負載值 (例如, 大的容量整數,小的負載值,都代表情況較良好的伺服器)。 WLM 通告器及其它控制器通告器之間,有幾項重要的差異:

    1. 其它通告器會以用來傳送一般從屬站資料傳輸的同一個埠, 來開啟與伺服器的連線。而 WLM 通告器則是使用與一般資料傳輸不同的埠, 來開啟與伺服器的連線。每一個伺服器機器上的 WLM 代理程式, 都必須配置來傾聽啟動控制器「WLM 通告器」時所使用的同一個埠。 預設 WLM 埠為 10007。
    2. 若要同時使用特定通訊協定的通告器及 WLM 通告器,也是有可能的。 特定通訊協定的通告器會將伺服器登記在其一般的資料傳輸埠上, 而 WLM 通告器則會使用 WLM 埠來登記系統資料流量。

    使用二進位記載功能來分析伺服器統計值

    二進位記載特性可將伺服器資訊儲存於二進位檔案中。

    然後就可處理這些檔案,以分析一段時間後所收集的伺服器資訊。

    下列資訊是儲存在配置中所定義之每個伺服器的二進位日誌中。

    顧問必須正在執行,才能將資訊記載在二進位日誌中。

    使用 xxxcontrol consultant binarylog 指令集, 配置二進位記載。

    start 選項會開始將伺服器資訊記載到 logs 目錄的二進位日誌中。在每個小時開始時,都會將日期及時間當成檔案名稱,來建立一個日誌。

    stop 選項會停此將伺服器資訊記載到二進位日誌中。預設會停止日誌服務程式。

    set interval 選項控制將資訊寫入日誌中的頻率。顧問會在每個顧問間隔時,將伺服器資訊傳送給日誌伺服器。只有在自上一筆記錄寫到日誌檔後又過了所指定的日誌間隔秒數時,才會再將資訊寫入日誌中。日誌間隔預設是設定成 60 秒。

    在顧問間隔及日誌間隔的設定之間會有部份的互動。 因為將資訊提供給日誌伺服器的速度不會比顧問間隔秒數更快,所以將日誌間隔設定小於顧問間隔,實際上會將它設成與顧問間隔相同。

    此記載技術可讓您攫取任何時間的伺服器資訊。您可攫取顧問所看到的所有伺服器資訊變更,以計算伺服器加權值; 不過,可能不需要這個資訊數量,就能分析伺服器用量及趨勢。每隔 60 秒記載一次伺服器資訊,可提供您一段時間後的伺服器資訊 Snapshot。將日誌間隔設成極小,會產生大量的資料。

    設定保留選項可接管要將日誌檔保留多久。 如果日誌檔的日期超過所指定的保留時數,日誌伺服器就會將其刪除。 僅在顧問呼叫日誌伺服器時,才會發生這種情況,所以如果您停止顧問, 將不會刪除舊的日誌檔。

    ...ibm/edge/lb/servers/samples/BinaryLog 目錄下,已提供有範例 Java 程式及指令檔。這個範例顯示如何從日誌檔擷取所有的資訊,並將它列印在螢幕上。 您可以自行設定,以您指定的類型來分析這些資料。

    以下是使用提供的 script 及程式的範例:

    xxxlogreport 2002/05/01 8:00 2002/05/01 17:00
    

    這將產生控制器的伺服器資訊的報告,時間從 2002 年 5 月 1 日的 8:00 AM 到 5:00 PM。


    使用 script 產生警示或記錄伺服器失敗

    Load Balancer 提供使用者呼叫,觸發您可自行設定的 script。 您可建立執行自動化動作的 script,例如,當伺服器標示為關閉,或單純記錄失敗事件時, 對「管理者」發出警示。您可自行設定的範例 script,位於 ...ibm/edge/lb/servers/samples 安裝目錄中。 若要執行檔案,請將它們複製到 ...ibm/edge/lb/servers/bin 目錄,然後根據 script 中所包含的指示來更名每一個檔案。

    下列是提供的範例 script,其中 xxxcco 代表 Cisco CSS Controller, 而 nal 代表 Nortel Alteon Controller:


    Load Balancer 管理及疑難排解

    本篇提供 Load Balancer 管理及疑難排解的相關資訊。 它含有下列各章:


    操作與管理 Load Balancer

    註:
    閱讀本章中非屬特定元件的一般章節時,如果您不是使用 Dispatcher 元件, 請將 dscontrol 及 dsserver 改成下列項目:

    本章將說明如何操作及管理 Load Balancer,其中包括下列各節:


    Load Balancer 的遠端管理

    Load Balancer 提供兩種不同的方式,用以在不同於 Load Balancer 所常駐的其它機器上執行其配置程式。 配置程式 (dscontrol、cbrcontrol、sscontrol、ccocontrol、nalcontrol) 與伺服器 (dsserver、cbrserver 等) 之間的通信可以使用下列方法之一來執行:

    使用 RMI 進行遠端管理的優點在於其效能比 Web 型管理來得快速。

    使用 Web 型管理的優點則是它具備安全性、經過鑑別、能進行遠端管理,而且即使有防火牆仍可與 Load Balancer 機器通信。 此外,此種管理方法需要在遠端從屬站機器 (與 Load Balancer 機器通信者) 上,安裝及使用鑑定金鑰 (lbkeys)。

    遠端方法呼叫 (RMI)

    對 RMI 而言,用來連結 Load Balancer 機器以進行遠端管理的指令是 dscontrol host:remote_host

    如果提出 RMI 呼叫的機器不是本端機器,必須先經過公開金鑰/私密金鑰鑑定程序, 才能接受配置指令。

    如果控制程式是在與元件伺服器相同的機器上執行,則不會鑑定控制程式之間的通信。

    請使用下列指令來產生要用在遠端鑑定的公開及私密金鑰:

    lbkeys [create|delete]

    此指令只可於 Load Balancer 所在的相同機器上執行。

    可針對各個 Load Balancer 元件,使用 create 選項在伺服器金鑰目錄 (...ibm/edge/lb/servers/key/) 下建立私密金鑰,並在管理金鑰目錄 (...ibm/edge/lb/admin/keys/) 下建立公開金鑰。 公開金鑰的檔名是:component-ServerAddress-RMIport。 這些公開金鑰必須接著傳輸到遠端從屬站,並且放置在管理金鑰目錄中。

    對於主電腦名稱位址為 10.0.0.25 且對各元件使用預設 RMI 埠的 Load Balancer 機器而言, lbkeys create 指令會產生下列檔案:

    管理檔案集已安裝在另一個機器上。 公開金鑰檔案須位於遠端從屬站機器的 ...ibm/edge/lb/admin/keys 目錄下。

    遠端從屬站現在將會被授權,以在 10.0.0.25 上配置 Load Balancer。

    在所有您要授權以在 10.0.0.25 上配置 Load Balancer 的遠端從屬站上,都必須使用這個相同的金鑰。

    如果您再執行一次 lbkeys create 指令,將會產生一組新的公開/私密金鑰。 這表示所有嘗試使用舊金鑰來連線的遠端從屬站,都將無法被授權。 新的金鑰必須放置在您要重新授權之從屬站的正確目錄中。

    lbkeys delete 指令會刪除伺服器機器上的私密及公開金鑰。 如果刪除了這些金鑰,則不會授權任何遠端從屬站來連接伺服器。

    對 lbkeys create 及 lbkeys delete 而言,兩者皆有 force 選項。 force 選項可抑制指令提示,使系統不會詢問您是否要覆寫或刪除現有金鑰。

    一旦建立了 RMI 連線後,您即可透過指令提示,用 dscontrol、cbrcontrol、sscontrol、ccocontrol、 nalcontrol、dswizard、cbrwizard 及 sswizard 指令,來與配置程式通信。 您也可藉由在指令提示鍵入 lbadmin,透過 GUI 來配置 Load Balancer。

    Web 型管理

    先決條件

    若要使用 Web 型管理,執行遠端管理的從屬站機器將需要下列項目:

    若要執行遠端 Web 型管理,您所存取的主電腦機器須具有下列項目:

    配置 Caching Proxy

    執行及存取 Web 型管理

    為了能夠執行 Web 型管理,它必須在 Load Balancer 主電腦機器上啟動: 從主電腦機器的指令提示發出 lbwebaccess

    您還需要您在遠端所存取之主電腦機器的使用者 ID 及密碼。 此使用者 ID 及密碼相同於 Caching Proxy 管理的使用者 ID 及密碼。

    若要起始 Load Balancer 的 Web 型管理,請用您的 Web 瀏覽器從遠端位置存取下列 URL:

    http://host_name/lb-admin/lbadmin.html
    

    其中的 host_name 是您正在存取 (以便與 Load Balancer 通信) 之機器的名稱。

    一旦載入 Web 頁面後,Load Balancer GUI 將出現在瀏覽器視窗中,供您執行遠端 Web 型管理。

    透過 Load Balancer GUI,您還可發出配置控制指令。 若要從 GUI 發出指令:

    1. 在 GUI 樹狀結構中高亮度顯示「主電腦」節點
    2. 從「主電腦」蹦現功能表選取傳送指令...
    3. 在指令輸入欄位中,鍵入要執行的指令。 例如:executor report。您在現行階段作業中所執行的指令,其結果及歷程將出現在所提供的視窗中。

    於遠端重新整理配置

    有了遠端 Web 型管理,如果有多位管理者要從其它位置來更新 Load Balancer 配置,您將須重新整理其配置,以檢視 (例如) 其它管理者所新增 (或刪除) 的叢集、埠或伺服器。 遠端 Web 型管理 GUI 具有重新整理配置重新整理所有配置功能。

    請透過此 Web 型 GUI,重新整理配置


    使用 Load Balancer 日誌

    若是 Dispatcher、CBR 及 Site Selector

    Load Balancer 會將項目傳遞至伺服器日誌、管理程式日誌、測量監督程式日誌 (記載與 Metric Server 代理程式的通信) 以及您使用的每一個通告器的日誌。

    註:
    此外,僅限針對 Dispatcher 元件,您可在子代理程式 (SNMP) 日誌中記載項目。

    您可以設定記載層次, 來定義寫入日誌中的訊息涵蓋範圍。在層次 0,除了記載錯誤外,Load Balancer 也會記錄僅發生一次之事件 (例如,關於通告器開始被寫入管理程式日誌中的訊息) 的表頭及記錄。 層次 1 包含進行中的資訊等等,層次 5 則包含必要時用來協助問題除錯而產生的訊息。 管理程式、通告器、伺服器或子代理程式的預設值是 1。

    您也可以設定日誌的最大大小。當您設定日誌檔的最大大小時,檔案將折返; 當檔案達到指定的大小時,後續的項目將寫在檔案頂端,而蓋掉先前的日誌項目。 您不能將日誌大小設定為小於目前日誌的值。日誌項目有時間戳記, 您可以得知寫入的先後次序。

    您設定的記載層次愈高,就應該更小心地選擇日誌大小。在層次 0,將日誌大小保留為預設值 1MB 可能仍相當安全;不過,當記載在層次 3 以上時,您應該限制大小,但不要設得太小,而無法使用。

    變更日誌檔路徑

    在預設的狀況下,Load Balancer所產生的日誌會儲存在Load Balancer安裝作業的日誌目錄中。要變更此路徑,請設定 dsserver script 中的 lb_logdir 變數。

    AIX、Linux 及 Solaris:dsserver script 放在 /usr/bin 目錄下。 在此 script 中,變數 lb_logdir 是設定為預設目錄。 您可以修改此變數,以指定您的日誌目錄。範例:

    LB_LOGDIR=/path/to/my/logs/

    Windows 2000:dsserver 檔位於 Windows 2000 的系統目錄中,通常是 C:\WINNT\SYSTEM32。 在 dsserver 檔中,變數 lb_logdir 是設定為預設目錄。 您可以修改此變數,以指定您的日誌目錄。範例:

    set LB_LOGDIR=c:\path\to\my\logs\

    無論您使用任何作業系統,請確定等號前後都沒有空格, 而且路徑是以斜線結束 ("/" 或 "\" 視所用的作業系統而定)。

    二進位記載

    註:
    二進位記載並不適用於 Site Selector 元件。

    Load Balancer 的二進位記載功能所使用的日誌目錄與其它日誌檔相同。請參閱使用二進位記載功能來分析伺服器統計值

    若是 Cisco CSS Controller 及 Nortel Alteon Controller

    您可以設定記載層次, 來定義寫入日誌中的訊息涵蓋範圍。在層次 0,除了記載錯誤外,Load Balancer 也會記錄僅發生一次之事件 (例如,關於通告器開始被寫入顧問日誌中的訊息) 的表頭及記錄。 層次 1 包含進行中的資訊等等,層次 5 則包含必要時用來協助問題除錯而產生的訊息。 日誌的預設值是 1。

    您也可以設定日誌的最大大小。當您設定日誌檔的最大大小時,檔案將折返; 當檔案達到指定的大小時,後續的項目將寫在檔案頂端,而蓋掉先前的日誌項目。 您不能將日誌大小設定為小於目前日誌的值。日誌項目有時間戳記, 您可以得知寫入的先後次序。

    您設定的記載層次愈高,就應該更小心地選擇日誌大小。在層次 0,將日誌大小保留為預設值 1MB 可能仍相當安全;不過,當記載在層次 3 以上時,您應該限制大小,但不要設得太小,而無法使用。

    控制器日誌

    Cisco CSS Controller 及 Nortel Alteon Controller 具有如下的日誌:

    下列範例說明如何配置測量單位監督程式日誌 (記載與 Metric Server 代理程式的通信) 的記載層次及最大日誌大小:

    xxxcontrol metriccollector set consultantID:serviceID:metricName
       loglevel x logsize y
    

    變更日誌檔路徑

    在預設的狀況下,控制器所產生的日誌會儲存在控制器安裝作業的日誌目錄中。 若要變更這個路徑,請在 xxxserver script 中設定 xxx_logdir 變數。

    AIX、Linux 及 Solaris:xxxserver script 位於 /usr/bin 目錄中。在此 script 中,變數 xxx_logdir 設為預設目錄。 您可以修改此變數,以指定您的日誌目錄。範例:

    xxx_LOGDIR=/path/to/my/logs/

    Windows 2000:xxxserver 檔位於 Windows 2000 的系統目錄中,通常是 C:\WINNT\SYSTEM32。 在 xxxserver 檔中,變數 xxx_logdir 設為預設目錄。 您可以修改此變數,以指定您的日誌目錄。範例:

    set xxx_LOGDIR=c:\path\to\my\logs\

    無論您使用任何作業系統,請確定等號前後都沒有空格, 而且路徑是以斜線結束 ("/" 或 "\" 視所用的作業系統而定)。

    二進位記載

    Load Balancer 的二進位記載功能所使用的日誌目錄與其它日誌檔相同。請參閱使用二進位記載功能來分析伺服器統計值


    使用 Dispatcher 元件

    本節將說明如何使用及管理 Dispatcher 元件。

    啟動及停止 Dispatcher

    使用閒置逾時值

    對 Load Balancer 而言,在閒置逾時所指定的秒數內,若連線沒有任何活動時,即視為逾時。 當超過此秒數而無任何活動時,Load Balancer 會將連線記錄從其報告中移除,而該連線的後續資料傳輸將被捨棄。

    例如,您可以在埠層次於 dscontrol port set staletimeout 指令上指定閒置逾時值。

    閒置逾時可在執行器、叢集及埠等層次進行設定。 在執行器及叢集層次,預設值是 300 秒,而它會過濾至埠。 在埠層次上,預設值須取決於埠。某些充份定義的埠具有不同的預設閒置逾時值。 例如,telnet 埠 23 的預設值為 259,200 秒。

    某些服務程式亦可能具有其本身的閒置逾時值。 例如,LDAP (輕裝備目錄存取通信協定) 擁有名為 idletimeout 的配置參數。 當超過 idletimeout 秒數時,閒置從屬站連線將被迫結束。 idletimeout 亦可能被設成 0,表示連線永遠不會被迫結束。

    當 Load Balancer 的閒置逾時值小於服務程式的逾時值時,即可能發生連通性問題。 若是 LDAP 時,Load Balancer 閒置逾時值會預設成 300 秒。 如果連線上經過 300 秒並無任何活動,Load Balancer 將會從它的表格中移除連線記錄。 如果 idletimeout 值大於 300 秒 (或設成 0),從屬站可能仍相信其對伺服器保有連線。 當從屬站傳送封包時,Load Balancer 將捨棄封包。如此會在對伺服器提出要求時,使 LDAP 中斷。 要避免此問題,請將 LDAP 的 idletimeout 設成非零值,且等於或小於 Load Balancer staletimeout 值。

    使用 FIN 計數可控制垃圾收集

    從屬站會在傳送所有封包後,傳送一個 FIN 封包給伺服器, 好讓伺服器知道已完成異動。 當 Dispatcher 接收 FIN 封包後,就會將異動從作用中狀態標示為 FIN 狀態。 一旦異動標示為 FIN,內建在執行器中的垃圾收集器即可清除保留給連線的記憶體。

    您可以使用 FIN 逾時及計數,來設定執行器執行垃圾收集的頻率,及執行程度。 執行器會週期性地檢查已配置的連線列示。當處於 FIN 狀態的連線數目大於或等於 FIN 計數時, 執行器就會嘗試釋放用來保存這個連線資訊的記憶體。您可以輸入 dscontrol executor set fincount 指令,來變更 FIN 計數。

    只要是處於 FIN 狀態,並且比 FIN 逾時中所指定秒數還舊的任何連線, 垃圾收集器都會將其所使用的記憶體釋放。 您可以輸入 dscontrol executor set fintimeout 指令,來變更 FIN 逾時。

    閒置逾時值是指連線停止活動多少秒後,立即移除連線。相關資訊,請參閱使用閒置逾時值。 FIN 計數也會影響移除「逾時」連線的頻率。 如果在您的 Dispatcher 機器上記憶體不多, 您應該設定較低的 FIN 計數。如果您的 Web 站台很忙碌, 您應該設定較高的 FIN 計數。

    報告 GUI -- 監督程式功能表選項

    系統會根據來自執行器的資訊顯示各種圖表,並將這些圖表轉送至管理程式。 (GUI 監督程式功能表選項須執行管理程式功能來配合):

    搭配使用簡易網路管理通信協定與 Dispatcher 元件

    網路管理系統是一種可持續不斷執行的程式,可用來監督、 控制網路以及反映網路狀態。「簡易網路管理通訊協定 (SNMP)」是一種用來與網路中的裝 置進行通信的特定通訊協定,並且是現行網路管理標準。網路裝置通常有 SNMP 代理程式, 以及一或多個子代理程式。SNMP 代理程式會與網路管理站通話,或回應指令行 SNMP 要求。SNMP 子代理程式會擷取及更新資料,並將該資料提供給 SNMP 代理程式,以便傳遞回要求器。

    Dispatcher 提供 SNMP 管理資訊庫 (ibmNetDispatcherMIB) 及 SNMP 子代理程式。這樣可讓您使用任何網路管理系統 (例如:Tivoli NetView、Tivoli Distributed Monitoring 或 HP OpenView) 來監督 Dispatcher 的狀況、產量及活動。MIB 資料說明受管理中的 Dispatcher, 並反映目前的 Dispatcher 狀態。 MIB 會安裝在 ..lb/admin/MIB 子目錄下。

    註:
    MIB (ibmNetDispatcherMIB.02) 將不會使用 Tivoli NetView xnmloadmib2 程式來載入。 若要修正此問題,請將 MIB 的 NOTIFICATION-GROUP 區段改成備註。 亦即,對 "indMibNotifications Group NOTIFICATION-GROUP" 行以及其後所接的 6 行,在各行前頭插入 "- -"。

    網路管理系統使用 SNMP GET 指令來查看其它機器上的 MIB 值。然後, 它可以通知您是否已超出指定的臨界值。您稍後可以藉由修改 Dispatcher 的配置資料來影響 Dispatcher, 以便在 Dispatcher 或 Web 伺服器變成停用之前,預先調整或修正 Dispatcher 問題。

    SNMP 指令及通訊協定

    系統通常會對每一個網路管理站提供一個 SNMP 代理程式。 使用者可傳送 GET 指令到 SNMP 代理程式。然後,此 SNMP 代理程式會傳送 GET 指令, 以便從負責 MIB 變數的子代理程式中擷取指定 MIB 變數值。

    Dispatcher 提供可更新及擷取 MIB 資料的子代理程式。子代理程式會在 SNMP 代理程式傳送 GET 指令時, 回應適當的 MIB 資料。SNMP 代理程式會將資料傳遞到網路管理站。然後, 網路管理站可以通知您是否已超出指定的臨界值。

    Dispatcher SNMP 支援內含了使用「分散式程式介面 (DPI)」功能的 SNMP 子代理程式。 DPI 是 SNMP 代理程式及其子代理程式之間的介面。 Windows 2000 使用 Windows 延伸代理程式作為 SNMP 代理程式及其子代理程式之間的介面。

    在 AIX、Linux 及 Solaris 上啟動 SNMP

    圖 40. AIX 及 Solaris 的 SNMP 指令

    AIX、Linux 及 Solaris 的 SNMP 指令及伺服器系統

    AIX 所提供的 SNMP 代理程式是採用「 SNMP 多工器通信協定 (SMUX)」,因此也包含可執行程式 dpid2,作為 DPI 與 SMUX 之間的轉換程式。

    Linux 具備了使用 SMUX 的 SNMP 代理程式。 大部份的 Linux 版本 (例如 Red Hat) 皆已隨附 UCD SNMP 套裝軟體。 UCD SNMP 版本 4.1 以上者皆具有啟用 SMUX 的代理程式。Load Balancer 則提供 DPID2 for Linux。

    若是 SuSE Linux,您必須取得已啟用 SMUX 的 SNMP 代理程式, 因為 SuSE 並不提供此類代理程式。

    若是 Solaris,您必須取得已啟用 SMUX 的 SNMP 代理程式, 因為 Solaris 並不提供此類代理程式。Load Balancer 提供 DPID2 for Solaris,存放在 /opt/ibm/edge/lb/servers/samples/SNMP 目錄下。

    DPI 代理程式必須以 root 使用者來執行。在您執行 DPID2 常駐程式之前, 請按照下列方式來更新 /etc/snmpd.peers 檔案及 /etc/snmpd.conf 檔案:

    若為 AIX 及 Solaris:

    若為 Linux:

    若是 SuSE Linux:

    為了讓 Load Balancer SNMP 與 SuSE Linux 能夠搭配使用,您必須執行下列步驟:

    1. 從 SuSE 機器中移除已安裝的 ucd-snmp rpm。
    2. http://sourceforge.net/project/showfiles.php?group_id=12694 取得 ucd-snmp-4.2.4.tar.gz。
    3. 確定 "gcc" 及 "gmake or make" 已安裝在 SuSE 機器 (如果它們不在那裡,您必須安裝它們)。
    4. 將 ucd-snmp-4.2.4.tar.gz 檔解壓縮 (Unzip),並將所有原始檔解壓縮 (untar) 至目錄。
    5. 移至保存原始檔的目錄,然後執行下列:
      1. run ./configure --with-mib-modules=smux
      2. make
      3. 以 root 身份執行下兩個指令:
        1. unmask 022 #
        2. make install
      4. export SNMPCONFPATH=/etc/snmp
      5. start /usr/local/sbin/snmpd -s
      6. start dpid2

    重新整理 snmpd (如果已執行),使其重新讀取 snmpd.conf 檔案:

    refresh -s snmpd
    

    啟動 DPID SMUX 同層級:

    dpid2
    

    各常駐程式必須依下列順序啟動:

    1. SNMP 代理程式
    2. DPI 轉換器
    3. Dispatcher 子代理程式

    在 Solaris 上啟用 SNMP

    若要安裝 Solaris SNMP 支援:

    1. 刪除執行中的 Solaris SNMP 常駐程式 (snmpdx 及 snmpXdmid)。
    2. 將檔案更名如下:

      /etc/rc3.d/S76snmpdx 更名為 /etc/rc3.d/K76snmpdx

      /etc/rc3.d/S77dmi 更名為 /etc/rc3.d/K77dmi

    3. 從 http://www.sunfreeware.com/ 下載下列套裝軟體:
    4. 使用 pkgadd 安裝下載的套裝軟體。
    5. 從 http://sourceforge.net/project/showfiles.php?group_id=12694 下載 ucd-snmp-4.2.3-solaris8.tar.gz
    6. 在根目錄 (/) 中,將 ucd-snmp-4.2.3-solaris8.tar.gz 解壓縮 (Gunzip 及 untar)
    7. 發出下列指令:

      export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: /usr/local/lib:/usr/local/ssl/lib:/usr/lib

      export PATH=/usr/local/sbin:/usr/local/bin:$PATH

      export SNMPCONFPATH =/etc/snmp

      export MIBDIRS=/usr/local/share/snmp/mibs

      cp /opt/ibm/edge/lb/servers/samples/SNMP/dpid2 /usr/local/sbin/dpid2

    8. 如果它不存在,請建立 /etc/snmpd.peers。將下列一行插入 snmpd.peers:
      "dpid2"    1.3.6.1.4.1.2.3.1.2.2.1.1.2   "dpid_password"
      
    9. 如果它不存在,請建立 /etc/snmp/snmpd.conf。將下列一行插入 snmpd.conf:
      smuxpeer        1.3.6.1.4.1.2.3.1.2.2.1.1.2     dpid_password
      
    10. Start /usr/local/sbin/snmpd.
    11. Start /usr/local/sbin/dpid2.

    註:

    1. 下列是具有套裝軟體格式的套裝軟體。

      在 http://sunfreeware.com/ 網站,名稱具有副檔名 .gz, 請不要嘗試將其解壓縮 (gunzip/untar)。請改用 pkgadd packageName

    2. 當您在 /etc/snmp/snmpd.conf 中新增 smuxpeer 項目時,請確定沒有空格新增到 dpid_password 字串。

    3. 已利用啟用 smux 的 ucd-snmp 版本 4.2.3 測試過 Load Balancer SNMP 特性。 未來具有 smux 的 ucd-snmp 版次應該會使用類似的設定。

    於 Windows 2000 上啟動 SNMP

    若要安裝 Windows SNMP 支援:

    1. 按一下開始 -> 設定 -> 控制台 -> 新增/移除程式
    2. 按一下新增/移除 Windows 元件
    3. 在「Windows 元件精靈」中,按一下 Management and Monitoring Tools (但不要選取或清除它的勾選框),再按一下詳細資料
    4. 選取 Simple Network Management Protocol 勾選框,再按一下「確定」。
    5. 按一下「下一步」。

    提供團體名稱給 SNMP

    當執行器正在執行時,使用 dscontrol subagent start [communityname] 指令,來定義「Windows OS 延伸」代理程式和 SNMP 代理程式之間所使用的團體名稱。

    設陷

    SNMP 是經由傳送及接收設陷來通信的, 受管理的裝置會傳送「設陷」訊息,以報告例外狀況或重大事件的發生 (例如,已達到臨界值)。

    此子代理程式會使用下列設陷:

    indHighAvailStatus 設陷會宣佈, 高可用性狀態變數值 (hasState) 已變更。 hasState 可能的值如下:

    -閒置
    此機器正在平衡負載,且未聯絡它的友機 Dispatcher。

    -listen
    高可用性剛才已啟動,而 Dispatcher 正在傾聽友機。

    -active
    此機器正在平衡負載。

    -standby
    此機器正在監督使用中的機器。

    -preempt
    在從主要切換到備份期間,此機器處於過渡狀態。

    -elect
    Dispatcher 正在與友機協定,何者為主要,何者為備份。

    -no_exec
    執行器非執行中。

    indSrvrGoneDown 設陷會宣佈, 由「物件識別碼」中的 csID (cluster ID)、 psNum (port number) 和 ssID (server ID) 所指定的伺服器加權已降為零。已將伺服器加權降為零之前最後所知現行的連線數傳送給設陷。 此設陷表示,就 Dispatcher 所能判斷的範圍,指定的伺服器已關閉。

    indDOSAttack 設陷會指出 numhalfopen (純由 SYN 封包組成的半開啟連線數) 已超過由「物件識別碼」的 csID (叢集 ID) 和 psNum (埠號) 部份所指定之埠的 maxhhalfopen 臨界值。在該埠上所配置的伺服器數已傳送到此設陷中。 此設陷會指出 Load Balancer 可能正遭逢「拒絕服務攻擊」。

    indDOSAttackDone 設陷會指出 numhalfopen (純由 SYN 封包組成的半開啟連線數) 已低於由「物件識別碼」的 csID 和 psNum 部份所指定之埠的 maxhhalfopen 臨界值。 在該埠上所配置的伺服器數已傳送到此設陷中。 當 Load Balancer 判斷可能的「拒絕服務攻擊」已結束時,此設陷會接在 indDOSAttack 設陷之後被傳送。

    對於 Unix 型系統,由於 SMUX API 中的限制, 企業識別碼報告 ibmNetDispatcher 子代理程式中的設陷可能是 dpid2 的企業識別碼, 而不是企業識別碼 ibmNetDispatcher 1.3.6.1.4.1.2.6.144。不過,SNMP 管理公用程式將可判斷設陷來源, 因為資料將包含 ibmNetDispatcher MIB 內部的物件識別碼。

    從 dscontrol 指令開啟及關閉 SNMP 支援

    dscontrol subagent start 指令可開啟 SNMP 支援。 而 dscontrol subagent stop 指令則可關閉 SNMP 支援。

    有關 dscontrol 指令的進一步資訊,請參閱dscontrol subagent -- 配置 SNMP 子代理程式

    使用 ipchains 或 iptables 來拒絕所有資料傳輸以 (強化) Load Balancer 方框 (於 Linux 上)

    Linux 核心已內建了名為 ipchains 的防火牆機能。 當 Load Balancer 與 ipchains 並行執行時,Load Balancer 會先看到封包,其後才是 ipchains。 如此可藉由 ipchains 來強化 Linux Load Balancer 方框,而此方框 (例如) 可以是用來平衡負載防火牆的 Load Balancer 方框。

    當 ipchains 或 iptables 被配置成完全受限 (不得有入埠或離埠資料傳輸) 時, Load Balancer 的封包轉送部份會繼續正常運作。

    請注意:ipchains 及 iptables 未經平衡負載前,不可用於過濾外來資料傳輸。

    有些額外的資料傳輸須針對所有的 Load Balancer 加以允許以便能正常運作。 以下是此種通信的一些範例:

    一般而言,適當的 ipchains 策略讓 Load Balancer 方框禁止所有資料傳輸,除非是進出後端伺服器、 友機高可用性 Load Balancer、任何連繫目標或任何配置主電腦的資料傳輸。

    當 Linux 核心程式版本 2.4.10.x. 上的 Load Balancer 在執行中時,不建議啟動 iptables。在這個 Linux 核心程式版本上啟動可以導致效能隨著時間退化。

    若要撤銷 iptables,請列示模組 (lsmod) 來了解哪一個模組正在使用 ip_tables and ip_conntrack,然後利用發出 rmmod ip_tablesrmmod ip_conntrack來移除他們。當重新啟動機器時,會再次新增這些模組,因此,每次重新啟動時,都必須重複這些步驟。

    如需支援 Linux 核心程式版本的相關資訊,請參閱Red Hat Linux、SuSE Linux 或 SuSE SLES Linux 的基本需求


    使用 Content Based Routing 元件

    本節將說明如何操作及管理 Load Balancer 的 CBR 元件。

    啟動及停止 CBR

    CBR 及 Caching Proxy 可透過 Caching Proxy plugin API 協力處理 HTTP 及 HTTPS (SSL) 要求。 要使 CBR 開始對伺服器進行平衡負載,Caching Proxy 必須在同一機器上執行。 請按CBR 配置範例 中所述方式來設定 CBR 及 Caching Proxy。

    控制 CBR

    啟動 CBR 後,您可以藉下列其中一項方法來加以控制:

    使用 CBR 日誌

    CBR 所使用的日誌與在 Dispatcher 中所使用的日誌類似。 進一步資訊,請參閱使用 Load Balancer 日誌

    註:
    在先前的版次中,您可以在 Caching Proxy 配置檔中針對 CBR 來變更日誌目錄路徑。 現在您可以在儲存該日誌的 cbrserver 檔案中變更目錄路徑。請參閱變更日誌檔路徑

    使用 Site Selector 元件

    啟動及停止 Site Selector

    控制 Site Selector

    啟動 Site Selector 後,您可以藉下列其中一項方法來加以控制:

    使用 Site Selector 日誌

    Site Selector 所用的日誌與在 Dispatcher 中所使用的日誌類似。詳細說明,請參閱使用 Load Balancer 日誌


    使用 Cisco CSS Controller 元件

    啟動及停止 Cisco CSS Controller

    1. 在指令行鍵入 ccoserver 可啟動 Cisco CSS Controller。
    2. 在指令行鍵入 ccoserver stop 則可停止 Cisco CSS Controller。

    控制 Cisco CSS Controller

    啟動 Cisco CSS Controller 後,您可以藉下列其中一項方法來加以控制:

    使用 Cisco CSS Controller 日誌

    Cisco CSS Controller 所用的日誌與在 Dispatcher 中所使用的日誌類似。詳細說明,請參閱使用 Load Balancer 日誌


    使用 Nortel Alteon Controller 元件

    啟動及停止 Nortel Alteon Controller

    1. 在指令行鍵入 nalserver 可啟動 Nortel Alteon Controller。
    2. 在指令行鍵入 nalserver stop 則可停止 Nortel Alteon Controller。

    控制 Nortel Alteon Controller

    啟動 Nortel Alteon Controller 後,您可以藉下列其中一項方法來加以控制:

    使用 Nortel Alteon Controller 日誌

    Nortel Alteon Controller 所用的日誌與在 Dispatcher 中所使用的日誌類似。詳細說明,請參閱使用 Load Balancer 日誌


    使用 Metric Server 元件

    啟動及停止 Metric Server

    Metric Server 會提供伺服器負載資訊給 Load Balancer。 Metric Server 將常駐在進行平衡負載的每一個伺服器上。

    使用 Metric Server 日誌

    變更 Metric Server 啟動 script 中的日誌層次。 您可以指定 0 到 5 的日誌層次範圍,類似於 Load Balancer 日誌中的日誌層次範圍。 如此即會在 ...ms/logs 目錄中產生一代理程式日誌。


    疑難排解

    本章將協助您偵測及解決與 Load Balancer 有關的問題。


    收集疑難排解資訊

    請使用本節所列的資訊,來蒐集 IBM 服務所需的資料。 此資訊可區分為下列主體。

    一般資訊 (始終為必要的)

    若只有使用 Dispatcher 元件,系統內建有一個問題判定工具,它會自動蒐集作業系統的相關資料, 以及指定元件的配置檔。 若要執行此工具,請從適當的目錄鍵入 lbpd

    若是 Unix 型平台:/opt/ibm/edge/lb/servers/bin/

    若是 Windows 2000:C:\Program Files\IBM\edge\lb\servers\bin

    此種問題判定工具會將相關資料打包成下列檔案:

    若是 AIX、Linux、Solaris 平台:/opt/ibm/edge/lb/lbpmr.tar.Z

    若是 Windows 2000:C:\Program Files\IBM\edge\lb\lbpmr.zip

    註:
    您必須具有 Windows 版的指令行 zip 公用程式。

    在您電洽 IBM 服務之前,請先備妥下列資訊。

    高可用性 (HA) 問題

    針對高可用性環境下的問題,收集下列必要資訊。

    通告器問題

    針對通告器問題,收集下列必要資訊;例如,通告器誤將伺服器標示為當機。

    Content based routing 問題

    針對 Content Based Routing 的問題,收集下列必要資訊。

    無法找到叢集

    如果您無法找到叢集,可能是兩個 Load Balancer 機器皆未或皆已將叢集另取別名。 若要決定哪個方框擁有叢集:

    1. 在相同的子網路但不是在 Load Balancer 機器或伺服器上:
      ping cluster
      arp -a
      
    2. 查看 arp 輸出並比對 MAC (16 位數的十六進位位址) 與 netstat -ni 輸出之一,以決定哪個機器實際擁有該叢集。
    3. 使用下列指令解譯來自兩機器的輸出,以查明兩者是否擁有叢集位址。

      在 AIX 上:netstat -ni

      在 Linux 及 Solaris 上:ifconfig -a

      在 Windows 2000 上:ipconfig /all

    如果未自 ping 取得回應,可能兩個機器皆不具有已在其介面另訂別名的叢集 IP 位址;例如 en0、tr0 等。

    所有其它失敗

    如果您嘗試了各種方法仍無法解決遞送問題,請發出下列指令以便在網路資料傳輸上執行追蹤:

    您也可以增加不同的日誌層次 (例如,管理程式日誌、通告器日誌等),以及調查其輸出。

    升級版

    若要識別已修正過的問題,請查看升級版:

    1. 連到下列站台的 Ftp:
      ftp://ftp.software.ibm.com/ps/products/networkdispatcher/servicereleases
      
    2. 根據您的作業系統來選擇適當的檔案,確定取得的是最新版次的服務程式。
    3. 按一下所選擇的檔案以下載程式碼。

    Java

    如需升級 Load Balancer 的 Java 版本,請參閱 (JVER) 網頁。

    有用的鏈結

    如需支援、「技術註解」(提示及秘訣) 及書庫網頁的網站資訊,請參閱參考資訊


    疑難排解表

    請參閱下列各項:


    表 14. Dispatcher 疑難排解表

    問題 可能導致 跳至...
    Dispatcher 未正確執行 衝突的埠號 檢查 Dispatcher 埠號
    配置了並置伺服器,但它不會回應平衡負載要求 錯誤或衝突的位址 問題:Dispatcher 及伺服器沒有回應
    未服務來自從屬站機器的連線,或連線逾時
    • 遞送配置錯誤
    • NIC 未將別名建立為叢集位址
    • 伺服器未將迴圈裝置的別名建立為叢集位址
    • 未刪除額外的路徑
    • 未定義每個叢集的埠
    • 伺服器已關閉,或將加權設成零

    問題:未平衡 Dispatcher 要求
    從屬站機器未被伺服或已逾時 高可用性不運作 問題:Dispatcher 高可用性並未運作
    無法新增通訊檢查訊息 (Windows 2000) 配接卡上未配置來源位址 問題:無法新增通訊檢查訊息 (Windows 2000)
    伺服器未服務要求 (Window) 已在路由表中建立了一個額外的路由 問題:額外路由 (Windows 2000)
    通告器未能以廣域正確地運作 通告器未在遠端機器上執行 問題:通告器未正確地運作
    Dispatcher、Microsoft IIS 及 SSL 沒有運作,或將不會繼續 無法透過通訊協定來傳送加密資料。 問題:Dispatcher、Microsoft IIS 及 SSL 並未運作 (Windows 2000)
    遠端機器連線遭拒絕 舊版本的金鑰仍在使用中 問題:Dispatcher 與遠端機器的連線
    dscontrol 或 lbadmin 指令失敗,並出現「伺服器未回應」或「無法存取 RMI 伺服器」訊息
    1. 由於 socksified 堆疊,所以指令失敗。 或因並未啟動 dsserver 以致指令失敗
    2. 未正確設定 RMI 埠

    問題:dscontrol 或 lbadmin 指令失敗
    將 Netscape 當成預設瀏覽器執行,以檢視線上說明 (Windows 2000) 時,出現 『找不到檔案..." 錯誤訊息 HTML 檔案關聯的設定不正確 問題:嘗試檢視線上說明時出現「找不到檔案...」之錯誤訊息 (Windows 2000)
    在 Solaris 2.7 平台上啟動 dsserver 時,出現「stty: : 無此種裝置或位址」錯誤訊息 請勿理會此錯誤訊息。這並不是一個問題。dsserver 仍會正確執行 問題:在 Solaris 2.7 上啟動 dsserver 時出現疑似錯誤訊息
    圖形式使用者介面未正確啟動 分頁空間不足 問題:圖形式使用者介面 (GUI) 未正確啟動
    若已安裝 Caching Proxy 則執行 Dispatcher 時發生錯誤 Caching Proxy 檔案相依關係 問題:若已安裝 Caching Proxy 則執行 Dispatcher 時發生錯誤
    圖形式使用者介面未正確顯示。 解析度不正確。 問題:圖形式使用者介面 (GUI) 未正確顯示
    說明畫面有時會隱身在其它視窗之下 Java 限制 問題:在 Windows 2000 上,說明視窗有時會隱身在其它已開啟視窗的後面
    Load Balancer 無法處理及轉送框架 每一個 NIC 需要唯一的 MAC 位址 問題:Load Balancer 無法處理及轉送框架
    出現藍色螢幕 未安裝及配置網路卡 問題:啟動 Load Balancer 執行器時出現藍色螢幕
    「偵測」路徑會阻礙傳回資料傳輸 叢集已在迴圈上建立別名 問題:偵測路徑會阻礙傳回 Load Balancer 資料傳輸
    通告器顯示所有伺服器皆已當機 未正確計算 TCP 總和檢查 問題:通告器顯示所有伺服器皆已當機
    Load Balancer 的「廣域」模式下之高可用性無法運作。 遠端 Dispatcher 須定義為本端 Dispatcher上某一叢集中的伺服器 問題:Load Balancer 的廣域模式下之高可用性無法運作
    嘗試載入大型配置檔時 GUI 停止動作 (或出現異常行為)。 Java 無法存取足夠的記憶體,以處理如此大量的 GUI 變更 問題:嘗試載入大型配置檔時 GUI 停止動作 (或出現異常行為)
    在 Windows 上:偶爾出現藍色螢幕或 Load Balancer 通告器誤報 "-1" 的負載 使用 3Com 985B GB 乙太網路配接卡 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
    在 Solaris 各國家語言版本上,GUI 的「是」及「否」按鈕有可能呈現為英文 這是個已知問題,Sun Microsystems 正在設法加以處理 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
    更新配置後 Load Balancer administration (lbadmin) 便切斷伺服器的連線 lbadmin 或 dscontrol 的版本可能與 dsserver 的不同 問題:更新配置後 lbadmin 便切斷伺服器的連線
    IP 位址在遠端連線上並未正確解析 使用安全 sock 實作上的遠端從屬站時,完整的網域名稱或主電腦名稱可能不會解析成帶點十進位數的正確 IP 位址 問題:IP 位址在遠端連線上並未正確解析
    韓文 Load Balancer 介面在 AIX 及 Linux 上會顯示重疊或奇怪的字形 必須變更預設字型 問題:韓文 Load Balancer 介面在 AIX 及 Linux 上顯示重疊或奇怪的字形
    在 Windows 上,為 MS Loopback 配接卡建立別名後,當發出諸如 hostname 等特定指令時,OS 會以別名位址作出錯誤回應 在網路連線清單中,剛新增的別名不得列示於本端位址的上方 問題:在 Windows 上,發出 hostname 之類的指令時,傳回的是別名位址而非本端位址
    使用 Windows 2000 搭配 Matrox AGP 影像卡時 GUI 出現異常行為 在執行 Load Balancer GUI 時使用 Matrox AGP 影像卡發生問題 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
    在 Linux 執行 "rmmod ibmnd" 時,發生異常行為,如系統當機 以手動方式移除 Load Balancer 核心程式模組 (ibmnd) 時發生問題。 問題:執行 rmmod ibmnd 時發生異常行為 (Linux)
    在 Dispatcher 機器上執行指令時,回應時間變慢 回應時間變慢的原因可能是機器因為大量的從屬站資料傳輸而超載 問題:在 Dispatcher 機器上執行指令時,回應時間變慢
    對於 Dispatcher 的 MAC 轉送方法,SSL 或 HTTPS 通告器不登錄伺服器負載 因為未以叢集 IP 位址配置 SSL 伺服器應用程式,所以發生問題 問題:SSL 或 HTTPS 通告器未登錄伺服器負載 (使用 mac 轉送時)
    使用 lbwebaccess (Web 管理) 或 lbadmin 載入大型配置時發生問題 因為需要增加最大 Java 資料堆,所以可能發生問題 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
    透過 Netscape 使用遠端 Web 管理時,與主電腦中斷連線 調整瀏覽器視窗的大小時,與主電腦中斷連線 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
    已啟動 Socket 儲存區且 Web 伺服器連結到 0.0.0.0 將 Microsoft IIS 伺服器配置成連結專用的 問題:已啟動 Socket 儲存區且 Web 伺服器連結到 0.0.0.0
    在 Windows 2000 上,毀損的 Latin-1 國家字元會出現在命令提示中 命令提示視窗的變更字型內容 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型 編輯 Netscape 瀏覽器的喜好設定來放大字型大小 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    表 15. CBR 疑難排解表

    問題 可能導致 跳至...
    CBR 未正確執行 衝突的埠號 檢查 CBR 埠號
    cbrcontrol 或 lbadmin 指令失敗,並出現「伺服器未回應」或「無法存取 RMI 伺服器」訊息 由於 socksified 堆疊,所以指令失敗。 或因並未啟動 cbrserver 以致指令失敗 問題:cbrcontrol 或 lbadmin 指令失敗
    相關要求未經平衡負載 啟動執行器之前便已啟動 Caching Proxy 問題:相關要求未經平衡負載
    在 Solaris 上,cbrcontrol executor start 指令失敗並傳回「錯誤:執行器並未啟動。」訊息 因系統 IPC 預設值可能需要修改以致指令失敗 問題:在 Solaris 上,cbrcontrol executor start 指令失敗
    URL 規則未作用 語法或配置錯誤 問題:語法或配置錯誤
    在 Windows 上:偶爾出現藍色螢幕或 Load Balancer 通告器誤報 "-1" 的負載 使用 3Com 985B GB 乙太網路配接卡 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
    在 Solaris 各國家語言版本上,GUI 的「是」及「否」按鈕有可能呈現為英文 這是個已知問題,Sun Microsystems 正在設法加以處理 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
    使用 Windows 2000 搭配 Matrox AGP 影像卡時 GUI 出現異常行為 執行 Load Balancer GUI 時使用 Matrox AGP 影像卡發生問題 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
    使用 lbwebaccess (Web 管理) 或 lbadmin 載入大型配置時發生問題 因為需要增加最大 Java 資料堆,所以可能發生問題 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
    透過 Netscape 使用遠端 Web 管理時,與主電腦中斷連線 調整瀏覽器視窗的大小時,與主電腦中斷連線 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
    在 Windows 2000 上,毀損的 Latin-1 國家字元會出現在命令提示中 命令提示視窗的變更字型內容 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型 編輯 Netscape 瀏覽器的喜好設定來放大字型大小 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    表 16. Site Selector 疑難排解表

    問題 可能導致 跳至...
    Site Selector 未正確執行 衝突的埠號 檢查 Site Selector 埠號
    Site Selector 無法環繞來自 Solaris 從屬站的進入要求 Solaris 系統執行了「名稱服務快取常駐程式」 問題:Site Selector 無法環繞來自 Solaris 從屬站的資料傳輸
    sscontrol 或 lbadmin 指令失敗,並出現「伺服器未回應」或「無法存取 RMI 伺服」訊息 由於 socksified 堆疊,所以指令失敗。 或因並未啟動 ssserver 以致指令失敗。 問題:sscontrol 或 lbadmin 指令失敗
    ssserver 無法在 Windows 2000 上啟動 Windows 並不會要求主電腦名稱須在 DNS 中。 問題:ssserver 無法在 Windows 2000 上啟動
    具有重複路由的機器並未正確地平衡負載 - 名稱解析似乎失敗 具有多重配接卡的 Site Selector 機器連接到相同子網路 問題:具有重複路由的 Site Selector 並未正確地平衡負載
    在 Windows 上:偶爾出現藍色螢幕或 Load Balancer 通告器誤報 "-1" 的負載 使用 3Com 985B GB 乙太網路配接卡 問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載
    在 Solaris 各國家語言版本上,GUI 的「是」及「否」按鈕有可能呈現為英文 這是個已知問題,Sun Microsystems 正在設法加以處理 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
    使用 Windows 2000 搭配 Matrox AGP 影像卡時 GUI 出現異常行為 執行 Load Balancer GUI 時使用 Matrox AGP 影像卡發生問題 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
    使用 lbwebaccess (Web 管理) 或 lbadmin 載入大型配置時發生問題 因為需要增加最大 Java 資料堆,所以可能發生問題 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
    透過 Netscape 使用遠端 Web 管理時,與主電腦中斷連線 調整瀏覽器視窗的大小時,與主電腦中斷連線 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
    在 Windows 2000 上,毀損的 Latin-1 國家字元會出現在命令提示中 命令提示視窗的變更字型內容 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型 編輯 Netscape 瀏覽器的喜好設定來放大字型大小 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    表 17. Controller for Cisco CSS Switches 疑難排解表

    問題 可能導致 跳至...
    ccoserver 不啟動 衝突的埠號 檢查 Cisco CSS Controller 埠號
    ccocontrol 或 lbadmin 指令失敗,並出現「伺服器未回應」或「無法存取 RMI 伺服器」訊息 由於 socksified 堆疊,所以指令失敗。 或因並未啟動 ccoserver 以致指令失敗。 問題:ccocontrol 或 lbadmin 指令失敗
    接收錯誤:無法在埠 13099 上建立登錄 產品授權到期 問題:無法在埠 13099 上建立登錄
    在 Solaris 各國家語言版本上,GUI 的「是」及「否」按鈕有可能呈現為英文 這是個已知問題,Sun Microsystems 正在設法加以處理 問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現
    使用 Windows 2000 搭配 Matrox AGP 影像卡時 GUI 出現異常行為 執行 Load Balancer GUI 時使用 Matrox AGP 影像卡發生問題 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
    新增顧問時收到連線錯誤 交換器或控制器上的配置設定不正確 問題:新增顧問時收到連線錯誤
    未更新交換器上的加權值 控制器或交換器之間的通信無法使用或遭到岔斷 問題:未更新交換器上的加權值
    Refresh 指令並未更新顧問配置 控制器與交換器之間的通信無法使用或遭到岔斷 問題:Refresh 指令並未更新顧問配置
    使用 lbwebaccess (Web 管理) 或 lbadmin 載入大型配置時發生問題 因為需要增加最大 Java 資料堆,所以可能發生問題 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
    透過 Netscape 使用遠端 Web 管理時,與主電腦中斷連線 調整瀏覽器視窗的大小時,與主電腦中斷連線 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
    在 Windows 2000 上,毀損的 Latin-1 國家字元會出現在命令提示中 命令提示視窗的變更字型內容 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型 編輯 Netscape 瀏覽器的喜好設定來放大字型大小 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    表 18. Nortel Alteon Controller 疑難排解表

    問題 可能導致 跳至...
    nalserver 不啟動 衝突的埠號 檢查 Nortel Alteon Controller 埠號
    nalcontrol 或 lbadmin 指令失敗,並出現「伺服器未回應」或「無法存取 RMI 伺服器」訊息 由於 socksified 堆疊,所以指令失敗。 或因並未啟動 nalserver 以致指令失敗。 問題:nalcontrol 或 lbadmin 指令失敗
    接收錯誤:無法在埠 14099 上建立登錄 產品授權到期 問題:無法在埠 14099 上建立登錄
    使用 Windows 2000 搭配 Matrox AGP 影像卡時 GUI 出現異常行為 執行 Load Balancer GUI 時使用 Matrox AGP 影像卡發生問題 問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為
    使用 lbwebaccess (Web 管理) 或 lbadmin 載入大型配置時發生問題 因為需要增加最大 Java 資料堆,所以可能發生問題 問題:難以載入大型配置 (使用 lbadmin,Web 管理)
    透過 Netscape 使用遠端 Web 管理時,與主電腦中斷連線 調整瀏覽器視窗的大小時,與主電腦中斷連線 問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線
    新增顧問時收到連線錯誤 交換器或控制器上的配置設定不正確 問題:新增顧問時收到連線錯誤
    未更新交換器上的加權值 控制器或交換器之間的通信無法使用或遭到岔斷 問題:未更新交換器上的加權值
    Refresh 指令並未更新顧問配置 控制器與交換器之間的通信無法使用或遭到岔斷 問題:Refresh 指令並未更新顧問配置
    在 Windows 2000 上,毀損的 Latin-1 國家字元會出現在命令提示中 命令提示視窗的變更字型內容 問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中
    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型 編輯 Netscape 瀏覽器的喜好設定來放大字型大小 問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    表 19. Metric Server 疑難排解表

    問題 可能導致 跳至...
    在 Windows 2000 上執行 .bat 或 .cmd 使用者測量檔時,出現 Metric Server IOException 需要完整的測量單位名稱 問題:Metric Server在 Windows 2000 上執行 .bat 或 .cmd 使用者測量檔時,出現 IOException
    Metric Server 未向 Load Balancer 機器報告負載資訊 可能的原因包括:
    • Metric Server 機器上沒有金鑰檔案
    • Metric Server 機器的主電腦名稱未向本端 nameserver 登錄
    • /etc/hosts 檔案具有本端主電腦名稱解析的迴路位址 127.0.0.1
    問題:Metric Server 並未向 Load Balancer 機器報告負載
    當金鑰檔案轉送至伺服器時,Metric Server 日誌報告「需要簽名才能存取代理程式」 金鑰檔案已毀損以致授權失敗。 問題:Metric Server 日誌報告需要簽名才能存取代理程式
    在 AIX 上,在多重處理器系統 (4.3.3、32 位元 5.1 或 64 位元 5.1) 的高負荷情況下執行 Metric Server 時,ps -vg 指令輸出可能會毀損。 APAR IY33804 更正這個已知 AIX 問題 問題:在 AIX 上,在高負荷情況下執行 Metric Server 時,ps -vg 指令輸出可能會毀損。

    檢查 Dispatcher 埠號

    如果在執行 Dispatcher 時遇到問題,可能是您的其中一個應用程式正在使用 Dispatcher 一般使用的埠號。請注意,Dispatcher 伺服器將使用下列埠號:

    如果另一個應用程式正在使用其中一個 Dispatcher 埠號,您可以變更 Dispatcher 埠號 變更應用程式的埠號。

    請依下列指示執行來變更 Dispatcher 的埠號:

    請依下列指示執行來變更應用程式的 RMI 埠號:

    註:
    若為 Windows 2000,dsserver 及 metricserver 檔案位於 C:\winnt\system32 目錄下。 至於其它平台,這些檔案則位於 /usr/bin/ 目錄下。

    檢查 CBR 埠號

    如果執行 CBR 時會出現問題,可能是您的某一應用程式正在使用 CBR 通常使用的埠號。 請注意,CBR 會使用下列埠號:

    如果另一個應用程式正在使用 CBR 其中一個埠號,您可以變更 CBR 埠號 變更應用程式的埠號。

    請依下列指示執行來變更 CBR 的埠號:

    請依下列指示執行來變更應用程式的 RMI 埠號:

    註:
    若為 Windows 2000,cbrserver 及 metricserver 檔案位於 C:\winnt\system32 目錄下。 至於其它平台,這些檔案則位於 /usr/bin/ 目錄下。


    檢查 Site Selector 埠號

    如果在執行 Site Selector 元件時遇到問題,很可能是您的某一應用程式正在使用該 Site Selector 通常使用的埠號。 請注意,Site Selector 會使用下列埠號:

    如果另一個應用程式正在使用其中一個 Site Selector 埠號,您可以變更 Site Selector 埠號 變更應用程式的埠號。

    請依下列指示執行來變更 Site Selector 的埠號:

    請依下列指示執行來變更應用程式的 RMI 埠號:

    註:
    若為 Windows 2000,ssserver 及 metricserver 檔案位於 C:\winnt\system32 目錄下。 至於其它平台,這些檔案則位於 /usr/bin/ 目錄下。

    檢查 Cisco CSS Controller 埠號

    如果在執行 Cisco CSS Controller 元件時遇到問題,很可能是其它應用程式正在使用 Cisco CSS Controller 之 ccoserver 所用的某一埠號。 請注意,Cisco CSS Controller 會使用下列埠號:

    13099,用於接收來自 ccocontrol 的指令

    10004,用於傳送測量單位查詢至 Metric Server

    13199,用於 RMI 伺服器埠

    如果另一個應用程式正在使用其中一個 Cisco CSS Controller 埠號,您可以變更 Cisco CSS Controller 埠號 變更應用程式的埠號。

    請依下列指示執行來變更 Cisco CSS Controller 的埠號:

    請依下列指示執行來變更應用程式的 RMI 埠號:

    註:
    若為 Windows 2000,ccoserver 及 metricserver 檔案位於 C:\winnt\system32 目錄下。 至於其它平台,這些檔案則位於 /usr/bin 目錄下。

    檢查 Nortel Alteon Controller 埠號

    如果在執行 Nortel Alteon Controller 元件時遇到問題,很可能是其它應用程式正在使用 Nortel Alteon Controller 之 nalserver 所用的某一埠號。 請注意,Nortel Alteon Controller 會使用下列埠號:

    14099,用於接收來自 nalcontrol 的指令

    10004,用於傳送測量單位查詢至 Metric Server

    14199,用於 RMI 伺服器埠

    如果另一個應用程式正在使用其中一個 Nortel Alteon Controller 埠號,您可以變更 Nortel Alteon Controller 埠號 變更應用程式的埠號。

    請依下列指示執行來變更 Nortel Alteon Controller 的埠號:

    請依下列指示執行來變更應用程式的 RMI 埠號:

    註:
    若為 Windows 2000,nalserver 及 metricserver 檔案位於 C:\winnt\system32 目錄下。 至於其它平台,這些檔案則位於 /usr/bin 目錄下。

    解決常見的問題--Dispatcher

    問題:Dispatcher 沒有執行

    當另一個應用程式正在使用 Dispatcher 所使用的其中一個埠時, 可能會發生這個問題。詳細資訊,請參考檢查 Dispatcher 埠號

    問題:Dispatcher 及伺服器沒有回應

    當所指定的位址與正在使用的另一個位址不同時,就會發生這個問題。 在並置 Dispatcher 及伺服器時,請確定在配置中使用的伺服器位址是 NFA 位址,或已配置成並置。

    問題:未平衡 Dispatcher 要求

    當來自從屬站機器的連線未被伺服或發生逾時之時,將出現這個問題。 請檢查下列資訊, 診斷這個問題:

    1. 您已配置非轉送的位址、叢集、埠及伺服器來進行遞送了嗎?請檢查配置檔。
    2. 網路介面卡已設定為叢集位址的別名了嗎? 若是 Unix 型作業系統,使用 netstat -ni 來檢查。
    3. 每一台伺服器上的迴圈裝置使其別名設定為叢集位址了嗎? 若是 Unix 型作業系統,使用 netstat -ni 來檢查。
    4. 額外的路徑已刪除了嗎?若是 Unix 型作業系統,使用 netstat -nr 來檢查。
    5. 使用 dscontrol cluster status 指令來檢查您所定義之各個叢集的資訊。 請確定您對每一個叢集都有定義埠。
    6. 使用 dscontrol server report:: 指令來確定您的伺服器既未當機亦未將加權值設為零。

    若是 Windows 及其他平台,另請參閱設定伺服器機器以進行平衡負載

    問題:Dispatcher 高可用性並未運作

    當配置 Dispatcher 高可用性環境,且來自從屬站的連線未被伺服或已逾時的時候, 即會出現這個問題。請檢查下列,來更正或診斷問題:

    問題:無法新增通訊檢查訊息 (Windows 2000)

    配接卡上未配置來源端位址時,就會發生此 Windows 2000 錯誤。 請檢查下列,來更正或診斷問題。

    問題:額外路由 (Windows 2000)

    設定伺服器機器之後,您可能會發現不慎建立了一或多個額外的路徑。 如果您不移除這些額外路徑,則它們會妨礙 Dispatcher 運作。 請參閱設定伺服器機器以進行平衡負載,以取得檢查及刪除它們的資訊。

    問題:通告器未正確地運作

    如果您使用了廣域支援,並且您的通告器似乎未正確地運作, 請確定通告器是在本端及遠端 Dispatcher 上啟動。請參閱使用具有 Dispatcher 廣域支援的遠端通告器

    問題:Dispatcher、Microsoft IIS 及 SSL 並未運作 (Windows 2000)

    在使用 Dispatcher、Microsoft IIS 及 SSL 時,如果它們沒有一起運作, 可能會在啟動 SSL 安全性時發生問題。 有關如何產生金鑰組合、取得憑證、安裝具有金鑰組合的憑證、 以及配置目錄以取得 SSL 等作業的進一步資訊,請參閱 Microsoft Information and Peer Web Services Information and Planning Guide,此書是隨 Windows 2000 所附。 以 Web 瀏覽器檢視時,此文件的本端 URL 為: file:///C:/WINNT/system32/inetsrv/iisadmin/htmldocs/inetdocs.htm

    問題:Dispatcher 與遠端機器的連線

    Dispatcher 使用機碼以讓您連接機器,並配置它。 機碼可指定 RMI 埠來連線。基於安全性或衝突的理由,變更 RMI 埠是有可能的。 當您變更 RMI 埠時,機碼的檔案名稱是不同的。 如果同一遠端機器的機碼目錄有一個以上的機碼,而且它們所指定的 RMI 埠皆不同, 指令行就只會嘗試其所找到的第一個機碼。如果機碼不正確,連線就會被拒絕。 除非您刪除不正確的機碼,否則即無法連線。

    問題:dscontrol 或 lbadmin 指令失敗

    1. dscontrol 指令傳回:錯誤:伺服器未回應。或 lbadmin 指令傳回:錯誤:無法存取 RMI 伺服器。 機器具有 socks 化堆疊時,會產生上述錯誤。 若要更正此問題,請編輯 socks.cnf 檔案,使其含有下列數行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 介面 (指令行、圖形式使用者介面及精靈) 的管理主控台,是利用遠端方法呼叫 (RMI) 來與 dsserver 通信。 其預設通信會使用三個埠;每一個埠都是在 dsserver 啟動 script 中設定。

      當管理主控台之一在同一機器上作為防火牆或透過防火牆來執行時,這會導致問題發生。 例如,當 Load Balancer 在相同機器上作為防火牆,而您發出 dscontrol 指令時, 您會看到諸如錯誤:伺服器未回應之錯誤。

      要避免此問題,請編輯 dsserver script 檔以設定 RMI 對防火牆 (或其他應用程式) 所使用的埠。 將這一行:LB_RMISERVERPORT=10199 變更為 LB_RMISERVERPORT=yourPort。其中 yourPort 是不同埠。

      一旦完成後,請重新啟動 dsserver 並開啟埠 10099、10004、10199 及 10100 的資料傳輸, 或針對主電腦位址 (藉以執行管理主控台) 的選定埠開啟資料傳輸。

    3. 如果尚未啟動 dsserver,亦可能發生此類錯誤。

    問題:嘗試檢視線上說明時出現「找不到檔案...」之錯誤訊息 (Windows 2000)

    對 Windows 2000 而言,當使用 Netscape 作為預設瀏覽器時,此問題所導致的錯誤訊息是: 找不到檔案 '<filename>.html' (或其元件之一)。 請確定路徑及檔案名稱正確,且可使用所有需要的程式庫。"

    問題是因 HTML 檔案關聯的設定不正確所引起。 解決方案如下:

    1. 依序按一下我的電腦工具,並於選取資料夾選項之後,再按一下檔案類型標籤。
    2. 選取 Netscape Hypertext Document。
    3. 按一下進階按鈕,並選取 Open 後,再按一下編輯按鈕。
    4. 應用程式:欄位 (而非「用來執行動作的應用程式:」欄位) 中輸入 NSShell, 再按一下確定

    問題:在 Solaris 2.7 上啟動 dsserver 時出現疑似錯誤訊息

    在 Solaris 2.7 平台上啟動 dsserver 時,會出現下列疑似錯誤訊息:「stty: : 無此種裝置或位址」。 請勿理會此錯誤訊息。dsserver 仍會正確執行。

    問題:圖形式使用者介面 (GUI) 未正確啟動

    圖形式使用者介面 (GUI) lbadmin 需有足量的分頁空間才能正確運作。 若無足量的分頁空間,GUI 可能無法完全啟動。 發生此種情形時,請檢查您的分頁空間,並視需要加以調高。

    問題:若已安裝 Caching Proxy 則執行 Dispatcher 時發生錯誤

    如果您解除安裝 Load Balancer 以便重新安裝其它版本,但在您試圖啟動 Dispatcher 元件時卻出現錯誤, 請檢查 Caching Proxy 是否已安裝。 Caching Proxy 對 Dispatcher 檔案之一具有相依關係;此檔案唯有當 Caching Proxy 解除安裝後才可解除安裝。

    要避免此問題:

    1. 解除安裝 Caching Proxy。
    2. 解除安裝 Load Balancer。
    3. 重新安裝 Load Balancer 及 Caching Proxy。

    問題:圖形式使用者介面 (GUI) 未正確顯示

    如果 Load Balancer GUI 的外觀出現問題,請檢查作業系統的桌面解析度設定。 GUI 的最佳檢視解析度是 1024x768 圖點。

    問題:在 Windows 2000 上,說明視窗有時會隱身在其它已開啟視窗的後面

    當您首次在 Windows 2000 上開啟說明視窗時,它們有時會消失在背景中而隱藏在現有視窗後方。 出現此種情形時,按一下該視窗即可重新將其顯現在最上層。

    問題:Load Balancer 無法處理及轉送框架

    在 Solaris 上,每一個網路卡在預設的狀況下皆擁有相同的 MAC 位址。 若每一個配接卡是位在不同的 IP 子網路上,一切都可正確運作;不過,在交換式環境下, 當多個具有相同 MAC 與相同 IP 子網路位址的 NIC 與同一交換器進行通信時, 交換器會將單一 MAC (以及兩種 IP) 所連接之所有資料傳輸向下傳送同一線路。 唯有最後在此線路上放置框架的配接卡會看到兩種配接卡的 IP 封包界限。 Solaris 可能會捨棄某一送達「錯誤」介面之有效 IP 位址的封包。

    如果所有的網路介面並未如 ibmnd.conf 中所配置而指定給 Load Balancer,且未在 ibmnd.conf 中定義的 NIC 收到一框架時,Load Balancer 便無能力來處理及轉送此框架。

    要避免發生這種問題,您必須置換預設值,並為各個介面設定唯一的 MAC 位址。 請使用下列指令:

    ifconfig interface ether macAddr
    

    例如:

    ifconfig hme0 ether 01:02:03:04:05:06
    

    問題:啟動 Load Balancer 執行器時出現藍色螢幕

    在 Windows 2000 上,您必須先安裝並配置好網路卡,才可啟動執行器。

    問題:偵測路徑會阻礙傳回 Load Balancer 資料傳輸

    AIX 作業系統含有一種稱為路徑 MTU 偵測的網路功能參數。 與從屬站進行異動期間,如果作業系統判斷必須對送出的封包使用較小的最大傳輸單位 (MTU), 路徑 MTU 偵測便會要求 AIX 建立一路由以記下該資料。 此新的路由將用於該特定從屬站 IP,而且會記錄連繫該 IP 時所需的 MTU。

    當此路由建立時,於迴圈上建立別名的叢集可能會使伺服器發生問題。 如果路由的閘道位址落於叢集/網路遮罩的子網路中,AIX 會在迴圈上建立此路由。 之所以會如此,是因為它為透過該子網路來建立別名的最後介面。

    例如,如果叢集為 9.37.54.69 且使用了網路遮罩 255.255.255.0,而所要的閘道是 9.37.54.1,AIX 便會將迴圈用於路由。 而這會使得伺服器的回應永遠無法離開方框,而從屬站則保持逾時等待。 從屬站多半會看到一個來自叢集的回應,然後便產生路由而從屬站即不再收到任何東西。

    此問題有兩種解決方法。

    1. 停用路徑 MTU 偵測,使 AIX 不會動態新增路由。請使用下列指令。

      no -a
      列出 AIX 網路功能設定

      no -o option=value
      在 AIX 上設定 TCP 參數
    2. 為迴圈上具有 255.255.255.255 網路遮罩的叢集 IP 建立別名。也就是說,已取別名的子網路僅為叢集 IP。 當 AIX 建立動態路由時,目標閘道 IP 與子網路並不相符,因而會產生使用正確網路介面的路由。 然後刪除於建立別名步驟中所建立的新 lo0 路由。 要完成此動作,請在迴圈上尋找網路目的地為叢集 IP 的路由,並刪除該路由。 每當建立叢集的別名時即須執行此動作。

    註:

    1. 根據預設,AIX 4.3.2 以下的版本其路徑 MTU 偵測已停用;不過,在 AIX 4.3.3 以上的版本中,它在預設的狀況下是啟用的。

    2. 下列指令可關閉路徑 MTU 偵測,每當起動系統時便須加以執行。 將下列指令新增至 /etc/rc.net 檔案中。

    問題:通告器顯示所有伺服器皆已當機

    Windows 2000 有一項新的特性稱作「作業卸載」,它可讓配接卡 (而非作業系統) 來計算 TCP 總和檢查。 如此便能提升系統的效能。若已啟用「作業卸載」,Load Balancer 通告器會在伺服器未當機的情況下,報告其已當機。

    此問題是因為並未針對來自叢集位址的封包 (通告器資料傳輸者),正確計算 TCP 總和檢查。

    要避免此問題發生,請跳至配接卡設定,並停用「作業卸載」。

    此問題最早是出現在 Adaptec 的 ANA62044 四埠配接卡上。 此款配接卡將該特性稱為「傳輸總和檢查」卸載。 請停用「傳輸總和檢查」卸載以避免發生問題。

    問題:Load Balancer 的廣域模式下之高可用性無法運作

    設定廣域 Load Balancer 時,您必須將遠端 Dispatcher 定義為本端 Dispatcher 上某一叢集中的伺服器。 一般而言,您會使用遠端 Dispatcher 的非轉送位址 (NFA) 作為遠端伺服器的目的地位址。 如果您作了此動作,然後又在遠端 Dispatcher 上設定了高可用性,它將會失敗。 這是因為當您使用遠端之 NFA 來加以存取時,本端 Dispatcher 會固定指向遠端上的主要 Dispatcher。

    要克服此問題,請:

    1. 在遠端 Dispatcher 上定義一額外的叢集。其間不須定義此叢集的埠或伺服器。
    2. 將此叢集位址新增到您的 goActive 及 goStandy 等 script 中。
    3. 在您的本端 Dispatcher 上,將此叢集位址定義為伺服器,而非遠端主要 Dispatcher 的 NFA。

    當遠端主要 Dispatcher 開機時,它會在其配接卡上為此位址建立別名,使其可接受資料傳輸。 如果發生故障,此位址會移到備份機器,由備份機器繼續接受該位址的資料傳輸。

    問題:嘗試載入大型配置檔時 GUI 停止動作 (或出現異常行為)

    嘗試載入大型配置檔 (約含 200 個以上的 add 指令) 時,GUI 可能會停止動作或出現異常行為,例如以極慢的速率來回應螢幕變更。

    這是因為 Java 無法存取足夠的記憶體,以便處理如此大的配置。

    在執行環境中有一個選項,可以增加 Java 所能使用的記憶體配置儲存區。

    選項是 -Xmxn,其中 n 是記憶體配置儲存區的最大大小 (位元組)。n 必須是 1024 的倍數,且須大於 2MB。 n 值之後可接 k 或 K 以表示千位元組 ,或接 m 或 M 以表示百萬位元組。例如,-Xmx128M-Xmx81920k 都是有效的。 預設值是 64M。Solaris 8 具有最大值 4000M。

    例如,若要新增這個選項,請編輯 lbadmin script 檔, 將 "javaw" 改成 "javaw -Xmxn",如下所示。(若是 AIX,將 "java" 改成 "java -Xmxn"):

    n 並無任何建議值,但應該大於預設選項。 兩倍的預設值是個不錯的起點。

    問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載

    在 Windows 2000 上使用 3Com 985B GB 乙太網路配接卡時,下列問題可能會出現:

    要避免此類問題,請使用其它廠牌的 GB 乙太網路配接卡。

    問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現

    在 Solaris 各國家語言版本上,Load Balancer GUI 的「是」及「否」按鈕有可能呈現為英文。 這是個已知問題,Sun Microsystems 正在設法加以處理。

    問題:更新配置後 lbadmin 便切斷伺服器的連線

    如果 Load Balancer administration (lbadmin) 在您更新配置後便切斷伺服器的連線, 請檢查您嘗試配置之伺服器的 dsserver 版本,並確定它和 lbadmin 或 dscontrol 的版本相同。

    問題:IP 位址在遠端連線上並未正確解析

    透過安全 sock 實作來使用遠端從屬站時,完整的網域名稱或主電腦名稱可能不會解析成帶點十進位數的正確 IP 位址。 因為安全 sock 實作可能會在 DNS 解析作業中,新增特定的 sock 相關資料。

    如果 IP 位址在遠端連線上並未正確解析,我們建議您以帶點十進位數表示法格式來指定 IP 位址。

    問題:韓文 Load Balancer 介面在 AIX 及 Linux 上顯示重疊或奇怪的字形

    要更正韓文 Load Balancer 介面出現重疊或奇怪字形的情形:

    在 AIX 上

    1. 停止 AIX 系統上的所有 Java 程序。
    2. 在編輯程式中開啟 font.properties.ko 檔案。 此檔案位於 home/jre/lib 下,其中的 home 表示 Java 起始目錄。
    3. 搜尋下列字串:
      -Monotype-TimesNewRomanWT-medium-r-normal
      --*-%d-75-75-*-*-ksc5601.1987-0
      
    4. 將該字串的所有實例改成:
      -Monotype-SansMonoWT-medium-r-normal
      --*-%d-75-75-*-*-ksc5601.1987-0
      
    5. 儲存此檔案。

    在 Linux 上

    1. 停止 SuSE 系統上的所有 Java 程序。
    2. 在編輯程式中開啟 font.properties.ko 檔案。 此檔案位於 home/jre/lib 下,其中的 home 表示 Java 起始目錄。
    3. 搜尋下列字串 (不含空格):
      -monotype-
      timesnewromanwt-medium-r-normal--*-%d-75-75-p-*-microsoft-symbol
      
    4. 將該字串的所有實例改成:
      -monotype-sansmonowt-medium-r-normal--*-%d-75-75-p-*-microsoft-symbol
      
    5. 儲存此檔案。

    問題:在 Windows 上,發出 hostname 之類的指令時,傳回的是別名位址而非本端位址

    在 Windows 上,為 MS Loopback 配接卡建立別名後,當發出諸如 hostname 等特定指令時,OS 會作出錯誤反應以致提供別名位址而非本端位址。 要更正此一問題,網路連線清單中剛新增的別名須位於本端位址的下方。 如此可確保本端位址的存取順序在迴圈別名之前。

    若要檢查網路連線清單:

    1. 按一下開始 > 設定 > 網路及撥號連線
    2. 進階功能表選項,選取進階設定...
    3. 確定區域連線先出現在連線方框中
    4. 必要時,使用右側的排序按鈕上下移動清單中的各個項目

    問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為

    對 Windows 2000 而言,當使用 Matrox AGP 卡時,Load Balancer GUI 有可能出現異常行為。 若是按一下滑鼠,有一塊較滑鼠指標稍大的空間可能會呈毀損狀態, 致使高亮度顯示因而反轉,或影像移出螢幕。 舊版的 Matrox 影像卡不曾出現此行為。對於使用 Matrox AGP 卡者,目前尚無修正方法。

    問題:執行 rmmod ibmnd 時發生異常行為 (Linux)

    在 Linux,在以手動方式移除 Load Balancer 核心程式模組期間, 如果 dsserver 仍在執行,可能會發生異常行為,如系統當機或 javacores。 以手動方式移除 Load Balancer 核心程式模組時,首先您必須停止 dsserver。 如果 "dsserver stop" 沒有作用,請以 SRV_KNDConfigServer 停止 Java 程序。例如:

    ps-ef | grep SRV_KNDConfigServer
    

    在 Java 程序完成後,您可以安全地執行 "rmmod ibmnd" 指令,從核心程式移除 Load Balancer 模組。

    問題:在 Dispatcher 機器上執行指令時,回應時間變慢

    如果您將執行 Dispatcher 元件進行平衡負載,則從屬站資料傳輸可能會導致電腦超載。Load Balancer 核心程式模組具有最高優先順序,因此如果它持續處理從屬站封包, 系統的其餘部份可能會沒有回應。在使用者空間執行指令可能要很長時間才能完成, 或不可能完成。

    如果發生這種情況,您應該開始重組您的設定,以避免資料傳輸讓 Load Balancer 機器超載。選擇方案包括將負載散佈在數個 Load Balancer 機器上,或將機器換成功能更強及速度更快的電腦。

    當嘗試決定機器上回應時間變慢是否起因於高從屬站資料傳輸時, 請考慮在從屬站資料傳輸尖峰時間,是否發生這種情況。 導致遞送迴路的未配置系統也可能引起相同的症狀。 但是在變更 Load Balancer 設定之前,請決定症狀是否可能起因於高從屬站負載。

    問題:SSL 或 HTTPS 通告器未登錄伺服器負載 (使用 mac 轉送時)

    當使用 mac 型轉送方法時,Load Balancer 將使用已在迴圈上指定別名的叢集位址, 來傳送封包到伺服器。 部份伺服器應用程式 (如 SSL) 需要配置資訊 (如憑證) 依據 IP 位址。 IP 位址必須是迴圈上所配置的叢集位址,才能符合送入的封包的內容。 當配置伺服器應用程式時,如果未使用叢集的 IP 位址,則從屬站要求將無法正確地轉送到伺服器。

    問題:難以載入大型配置 (使用 lbadmin,Web 管理)

    當載入大型配置時,如果您遭遇使用 lbadmin 或遠端 Web 管理方面的問題, 您可能需要增加最大 Java 資料堆大小。在預設的狀況下,Java 將限制虛擬機器資料堆為 64 MB。 當用來管理非常大的配置時,部份 Load Balancer 配置程式 (lbadmin、lbwebaccess) 可能需要超過這個 64 MB 限制的數量。 為了能夠解決這個問題,最大 Java 資料堆大小可以增加到大於 64 MB 的值。 若要增加最大資料堆大小,請使用 "-Xmx" Java 選項。例如, 在 lbadmin script 中,將 "javaw" 改成 "javaw -Xmx256m",以便能夠將最大 Java 資料堆大小變更為 256 MB。如果您遭遇使用 Web 管理方面的問題,請按照所述來修改 lbwebaccess script。

    問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線

    如果您正在使用遠端 Web 管理來配置 Load Balancer, 請不要調整 Load Balancer GUI 出現所在的 Netscape 瀏覽器視窗的大小 (縮至最小、放至最大、 往下還原等)。因為每次調整瀏覽器視窗的大小,Netscape 就會重新載入頁面, 所以調整大小將導致與主電腦中斷連線。每次您調整視窗的大小,將需要重新連接主電腦。 如果您將在 Windows 平台上執行遠端 Web 管理,請使用 Internet Explorer。

    問題:已啟動 Socket 儲存區且 Web 伺服器連結到 0.0.0.0

    在 Windows 2000 後端伺服器上,執行 Microsoft IIS 伺服器版本 5 時, 您必須將 Microsoft IIS 伺服器配置成連結專用的。 不然,將依預設,啟動 socket 儲存區,而且 Web 伺服器會連結到 0.0.0.0 並監聽所有資料傳輸, 而不是連結到已配置成站台的多個身份的虛擬 IP 位址。當啟動 socket 儲存區時, 如果本端主電腦上的應用程式停止執行,則 AIX 或 Windows ND 伺服器都會偵測到這種情況;不過,當本端主電腦仍啟動時, 如果虛擬主電腦上的應用程式停止執行,通告器將偵測不到故障, 而且 Microsoft IIS 會繼續回應所有資料傳輸,包括已停止執行的應用程式的資料傳輸。

    若要判定是否啟動了 socket 儲存區及 Web 伺服器是否連結到 0.0.0.0,請發出下列指令:

     netstat -an
    

    如何將 Microsoft IIS 伺服器配置成連結專用的 (停用 socket 儲存區) 指示位於「微軟產品技術支援服務」網站。您也可以造訪這些 URL,以取得此資訊:

    IIS5: Hardware Load Balance Does Not Detect a Stopped Web Site (Q300509)
    http://support.microsoft.com/default.aspx?scid=kb;en-us;Q300509

    How to Disable Socket Pooling (Q238131)
    http://support.microsoft.com/default.aspx?scid=kb;en-us;Q238131

    註:
    僅 AIX 及 Windows 伺服器上的 Load Balancer 通告器才使用連結專用的通告器資料傳輸。Linux 及 Solaris 伺服器上的 Load Balancer 通告器將導向至本端主電腦位址; 因此,這個資訊不適用。

    問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中

    在 Windows 2000 作業系統的命令提示視窗中,有些 Latin-1 系列的國家字元可能會出現毀損。例如,含鼻音符號的字母 "a" 可能顯示為圓周率符號。若要修正這個問題,您必須變更命令提示視窗的字型內容。若要變更字型,請執行下列步驟:

    1. 按一下左上角命令提示視窗的圖示
    2. 選取內容,接著按一下字型標籤
    3. 預設字型為 Raster 字型;變更這個字型為 Lucida Console 然後按一下「確定」

    問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    在 Unix 型平台上使用 Netscape 瀏覽器, InfoCenter 中的線上說明文字顯示為小字型。 編輯 Netscape 瀏覽器的喜好設定來放大字型大小。


    解決常見問題--CBR

    問題:CBR 無法執行

    當另一個應用程式正在使用 CBR 所用的其中一個埠時,可能會發生這個問題。詳細資訊,請參考檢查 CBR 埠號

    問題:cbrcontrol 或 lbadmin 指令失敗

    1. cbrcontrol 指令傳回:錯誤:伺服器未回應。或 lbadmin 指令傳回:錯誤:無法存取 RMI 伺服器。 機器具有 socks 化堆疊時,會產生上述錯誤。 若要更正此問題,請編輯 socks.cnf 檔案,使其含有下列數行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 介面 (指令行、圖形式使用者介面及精靈) 的管理主控台,是利用遠端方法呼叫 (RMI) 來與 cbrserver 通信。 其預設通信會使用三個埠;每一個埠都是在 cbrserver 啟動 script 中設定。

      當管理主控台之一在同一機器上作為防火牆或透過防火牆來執行時,這會導致問題發生。 例如,當 Load Balancer 在相同機器上作為防火牆,而您發出 cbrcontrol 指令時, 您會看到諸如錯誤:伺服器未回應之錯誤。

      要避免此問題,請編輯 cbrserver script 檔以設定 RMI 對防火牆 (或其他應用程式) 所使用的埠。 將這一行:LB_RMISERVERPORT=11199 變更為 LB_RMISERVERPORT=yourPort。其中 yourPort 是不同埠。

      一旦完成後,請重新啟動 cbrserver 並開啟埠 11009、10004、11199 及 11100 的資料傳輸, 或針對主電腦位址 (藉以執行管理主控台) 的選定埠開啟資料傳輸。

    3. 如果尚未啟動 cbrserver,亦可能發生此類錯誤。

    問題:相關要求未經平衡負載

    Caching Proxy 及 CBR 皆已啟動,但相關要求並未進行平衡負載。 如果在啟動執行器之前先啟動了 Caching Proxy,便會發生此種錯誤。 發生此情形時,Caching Proxy 的 stderr 日誌將含有下列錯誤訊息:「ndServerInit:無法連接執行器」。 要避免此問題發生,請先啟動執行器後再啟動 Caching Proxy。

    問題:在 Solaris 上,cbrcontrol executor start 指令失敗

    在 Solaris 上,cbrcontrol executor start 指令傳回:「錯誤:執行器並未啟動」。 如果您並未針對系統來配置 IPC (跨處理通信),使共用記憶體區段及號誌 ID 的最大大小大於作業系統的預設值,便會發生此種錯誤。 要增加共用記憶體區段及號誌 ID 的大小,您必須編輯 /etc/system 檔案。 如需如何配置此檔案的詳細資訊,請參閱第 *** 頁。

    問題:語法或配置錯誤

    如果 URL 規則並未運作,即可能是語法或配置錯誤所致。若是此問題,請檢查下列項目:

    問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載

    在 Windows 2000 上使用 3Com 985B GB 乙太網路配接卡時,下列問題可能會出現:

    要避免此類問題,請使用其它廠牌的 GB 乙太網路配接卡。

    問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現

    在 Solaris 各國家語言版本上,Load Balancer GUI 的「是」及「否」按鈕有可能呈現為英文。 這是個已知問題,Sun Microsystems 正在設法加以處理。

    問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為

    對 Windows 2000 而言,當使用 Matrox AGP 卡時,Load Balancer GUI 有可能出現異常行為。 若是按一下滑鼠,有一塊較滑鼠指標稍大的空間可能會呈毀損狀態, 致使高亮度顯示因而反轉,或影像移出螢幕。 舊版的 Matrox 影像卡不曾出現此行為。對於使用 Matrox AGP 卡者,目前尚無修正方法。

    問題:難以載入大型配置 (使用 lbadmin,Web 管理)

    當載入大型配置時,如果您遭遇使用 lbadmin 或遠端 Web 管理方面的問題, 您可能需要增加最大 Java 資料堆大小。在預設的狀況下,Java 將限制虛擬機器資料堆為 64 MB。 當用來管理非常大的配置時,部份 Load Balancer 配置程式 (lbadmin、lbwebaccess) 可能需要超過這個 64 MB 限制的數量。 為了能夠解決這個問題,最大 Java 資料堆大小可以增加到大於 64 MB 的值。 若要增加最大資料堆大小,請使用 "-Xmx" Java 選項。例如, 在 lbadmin script 中,將 "javaw" 改成 "javaw -Xmx256m",以便能夠將最大 Java 資料堆大小變更為 256 MB。如果您遭遇使用 Web 管理方面的問題,請按照所述來修改 lbwebaccess script。

    問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線

    如果您正在使用遠端 Web 管理來配置 Load Balancer, 請不要調整 Load Balancer GUI 出現所在的 Netscape 瀏覽器視窗的大小 (縮至最小、放至最大、 往下還原等)。因為每次調整瀏覽器視窗的大小,Netscape 就會重新載入頁面, 所以調整大小將導致與主電腦中斷連線。每次您調整視窗的大小,將需要重新連接主電腦。 如果您將在 Windows 平台上執行遠端 Web 管理,請使用 Internet Explorer。

    問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中

    在 Windows 2000 作業系統的命令提示視窗中,有些 Latin-1 系列的國家字元可能會出現毀損。例如,含鼻音符號的字母 "a" 可能顯示為圓周率符號。若要修正這個問題,您必須變更命令提示視窗的字型內容。若要變更字型,請執行下列步驟:

    1. 按一下左上角命令提示視窗的圖示
    2. 選取內容,接著按一下字型標籤
    3. 預設值為 Raster 字型;變更這個字型為 Lucida Console 然後按一下「確定」

    問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    在 Unix 型平台上使用 Netscape 瀏覽器,InfoCenter 中的線上說明文字顯示為小字型。 編輯 Netscape 瀏覽器的喜好設定來放大字型大小。


    解決常見的問題--Site Selector

    問題:Site Selector 沒有執行

    當另一個應用程式正在使用 Site Selector 所用的其中一個埠時,可能會發生這個問題。詳細資訊,請參考檢查 Site Selector 埠號

    問題:Site Selector 無法環繞來自 Solaris 從屬站的資料傳輸

    症狀:Site Selector 元件無法環繞來自 Solaris 從屬站的進入要求。

    可能原因:Solaris 系統執行了名稱服務快取常駐程式。 如果此常駐程式正在執行,後續的解析要求皆會由此快取給予回答,而非查詢 Site Selector。

    解決方法:關閉 Solaris 機器上的名稱服務快取常駐程式。

    問題:sscontrol 或 lbadmin 指令失敗

    1. sscontrol 指令傳回:錯誤:伺服器未回應。或 lbadmin 指令傳回:錯誤:無法存取 RMI 伺服器。 機器具有 socks 化堆疊時,會產生上述錯誤。 若要更正此問題,請編輯 socks.cnf 檔案,使其含有下列數行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 介面 (指令行、圖形式使用者介面及精靈) 的管理主控台,是利用遠端方法呼叫 (RMI) 來與 ssserver 通信。 其預設通信會使用三個埠;每一個埠都是在 ssserver 啟動 script 中設定。

      當管理主控台之一在同一機器上作為防火牆或透過防火牆來執行時,這會導致問題發生。 例如,當 Load Balancer 在相同機器上作為防火牆,而您發出 sscontrol 指令時, 您會看到諸如錯誤:伺服器未回應之錯誤。

      要避免此問題,請編輯 ssserver script 檔以設定 RMI 對防火牆 (或其他應用程式) 所使用的埠。 將這一行:LB_RMISERVERPORT=10199 變更為 LB_RMISERVERPORT=yourPort。其中 yourPort 是不同埠。

      一旦完成後,請重新啟動 ssserver 並開啟埠 12099、10004、12199 及 12100 的資料傳輸, 或針對主電腦位址 (藉以執行管理主控台) 的選定埠開啟資料傳輸。

    3. 如果尚未啟動 ssserver,亦可能發生此類錯誤。

    問題:ssserver 無法在 Windows 2000 上啟動

    Site Selector 必須能參與 DNS。所有與配置有關的機器皆應該是此系統的一員。 Windows 並不會一直要求所配置的主電腦名稱須在 DNS 中。 Site Selector 則要求其主電腦名稱須在 DNS 中定義以便能正確啟動。

    請驗證此主電腦確已在 DNS 中定義。編輯 ssserver.cmd 檔並移除 javaw 中的 w。 這應該提供關於錯誤的詳細資訊。

    問題:具有重複路由的 Site Selector 並未正確地平衡負載

    Site Selector 的名稱伺服器並未連結到機器上的任何位址。 它將回應送往機器上任何有效 IP 的要求。 Site Selector 會依賴作業系統將回應遞送回從屬站。 如果 Site Selector 機器具有多重配接卡,而其中有任何數量的配接卡是連接到相同的子網路, O/S 即有可能把回應傳給與接收回應不同位址的從屬站。 但有些從屬站應用程式並不接受收發位址不同的回應。因此,名稱解析便會失敗。

    問題:在 Windows 上,出現藍色螢幕或通告器錯誤地報告 -1 的負載

    在 Windows 2000 上使用 3Com 985B GB 乙太網路配接卡時,下列問題可能會出現:

    要避免此類問題,請使用其它廠牌的 GB 乙太網路配接卡。

    問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現

    在 Solaris 各國家語言版本上,Load Balancer GUI 的「是」及「否」按鈕有可能呈現為英文。 這是個已知問題,Sun Microsystems 正在設法加以處理。

    問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為

    對 Windows 2000 而言,當使用 Matrox AGP 卡時,Load Balancer GUI 有可能出現異常行為。 若是按一下滑鼠,有一塊較滑鼠指標稍大的空間可能會呈毀損狀態, 致使高亮度顯示因而反轉,或影像移出螢幕。 舊版的 Matrox 影像卡不曾出現此行為。對於使用 Matrox AGP 卡者,目前尚無修正方法。

    問題:難以載入大型配置 (使用 lbadmin,Web 管理)

    當載入大型配置時,如果您遭遇使用 lbadmin 或遠端 Web 管理方面的問題, 您可能需要增加最大 Java 資料堆大小。在預設的狀況下,Java 將限制虛擬機器資料堆為 64 MB。 當用來管理非常大的配置時,部份 Load Balancer 配置程式 (lbadmin、lbwebaccess) 可能需要超過這個 64 MB 限制的數量。 為了能夠解決這個問題,最大 Java 資料堆大小可以增加到大於 64 MB 的值。 若要增加最大資料堆大小,請使用 "-Xmx" Java 選項。例如, 在 lbadmin script 中,將 "javaw" 改成 "javaw -Xmx256m",以便能夠將最大 Java 資料堆大小變更為 256 MB。如果您遭遇使用 Web 管理方面的問題,請按照所述來修改 lbwebaccess script。

    問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線

    如果您正在使用遠端 Web 管理來配置 Load Balancer, 請不要調整 Load Balancer GUI 出現所在的 Netscape 瀏覽器視窗的大小 (縮至最小、放至最大、 往下還原等)。因為每次調整瀏覽器視窗的大小,Netscape 就會重新載入頁面, 所以調整大小將導致與主電腦中斷連線。每次您調整視窗的大小,將需要重新連接主電腦。 如果您將在 Windows 平台上執行遠端 Web 管理,請使用 Internet Explorer。

    問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中

    在 Windows 2000 作業系統的命令提示視窗中,有些 Latin-1 系列的國家字元可能會出現毀損。例如,含鼻音符號的字母 "a" 可能顯示為圓周率符號。若要修正這個問題,您必須變更命令提示視窗的字型內容。若要變更字型,請執行下列步驟:

    1. 按一下左上角命令提示視窗的圖示
    2. 選取內容,接著按一下字型標籤
    3. 預設字型為 Raster 字型;變更這個字型為 Lucida Console 然後按一下「確定」

    問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    在 Unix 型平台上使用 Netscape 瀏覽器,InfoCenter 中的線上說明文字顯示為小字型。 編輯 Netscape 瀏覽器的喜好設定來放大字型大小。


    解決常見的問題--Cisco CSS Controller

    問題:ccoserver 無法啟動

    當另一個應用程式正在使用 Cisco CSS Controller 的 ccoserver 所用的其中一個埠時,即可能發生此問題。 進一步資訊,請參閱檢查 Cisco CSS Controller 埠號

    問題:ccocontrol 或 lbadmin 指令失敗

    1. ccocontrol 指令傳回:錯誤:伺服器未回應。或 lbadmin 指令傳回:錯誤:無法存取 RMI 伺服器。 機器具有 socks 化堆疊時,會產生上述錯誤。 若要更正此問題,請編輯 socks.cnf 檔案,使其含有下列數行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 介面 (指令行、圖形式使用者介面) 的管理主控台,是利用遠端方法呼叫 (RMI) 來與 ccoserver 通信。 其預設通信會使用三個埠;每一個埠都是在 ccoserver 啟動 script 中設定。

      當管理主控台之一在同一機器上作為防火牆或透過防火牆來執行時,這會導致問題發生。 例如,當 Load Balancer 在相同機器上作為防火牆,而您發出 ccocontrol 指令時, 您會看到諸如錯誤:伺服器未回應之錯誤。

      要避免此問題,請編輯 ccoserver script 檔以設定 RMI 對防火牆 (或其他應用程式) 所使用的埠。 將這一行:CCO_RMISERVERPORT=14199 變更為 CCO_RMISERVERPORT=yourPort。其中 yourPort 是不同埠。

      一旦完成後,請重新啟動 ccoserver 並開啟埠 13099、10004、13199 及 13100 的資料傳輸, 或針對主電腦位址 (藉以執行管理主控台) 的選定埠開啟資料傳輸。

    3. 如果尚未啟動 ccoserver,亦可能發生此類錯誤。

    問題:無法在埠 13099 上建立登錄

    缺少有效的產品授權時便可能會發生此問題。當您試圖啟動 ccoserver 時,會收到下列訊息:

    您的軟體授權已到期。 請連絡當地的 IBM 業務代表,或 IBM 授權的經銷商。
    

    若要更正此問題:

    1. 如果您已試圖啟動 nalserver,請鍵入 ccoserver stop
    2. 將您的有效的軟體授權複製到 ...ibm/edge/lb/servers/conf 目錄。
    3. 鍵入 ccoserver 以啟動伺服器。

    問題:在 Solaris NLV 上,「是」及「否」等按鈕以英文形式出現

    在 Solaris 各國家語言版本上,Load Balancer GUI 的「是」及「否」按鈕有可能呈現為英文。 這是個已知問題,Sun Microsystems 正在設法加以處理。

    問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為

    對 Windows 2000 而言,當使用 Matrox AGP 卡時,Load Balancer GUI 有可能出現異常行為。 若是按一下滑鼠,有一塊較滑鼠指標稍大的空間可能會呈毀損狀態, 致使高亮度顯示因而反轉,或影像移出螢幕。 舊版的 Matrox 影像卡不曾出現此行為。對於使用 Matrox AGP 卡者,目前尚無修正方法。

    問題:新增顧問時收到連線錯誤

    當新增顧問時,您可能遭遇連線錯誤,因為配置設定不正確。 若要修正這個問題:

    問題:未更新交換器上的加權值

    若要修正這個問題

    問題:Refresh 指令並未更新顧問配置

    增加顧問 loglevel,然後重試指令。如果再次失敗, 請搜尋日誌找出 SNMP 逾時,或其他 SNMP 通信錯誤。

    問題:難以載入大型配置 (使用 lbadmin,Web 管理)

    當載入大型配置時,如果您遭遇使用 lbadmin 或遠端 Web 管理方面的問題, 您可能需要增加最大 Java 資料堆大小。在預設的狀況下,Java 將限制虛擬機器資料堆為 64 MB。 當用來管理非常大的配置時,部份 Load Balancer 配置程式 (lbadmin、lbwebaccess) 可能需要超過這個 64 MB 限制的數量。 為了能夠解決這個問題,最大 Java 資料堆大小可以增加到大於 64 MB 的值。 若要增加最大資料堆大小,請使用 "-Xmx" Java 選項。例如, 在 lbadmin script 中,將 "javaw" 改成 "javaw -Xmx256m",以便能夠將最大 Java 資料堆大小變更為 256 MB。如果您遭遇使用 Web 管理方面的問題,請按照所述來修改 lbwebaccess script。

    問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線

    如果您正在使用遠端 Web 管理來配置 Load Balancer, 請不要調整 Load Balancer GUI 出現所在的 Netscape 瀏覽器視窗的大小 (縮至最小、放至最大、 往下還原等)。因為每次調整瀏覽器視窗的大小,Netscape 就會重新載入頁面, 所以調整大小將導致與主電腦中斷連線。每次您調整視窗的大小,將需要重新連接主電腦。 如果您將在 Windows 平台上執行遠端 Web 管理,請使用 Internet Explorer。

    問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中

    在 Windows 2000 作業系統的命令提示視窗中,有些 Latin-1 系列的國家字元可能會出現毀損。例如,含鼻音符號的字母 "a" 可能顯示為圓周率符號。若要修正這個問題,您必須變更命令提示視窗的字型內容。若要變更字型,請執行下列步驟:

    1. 按一下左上角命令提示視窗的圖示
    2. 選取內容,接著按一下字型標籤
    3. 預設字型為 Raster 字型;變更這個字型為 Lucida Console 然後按一下「確定」

    問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    在 Unix 型平台上使用 Netscape 瀏覽器,InfoCenter 中的線上說明文字顯示為小字型。 編輯 Netscape 瀏覽器的喜好設定來放大字型大小。


    解決常見的問題--Nortel Alteon Controller

    問題:nalserver 無法啟動

    當另一個應用程式正在使用 Nortel Alteon Controller 的 nalserver 所用的其中一個埠時, 即可能發生此問題。進一步資訊,請參閱檢查 Nortel Alteon Controller 埠號

    問題:nalcontrol 或 lbadmin 指令失敗

    1. nalcontrol 指令傳回:錯誤:伺服器未回應。或 lbadmin 指令傳回:錯誤:無法存取 RMI 伺服器。 機器具有 socks 化堆疊時,會產生上述錯誤。 若要更正此問題,請編輯 socks.cnf 檔案,使其含有下列數行:

      EXCLUDE-MODULE java
      EXCLUDE-MODULE javaw
      
    2. Load Balancer 介面 (指令行、圖形式使用者介面) 的管理主控台,是利用遠端方法呼叫 (RMI) 來與 nalserver 通信。 其預設通信會使用三個埠;每一個埠都是在 nalserver 啟動 script 中設定。

      當管理主控台之一在同一機器上作為防火牆或透過防火牆來執行時,這會導致問題發生。 例如,當 Load Balancer 在相同機器上作為防火牆,而您發出 nalcontrol 指令時, 您會看到諸如錯誤:伺服器未回應之錯誤。

      要避免此問題,請編輯 nalserver script 檔以設定 RMI 對防火牆 (或其他應用程式) 所使用的埠。 將這一行:NAL_RMISERVERPORT=14199 變更為 NAL_RMISERVERPORT=yourPort。其中 yourPort 是不同埠。

      一旦完成後,請重新啟動 nalserver 並開啟埠 14099、10004、14199 及 14100 的資料傳輸, 或針對主電腦位址 (藉以執行管理主控台) 的選定埠開啟資料傳輸。

    3. 如果尚未啟動 nalserver,亦可能發生此類錯誤。

    問題:無法在埠 14099 上建立登錄

    缺少有效的產品授權時便可能會發生此問題。當您試圖啟動 nalserver 時,會收到下列訊息:

    您的軟體授權已到期。 請連絡當地的 IBM 業務代表,或 IBM 授權的經銷商。
    

    若要更正此問題:

    1. 如果您已試圖啟動 nalserver,請鍵入 nalserver stop
    2. 將您的有效的軟體授權複製到 ...ibm/edge/lb/servers/conf 目錄。
    3. 鍵入 nalserver 以啟動伺服器。

    問題:在 Windows 2000 上,當使用 Matrox AGP 影像卡時 GUI 出現異常行為

    對 Windows 2000 而言,當使用 Matrox AGP 卡時,Load Balancer GUI 有可能出現異常行為。 若是按一下滑鼠,有一塊較滑鼠指標稍大的空間可能會呈毀損狀態, 致使高亮度顯示因而反轉,或影像移出螢幕。 舊版的 Matrox 影像卡不曾出現此行為。對於使用 Matrox AGP 卡者,目前尚無修正方法。

    問題:難以載入大型配置 (使用 lbadmin,Web 管理)

    當載入大型配置時,如果您遭遇使用 lbadmin 或遠端 Web 管理方面的問題, 您可能需要增加最大 Java 資料堆大小。在預設的狀況下,Java 將限制虛擬機器資料堆為 64 MB。 當用來管理非常大的配置時,部份 Load Balancer 配置程式 (lbadmin、lbwebaccess) 可能需要超過這個 64 MB 限制的數量。 為了能夠解決這個問題,最大 Java 資料堆大小可以增加到大於 64 MB 的值。 若要增加最大資料堆大小,請使用 "-Xmx" Java 選項。例如, 在 lbadmin script 中,將 "javaw" 改成 "javaw -Xmx256m",以便能夠將最大 Java 資料堆大小變更為 256 MB。如果您遭遇使用 Web 管理方面的問題,請按照所述來修改 lbwebaccess script。

    問題:使用 Web 管理來調整 Netscape 瀏覽器視窗的大小時,與主電腦中斷連線

    如果您正在使用遠端 Web 管理來配置 Load Balancer, 請不要調整 Load Balancer GUI 出現所在的 Netscape 瀏覽器視窗的大小 (縮至最小、放至最大、 往下還原等)。因為每次調整瀏覽器視窗的大小,Netscape 就會重新載入頁面, 所以調整大小將導致與主電腦中斷連線。每次您調整視窗的大小,將需要重新連接主電腦。 如果您將在 Windows 平台上執行遠端 Web 管理,請使用 Internet Explorer。

    問題:新增顧問時收到連線錯誤

    當新增顧問時,您可能遭遇連線錯誤,因為配置設定不正確。 若要修正這個問題:

    問題:未更新交換器上的加權值

    若要修正這個問題

    問題:Refresh 指令並未更新顧問配置

    增加顧問 loglevel,然後重試指令。如果再次失敗, 請搜尋日誌找出 SNMP 逾時,或其他 SNMP 通信錯誤。

    問題:在 Windows 上,毀損的 Latin-1 國家字元會出現在命令提示中

    在 Windows 2000 作業系統的命令提示視窗中,有些 Latin-1 系列的國家字元可能會出現毀損。例如,含鼻音符號的字母 "a" 可能顯示為圓周率符號。若要修正這個問題,您必須變更命令提示視窗的字型內容。若要變更字型,請執行下列步驟:

    1. 按一下左上角命令提示視窗的圖示
    2. 選取內容,接著按一下字型標籤
    3. 預設字型為 Raster 字型;變更這個字型為 Lucida Console 然後按一下「確定」

    問題:在使用 InfoCenter、Netscape 瀏覽器的 Unix 型平台上,線上說明文字顯示為小字型

    在 Unix 型平台上使用 Netscape 瀏覽器,InfoCenter 中的線上說明文字顯示為小字型。 編輯 Netscape 瀏覽器的喜好設定來放大字型大小。


    解決常見的問題 -- Metric Server

    問題:Metric Server在 Windows 2000 上執行 .bat 或 .cmd 使用者測量檔時,出現 IOException

    對於使用者在 Windows 2000 Metric Servers 上所撰寫的測量單位,您必須使用完整的測量單位名稱。 例如,您必須指定 usermetric.bat 而非 usermetric。 名稱 usermetric 雖在指令行上有效,但從執行環境下執行時將無法運作。 如果並未使用完整的測量單位名稱,您將會收到 Metric Server IOException。 請在 metricserver 指令檔中,將 LOG_LEVEL 變數的值設成 3,然後檢查日誌輸出。 在這個範例中,例外狀況出現為:

     ... java.io.IOException: CreateProcess: usermetric error=2
    

    問題:Metric Server 並未向 Load Balancer 機器報告負載

    Metric Server 未向 Load Balancer 報告負載資訊的原因不一而足。 要判斷其原因,請執行下列檢查:

    問題:Metric Server 日誌報告需要簽名才能存取代理程式

    Metric Server 日誌會在金鑰檔案轉送給伺服器後報告此錯誤訊息。

    當金鑰檔案因金鑰配對損毀以致授權失敗時,此錯誤便會記載至日誌中。 要更正此問題,請嘗試下列動作:

    問題:在 AIX 上,在高負荷情況下執行 Metric Server 時,ps -vg 指令輸出可能會毀損。

    在多重處理器 AIX 平台 (4.3.3、32 位元 5.1 或 64 位元 5.1) 的高負荷情況下執行 Metric Server 時,ps -vg 指令輸出可能會毀損。例如:

     55742 - A 88:19 42 18014398509449680  6396 32768 22 36 2.8 1.0 java -Xms
     
    

    ps 指令的 SIZE 和/或 RSS 欄位可能顯示記憶體使用過多的數量。

    這是已知的 AIX 核心程式問題。Apar IY33804 會更正這個已知問題。 請自位於 http://techsupport.services.ibm.com/server/fixes 的 AIX 支援取得得修正套件,或聯絡當地 AIX 支援代表。


    指令參照

    本篇提供所有 Load Balancer 元件的指令參考資訊。 它含有下列各章:


    如何閱讀語法圖

    語法圖將告訴您如何指定一個指令,以便作業系統能夠正確地解譯您所輸入的指令。 閱讀語法圖的順序是由左至右、從上到下,沿著平行線 (主要路徑)。


    符號及標點符號

    下列符號將在語法圖中使用:

    符號
    說明

    >>
    標示指令語法的開頭。

    ><
    標示指令語法的結尾。

    您必須包括所有標點符號,如在語法圖中所顯示的冒號、問號及負號。


    參數

    下列類型的參數將在語法圖中使用。

    參數
    說明
    必要參數
    必要參數將顯示在主要路徑上。
    選用性參數
    選用性的參數將顯示在主要路徑之下。

    參數分成關鍵字或變數。關鍵字是以小寫字體顯示,並可以用小寫字體輸入它們。 例如,指令名稱即是一個關鍵字。變數是以斜體表示,並代表您提供的名稱或值。


    語法範例

    在下列範例中,user 指令是一個關鍵字。必要變數為 user_id, 而選用性變數為 password。請以自己的值取代變數。

    >>-user--user_id--+----------+---------------------------------><
                      '-password-'
     
     
    

    必要關鍵字: 必要關鍵字及變數將出現在主要路徑行上。

    >>-required_keyword--------------------------------------------><
     
     
    

    您必須編寫必要的關鍵字及變數。

    從堆疊中選擇一個必要的項目: 如果將選擇的必要關鍵字或變數中, 有多個互斥,它們將按英數順序形成垂直堆疊。

    >>-+-required_parameter_1-+------------------------------------><
       '-required_parameter_2-'
     
     
    

    選用性的值: 選用性的關鍵字及變數會顯示在主要路徑行下。

    >>-+--------+--------------------------------------------------><
       '-關鍵字-'
     
     
    

    您可以選擇不編寫選用性的關鍵字及變數。

    從堆疊中選擇一個選用性的項目: 如果將選擇的選用性關鍵字或變數中, 有多個互斥,它們將在主要路徑行下,按英數順序形成垂直堆疊。

    >>-+-------------+---------------------------------------------><
       +-parameter_1-+
       '-parameter_2-'
     
     
    

    變數: 以斜體表示的字即是變數。 一旦在語法中看到一個變數,您必須以可容許的名稱或值 (在文字中定義的) 取代它。

    >>-variable----------------------------------------------------><
     
     
    

    非英數字元: 如果語法圖中顯示了非英數的字元 (如冒號、問號或負號), 則您必須將該字元編寫成語法的一部份。在這個範例中,您必須編寫 cluster:port

    >>-cluster:port------------------------------------------------><
     
     
    

    Dispatcher 及 CBR 的指令參照

    本附錄將說明如何使用 Dispatcher dscontrol 指令。 同時也是 CBR 的指令參照。 CBR 會使用 Dispatcher 指令的子集。 請參閱CBR 及 Dispatcher 的配置差異,以取得進一步資訊。

    註:

    1. 使用這些 CBR 的語法圖時,請用 cbrcontrol 取代 dscontrol

    2. 對先前的版本而言,當產品名稱為 Network Dispatcher 時,Dispatcher 控制指令的名稱原為 ndcontrol。 此 Dispatcher 控制指令的名稱目前已改成 dscontrol

    以下是本附錄中各項指令的清單:

    您可以輸入 dscontrol 指令參數的精簡版本。 只需要輸入參數的專用字母即可。例如,要取得存檔指令的說明,您可以鍵入 dscontrol he f 而非 dscontrol help file

    若要啟動指令行介面:請發出 dscontrol 以接收 dscontrol 指令提示。

    若要結束指令行介面:請發出 exitquit

    註:
    指令參數值必須以英文字元輸入。 唯一的例外是主電腦名稱 (用於 cluster、server 及 highavailability 等指令中) 及檔名 (用於 file 指令中)。

    CBR 及 Dispatcher 的配置差異

    CBR 指令行介面大部份都是 Dispatcher 指令行介面的子集。 若是 CBR,請改用 cbrcontrol 指令而非 dscontrol,以便配置此元件。

    CBR 中所省略的部份指令,列示如下。

    1. highavailability
    2. subagent
    3. executor
    4. cluster
    5. port
    6. rule add {c:p:r} type port
    7. server

    dscontrol advisor -- 控制通告器

    >>-dscontrol--advisor--+-connecttimeout--name--+-port---------+--timeoutseconds-+-><
                           |                       '-cluster:port-'                 |
                           +-interval--name--+-port---------+--seconds--------------+
                           |                 '-cluster:port-'                       |
                           +-list---------------------------------------------------+
                           +-loglevel--name--+-port---------+--level----------------+
                           |                 '-cluster:port-'                       |
                           +-logsize--name--+-port---------+--+-unlimited---------+-+
                           |                '-cluster:port-'  '-number of records-' |
                           +-receivetimeout--name--+-port---------+--timeoutseconds-+
                           |                       '-cluster:port-'                 |
                           +-report--name--+-port---------+-------------------------+
                           |               '-cluster:port-'                         |
                           +-重試--name--+-port---------+--numretries---------------+
                           |             '-cluster:port-'                           |
                           +-start--name--+-port---------+--+----------+------------+
                           |              '-cluster:port-'  '-log file-'            |
                           +-狀態--name--+-port---------+---------------------------+
                           |             '-cluster:port-'                           |
                           +-stop--name--+-port---------+---------------------------+
                           |             '-cluster:port-'                           |
                           +-timeout--name--+-port---------+--+-unlimited-+---------+
                           |                '-cluster:port-'  '-seconds---'         |
                           '-version--name--+-port---------+------------------------'
                                            '-cluster:port-'
     
     
    

    connecttimeout
    設定通告器在報告針對特定伺服器埠 (某一服務程式) 的伺服器連線失敗前,所需等候的時間長度。 進一步資訊,請參閱伺服器的通告器連結逾時及接收逾時
    name
    通告器名稱。可能的值包括 connectdb2dnsftphttphttpscachingproxyimapldapnntppingpop3selfsmtpsslssl2httptelnetwlm

    如需 Load Balancer 所提供之通告器的進一步資訊,請參閱通告器列示

    自行設定的通告器的名稱格式為 xxxx, 其中 ADV_xxxx 是執行自行設定通告器之類別的名稱。請參閱建立自行設定 (可自訂的) 通告器,以取得進一步資訊。

    port
    通告器監督的埠號。
    cluster:port
    cluster 值在通告器指令中屬選用性的,但 port 值則為必要。 如果未指定 cluster 值,通告器將在所有叢集的埠上開始執行。 如果指定了 cluster,通告器將在該埠上開始執行,但僅針對您所指定的叢集。 如需進一步資訊,請參閱啟動及停止通告器

    cluster 是採用帶點十進位數格式或代號名稱的位址。port 則是通告器所監督的埠號。

    timeoutseconds
    正整數,代表通告器在報告伺服器連線作業失敗前所等候的逾時秒數。 預設值是針對通告器間隔所指定之值的 3 倍。
    interval
    設定通告器隔多久查詢伺服器資訊。
    seconds
    一個正數,代表向伺服器要求現行狀態的間隔秒數。預設值是 7。
    list
    列出目前對管理程式提供資訊的所有通告器。
    loglevel
    設定通告器日誌的記載層次。
    level
    層次號碼 (0 到 5)。預設值是 1。號碼愈大,寫入通告器日誌的資訊愈多。 以下是可能的值:0 表示「無」、1 表示「最少」、2 表示「基本」、3 表示「中」、4 表示「進階」、5 表示「詳細」。
    logsize
    設定通告器日誌的最大大小。設定日誌檔最大大小,則檔案會折返。 檔案到達指定大小後,後續項目會從檔首開始改寫原來的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 記載層次愈高,愈要小心選擇日誌大小, 因為以較高層次記載時,很快就會將空間用盡。
    number of records
    通告器日誌檔的最大大小 (位元組)。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同, 所以日誌檔可能尚未到達真正的最大大小時,就開始改寫。預設值是 1 MB。
    receivetimeout
    設定通告器在報告針對特定伺服器埠 (某一服務程式) 的伺服器接收作業失敗前,所需等候的時間長度。 進一步資訊,請參閱伺服器的通告器連結逾時及接收逾時
    timeoutseconds
    正整數,代表通告器在報告伺服器接收作業失敗前所等候的逾時秒數。預設值是針對通告器間隔所指定之值的 3 倍。
    report
    顯示通告器的狀態報告。
    重試
    「重試」可設定在將伺服器標示為當機之前通告器能夠進行重試的次數。
    numretries
    一個大於或等於 0 的整數。建議這個值不要不大於 3。如果沒有配置重試關鍵字,則重試的次數預設值為 0。
    start
    啟動通告器。每一個通訊協定均有通告器。預設埠如下:


    通告器名稱 通訊協定
    cachingproxy HTTP (透過 Caching Proxy) 80
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    self private 12345
    smtp SMTP 25
    ssl SSL 443
    ssl2http SSL 443
    telnet Telnet 23
    WLM private 10,007

    註:
    FTP 通告器只應在 FTP 控制埠 (21) 上通告。請不要在 FTP 資料埠 (20) 上啟動 FTP 通告器。
    log file
    記錄管理資料所使用的檔案名稱。日誌中的每一筆記錄都有時間戳記。

    預設檔為 advisorname_port.log,例如,http_80.log。 如果您想變更日誌檔的保留目錄, 請參閱變更日誌檔路徑。 叢集 (或站台) 專用通告器的預設日誌檔都是以叢集位址來建立,如 http_127.40.50.1_80.log

    status
    顯示可以整體設定之通告器內所有值的現行狀態及預設值。
    stop
    停止通告器。
    timeout
    設定管理程式認定通告器資訊有效的秒數。 如果管理程式發現通告器資訊比逾時期間晚, 則管理程式不會根據此資訊來決定通告器監督埠上的伺服器之加權。 這項逾時有個例外,也就是當通告器通知管理程式某個特定伺服器當機時。 此時,即使通告器資訊逾時,管理程式仍會使用有關伺服器的資訊。
    seconds
    代表秒數的一個正數,或無限制。 預設值是 unlimited。
    version
    顯示通告器的現行版本。

    範例

    dscontrol binlog -- 控制二進位日誌檔


    >>-dscontrol--binlog--+-start----------------------+-----------><
                          +-stop-----------------------+
                          +-set--+-retention--hours--+-+
                          |      '-interval--seconds-' |
                          '-狀態-----------------------'
     
     
    

    start
    啟動二進位日誌。
    stop
    停止二進位日誌。
    set
    設定二進位記載的欄位。有關如何設定二進位日誌欄位的進一步資訊,請參閱使用二進位記載功能來分析伺服器統計值
    retention
    保留二進位日誌檔的時數。保留的預設值為 24。
    hours
    時數。
    interval
    每次登錄日誌的間隔秒數。間隔的預設值為 60。
    seconds
    秒數。
    status
    顯示二進位日誌的保留時數及間隔。

    dscontrol cluster -- 配置叢集


    >>-dscontrol--cluster--+-add--cluster+c2+...--+----------------------------------------+-+-><
                           |                      +-address--address-----------------------+ |
                           |                      +-proportions--active--new--port--system-+ |
                           |                      +-maxports--size-------------------------+ |
                           |                      +-maxservers--size-----------------------+ |
                           |                      +-stickytime--time-----------------------+ |
                           |                      +-weightbound--加權值--------------------+ |
                           |                      +-porttype--type-------------------------+ |
                           |                      +-primaryhost--address-------------------+ |
                           |                      +-staletimeout--staletimeout-------------+ |
                           |                      '-sharedbandwidth--size------------------' |
                           +-set--cluster+c2+...--+-proportions--active--new--port--system-+-+
                           |                      +-maxports--size-------------------------+ |
                           |                      +-maxservers--size-----------------------+ |
                           |                      +-stickytime--time-----------------------+ |
                           |                      +-weightbound--加權值--------------------+ |
                           |                      +-porttype--type-------------------------+ |
                           |                      +-primaryhost--address-------------------+ |
                           |                      +-staletimeout--staletimeout-------------+ |
                           |                      '-sharedbandwidth--size------------------' |
                           +-remove--cluster-------------------------------------------------+
                           +-report--cluster-------------------------------------------------+
                           '-狀態--cluster---------------------------------------------------'
     
     
    

    add
    新增這個叢集。您至少必需定義一個叢集。
    cluster
    從屬站所連接的叢集名稱或位址。叢集值是符號名稱或是帶點十進位格式。 叢集值 0.0.0.0 可以用來指定萬用字元叢集。請參閱使用萬用字元叢集來結合伺服器配置,以取得進一步資訊。

    除了 dscontrol cluster add 指令外,您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol cluster set : weightbound 80 會將 80 的加權範圍設定給所有叢集。

    註:
    其它叢集是以一個加號 (+) 為區隔。
    address
    TCP 機器的唯一 IP 位址,為主電腦名稱或為帶點十進位數格式。 若叢集值無法解析,您必須提供實體機器的此 IP 位址。
    註:
    Address 僅適用於 Dispatcher 元件。
    address
    此叢集的位址值。
    proportions
    在叢集層次,設定作用中連線數 (active)、新連線數 (new)、任何通告器資訊 (port), 以及管理程式設定伺服器加權時使用的任何系統監督程式 (例如,Metric Server) 的資訊 (system) 的重要性比例。 下面所描述的每個值都是以總數的百分比來表示,因此總數永遠是 100。進一步資訊,請參閱狀態資訊所給定的重要性比例
    active
    0-100 之間的一個數字,代表作用中連線的加權比例。預設值是 50。
    new
    0-100 之間的一個數字,代表新連線的加權比例。預設值是 50。
    port
    0-100 之間的一個數字,代表通告器資訊的加權比例。預設值是 0。

    註:
    當通告器已啟動且埠比例為 0 時,Load Balancer 會自動將此值設成 1, 以便讓管理程式可將通告器資訊作為輸入來計算伺服器加權。
    system
    0-100 之間的一個數字,代表擬給予系統測量單位資訊 (例如,Metric Server) 的加權比例。預設值是 0。
    maxports
    埠數的最大值。 maxports 的預設值為 8。
    size
    允許的埠數。
    maxservers
    每個埠的預設最大伺服器數目。可使用 port maxservers 來置換個別埠的這個值。maxserver 的預設值為 32。
    size
    埠可容許的伺服器數目。
    stickytime
    所要建立之埠的預設滯留時間。 可使用 port stickytime 來置換個別埠的這個值。 預設滯留時間 0。
    註:
    對 Dispatcher 的 cbr 轉送方法而言,當您設定了 stickytime (非零的值) 時, 如果埠是 SSL 埠 (不是 HTTP),就會啟動 port stickytime。 如果要建立之埠的 stickytime 不為零且新增的埠為 SSL,則將啟動此埠的 SSL ID 相關性。 若要停用該埠的 SSL ID 相關性,您必須明確地將該埠的 stickytime 設成 0。
    time
    stickytime 的值 (以秒計)。
    weightbound
    預設埠加權範圍。可使用 port weightbound 來置換個別埠的這個值。weightbound 的預設值為 20。
    weight
    weightbound 值。
    porttype
    預設埠類型。可使用 port porttype 來置換個別埠的這個值。

    註:
    Porttype 適用於 Dispatcher 元件。
    type
    可能的值有 tcpudp,以及 both
    primaryhost
    這台 Dispatcher 機器的 NFA 位址,或是備份 Dispatcher 機器的 NFA 位址。 在共同高可用性配置中,一個叢集會與主要或備份機器連結。

    一旦主要及備份機器已啟動並執行共同高可用性,如果您變更叢集的 primaryhost, 則您也須強迫新主要主電腦去接管。此外,您需要更新 script 並自行取消配置及正確地配置叢集。 相關資訊,請參閱共同高可用性

    address
    primaryhost 的位址值。預設值是這台機器的 NFA 位址。
    staletimeout
    連線停止活動多少秒後,立即移除連線。 FTP 的預設值為 900;Telnet 的預設值為 259,200。所有其它通訊協定的預設值為 300。可使用 port staletimeout 來置換個別埠的這個值。相關資訊,請參閱使用閒置逾時值
    staletimout
    staletimeout 值。
    sharedbandwidth
    可在叢集層次共用的最大頻寬量 (千位元組/每秒)。 有關共用頻寬的進一步資訊,請參閱使用基於保留頻寬及共用頻寬的規則共用頻寬規則

    註:
    共用頻寬適用於 Dispatcher 元件。
    size
    sharedbandwidth 的大小為整數值。預設值是零。 如果此值為 0,則頻寬無法在叢集層次共用。
    set
    請參閱叢集的內容。
    remove
    移除這個叢集。
    report
    顯示叢集的內部欄位。

    註:
    Report 適用於 Dispatcher 元件。
    status
    顯示特定叢集的現行狀態。

    範例

    dscontrol executor -- 控制執行器


    >>-dscontrol--executor--+-report-----------------------------------------------------------+-><
                            +-set--+-nfa--IP address------------+------------------------------+
                            |      +-maxclusters--size----------+                              |
                            |      +-maxports--size-------------+                              |
                            |      +-fincount--fincount---------+                              |
                            |      +-fintimeout--fintimeout-----+                              |
                            |      +-maxservers--size-----------+                              |
                            |      +-staletimeout--staletimeout-+                              |
                            |      +-stickytime--time-----------+                              |
                            |      +-clientgateway--address-----+                              |
                            |      +-weightbound--加權值--------+                              |
                            |      +-porttype--type-------------+                              |
                            |      +-wideportnumber--port-------+                              |
                            |      '-sharedbandwidth--size------'                              |
                            +-configure--interface_address+i2+...--+-------------------------+-+
                            |                                      '-interface_name--netmask-' |
                            +-unconfigure--interface_address-----------------------------------+
                            +-start------------------------------------------------------------+
                            +-狀態-------------------------------------------------------------+
                            '-stop-------------------------------------------------------------'
     
     
    

    report
    顯示統計值抽點報告。例如:已接收封包合計、已捨棄封包、轉送錯誤的封包等。

    註:
    Report 適用於 Dispatcher 元件。
    set
    設定執行器的欄位。
    nfa
    設定非轉送的位址。Dispatcher 機器不會轉送傳給這個位址的任何封包。

    註:
    NFA 適用於 Dispatcher 元件。
    IP address
    Internet 通訊協定位址是一個符號名稱或加點的小數格式。
    maxclusters
    可配置的叢集最大數。 最大叢集預設值 100。
    size
    可配置的叢集最大數。
    maxports
    所要建立之叢集的 maxport 預設值。 可藉由 cluster setcluster add 指令置換這個值。 maxports 的預設值為 8。
    size
    埠數。
    fincount
    在起始連線的垃圾收集作業之前,必須處於 FIN 狀態的連線數。 fincount 的預設值為 4000。
    fincount
    fincount 值。

    註:
    Fincount 適用於 Dispatcher 元件。
    fintimeout
    在連線變成 FIN 狀態之後,要將連線保留在記憶體中的秒數。 fintimeout 的預設值為 60。
    fintimeout
    fintimeout 值。

    註:
    Fintimeout 適用於 Dispatcher 元件。
    maxservers
    每一個埠的預設最大伺服器數目。可藉由 clusterport 指令置換這個值。 maxserver 的預設值為 32。
    size
    伺服器數目。
    staletimeout
    連線停止活動多少秒後,立即移除連線。 FTP 的預設值為 900;Telnet 的預設值為 259,200。所有其它埠的預設值為 300。可藉由 clusterport 指令置換這個值。 相關資訊,請參閱使用閒置逾時值
    staletimeout
    staletimeout 值。
    stickytime
    所有未來叢集的預設埠滯留時間值。 可藉由 clusterport 指令置換這個值。 滯留時間的預設值為 0。
    time
    stickytime 的值 (以秒計)。
    clientgateway
    Clientgateway 為 NAT/NAPT 或 Dispatcher 的根據內容遞送所用的 IP 位址。 返回方向的資料傳輸即可透過此路由器位址,從 Load Balancer 轉送至從屬站。 Clientgateway 須先設成非零的值,之後才可新增轉送方法為 NAT/NAPT 或 Dispatcher 的根據內容遞送的埠。 進一步資訊,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)Dispatcher 的根據內容遞送 (cbr 轉送方法)

    註:
    Clientgateway 僅適用於 Dispatcher 元件。
    address
    clientgateway 位址,為代號名稱或帶點十進位數格式。預設值是 0.0.0.0。
    weightbound
    所有未來埠的預設埠 weightbound 值。 可藉由 clusterport 指令置換這個值。 weightbound 的預設值為 20。
    weight
    weightbound 值。
    porttype
    所有未來埠的預設埠 porttype 值。可藉由 clusterport 指令置換這個值。

    註:
    Porttype 適用於 Dispatcher 元件。
    type
    可能的值有 tcpudp,以及 both
    wideportnumber
    每個 Dispatcher 機器上未使用的 TCP 埠。 所有 Dispatcher 機器的 wideport umber 都必須相同。 wideportnumber 的預設值是 0,表示廣域支援不在使用中。

    註:
    Wideportnumber 適用於 Dispatcher 元件。
    port
    wideportnumber 的值。
    sharedbandwidth
    可在執行器層次共用的最大頻寬量 (千位元組/每秒)。 有關共用頻寬的進一步資訊,請參閱使用基於保留頻寬及共用頻寬的規則共用頻寬規則

    註:
    共用頻寬適用於 Dispatcher 元件。
    size
    sharedbandwidth 的大小為整數值。預設值是零。 如果此值為 0,則頻寬無法在執行器層次共用。
    configure
    配置位址 (如叢集位址、返回位址或高可用性通訊檢查訊息位址) 給 Dispatcher 機器的網路介面卡。 又稱為在 Dispatcher 機器上配置別名。
    註:
    Configure 適用於 Dispatcher 元件。
    interface_address
    採用代號名稱或是帶點十進位數格式的一個位址。
    註:
    其它介面位址是以加號 (+) 來區隔。
    interface_name netmask
    如果位址不符合現存位址的任何子網路時才需要。 interface_name 的值可以是:en0、eth1、hme0 等。 netmask 則是一種 32 位元的遮罩,用來識別 IP 位址之主電腦部份中的子網路位址位元。
    unconfigure
    從網路介面卡中刪除別名位址。
    註:
    Unconfigure 適用於 Dispatcher 元件。
    start
    啟動執行器。
    status
    顯示可以設定之執行器內所有值的現行狀態及其預設值。
    停止
    停止執行器。 對 Dispatcher 而言,stop 並不是 Windows 2000 上的有效參數。
    註:
    Stop 適用於 Dispatcher 及 CBR。

    範例

    dscontrol file -- 管理配置檔


    >>-dscontrol--file--+-delete--file[.ext]----------+------------><
                        +-appendload--file[.ext]------+
                        +-report----------------------+
                        +-save--file[.ext]--+-------+-+
                        |                   '-force-' |
                        '-newload--file[.ext]---------'
     
     
    

    delete
    刪除檔案。
    file[.ext]
    由 dscontrol 指令所組成的配置檔。

    副檔名 (.ext) 可以隨您的需要自由設定,也可以省略。

    appendload
    若要更新現行配置,appendload 指令會從您的 Script 檔執行可執行指令。
    report
    報告一或多個可用的檔案。
    save
    將 Load Balancer 的現行配置存到檔案中。
    註:
    以下是用於儲存及載入檔案的目錄,其中的 component 可以是 dispatcher 或 cbr:
    • AIX、Linux、Solaris:/opt/ibm/edge/lb/servers/configurations/component
    • Windows 2000:c:\Program Files\ibm\edge\lb\servers\configurations\component
    force
    若要將您的檔案存成同名的現有檔案,可使用 force 來刪除現有檔案相同,之後再儲存新檔案。 如果未使用 force 選項,現有檔案即不會被覆寫。
    newload
    將新的配置檔載入到 Load Balancer 並加以執行。新的配置檔將取代現行配置。

    範例

    dscontrol help -- 顯示或列印這個指令的說明


    >>-dscontrol--help--+-advisor----------+-----------------------><
                        +-binlog-----------+
                        +-cluster----------+
                        +-executor---------+
                        +-file-------------+
                        +-help-------------+
                        +-highavailability-+
                        +-host-------------+
                        +-logstatus--------+
                        +-manager----------+
                        +-metric-----------+
                        +-port-------------+
                        +-rule-------------+
                        +-server-----------+
                        +-set--------------+
                        +-狀態-------------+
                        '-subagent---------'
     
     
    

    範例

    dscontrol highavailability -- 控制高可用性


    註:
    dscontrol 高可用性語法圖僅適用於 Dispatcher 元件。
    >>-dscontrol--highavailability--+-狀態----------------------------------------+-><
                                    +-backup--+-add--+-primary-+--+-auto---+--p-+-+
                                    |         |      +-backup--+  '-manual-'    | |
                                    |         |      '-both----'                | |
                                    |         '-delete--------------------------' |
                                    +-reach--+-add----+--address--mask------------+
                                    |        '-delete-'                           |
                                    +-heartbeat--+-add--srcaddress--dstaddress-+--+
                                    |            '-delete--address-------------'  |
                                    '-takeover--+---------+-----------------------'
                                                '-address-'
     
     
    

    status
    傳回高可用性報告。機器被識別為具備三個狀態條件或狀態的其中一個:

    Active
    給定的機器 (主要、備份或兩者) 正在遞送封包。

    Standby
    給定的機器 (主要、備份或兩者) 並未遞送封包,僅在監督使用中 Dispatcher 的狀態。

    Idle
    給定的機器正在遞送封包,且未聯絡它的友機 Dispatcher。

    另外,status 關鍵字會傳回各種子狀態的資訊:

    Synchronized
    給定的機器已聯絡另一個 Dispatcher。

    其它次狀態
    這個機器想聯絡它的友機 Dispatcher,但並未成功。
    backup
    指定主要或備份機器的資訊。
    add
    為此機器定義及執行高可用性功能。
    primary
    識別具有主要角色的 Dispatcher 機器。
    backup
    識別具有備份角色的 Dispatcher 機器。
    both
    識別同時具有主要及備份角色的 Dispatcher 機器。 這是共同高可用性,在此主要及備份是按照每一叢集組而連結。相關資訊,請參閱共同高可用性
    auto
    指定一個自動復原策略,供主要機器回到服務程式中時恢復遞送封包之用。
    manual
    指定一個手動復原策略, 供主要機器在管理者發出 takeover 指令之後恢復遞送封包之用。
    p[ort]
    二台機器未使用的 TCP 埠,供 Dispatcher 用於通訊檢查訊息。主要及備份機器上的必須相同。
    delete
    移除這台機器的高可用性,不再作為備份或主要機器。
    reach
    新增或刪除主要及備份 Dispatcher 的目標位址,連繫通告器會從備份及主要 Dispatcher 傳出 pings,以判斷目標的可連繫性。

    註:
    配置連繫目標時,您還必須啟動連繫通告器。管理程式功能會自動啟動連繫通告器。
    add
    新增連繫通告器的目標位址。
    delete
    移除連繫通告器的目標位址。
    address
    目標節點的 IP 位址 (帶點十進位或符號式位址)。
    mask
    子網路遮罩。
    heartbeat
    定義主要及備份 Dispatcher 機器之間的通信階段作業。
    add
    告知來源 Dispatcher 它的友機位址 (目的位址)。
    srcaddress
    來源位址。 此 Dispatcher 機器的位址 (IP 或符號)。
    dstaddress
    目的位址。其它 Dispatcher 機器的位址 (IP 或符號)。

    註:
    srcaddress 及 dstaddress 至少須是一個通訊檢查訊息配對之機器的 NFA。
    delete
    從通訊檢查訊息資訊中移除位址配對。您可以指定通訊檢查訊息配對的目的地端或來源端位址。
    address
    目的地端或來源端的位址 (IP 或符號式)。
    takeover
    簡單高可用性 (Dispatcher 機器的角色是主要備份):

    共同高可用性配置 (每一台 Dispatcher 機器的角色是兩者):

    註:

    1. 請注意,機器的角色 (主要備份兩者) 不會變更。 變更的只是它們的相對狀態 (使用中備用)。

    2. 有三種可能的 takeover:script: goActive、goStandby 及 goInOp。請參閱使用 script
    address
    takeover 位址值是選用性的。僅在機器的角色同時為主要及備份 (共同高可用性配置) 時,才應使用它。指定的位址是通常遞送叢集的資料傳輸的 Dispatcher 機器的 NFA。當這兩個叢集有一個 takeover 時,請指定 Dispatcher 自己的 NFA 位址。

    範例

    dscontrol host -- 配置遠端機器


    >>-dscontrol--host:--remote_host-------------------------------><
     
     
    

    remote_host
    所配置之遠端 Load Balancer 機器的名稱。當鍵入這個指令時,請確定 host:remote_host 之間沒有空格, 例如:

    dscontrol host:remote_host
    

    在指令提示上發出這個指令後,請輸入您想對遠端 Load Balancer 機器發出的任何有效 dscontrol 指令。

    dscontrol logstatus -- 顯示伺服器日誌設定


    >>-dscontrol--logstatus----------------------------------------><
     
     
    

    logstatus
    顯示伺服器日誌設定 (日誌檔名稱、記載層次及日誌大小)。

    範例

    若要顯示 logstatus:

    dscontrol logstatus
    

    這個指令所產生的輸出類似於:

    Dispatcher 日誌狀態:
    ------------------------------
    日誌檔名稱 ................. C:\PROGRA~1\IBM\edge\lb\servers\logs\dispatcher
    \server.log
    日誌層次 ................... 1
    最大日誌大小 (位元組) ...... 1048576
    

    dscontrol manager -- 控制管理程式

    >>-dscontrol--manager--+-interval--seconds----------------------+-><
                           +-loglevel--level------------------------+
                           +-logsize--+-unlimited-+-----------------+
                           |          '-bytes-----'                 |
                           +-metric set--+-loglevel--level--------+-+
                           |             '-logsize--+-unlimited-+-' |
                           |                        '-bytes-----'   |
                           +-quiesce--server--+-----+---------------+
                           |                  '-now-'               |
                           +-reach set--+-interval--seconds------+--+
                           |            +-loglevel--level--------+  |
                           |            '-logsize--+-unlimited-+-'  |
                           |                       '-bytes-----'    |
                           +-refresh--refresh cycle-----------------+
                           +-report--+----------------+-------------+
                           |         '-cluster+c2+...-'             |
                           +-restart--message-----------------------+
                           +-sensitivity--加權值--------------------+
                           +-smoothing--smoothing index-------------+
                           +-start--+-----------------------+-------+
                           |        '-log file--metric_port-'       |
                           +-狀態-----------------------------------+
                           +-stop-----------------------------------+
                           +-unquiesce--server----------------------+
                           '-version--------------------------------'
     
     
    

    interval
    設定管理程式更新伺服器的執行器加權的頻率,以更新執行器用於遞送從屬站要求的基準。
    seconds
    一個正值,代表管理程式隔多久更新執行器加權。預設值是 2。
    loglevel
    設定管理程式日誌的記載層次。
    level
    層次號碼 (0 到 5)。號碼愈大,寫給管理程式日誌的資訊愈多。預設值為 1。以下是可能的值:0 表示「無」、1 表示「最少」、2 表示「基本」、3 表示「中」、4 表示「進階」、5 表示「詳細」。
    logsize
    設定管理程式日誌的最大大小。設定日誌檔最大大小,則檔案會折返。 檔案到達指定大小後,後續項目會從檔首開始改寫原來的日誌項目。 日誌大小不能小於目前的日誌大小。從日誌項目的時間戳記可以看出寫入的先後順序。 記載層次愈高,愈要小心選擇日誌大小, 因為以較高層次記載時,很快就會將空間用盡。
    bytes
    管理程式日誌檔的最大大小 (位元組)。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同, 所以日誌檔可能尚未到達真正的最大大小時,就開始改寫。預設值是 1 MB。
    metric set
    設定測量單位監督程式日誌的 loglevellogsize。 loglevel 是測量單位監督程式的記載層次 (「0 - 無」、「1 - 最少」、「2 - 基本」、「3 - 中」、「4 - 進階」或「5 - 詳細」)。 預設的 loglevel 為 1。logsize 則是要記載到日誌檔中的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。預設的 logsize 是 1 MB。
    quiesce
    如果連線已指定為滯留且滯留時間未到期時,則指定除了從屬站對靜止伺服器的後續新連線外,不再傳送連線給伺服器。 管理程式在定義的各埠中設定該伺服器加權為 0。 如果您想快速地維護伺服器,然後將其取消靜止,請使用這個指令。 如果您從配置中刪除了已靜止伺服器,又將其新增回去,則不會保留其靜止前的狀態。 進一步資訊,請參閱靜止伺服器連線處理
    server
    伺服器 IP 位址是一個符號名稱或加點的小數格式。

    或者,如果您使用了伺服器分割區,請使用邏輯伺服器的唯一名稱。 請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器,以取得進一步資訊。

    now
    唯有當設定了滯留時間, 且想要將新連線於滯留時間到期之前傳送給另一個伺服器 (靜止伺服器以外者) 時,才可使用 quiesce "now"。 進一步資訊,請參閱靜止伺服器連線處理
    reach set
    設定連繫通告器的間隔、日誌層次及日誌大小。
    refresh
    設定隔多久向執行器查詢新連線及作用中連線的重新整理資訊。
    refresh cycle
    一個正數,代表間隔數。預設值是 2。
    report
    顯示統計值抽點報告。
    cluster
    您想要顯示在報表中的叢集的名稱。 位址可以是一個符號名稱或帶點的十進位數格式。預設值是顯示所有叢集的管理程式報表。

    註:
    其它叢集是以一個加號 (+) 為區隔。
    restart
    重新啟動所有伺服器 (沒有當機的) 成為正常加權 (最大加權的 1/2)。
    message
    您要寫入管理程式日誌檔中的訊息。
    sensitivity
    設定加權更新的最小感應。 這個設定會定義管理程式何時應該根據外部資訊來變更伺服器加權。
    weight
    1 到 100 之間的一個數字,作為加權百分比。預設值 5 會建立最小感應 5%。
    smoothing
    設定指數,減少平衡負載時的加權變化。 較高的平順指數將使伺服器加權的變更,不像網路狀況變更那麼大。較低的指數將使伺服器加權的變更非常大。
    index
    正浮點數字。預設值是 1.5。
    start
    啟動管理程式。
    log file
    記錄管理程式資料所使用的檔案名稱。 日誌中的每一個記錄都有時間戳記。

    預設檔將安裝在 logs 目錄中。請參閱附錄 C, 配置檔範例。如果您想變更日誌檔的保留目錄, 請參閱變更日誌檔路徑

    metric_port
    Metric Server 用來報告系統負載的埠。如果您指定測量埠,必須指定日誌檔名稱。預設測量埠為 10004。
    status
    顯示可以全域設定之管理程式內所有值的現行狀態及預設值。
    stop
    停止管理程式。
    unquiesce
    指定管理程式可以在定義的各埠中為原先靜止的伺服器設定大於 0 的加權。
    server
    伺服器 IP 位址是一個符號名稱或加點的小數格式。
    version
    顯示管理程式的現行版本。

    範例

    dscontrol metric -- 配置系統測量單位

    >>-dscontrol--metric--+-add--cluster+c2+...+cN:metric+metric1+...+metricN--------------+-><
                          +-remove--cluster+c2+...+cN:metric+metric1+...+metricN-----------+
                          +-proportions--cluster+c2+...+cN proportion1 prop2 prop3...propN-+
                          '-狀態--cluster+c2+...+cN:metric+metric1+...+metricN-------------'
     
     
    

    add
    新增指定的測量單位。
    cluster
    從屬站所連接的位址。此位址可以是機器的主電腦名稱,或帶點十進位數 IP 位址。 其它叢集是以一個加號 (+) 為區隔。
    metric
    系統測量單位名稱。其必須是測量單位伺服器之 script 目錄中某一可執行檔或 Script 檔的名稱。
    remove
    移除指定的測量單位。
    proportions
    設定此物件所有相關測量單位的比例。
    status
    顯示此測量單位的現行值。

    範例

    dscontrol port -- 配置埠

    >>-dscontrol--port--+-add--cluster:port--+----------------------+-+-><
                        |                    +-crossport--otherport-+ |
                        |                    +-maxservers--size-----+ |
                        |                    +-stickymask--value----+ |
                        |                    +-stickytime--time-----+ |
                        |                    +-method--type---------+ |
                        |                    +-staletimeout--value--+ |
                        |                    +-weightbound--加權值--+ |
                        |                    +-porttype--type-------+ |
                        |                    +-protocol--type-------+ |
                        |                    '-重設--value----------' |
                        +-set--cluster:port--+-crossport--otherport-+-+
                        |                    +-maxservers--size-----+ |
                        |                    +-stickymask--value----+ |
                        |                    +-stickytime--time-----+ |
                        |                    +-staletimeout--value--+ |
                        |                    +-weightbound--加權值--+ |
                        |                    +-porttype--type-------+ |
                        |                    +-maxhalfopen--value---+ |
                        |                    '-重設--value----------' |
                        +-remove--cluster:port------------------------+
                        +-report--cluster:port------------------------+
                        +-狀態--cluster:port--------------------------+
                        '-halfopenaddressreport--cluster:port---------'
     
     
    

    add
    為叢集新增一個埠。您必須先為叢集新增一個埠,才能為該埠新增伺服器。 如果叢集沒有埠,只能在本端環境中處理所有從屬站的要求。 使用這個指令時,一次可以新增多個埠。
    cluster
    叢集的位址是一個符號名稱,或是加點的小數格式。 您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol port add :80 會將埠 80 新增給所有叢集。

    註:
    其它叢集是以一個加號 (+) 為區隔。
    port
    埠的號碼。埠號值 0 (零) 可用來指定萬用字元埠。

    註:
    其它埠是以一個加號 (+) 為區隔。
    crossport
    Crossport 可讓您跨多個埠擴充滯留/相關性特性, 以便不同埠上收到的後續從屬站要求仍可傳送到同一伺服器。 若是 crossport 值,請指定 otherport 號碼, 表示您想要共用它的跨埠相關性特性。若要使用這個特性,則埠必須:

    若要移除 crossport 相關性,請將 crossport 值重設為它自己的埠號。 跨埠相關性特性的相關資訊,請參閱跨埠相關性

    註:
    Crossport 僅適用於 Dispatcher 元件的 MAC 及 NAT/NATP 轉送方法。
    otherport
    crossport 的值。預設值同於它自己的號。
    maxservers
    伺服器數的最大值。 maxserver 的預設值為 32。
    size
    maxservers 值。
    stickymask
    相關性位址遮罩特性會根據共用子網路位址, 將進入從屬站要求分組。

    當從屬站要求第一次建立埠的連線時, 來自具有相同子網路位址 (將建立遮罩的 IP 位址部份指定的位址) 的從屬站的所有後續要求將被引導到同一伺服器。 若要啟動 stickymask,埠的 stickytime 須為非零的值。相關資訊,請參閱相關性位址遮罩 (stickymask)

    註:
    stickymask 關鍵字僅適用於 Dispatcher 元件。
    value
    stickymask 值是您想要建立遮罩的 32 位元 IP 位址的高次序位元的號碼。 可能值如下:8, 16, 24 及 32。預設值是 32,表示將停用相關性位址遮罩特性。
    stickytime
    關閉連線到開啟新連線之間的間隔, 從屬站在這段期間會被傳回到第一次連線時所使用的伺服器。滯留時間後, 從屬站要求則被傳到其它的伺服器,而不是第一次連線時使用的伺服器。

    若是 Dispatcher 元件

    若是 CBR 元件:如果將埠的 stickytime 設成非零值,規則的相關性類型即必須為無 (預設值)。 已在埠上設定 stickytime 時,規則型相關性 (被動 cookie,URI,主動 cookie) 不得同時存在。

    time
    埠滯留時間 (以秒計)。0 表示埠不會滯留。
    method
    轉送方法。可能的轉送方法有:mac 轉送、nat 轉送或根據內容遞送 (cbr) 轉送。 除非先在 dscontrol executor 指令的 clientgateway 參數中指定非零值的 IP 位址,否則您不可新增 nat 或 cbr 轉送方法。 進一步資訊,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)Dispatcher 的根據內容遞送 (cbr 轉送方法)

    註:

    1. 方法僅適用於 Dispatcher 元件。

    2. 如果後端伺服器所在的子網路與傳回位址的相同,且您正在使用 cbr 轉送方法或 nat 轉送方法,則您必須將路由器位址定義為後端伺服器位址。

    3. 如果您新增 mac 轉送方法,您必須將 "protocol" 參數指定為 HTTP 或 SSL。
    type
    轉送方法類型。可能的值:mac、nat 或 cbr。預設值是 MAC 轉送。
    staletimeout
    連線停止活動多少秒後,立即移除連線。 對 Dispatcher 而言,埠 21 (FTP) 的預設值是 900 而埠 23 (Telnet) 的預設值是 259,200。所有其它 Dispatcher 埠和所有 CBR 埠的預設值為 300。 Staletimeout 亦可在執行器或叢集層次上來設定。相關資訊,請參閱使用閒置逾時值
    value
    staletimeout 值 (以秒計)。
    weightbound
    設定埠上的伺服器加權最大值。這會影響執行器將提供各伺服器之要求數之間的差異性。 預設值 20。
    weight
    1-100 之間的一個數字,代表加權界限。
    porttype
    埠的類型。

    註:
    Porttype 僅適用於 Dispatcher。
    type
    可能的值有 tcpudp,以及 both。預設值是 both (tcp/udp)。
    protocol
    通信協定類型。若是 Dispatcher 元件,則在埠上指定 "cbr" 方法時,這是必要的參數。 如果您選取埠通信協定類型 SSL,也應該指定非零的 stickytime 來啟動 SSL ID 相關性。 如果您選取 HTTP 通信協定,則可以使用「內容」規則來建立伺服器相關性。進一步資訊,請參閱Dispatcher 的根據內容遞送 (cbr 轉送方法)

    註:
    通信協定僅適用於 Dispatcher 的 cbr 轉送方法。
    type
    可能值是 HTTPSSL
    maxhalfopen
    最大半開啟連線數的臨界值。此參數可用來偵測因伺服器上出現大量半開啟 TCP 連線 所可能導致的拒絕服務攻擊。

    若為正數值,則表示將進行檢查以判斷現行半開啟連線是否超過臨界值。 如果現行值超過臨界值,即會呼叫警示 script。請參閱拒絕服務攻擊偵測,以取得進一步資訊。

    註:
    maxhalfopen 僅適用於 Dispatcher。
    value
    maxhalfopen 的值。預設值為零 (不執行任何檢查)。
    重設
    重設可讓您指定 Load Balancer 是否傳送 TCP 重設到當機伺服器的埠上。TCP 重設導致立即關閉連線。 請參閱傳送 TCP 重設到當機伺服器 (僅適用於 Dispatcher 元件),以取得進一步資訊。
    註:
    重設僅適用於 Dispatcher 元件。dscontrol executor指令上的 clientgateway必須設為路由器位址,以便使用重設關鍵字。
    value
    重設的可能值為 yes 和 no。預設值為 no (不對當機伺服器進行 TCP 重設)。當重設為 yes 時,則對當機伺服器進行 TCP 重設。
    set
    設定埠的欄位。
    remove
    移除這個埠。
    report
    關於這個埠的報告。
    status
    顯示埠上的伺服器狀態。如果您想察看所有埠的狀態, 請在指定這個指令時,不要加上 port。不過,請記得加上冒號。
    numSeconds
    經過此一時間量 (以秒計) 即重設半開啟連線。
    halfopenaddressreport
    針對已存取具有半開啟連線之伺服器的所有從屬站位址 (最多約 8000 個位址配對), 於其日誌 (halfOpen.log) 中產生項目。 另外,亦將統計資料回報給指令行,例如:半開啟連線數的合計、最大數目及平均值, 以及平均半開啟連線時間 (以秒計)。請參閱拒絕服務攻擊偵測,以取得進一步資訊。

    範例

    dscontrol rule -- 配置規則

    >>-dscontrol--rule--+-add--cluster:port:rule--type--type--| opts |-+-><
                        +-dropserver--cluster:port:rule--server--------+
                        +-remove--cluster:port:rule--------------------+
                        +-report--cluster:port:rule--------------------+
                        +-set--cluster:port:rule--| opts |-------------+
                        +-狀態--cluster:port:rule----------------------+
                        '-useserver--cluster:port:rule--server+s2+...--'
     
    opts
     
    |--+---------------------------------+--------------------------|
       +-beginrange--low--endrange--high-+
       +-priority--level-----------------+
       +-pattern--pattern----------------+
       +-tos--value----------------------+
       +-stickytime--time----------------+
       +-affinity--affinity_type---------+
       +-cookiename--value---------------+
       +-evaluate--level-----------------+
       '-sharelevel--level---------------'
     
     
    

    add
    將此規則新增到埠中。
    cluster
    叢集的位址是一個符號名稱,或是加點的小數格式。 您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol rule add :80:RuleA type type 會將 RuleA 新增給所有叢集的埠 80。

    註:
    其它叢集是以一個加號 (+) 為區隔。
    port
    埠的號碼。您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol rule add clusterA::RuleA type type 會將 RuleA 新增給 ClusterA 的所有埠。

    註:
    其它埠是以一個加號 (+) 為區隔。
    rule
    您對規則所選擇的名稱。此名稱可以包含任何英數字元、底線、破折號或句號。 它可以有 1 到 20 個字元,但不可以包含任何空格。

    註:
    其它規則是以一個加號 (+) 為區隔。
    type
    規則的類型。
    type
    類型的選項有:

    ip
    此規則是根據從屬站 IP 位址。

    time
    此規則是根據每日的時間。

    connection
    此規則是根據埠每秒的連線數。 此規則只有在管理程式執行時才會運作。

    active
    此規則是根據埠的作用中連線總數。 此規則只有在管理程式執行時才會運作。

    port
    此規則是根據從屬站埠。

    註:
    Port 適用於 Dispatcher 元件。

    service
    這個規則係根據 IP 標頭中的服務程式類型 (TOS) 位元組欄位而定。

    註:
    服務程式僅適用於 Dispatcher 元件。

    reservedbandwidth
    此規則是以某組伺服器所傳遞的頻寬 (每秒千位元組數) 為基礎。 進一步資訊,請參閱使用基於保留頻寬及共用頻寬的規則保留頻寬規則

    註:
    Reservedbandwidth 僅適用於 Dispatcher 元件。

    sharedbandwidth
    此規則是以執行器或叢集層次所共用的頻寬量 (每秒千位元組數) 為基礎。 進一步資訊,請參閱使用基於保留頻寬及共用頻寬的規則共用頻寬規則

    註:
    Sharedbandwidth 僅適用於 Dispatcher 元件。

    true
    此規則永遠有效。請將它視為設計程式邏輯中的例外陳述式。

    content
    此規則說明將要與從屬站所要求之 URL 互相比較的正規表示式。只有對 Dispatcher 及 CBR 才有效。
    beginrange
    用來判斷規則是否為真的範圍中的低值。
    low
    根據規則的類型而定。此處是依照規則的類型,列示值的種類及其預設值:

    ip
    從屬站位址是一個符號名稱或加點的小數格式。預設值是 0.0.0.0。

    time
    一個整數。預設值是 0,代表午夜。

    connection
    一個整數。預設值是 0。

    active
    一個整數。預設值是 0。

    port
    一個整數。預設值是 0。

    reservedbandwidth
    一個整數 (每秒千位元組)。預設值是 0。
    endrange
    用來判斷規則是否為真的範圍中的高值。
    high
    根據規則的類型而定。此處是依照規則的類型,列示值的種類及其預設值:

    ip
    從屬站位址是一個符號名稱或加點的小數格式。預設值是 255.255.255.254。

    time
    一個整數。預設值是 24,代表午夜。

    註:
    在您定義時間間隔的 beginrange 與 endrange 時, 請注意:每個值必須是僅代表時間小時數的整數;並不指定分秒。因此, 如果您想要指定單一小時--比方說 3:00 與 4:00 am 之間的一小時-- 則指定 beginrange 為 3,endrange 也指定為 3。這表示從 3:00 開始至 3:59 結束的全部分鐘。 如果指定 beginrange 為 3,並指定 endrange 為 4,則涵蓋從 3:00 至 4:59 的兩小時時段。

    connections
    一個整數。預設值是 2,上限為 2 的 32 次方減 1。

    active
    一個整數。預設值是 2,上限為 2 的 32 次方減 1。

    port
    一個整數。預設值是 65535。

    reservedbandwidth
    一個整數 (每秒千位元組)。預設值是 2,上限為 2 的 32 次方減 1。
    priority
    將要查閱規則的次序。
    level
    一個整數。如果您不指定所要新增的第一個規則的優先順序,Dispatcher 將會按照預設值,將它設定為 1。後續新增的規則在預設的狀況下, 優先順序計算方式為 10 + 目前任一規則最低的優先順序。例如, 假設您有一個現存的規則,其優先順序為 30。您新增一個新規則並將其優先順序設定為 25 (請記得,25 為優先順序高於 30)。 然後您新增第三個規則,卻沒有設定優先順序。第三個規則的優先順序計算所得為 40 (30 + 10)。
    pattern
    指定內容類型的型樣。
    pattern
    使用的型樣。如需有效值的進一步資訊,請參閱附錄 B, 內容規則 (型樣) 語法
    tos
    指定將對服務程式類型規則使用的「服務程式類型 (TOS)」值。

    註:
    TOS 僅適用於 Dispatcher 元件。
    value
    將對 tos 值使用的 8 個字元的字串,在此有效的字元是:0 (二進位 0)、 1 (二進位 1) 及 x (不理會)。 例如:0xx1010x。進一步資訊,請參閱依據服務程式類型 (TOS) 使用規則
    stickytime
    指定擬用於規則的 stickytime。於 rule 指令上將 affinity 參數設成 "activecookie" 時,stickytime 應設成非零值才可啟用此相關性類型。 規則上的 Stickytime 並不適用於 "passivecookie" 或 "uri" 相關性規則類型。

    請參閱主動 cookie 相關性,以取得進一步資訊。

    註:
    Rule stickytime 僅適用於 CBR 元件。
    time
    時間 (以秒計)
    affinity
    指定擬用於某一規則的相關性類型:主動 cookie、被動 cookie、URI 或「無」。

    相關性類型 "activecookie" 可根據 Load Balancer 所產生的 cookie,將具有相關性的 Web 資料傳輸平衡負載到相同的伺服器上。

    相關性類型 "passivecookie" 可根據伺服器所產生的自我識別 cookie,將具有相關性的 Web 資料傳輸平衡負載到相同的伺服器上。 您必須搭配被動 cookie 相關性來使用 cookiename 參數。

    相關性類型 "URI" 可用有效增加快取大小的方式,將 Web 資料傳輸平衡負載至 caching-proxy 伺服器。

    如需進一步資訊,請參閱主動 cookie 相關性被動 cookie 相關性URI 相關性

    註:
    相關性適用於配置有 Dispatcher 元件之 cbr 轉送方法的規則,以及 CBR 元件。
    affinity_type
    相關性類型的可能值有:none (預設值)、activecookie、passivecookie 或 uri。
    cookiename
    管理者所設定的任意名稱,作為 Load Balancer 的識別碼。 是 Load Balancer 應在從屬站 HTTP 表頭要求中尋找的名稱。 此 cookie 名稱加上 cookie 值是作為 Load Balancer 的識別碼,可使 Load Balancer 將網站的後續要求傳送至相同的伺服器機器。 Cookie 名稱僅適用 "被動 cookie" 相關性。

    請參閱被動 cookie 相關性,以取得進一步資訊。

    註:
    Cookie 名稱適用於配置有 Dispatcher 元件之 cbr 轉送方法的規則,以及 CBR 元件。
    value
    cookie 名稱值。
    evaluate
    只有 Dispatcher 元件才提供此選項。 指定是否針對該埠中的所有伺服器,或規則中的伺服器,來評估該規則的條件。 此選項僅對根據伺服器性質來進行決策的規則有效,例如:connection、active 及 reservedbandwidth 等規則。進一步資訊,請參閱規則的伺服器評估選項

    對於連線類型規則,您也可以指定一個評估選項 -- upserversonrule。 藉由指定 upserversonrule,您可以確定如果伺服器集中有部份伺服器已關閉,規則內剩餘的伺服器將不會超載。

    level
    可能值是 port、rule 或 upserversonrule。預設值是 port。 僅連線類型規則可以使用 upserversonrule。
    sharelevel
    此參數僅適用於共用頻寬規則。請在叢集層次或執行器層次,指定是否共用頻寬。 叢集層次上的共用頻寬可讓埠在相同叢集內,跨數個埠共用最大頻寬量。 執行器層次上的共用頻寬可讓整個 Dispatcher 配置內的叢集,共用最大頻寬量。 進一步資訊,請參閱共用頻寬規則
    level
    可能的值有 executor 或 cluster。
    dropserver
    從規則設定中移除伺服器。
    server
    TCP 伺服器機器的 IP 位址,為一個符號式名稱,或是帶點十進位數格 式。

    或者,如果您使用了伺服器分割區,請使用邏輯伺服器的唯一名稱。 請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器,以取得進一步資訊。

    註:
    其它伺服器是以一個加號 (+) 為區隔。
    remove
    移除一或多個規則,各規則以加號區隔。
    report
    顯示一或多個規則的內部值。
    set
    設定此規則的值。
    status
    顯示一或多個規則的可設定值。
    useserver
    將伺服器插入規則設定中。

    範例

    dscontrol server -- 配置伺服器

    >>-dscontrol--server--+-add--cluster:port:server--+-------------------------+-+-><
                          |                           +-address--address--------+ |
                          |                           +-collocated--value-------+ |
                          |                           +-sticky--value-----------+ |
                          |                           +-加權值--value-----------+ |
                          |                           +-fixedweight--value------+ |
                          |                           +-cookievalue--value------+ |
                          |                           +-mapport--portvalue------+ |
                          |                           +-router--addr------------+ |
                          |                           +-returnaddress--addr-----+ |
                          |                           +-advisorrequest--string--+ |
                          |                           '-advisorresponse--string-' |
                          +-set--cluster:port:server--+-collocated--value-------+-+
                          |                           +-sticky--value-----------+ |
                          |                           +-加權值--value-----------+ |
                          |                           +-fixedweight--value------+ |
                          |                           +-cookievalue--value------+ |
                          |                           +-router--addr------------+ |
                          |                           +-advisorrequest--string--+ |
                          |                           '-advisorresponse--string-' |
                          +-down--cluster:port:server-----------------------------+
                          +-remove--cluster:port:server---------------------------+
                          +-report--cluster:port:server---------------------------+
                          +-up--cluster:port:server-------------------------------+
                          '-狀態--cluster:port:server-----------------------------'
     
     
    

    add
    新增這個伺服器。
    cluster
    叢集的位址是一個符號名稱,或是加點的小數格式。 您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol server add :80:ServerA 會將 ServerA 新增給所有叢集的埠 80。

    註:
    其它叢集是以一個加號 (+) 為區隔。
    port
    埠的號碼。您可以用冒號 (:) 來作為萬用字元。 例如,指令 dscontrol server add ::ServerA 會將 ServerA 新增給所有埠的所有叢集。

    註:
    其它埠是以一個加號 (+) 為區隔。
    server
    server 是 TCP 伺服器機器唯一的 IP 位址,可為代號名稱或是帶點十進位數格式。

    或者,若您使用一個未解析成 IP 位址的唯一名稱,您必須在 dscontrol server add 指令中提供 server address 參數。請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器,以取得進一步資訊。

    註:
    其它伺服器是以一個加號 (+) 為區隔。
    address
    TCP 伺服器機器唯一的 IP 位址,為主電腦名稱或帶點十進位格式。若伺服器無法解析,您必須提供實體伺服器機器的位址。 請參閱伺服器分割:配置成實體伺服器 (IP 位址) 的邏輯伺服器,以取得進一步資訊。
    address
    伺服器的位址值。
    collocated
    Collocated 可讓您指定 Dispatcher 是否要安裝在其中一個正在平衡負載的伺服器機器上。 collocated 選項不適用於 Windows 2000 平台。

    註:
    使用 Dispatcher 的 mac 或 nat 轉送方法時,Collocated 參數才有效。 Site Selector 及 Cisco Consultant 可並列於所有平台上,但不需此關鍵字。 進一步資訊,請參閱使用並列伺服器
    value
    collocated 的值:yes 或 no。預設值是 no。
    sticky
    容許伺服器置換它的埠上的滯留時間設定。 透過預設值 yes,伺服器將保留埠中定義的正常相關性。 透過值 no,下次從屬站在該埠上發出一個要求時, 則不管埠的 stickytime 設定為何,這個從屬站要求不會再被傳送到該伺服器。 當您使用規則時,於某些情況下,這是有用的。相關資訊,請參閱埠相關性置換
    value
    sticky 的值:yes 或 no。預設值是 yes。
    weight
    0-100 的數字 (不超過指定埠的加權範圍值),代表此伺服器的加權。 加權設定為零時,可以防止新要求傳給伺服器,但無法結束伺服器的作用中連線。 預設值是指定埠的最大加權值的一半。如果管理程式正在執行, 則很快地改寫此設定值。
    value
    伺服器加權的值。
    fixedweight
    fixedweight 選項可讓您指定是否想要管理程式修改伺服器加權。 如果您將 fixedweight 值設定為 yes,則在管理程式執行時,將不容許它修改伺服器加權。 進一步資訊,請參閱管理程式固定加權
    value
    fixedweight 的值:yes 或 no。預設值是 no。
    cookievalue
    Cookievalue 是一任意值,表示伺服器端的 cookie 名稱/cookie 值配對。 此 cookie 值加上 cookie 名稱可作為識別碼,可使 Load Balancer 將後續的從屬站要求傳送至相同的伺服器。 請參閱被動 cookie 相關性,以取得進一步資訊。
    註:
    Cookievalue 對 Dispatcher (使用 cbr 轉送方法) 及 CBR 有效。
    value
    Value 為任意值。預設為沒有 cookie 值。
    mapport
    將從屬站要求的目的地埠號 (用於 Dispatcher),對映至 Dispatcher 平衡負載此從屬站要求時所用的伺服器埠號。 讓 Load Balancer 可在某埠上接收從屬站要求,並將之傳輸到伺服器機器不同的埠上。 透過 mapport,您即可將從屬站要求平衡負載至正執行多個伺服器常駐程式的伺服器。

    註:
    Mapport 適用於 Dispatcher (使用 nat 或 cbr 轉送方法) 及 CBR。 若是 Dispatcher,請參閱Dispatcher 的 NAT/NAPT (nat 轉送方法)Dispatcher 的根據內容遞送 (cbr 轉送方法)。若是 CBR,請參閱平衡負載 SSL 中的 client-to-proxy 及 HTTP 中的 proxy-to-serve
    portvalue
    對映埠號的值。預設值是從屬站要求的目的地埠號。
    router
    如果您正在設定廣域網路,即為遠端伺服器之路由器的位址。 預設值是 0,代表本端伺服器。 請注意:一旦伺服器的路由器位址設定不是 0 (表示遠端伺服器), 便無法將它重設為 0,來使該伺服器再次成為本端伺服器。 替代方式是,必須移除該伺服器,然後再新增它,不需指定路由器位址。 相同地,已定義為本端 (路由器位址 = 0) 的伺服器, 也不能藉由變更路由器位址來使伺服器成為遠端伺服器。 必須移除該伺服器,然後再新增它。 請參閱配置廣域 Dispatcher 支援,以取得進一步資訊。
    註:
    Router 僅適用於 Dispatcher。 如果您是使用 nat 或 cbr 轉送方法,當您新增伺服器給配置時,必須指定路由器位址。
    addr
    路由器位址的值。
    returnaddress
    唯一的 IP 位址或主電腦名稱。它配置於 Dispatcher 機器上,當平衡負載從屬站對伺服器的要求時, Dispatcher 會用它來當作來源端位址。 如此可確保伺服器會將封包傳回給傳 Dispatcher 機器,以便處理要求的內容,而不是直接傳送封包至從屬站。 (Dispatcher 會接著將 IP 封包轉送給從屬站)。 當新增了伺服器後,您必須指定傳回位址值。 除非您移除了伺服器並再次加以新增,否則不可變更傳回位址。 傳回位址不得相同於叢集、伺服器或 NFA 位址。

    註:
    Returnaddress 僅適用於 Dispatcher。 如果您是使用 nat 或 cbr 轉送方法,當您新增伺服器給配置時,必須指定 returnaddress。
    addr
    返回位址的值。
    advisorrequest
    HTTP 通告器會使用通告器要求字串來查詢伺服器的狀況。 它僅對 HTTP 通告器所通告的伺服器有效。 您必須啟動 HTTP 通告器,才可讓此值生效。 請參閱使用要求/回應 (URL) 選項,配置 HTTP 通告器,以取得進一步資訊。
    註:
    Advisorrequest 適用於 Dispatcher 及 CBR 元件。
    string
    HTTP 通告器所用的字串值。預設值為 HEAD/HTTP/1.0
    註:
    如果此字串中含有空白 -
    • dscontrol>> shell 提示發出此指令時,您必須在字串前後加上雙引號。 例如:server set cluster:port:server advisorrequest "head / http/2.0"
    • 從作業系統提示發出 dscontrol 指令時,您必須在文字前加上 "\",文字後則加上 \""。 例如:dscontrol server set cluster:port:server advisorrequest "\"head / http/2.0\""

    advisorresponse
    HTTP 通告器在 HTTP 回應中所掃描的通告器回應字串。 它僅對 HTTP 通告器所通告的伺服器有效。 您必須啟動 HTTP 通告器,才可讓此值生效。 請參閱使用要求/回應 (URL) 選項,配置 HTTP 通告器,以取得進一步資訊。
    註:
    Advisorresponse 適用於 Dispatcher 及 CBR 元件。
    string
    HTTP 通告器所用的字串值。預設值是 null。

    註:
    如果此字串中含有空白 -
    • dscontrol>> shell 提示發出此指令時,您必須在字串前後加上雙引號。
    • 從作業系統提示發出 dscontrol 指令時,您必須在文字前加上 "\",文字後則加上 \""
    down
    伺服器中斷連線。這個指令會切斷伺服器的所有作用中連線,防止其它連線或封包傳給伺服器。
    remove
    移除這個伺服器。
    report
    報告此伺服器。報告中包含每一伺服器的下列資訊: 現行每秒連線數 (CPS)、一秒間隔所傳送的千位元組數 (KBPS)、連線總數 (Total)、 作用中狀態下的連線數 (Active)、FIN 狀態下的連線數 (FINed) 及完成連線數 (Comp)。
    set
    設定伺服器的值。
    status
    顯示伺服器的狀態。
    up
    伺服器開始連線。Dispatcher 會立即將新連線傳給該伺服器。

    範例

    dscontrol set -- 配置伺服器日誌

    >>-dscontrol--set--+-loglevel--level--------+------------------><
                       '-logsize--+-unlimited-+-'
                                  '-size------'
     
     
    

    loglevel
    dsserver 記載活動的層次。
    level
    loglevel 的預設值為 0。範圍為 0-5。 以下是可能的值:0 表示「無」、1 表示「最少」、2 表示「基本」、3 表示「中」、4 表示「進階」、5 表示「詳細」。
    logsize
    日誌檔記載的最大位元組數。
    size
    logsize 的預設值是 1 MB。

    dscontrol status -- 顯示管理程式及通告器是否正在執行

    >>-dscontrol--狀態---------------------------------------------><
     
     
    

    範例

    dscontrol subagent -- 配置 SNMP 子代理程式

    註:
    dscontrol subagent 指令語法圖適用於 Dispatcher 元件。
    >>-dscontrol--subagent--+-loglevel--level--------------------+-><
                            +-logsize--+-bytes-----+-------------+
                            |          '-unlimited-'             |
                            +-report-----------------------------+
                            +-start--+-------------------------+-+
                            |        '-community_name--logfile-' |
                            +-狀態-------------------------------+
                            +-stop-------------------------------+
                            '-version----------------------------'
     
     
    

    loglevel
    子代理程式記載其活動到檔案的層次。
    level
    層次號碼 (0 到 5)。號碼愈大,寫給管理程式日誌的資訊愈多。預設值為 1。以下是可能的值:0 表示「無」、1 表示「最少」、2 表示「基本」、3 表示「中」、4 表示「進階」、5 表示「詳細」。
    logsize
    設定子代理程式日誌中所要記載之最大大小 (位元組數)。 預設值為 1 MB。設定日誌檔最大大小,則檔案會折返。 檔案到達指定大小後,後續項目會從檔首開始改寫原來的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目具有時間戳記, 所以您可以看出寫入的先後次序。記載層次愈高,愈要小心選擇日誌大小, 因為以較高層次記載時,很快就會將空間用盡。
    bytes
    子代理程式日誌檔的最大大小 (位元組)。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同, 所以日誌檔可能尚未到達真正的最大大小時,就開始改寫。預設值是 unlimited。
    report
    顯示統計值抽點報告。
    start
    啟動子代理程式。
    community_name
    您可以當做安全性通行碼使用的團體名稱的 SNMP 值的名稱。預設值是 public。

    若是 Windows 2000:將使用作業系統的團體名稱。

    log file
    記錄 SNMP 子代理程式資料所使用的檔案名稱。 日誌中的每一個記錄都有時間戳記。預設值是 subagent.log。 預設檔將安裝在 logs 目錄中。請參閱附錄 C, 配置檔範例。如果您想變更日誌檔的保留目錄, 請參閱變更日誌檔路徑
    status
    顯示可以全域設定之 SNMP 子代理程式內所有值的現行狀態及預設值。
    version
    顯示子代理程式的現行版本。

    範例


    Site Selector 指令參照

    本附錄將說明如何使用下列 Site Selector sscontrol 指令:

    您可以輸入 sscontrol 指令參數的精簡版本。 只需要輸入參數的專用字母即可。例如,若要取得有關存檔指令的說明,您可以鍵入 sscontrol he f 而非 sscontrol help file

    註:
    指令參數值須以英文字元輸入。 唯一的例外是主電腦名稱 (用於 cluster 及 server 等指令中) 及檔名 (用於 file 指令中)。

    sscontrol advisor -- 控制通告器


    >>-sscontrol--advisor--+-connecttimeout--name--+-port----------+--seconds-------+-><
                           |                       '-sitename:port-'                |
                           +-interval--name--+-port----------+--seconds-------------+
                           |                 '-sitename:port-'                      |
                           +-list---------------------------------------------------+
                           +-loglevel--name--+-port----------+--level---------------+
                           |                 '-sitename:port-'                      |
                           +-logsize--name--+-port----------+--+-size | unlimited-+-+
                           |                '-sitename:port-'  '-bytes------------' |
                           +-receivetimeout--name--+-port----------+--seconds-------+
                           |                       '-sitename:port-'                |
                           +-report--name--+-port----------+------------------------+
                           |               '-sitename:port-'                        |
                           +-重試--name--+-port----------+--numretries--------------+
                           |             '-sitename:port-'                          |
                           +-start--name--+-port----------+--+----------+-----------+
                           |              '-sitename:port-'  '-log file-'           |
                           +-status--name--+-port----------+------------------------+
                           |               '-sitename:port-'                        |
                           +-stop--name--+-port----------+--------------------------+
                           |             '-sitename:port-'                          |
                           +-timeout--name--+-port----------+-----------------------+
                           |                '-sitename:port-'                       |
                           '-version--name--+-port----------+--seconds--------------'
                                            '-sitename:port-'
     
     
    

    connecttimeout
    設定通告器在報告伺服器連線失敗前,所需等候的時間長度。進一步資訊,請參閱伺服器的通告器連結逾時及接收逾時
    name
    通告器名稱。可能的值包括 httphttpsftpsslsmtpimappop3ldapnntptelnetconnectpingWLMWTE。自行設定的通告器的名稱格式為 xxxx, 其中 ADV_xxxx 是執行自行設定通告器之類別的名稱。
    port
    通告器監督的埠號。
    seconds
    正整數,代表通告器在報告伺服器連線失敗前所等候的秒數。預設值是針對通告器間隔所指定之值的 3 倍。
    interval
    設定通告器隔多久就會查詢伺服器資訊。
    seconds
    一個正整數,代表向伺服器要求狀態的間隔秒數。預設值是 7。
    list
    顯示目前對管理程式提供資訊的所有通告器清單。
    loglevel
    設定通告器日誌的記載層次。
    level
    層次號碼 (0 到 5)。預設值是 1。號碼愈大,寫入通告器日誌的資訊愈多。 可能的值如下:

    .

    logsize
    設定通告器日誌的最大大小。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目即會覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    通告器日誌檔的最大大小 (位元組)。您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就已開始覆寫。 預設值是 1 MB。
    receivetimeout
    設定通告器在報告伺服器接收作業失敗前,所需等候的時間長度。進一步資訊,請參閱伺服器的通告器連結逾時及接收逾時
    seconds
    正整數,代表通告器在報告伺服器接收失敗前所等候的秒數。預設值是針對通告器間隔所指定之值的 3 倍。
    report
    顯示通告器的狀態報告。
    重試
    在將伺服器標示為當機之前通告器能夠進行重試的次數。
    numretries
    一個大於或等於 0 的整數。建議這個值不要大於 3。如果沒有配置重試關鍵字,則重試的次數預設值為 0。
    start
    啟動通告器。每一個通訊協定均有通告器。預設埠為:


    通告器名稱 通訊協定
    Connect 使用者定義
    db2 private 50000
    ftp FTP 21
    http HTTP 80
    https SSL 443
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    PING PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    name
    通告器名稱。
    sitename:port
    sitename 值在通告器指令中屬選用性的;但 port 值則為必要。 如果未指定 sitename 值,通告器即會在所有可用的站台名稱上開始執行。 如果指定了 sitename,通告器只會針對您指定的 sitename 開始執行。 其它站台名稱是以加號 (+) 為區隔。
    log file
    記錄管理資料所使用的檔案名稱。日誌中的每一筆記錄都有時間戳記。

    預設檔案為 advisorname_port.log,例如 http_80.log。 如果您想變更用於儲存日誌檔的目錄,請參閱變更日誌檔路徑

    對於每一個站台名稱,您只能啟動一個通告器。

    status
    顯示通告器中所有廣域值的現行狀態及預設值。
    stop
    停止通告器。
    timeout
    設定管理程式將通告器資訊視為有效時的秒數。 如果管理程式發現通告器資訊已經比逾時期間更舊,則在決定通告器所監督之埠上的伺服器加權值時,不會使用此資訊。 這項逾時有個例外,也就是當通告器通知管理程式某個特定伺服器當機時。 此時,即使通告器資訊逾時,管理程式仍會使用伺服器的相關資訊。
    seconds
    代表秒數的一個正數,或 unlimited 字樣。預設值是 unlimited。
    version
    顯示通告器的現行版本。

    範例

    sscontrol file -- 管理配置檔

    >>-sscontrol--file--+-delete--filename.ext----------+----------><
                        +-appendload--filename.ext------+
                        +-report------------------------+
                        +-save--filename.ext--+-------+-+
                        |                     '-force-' |
                        '-newload--filename.ext---------'
     
     
    

    delete
    刪除檔案。
    file.ext
    配置檔。

    副檔名 (.ext) 可以隨您的需要自由設定,而且是選用性的。

    appendload
    將配置檔附加到現行配置並載入到 Site Selector。
    report
    報告一或多個可用的檔案。
    save
    將 Site Selector 的現行配置存到檔案中。

    註:
    用於儲存及載入檔案的目錄如下:
    • AIX、Linux、Solaris:/opt/ibm/edge/lb/servers/configurations/ss
    • Windows 2000:c:\Program Files\ibm\edge\lb\servers\configurations\component
    force
    若要將您的檔案存成同名的現有檔案,可使用 force 來刪除現有檔案,之後再儲存新檔案。 如果未使用 force 選項,現有檔案即不會被覆寫。
    newload
    將新的配置檔載入到 Site Selector。新的配置檔將取代現行配置。

    範例

    sscontrol help -- 顯示或列印這個指令的說明

    >>-sscontrol--help--+-advisor----+-----------------------------><
                        +-file-------+
                        +-help-------+
                        +-host-------+
                        +-logstatus--+
                        +-manager----+
                        +-metric-----+
                        +-nameserver-+
                        +-rule-------+
                        +-server-----+
                        +-set--------+
                        +-sitename---+
                        '-status-----'
     
     
    

    範例

    sscontrol logstatus -- 顯示伺服器日誌設定


    >>-sscontrol--logstatus----------------------------------------><
     
     
    

    logstatus
    顯示伺服器日誌設定 (日誌檔名稱、記載層次及日誌大小)。

    sscontrol manager -- 控制管理程式


    >>-sscontrol--manager--+-interval--seconds----------------------+-><
                           +-loglevel--level------------------------+
                           +-logsize--+-unlimited-+-----------------+
                           |          '-bytes-----'                 |
                           +-metric set--+-loglevel--level--------+-+
                           |             '-logsize--+-unlimited-+-' |
                           |                        '-bytes-----'   |
                           +-reach set--+-interval--seconds------+--+
                           |            +-loglevel--level--------+  |
                           |            '-logsize--+-unlimited-+-'  |
                           |                       '-bytes-----'    |
                           +-report--sitename+sn2+...+snN-----------+
                           +-restart--message-----------------------+
                           +-sensitivity--weight--------------------+
                           +-smoothing--smoothing index-------------+
                           +-start--+----------------------+--------+
                           |        '-logfile--metric_port-'        |
                           +-status---------------------------------+
                           +-stop-----------------------------------+
                           '-version--------------------------------'
     
     
    

    interval
    設定管理程式多久更新一次伺服器的加權值。
    seconds
    正數 (秒鐘),代表管理程式多久更新一次加權值。預設值是 2。
    loglevel
    設定管理程式日誌的記載層次。
    level
    層次號碼 (0 到 5)。號碼愈大,寫給管理程式日誌的資訊愈多。預設值為 1。可能的值如下:
    logsize
    設定管理程式日誌的最大大小。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    bytes
    管理程式日誌檔的最大大小 (位元組)。您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就已開始覆寫。 預設值是 1 MB。
    metric set
    設定測量單位監督程式日誌的 loglevellogsize。 loglevel 是測量單位監督程式的記載層次 (「0 - 無」、「1 - 最少」、「2 - 基本」、「3 - 中」、「4 - 進階」或「5 - 詳細」)。 預設的 loglevel 為 1。logsize 則是要記載到測量單位監督程式日誌檔中的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。預設的 logsize 是 1。
    reach set
    設定連繫通告器的間隔、日誌層次及日誌大小。
    report
    顯示統計值抽點報告。
    sitename
    您想要顯示在報表中的站台名稱。從屬站所要求的一種不可解析的主電腦名稱。 sitename 必須是完整的網域名稱。
    註:
    其它站台名稱是以加號 (+) 為區隔。
    restart
    重新啟動所有伺服器 (沒有當機的) 成為正常加權值 (最大加權值的 1/2)。
    message
    您要寫入管理程式日誌檔中的訊息。
    sensitivity
    設定加權值更新的最小感應。 這個設定會定義管理程式何時應該根據外部資訊來變更伺服器加權值。
    weight
    0 到 100 之間的一個數字,作為加權值百分比。預設值 5 會建立最小感應 5%。
    smoothing
    設定指數,減少平衡負載時的加權值變化。 較高的平順指數將使伺服器加權值的變更,不像網路狀況變更那麼大。 較低的指數將使伺服器加權值的變更非常大。
    index
    正浮點數字。預設值是 1.5。
    start
    啟動管理程式。
    log file
    記錄管理程式資料所使用的檔案名稱。 日誌中的每一筆記錄都有時間戳記。

    預設檔將安裝在 logs 目錄中。請參閱附錄 C, 配置檔範例。如果您想變更日誌檔的保留目錄, 請參閱變更日誌檔路徑

    metric_port
    Metric Server 用來報告系統負載的埠。如果您指定測量埠,必須指定日誌檔名稱。預設測量埠為 10004。
    status
    顯示管理程式中所有廣域值的現行狀態及預設值。
    stop
    停止管理程式。
    version
    顯示管理程式的現行版本。

    範例

    sscontrol metric -- 配置系統測量單位

    >>-sscontrol--metric--+-add--sitename+sn2+...+snN:metric+metric1+...+metricN--------------+-><
                          +-remove--sitename+sn2+...+snN:metric+metric1+...+metricN-----------+
                          +-proportions--sitename+sn2+...+snN:proportion1 prop2 prop3...propN-+
                          '-status--sitename+sn2+...+snN metric+metric1+...+metricN-----------'
     
     
    

    add
    新增指定的測量單位。
    sitename
    所配置的站台名稱。其它站台名稱是以加號 (+) 為區隔。
    metric
    系統測量單位名稱。其必須是測量單位伺服器之 script 目錄中某一可執行檔或 Script 檔的名稱。
    remove
    移除指定的測量單位。
    proportions
    當各種測量單位被結合至伺服器的單一系統負載時,可用 Proportions (比例) 來決定其有效位數。
    status
    顯示此測量單位的現行伺服器值。

    範例

    sscontrol nameserver -- 控制 NameServer

    >>-sscontrol--nameserver--+-start--+----------------------+-+--><
                              |        '-bindaddress--address-' |
                              +-stop----------------------------+
                              '-status--------------------------'
     
     
    

    start
    啟動名稱伺服器。
    bindaddress
    啟動連結至指定位址的名稱伺服器。名稱伺服器只會回應以此位址為目的地的要求。
    address
    於 Site Selector 方框上所配置的位址 (IP 或代號)。
    stop
    停止名稱伺服器。
    status
    顯示名稱伺服器的狀態。

    sscontrol rule -- 配置規則

    >>-sscontrol--rule--+-add--sitename+sn2+...+snN:rule+r2+...+rN--type--value--| value |--| opts |-+-><
                        +-dropserver--sitename+sn2+...+snN:rule+r2+...+rN--server+s2+...+snN---------+
                        +-remove--sitename+sn2+...+snN:rule+r2+...+rN--------------------------------+
                        +-set--sitename+sn2+...+snN:rule+r2+...+rN--| value |--| opts |--------------+
                        +-status--sitename+sn2+...+snN:rule+r2+...+rN--------------------------------+
                        '-useserver--sitename+sn2+...+snN:rule+r2+...+rN--server+s2+...+snN----------'
     
    opts
     
    |--+---------------------------------+--------------------------|
       +-beginrange--low--endrange--high-+
       +-priority--value-----------------+
       '-metricname--value---------------'
     
     
    

    add
    將此規則新增到某一站台名稱。
    sitename
    從屬站所要求的一種不可解析的主電腦名稱。sitename 必須是完整的網域名稱。其它站台名稱是以加號 (+) 為區隔。
    rule
    您對規則所選擇的名稱。此名稱可以包含任何英數字元、底線、破折號或句號。 它可以有 1 到 20 個字元,但不可以包含任何空格。

    註:
    其它規則是以一個加號 (+) 為區隔。
    type
    規則的類型。
    type
    類型的選項有:

    ip
    此規則是根據從屬站 IP 位址。

    metricall
    規則是根據目前的測量單位值,以適用於伺服器集內所有的伺服器。

    metricavg
    規則是根據目前的平均測量單位值,以適用於伺服器集內所有的伺服器。

    time
    此規則是根據每日的時間。

    true
    此規則永遠有效。請將它視為設計程式邏輯中的例外陳述式。
    beginrange
    用來判斷規則是否為真的範圍中的低值。
    low
    根據規則的類型而定。此處是依照規則的類型,列示值的種類及其預設值:

    ip
    從屬站位址是一個符號名稱或加點的小數格式。預設值是 0.0.0.0。

    time
    一個整數。預設值是 0,代表午夜。

    metricall
    一個整數。預設值是 100。

    metricavg
    一個整數。預設值是 100。
    endrange
    用來判斷規則是否為真的範圍中的高值。
    high
    根據規則的類型而定。此處是依照規則的類型,列示值的種類及其預設值:

    ip
    從屬站位址是一個符號名稱或加點的小數格式。預設值是 255.255.255.254。

    time
    一個整數。預設值是 24,代表午夜。

    註:
    在您定義時間間隔的 beginrange 與 endrange 時, 請注意:每個值必須是僅代表時間小時數的整數;並不指定分秒。因此, 如果您想要指定單一小時--比方說 3:00 與 4:00 am 之間的一小時-- 則指定 beginrange 為 3,endrange 也指定為 3。這表示從 3:00 開始至 3:59 結束的全部分鐘。 如果指定 beginrange 為 3,並指定 endrange 為 4,則會涵蓋從 3:00 至 4:59 的兩小時時段。

    metricall
    一個整數。預設值是 2,上限為 2 的 32 次方減 1。

    metricavg
    一個整數。預設值是 2,上限為 2 的 32 次方減 1。
    priority
    將要查閱規則的次序。
    level
    一個整數。如果您未指定所新增的第一個規則的優先順序,Site Selector 將會按照預設而將它設定為 1。新增後續規則後,在預設的狀況下,其優先順序的計算方式為 10 + 任何現有規則的現行最低優先順序。 例如,假設您有一個現存的規則,其優先順序為 30。您新增一個新規則並將其優先順序設定為 25 (此優先順序高於 30)。 然後您新增第三個規則,卻沒有設定優先順序。第三個規則的優先順序計算所得為 40 (30 + 10)。
    metricname
    針對規則所量測之單位的名稱。
    dropserver
    從規則設定中移除伺服器。
    server
    TCP 伺服器機器的 IP 位址,為一個符號式名稱,或是帶點十進位數格 式。

    註:
    其它站台名稱是以加號 (+) 為區隔。
    remove
    移除一或多個規則,各規則以加號區隔。
    set
    設定此規則的值。
    status
    顯示一或多個規則的所有值。
    useserver
    將伺服器插入規則集中。

    範例

    sscontrol server -- 配置伺服器

    >>-sscontrol--server--+-add--sitename+sn2+...+snN:server+s2+...+sN--+------------------------+-+-><
                          |                                             +-metricaddress--address-+ |
                          |                                             '-weight--value----------' |
                          +-down--sitename+sn2+...+snN:server+s2+...+sN----------------------------+
                          +-remove--sitename+sn2+...+snN:server+s2+...+sN--------------------------+
                          +-set--sitename+sn2+...+snN:server+s2+...+sN--+------------------------+-+
                          |                                             +-metricaddress--address-+ |
                          |                                             '-weight--value----------' |
                          +-status--sitename+sn2+...+snN:server+s2+...+sN--------------------------+
                          '-up--sitename+sn2+...+snN:server+s2+...+sN------------------------------'
     
     
    

    add
    新增這個伺服器。
    sitename
    由從屬站所要求的一種不可解析的主電腦名稱。 sitename 必須是完整的網域名稱。其它站台名稱是以加號 (+) 為區隔。
    server
    TCP 伺服器機器的 IP 位址,為一個符號式名稱,或是帶點十進位數格 式。

    註:
    其它伺服器是以一個加號 (+) 為區隔。
    metricaddress
    測量單位伺服器的位址。
    address
    伺服器的位址,可為代號名稱或帶點十進位數格式。
    weight
    0-100 的數字 (不超過指定站台名稱的最大加權值範圍的值),代表此伺服器的加權。 加權值設定為零時,可以防止新要求傳給伺服器。 預設值是指定站台名稱之最大加權值範圍的值的一半。如果管理程式正在執行, 則很快地改寫此設定值。
    value
    伺服器加權值。
    down
    伺服器中斷連線。此指令可防止其它要求被解析給該伺服器。
    remove
    移除這個伺服器。
    set
    設定伺服器的值。
    status
    顯示伺服器的狀態。
    up
    伺服器開始連線。Site Selector 將立即解析對該伺服器的新要求。

    範例

    sscontrol set -- 配置伺服器日誌

    >>-sscontrol--set--+-loglevel--level--------+------------------><
                       '-logsize--+-unlimited-+-'
                                  '-size------'
     
     
    

    loglevel
    ssserver 記載其活動的層次。
    level
    loglevel 的預設值是 0。可能的值有:
    logsize
    日誌檔記載的最大位元組數。
    size
    logsize 的預設值是 1 MB。

    sscontrol sitename -- 配置 sitename

    >>-sscontrol--sitename--+-add--sitename+sn2+...+snN--+----------------------------------------+-+-><
                            |                            +-cachelife--value-----------------------+ |
                            |                            +-networkproximity--yes | no-------------+ |
                            |                            +-proportions--cpu--memory--port--metric-+ |
                            |                            +-proximitypercentage--value-------------+ |
                            |                            +-stickytime--time-----------------------+ |
                            |                            +-ttl--time------------------------------+ |
                            |                            +-waitforallresponses--yes | no----------+ |
                            |                            '-weightbound--weight--------------------' |
                            +-remove--sitename+sn2+...+snN------------------------------------------+
                            +-set--sitename+sn2+...+snN--+----------------------------------------+-+
                            |                            +-cachelife--value-----------------------+ |
                            |                            +-networkproximity--yes | no-------------+ |
                            |                            +-proportions--cpu--memory--port--metric-+ |
                            |                            +-proximitypercentage--value-------------+ |
                            |                            +-stickytime--time-----------------------+ |
                            |                            +-ttl--time------------------------------+ |
                            |                            +-waitforallresponses--yes | no----------+ |
                            |                            '-weightbound--weight--------------------' |
                            '-status--sitename+sn2+...+snN------------------------------------------'
     
     
    

    add
    新增一新的站台名稱。
    sitename
    由從屬站所要求的一種不可解析的主電腦名稱。其它站台名稱是以加號 (+) 為區隔。
    cachelife
    接近回應將保持有效及儲存於快取中的時間量。預設值是 1800。請參閱使用「網路接近」特性,以取得進一步資訊。
    value
    一個正數,代表接近回應為有效以及其儲存於快取中的秒數。
    networkproximity
    決定每一個伺服器對要求方從屬站的網路接近度。 此接近回應可用於平衡負載決策中。請將接近設成 on 或 off。請參閱使用「網路接近」特性,以取得進一步資訊。
    value
    選項有 yes 或 no。預設值是 no,表示網路接近已關閉。
    proportions
    設定 CPU、記憶體、埠 (來自任何通告器的資訊) 的重要性比例,以及 Metric Server 的系統測量單位 (供管理程式用於設定伺服器加權值)。 以下的每個值都是以總數的百分比來表示,而總數永遠為 100。

    cpu
    每一個已平衡負載的伺服器機器上,CPU 的使用百分比率 (來自 Metric Server 代理程式的輸入)。

    memory
    每一個已平衡負載的伺服器上,記憶體的使用百分比率 (來自 Metric Server 代理程式的輸入)。

    port
    來自正接收該埠之通告器的輸入。

    system
    來自 Metric Server 的輸入。
    proximitypercentage
    設定接近回應及伺服器狀況之重要性 (管理程式加權值)。請參閱使用「網路接近」特性,以取得進一步資訊。
    value
    預設值是 50。
    stickytime
    從屬站在其間將會接收相同伺服器 ID (先前因第一個要求而傳回) 的時間間隔。 stickytime 的預設值為 0,表示 sitename 並未滯留。
    time
    一個非零的正數,代表從屬站在此時段內會接收相同伺服器 ID (先前因第一個要求而傳回) 的秒數。
    ttl
    設定維持時間。表示另一個 nameserver 會將已解析回應存入快取的時間長短。預設值是 5。
    value
    一個正數,代表 nameserver 會將已解析回應存入快取的秒數。
    waitforallresponses
    設定是否要等待來自伺服器的所有接近回應,之後才回應從屬站要求。請參閱使用「網路接近」特性,以取得進一步資訊。
    value
    選項有 yes 或 no。預設值是 yes。
    weightbound
    一個數字,代表可針對此 sitename 之伺服器所設定的最大加權值。 針對 sitename 所設定的 weightbound 值, 可用 server weight 置換個別的伺服器。sitename weightbound 的預設值是 20。
    weight
    weightbound 值。
    set
    設定站台名稱的比例。
    remove
    移除此站台名稱。
    status
    顯示特定站台名稱的現行狀態。

    範例

    sscontrol status -- 顯示管理程式及通告器是否正在執行

    >>-sscontrol--status-------------------------------------------><
     
     
    

    範例


    Cisco CSS Controller 的指令參照

    本附錄將說明如何使用下列 Cisco CSS Controller 的 ccocontrol 指令:

    您可以使用縮寫版的 ccocontrol 指令參數,方法是鍵入代表參數的唯一字母。 例如,若要取得有關存檔指令的說明,您可以鍵入 ccocontrol he f 而非 ccocontrol help file

    若要取得 ccocontrol 指令提示:鍵入 ccocontrol

    若要結束指令行介面:鍵入 exitquit

    註:
    所有的指令參數值都須使用英文字元。 唯一的例外是主電腦名稱 (用於 server 指令中) 與檔名 (用於 file 指令中)。

    ccocontrol consultant -- 配置及控制顧問

    >>-ccocontrol--consultant--+-add--scID--address--swIPAddr--community--commName-+-><
                               +-binarylog--scID+scID2...--+-report-------------+--+
                               |                           +-set--+-interval--+-+  |
                               |                           |      '-retention-' |  |
                               |                           +-start--------------+  |
                               |                           '-stop---------------'  |
                               +-remove--scID+scID2...-----------------------------+
                               +-report--scID+scID2...-----------------------------+
                               +-set--+-loglevel--level----------------+-----------+
                               |      +-logsize--+-size------+---------+           |
                               |      |          '-unlimited-'         |           |
                               |      +-sensitivity--weight percentage-+           |
                               |      '-sleeptime--sec-----------------'           |
                               +-start--scID+scID2...------------------------------+
                               '-stop--scID+scID2...-------------------------------'
     
     
    

    add
    新增交換器顧問。
    scID (switchConsultantID)
    使用者定義用來代表顧問的字串。
    address
    顧問將提供加權值給它的 Cisco CSS Switch 的 IP 位址。
    swIPAddr (switchIPAddress)
    交換器的帶點十進位數位址。
    community
    SNMP 中所使用的名稱,用來取得及設定與 Cisco CSS Switch 的通信。
    commName
    Cisco CSS Switch 的讀/寫團體名稱。
    binarylog
    控制顧問的二進位記載作業。
    report
    報告二進位記載作業的性質。
    set
    設定寫入資訊至二進位日誌的頻率(以秒計)。 二進位記載的特性,是可將配置中所定義之各服務程式的相關資訊儲存於其二進位日誌檔中。 只有當上一筆記錄寫入日誌,並經過指定的日誌間隔秒數時,此項資訊才會寫入日誌當中。 預設的二進位記載間隔是 60。
    interval
    設定二進位日誌中不同項目間的秒數。
    retention
    設定二進位日誌檔的保存時數。
    start
    啟動二進位記載。
    stop
    停止二進位記載。
    remove
    移除交換器顧問。
    report
    報告交換器顧問的性質。
    set
    設定交換器顧問的性質。
    loglevel
    設定交換器顧問記載活動的層次。預設值是 1。
    level
    層次號碼 0 到 5。預設值是 1。可能的值有:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    sensitivity
    指出要讓加權進行變更時,新加權及舊加權之間須發生的變更數。 新加權及舊加權之間的差異須大於感應百分比,才能使加權變更。 有效的範圍是 0 到 100;預設值是 5。
    weight percentage
    從 0 到 100 的整數,代表感應值。
    sleeptime
    設定不同加權設定循環間的休眠秒數。預設值是 7。
    sec
    整數,代表休眠時間秒數。有效的範圍是從 0 到 2,147,460。
    start
    開始收集測量單位並設定加權。
    stop
    停止收集測量單位及設定加權。

    範例

    ccocontrol controller -- 管理控制器

    >>-ccocontrol--controller--+-report--------------------------+-><
                               '-set--+------------------------+-'
                                      +-loglevel--level--------+
                                      '-logsize--+-size------+-'
                                                 '-unlimited-'
     
     
    

    report
    顯示控制器的性質。版本資訊顯示成這個報告的一部份。
    set
    設定控制器的性質。
    loglevel
    設定控制器記載活動的層次。預設值是 1。
    level
    層次號碼 0 到 5。預設值是 1。可能的值如下:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。

    範例

    ccocontrol file -- 管理配置檔

    >>-ccocontrol--file--+-delete--filename----------+-------------><
                         +-load--filename------------+
                         +-report--------------------+
                         '-save--filename--+-------+-'
                                           '-force-'
     
     
    

    delete
    刪除指定的配置檔。
    filename
    配置檔。 副檔名必須為 .xml。如果未指定此副檔名,則系統會自行加以採用。
    load
    載入指定檔案中所儲存的配置。

    註:
    載入檔案將把該檔案中所儲存的配置附加到執行中的配置。 如果您想要載入新的配置, 則必須在載入檔案之前,停止並重新啟動伺服器。
    report
    列出配置檔。
    save
    將現行配置儲存到指定的檔案。
    註:
    用於儲存及載入檔案的目錄如下:
    • AIX:/opt/ibm/edge/lb/servers/configurations/cco
    • Linux:/opt/ibm/edge/lb//servers/configurations/cco
    • Solaris:/opt/ibm/edge/lb/servers/configurations/cco
    • Windows 2000:

      安裝 (預設) 目錄:c:\Program Files\ibm\edge\lb\servers\configurations\cco

    force
    儲存到現有的檔案。

    範例

    ccocontrol help -- 顯示或列印這個指令的說明

    >>-ccocontrol--help--+-controller-------+----------------------><
                         +-consultant-------+
                         +-file-------------+
                         +-help-------------+
                         +-highavailability-+
                         +-metriccollector--+
                         +-ownercontent-----+
                         '-service----------'
     
     
    

    範例

    ccocontrol highavailability -- 控制高可用性


    >>-ccocontrol--highavailability--+-add--+-address--address---------------+-+-><
                                     |      +-partneraddress--partneraddress-+ |
                                     |      +-port--port---------------------+ |
                                     |      '-role--+-primary---+------------' |
                                     |              '-secondary-'              |
                                     +-dropreach--address----------------------+
                                     +-remove----------------------------------+
                                     +-report----------------------------------+
                                     +-set--+-beatinterval--time-----+---------+
                                     |      +-takeoverinterval--time-+         |
                                     |      +-loglevel--level--------+         |
                                     |      '-logsize--+-size------+-'         |
                                     |                 '-unlimited-'           |
                                     +-start--+-auto---+-----------------------+
                                     |        '-manual-'                       |
                                     +-stop------------------------------------+
                                     +-takeover--------------------------------+
                                     '-usereach--address-----------------------'
     
     
    

    add
    配置高可用性節點、友機及連繫目標。
    address
    用於接收通訊檢查訊息的位址。
    address
    高可用性節點的帶點十進位數 IP 位址。
    partneraddress
    用於傳送通訊檢查訊息的位址。 這是在友機節點上所配置的帶點十進位 IP 位址或主電腦名稱。 此位址將用來與友機高可用性機器通信。
    address
    友機的帶點十進位數 IP 位址。
    port
    用於和友機通信的埠。預設值是 12345。
    port
    埠號。
    role
    高可用性角色。
    primary | secondary
    主要或次要角色。
    dropreach
    從高可用性基準中移除此連繫目標。
    address
    連繫目標的帶點十進位數 IP 位址。
    remove
    從高可用性配置中移除節點、友機及連繫目標。 使用此指令前,須先停止高可用性。
    report
    顯示高可用性資訊。
    set
    設定高可用性的性質。
    beatinterval
    設定傳送通訊檢查訊息給友機的頻率 (以毫秒計)。預設值是 500。
    time
    正整數,代表通訊檢查間隔時間 (以毫秒計)。
    takeoverinterval
    設定發生接管前須經歷的時間量 (以毫秒計,其間將不會收到通訊檢查訊息)。預設值是 2000。
    time
    正整數,代表接管間隔時間 (以毫秒計)。
    loglevel
    設定記載活動的層次。預設值是 1。
    level
    層次號碼 0 到 5。預設值是 1。可能的值有:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定高可用性日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    高可用性日誌檔中所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    start
    開始使用高可用性。要使用此指令之前,須先配置高可用性節點、友機及連繫目標。
    auto | manual
    決定是否啟動高可用性以及自動或手動的復原策略。
    stop
    停止使用高可用性。
    takeover
    從現行的高可用性節點取得控制權。
    usereach
    將開始使用高可用性的連繫目標位址。 新增可 ping 的連繫目標,以使高可用性友機可決定其目標的連繫程度。
    address
    連繫目標的帶點十進位數 IP 位址。

    範例

    ccocontrol metriccollector -- 配置測量單位收集器

    >>-ccocontrol--metriccollector--+-report--scID+scID2+...:mN+mN2...--------------------------+-><
                                    '-set--scID+scID2+...:mN+mN2...--+-timeoutconnect--sec----+-'
                                                                     +-loglevel--level--------+
                                                                     +-logsize--+-size------+-+
                                                                     |          '-unlimited-' |
                                                                     +-timeoutreceive--sec----+
                                                                     '-sleeptime--sec---------'
     
     
    

    report
    顯示測量單位收集器的性質。
    scID (交換器顧問 ID)
    使用者定義用來代表顧問的字串。
    mN (測量單位名稱)
    用以識別所提供或自行設定之測量單位的名稱。
    set
    設定測量單位收集器的性質。
    timeoutconnect
    設定測量單位收集器在報告連線失敗前所等候的時間。
    sec
    正整數,代表測量單位收集器在報告服務程式連線失敗前所等候的秒數。
    loglevel
    設定指定的顧問記載活動的層次。預設值為 1。
    level
    層次的號碼。預設值是 1。號碼愈大,寫入顧問日誌的資訊愈多。可能的值如下:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    timeoutreceive
    設定顧問在報告接收服務程式失敗前應等候的時間量。
    sec
    正整數,代表顧問在報告接收服務程式失敗前所等候的秒數。
    sleeptime
    以秒為單位設定測量單位收集器要在測量單位收集循環之間休眠的時間量。
    正整數,代表休眠時間的秒數。

    範例

    ccocontrol ownercontent -- 控制擁有者名稱及內容規則

    >>-ccocontrol--ownerContent--+-add--scID:ocN--ownername--oN--contentrule--cN--------------------------------+-><
                                 +-metrics--scID+scID2...:ocN+ocN2...--mN--importance--mN2--i2------------------+
                                 +-refresh--scID+scID2...:ocN+ocN2...-------------------------------------------+
                                 +-remove--scID+scID2...:ocN+ocN2...--------------------------------------------+
                                 +-report--scID+scID2...:ocN+ocN2...--------------------------------------------+
                                 '-set--scID+scID2...:ocN+ocN2...----測量單位--mN--+------------------------+---'
                                                                                   +-requeststring--string--+
                                                                                   +-responsestring--string-+
                                                                                   '-重試--numretries-------'
     
     
    

    add
    新增擁有者內容到指定的顧問。
    scID (交換器顧問 ID)
    使用者定義用來代表顧問的字串。
    OCName (擁有者內容名稱)
    使用者定義用來代表交換器上的擁有者名稱及內容規則的字串。
    ownername
    交換器上所配置的名稱,用於識別擁有者的配置。
    oN (ownername)
    沒有空格的唯一文字字串。ownername 須和 Cisco 交換器上所指定的相同。
    contentrule
    交換器上所配置的名稱,用於識別擁有者的內容規則配置。
    cN (contentname)
    沒有空格的唯一文字字串。contentname 須和 Cisco 交換器上所指定的相同。
    metrics
    指定在計算各測量單位之加權值及重要性時,所用的測量單位集。 重要性是以總數的百分比來表示。重要性的總和必須等於 100。測量單位可以是連線資料測量單位、應用程式通告器測量單位及測量單位伺服器測量單位的任意組合。 預設值為作用中連線 (activeconn) 及連線速率 (connrate) 測量單位,以及 50/50 的重要性。
    mN (metricname)
    識別將用來收集測量值以決定伺服器加權值的測量單位收集器的名稱。

    底下是有效測量單位名稱及其相關埠的清單。

    通告器名稱 通訊協定
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    cachingproxy HTTP (透過 Caching Proxy) 80
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    WLM private 10,007
    activeconn
    connrate
    cpuload
    memload
    importance
    從 0 到 100 的數值,代表在計算伺服器加權值時這個測量單位的重要性。
    refresh
    以來自 Cisco CSS Switch 的配置重新整理已配置的服務。
    remove
    移除 ownercontent
    report
    報告 ownercontent 的性質。
    set
    設定 ownercontent 的性質。
    metric
    設定測量單位的性質。
    mN
    所要之測量單位的名稱。
    requeststring
    設定所指定的測量單位的要求字串。 此字串代表測量單位收集器所傳送,用以收集測量單位資訊的要求。
    string
    測量單位收集器傳給伺服器的要求字串。
    responsestring
    設定所指定的測量單位的回應字串。測量單位收集器會使用指定的回應字串, 來比較它從伺服器收到的回應,接著決定伺服器可用性。
    string
    測量單位收集器用來與收到的伺服器回應作比較的回應字串。
    重試
    「重試」可設定在將伺服器標示為當機之前能夠重試的次數。
    numretries
    一個大於或等於 0 的整數。建議這個值不要大於 3。如果沒有配置重試關鍵字,則重試的次數預設值為 0。

    範例

    ccocontrol service -- 配置服務程式

    >>-ccocontrol--service--+-report--scID+scID2...:ocN+ocN2...:svc+svc2...---------------------------------+-><
                            '---set--scID+scID2...:ocN+ocN2...:svc+svc2...--+---------------------------+---'
                                                                            +-fixedweight--+-integer-+--+
                                                                            |              '-off-----'  |
                                                                            +-requestsourceip--IPAd-----+
                                                                            +-metricserveraddress--IPAd-+
                                                                            '-metricserverport--portN---'
     
     
    

    report
    顯示服務程式的性質。
    scID (交換器顧問 ID)
    使用者定義用來代表顧問的字串。
    OCName (擁有者內容名稱)
    使用者定義用來代表交換器上的擁有者名稱及內容規則的字串。
    svc (服務)
    交換器上使用者定義用來代表服務的字串。
    set
    顯示服務程式的性質。
    fixedweight
    針對此服務程式設定固定的加權。預設值是 off。
    integer | off
    正整數 (範圍為 1 到 10),代表此服務的固定加權值;或為 off 字樣,用以指定沒有固定加權值。
    requestsourceip
    設定用於聯繫服務程式的應用程式要求的位址。
    IPAd (IP 位址)
    用於聯繫服務程式的 IP 位址,可為代號名稱或使用帶點十進位數格式。
    metricserveraddress
    設定用於聯繫服務的測量單位伺服器要求的位址。
    IPAd (IP 位址)
    用於聯繫測量單位伺服器的 IP 位址,可為代號名稱或使用帶點十進位數格式。
    metricserverport
    設定用於聯繫測量單位伺服器的埠。
    portN (埠號)
    用於聯繫測量單位伺服器的埠號。

    範例


    Nortel Alteon Controller 的指令參照

    本附錄將說明如何使用下列 Nortel Alteon Controller 的 nalcontrol 指令:

    您可以使用縮寫版的 nalcontrol 指令參數,方法是鍵入代表參數的唯一字母。 例如,要取得存檔指令的說明,您可以鍵入 nalcontrol he f 而非 nalcontrol help file

    若要取得 nalcontrol 指令提示:鍵入 nalcontrol

    若要結束指令行介面:鍵入 exitquit

    註:
    所有的指令參數值都須使用英文字元。 唯一的例外是主電腦名稱 (用於 server 指令中) 與檔名 (用於 file 指令中)。

    nalcontrol consultant -- 配置及控制顧問

    >>-nalcontrol--consultant--+-add--scID--address--swIPAddr--+---------------------------+-+-><
                               |                               +-rcommunity--readCommName--+ |
                               |                               '-wcommunity--writeCommName-' |
                               +-binarylog--scID+scID2...--+-report------------------------+-+
                               |                           +-set--+-interval--interval---+-+ |
                               |                           |      '-retention--retention-' | |
                               |                           +-start-------------------------+ |
                               |                           '-stop--------------------------' |
                               +-remove--scID+scID2...---------------------------------------+
                               +-report--scID+scID2...---------------------------------------+
                               +-set--+--------------------------------+---------------------+
                               |      +-loglevel--level----------------+                     |
                               |      +-logsize--+-size------+---------+                     |
                               |      |          '-unlimited-'         |                     |
                               |      +-sensitivity--weight percentage-+                     |
                               |      '-sleeptime--sec-----------------'                     |
                               +-start--scID+scID2...----------------------------------------+
                               '-stop--scID+scID2...-----------------------------------------'
     
     
    

    add
    新增交換器顧問。
    scID
    使用者定義用來代表顧問的字串。
    address
    顧問將提供加權值給它的 Nortel Alteon Web Switch 的 IP 位址。
    swIPAddr
    交換器的帶點十進位數位址。
    rcommunity
    用於 SNMP 中的讀取團體名稱,以取得與 Nortel Alteon Web Switch 的通信。預設值是 public。
    readCommName
    代表讀取團體名稱的字串,如 Nortel Alteon Web Switch 上所配置的。預設值是 public。
    wcommunity
    用於 SNMP 中的寫入團體名稱,以設定通信。
    writeCommName
    代表寫入團體名稱的字串,如 Nortel Alteon Web Switch 上所配置的。預設值是 private。
    binarylog
    控制顧問的二進位記載作業。
    report
    報告二進位記載作業的性質。
    set
    設定寫入資訊至二進位日誌的頻率(以秒計)。 二進位記載的特性,是可將配置中所定義之各服務程式的相關資訊儲存於其二進位日誌檔中。 只有當上一筆記錄寫入日誌,並經過指定的日誌間隔秒數時,此項資訊才會寫入日誌當中。 預設的二進位記載間隔是 60。
    interval
    設定二進位日誌中不同項目間的秒數。
    retention
    設定二進位日誌檔的保存時數。
    start
    啟動二進位記載。
    stop
    停止二進位記載。
    remove
    移除交換器顧問。
    report
    報告交換器顧問的性質。
    set
    設定交換器顧問的性質。
    loglevel
    設定交換器顧問記載活動的層次。預設值是 1。
    level
    層次號碼 0 到 5。預設值是 1。可能的值有:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    sensitivity
    指出要讓加權進行變更時,新加權及舊加權之間須發生的變更數。 新加權及舊加權之間的差異須大於感應百分比,才能使加權變更。 有效的範圍是 0 到 100;預設值是 5。
    weight percentage
    從 0 到 100 的整數,代表感應值。
    sleeptime
    設定不同加權設定循環間的休眠秒數。預設值是 7。
    seconds
    整數,代表休眠時間秒數。有效的範圍是從 0 到 2,147,460。
    start
    開始收集測量單位並設定加權。
    stop
    停止收集測量單位及設定加權。

    範例

    nalcontrol controller -- 管理控制器

    >>-nalcontrol--controller--+-report--------------------------+-><
                               '-set--+------------------------+-'
                                      +-loglevel--level--------+
                                      '-logsize--+-size------+-'
                                                 '-unlimited-'
     
     
    

    report
    顯示控制器的性質。版本資訊顯示成這個報告的一部份。
    set
    設定控制器的性質。
    loglevel
    設定控制器記載其活動的層次。預設值是 1。
    level
    層次號碼為 0 到 5。預設值是 1。可能的值如下:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。

    範例

    nalcontrol file -- 管理配置檔

    >>-nalcontrol--file--+-delete--filename-+----------------------><
                         +-load--filename---+
                         +-report-----------+
                         '-save--filename---'
     
     
    

    delete
    刪除指定的配置檔。
    filename
    配置檔。 副檔名須為 .xml。如果未指定此副檔名,則系統會自行加以採用。
    load
    載入指定檔案中所儲存的配置。

    註:
    載入檔案將把該檔案中所儲存的配置附加到執行中的配置。 如果您想要載入新的配置, 則必須在載入檔案之前,停止並重新啟動伺服器。
    report
    列出配置檔。
    save
    將現行配置儲存到指定的檔案。
    註:
    用於儲存及載入檔案的目錄如下:
    • AIX:/opt/ibm/edge/lb/servers/configurations/nal
    • Linux:/opt/ibm/edge/lb//servers/configurations/nal
    • Solaris:/opt/ibm/edge/lb/servers/configurations/nal
    • Windows 2000:

      一般安裝目錄路徑 -- c:\Program Files\ibm\edge\lb\servers\configurations\nal

      本機安裝目錄路徑 -- c:\Program Files\ibm\lb\servers\configurations\nal

    範例

    nalcontrol help -- 顯示或列印這個指令的說明

    >>-nalcontrol--help--+-controller-------+----------------------><
                         +-consultant-------+
                         +-file-------------+
                         +-help-------------+
                         +-highavailability-+
                         +-metrinalllector--+
                         +-ownercontent-----+
                         '-service----------'
     
     
    

    範例

    nalcontrol highavailability -- 控制高可用性


    >>-nalcontrol--highavailability--+-add--+-address--address---------------+-+-><
                                     |      +-partneraddress--partneraddress-+ |
                                     |      +-port--port---------------------+ |
                                     |      '-role--+-primary---+------------' |
                                     |              '-secondary-'              |
                                     +-dropreach--address----------------------+
                                     +-remove----------------------------------+
                                     +-report----------------------------------+
                                     +-set--+-beatinterval--time-----+---------+
                                     |      +-takeoverinterval--time-+         |
                                     |      +-loglevel--level--------+         |
                                     |      '-logsize--+-size------+-'         |
                                     |                 '-unlimited-'           |
                                     +-start--+-auto---+-----------------------+
                                     |        '-manual-'                       |
                                     +-stop------------------------------------+
                                     +-takeover--------------------------------+
                                     '-usereach--address-----------------------'
     
     
    

    add
    配置高可用性節點、友機及連繫目標。
    address
    用於接收通訊檢查訊息的位址。
    address
    高可用性節點的帶點十進位數 IP 位址。
    partneraddress
    用於傳送通訊檢查訊息的位址。 這是在友機節點上所配置的帶點十進位 IP 位址或主電腦名稱。 此位址將用來與友機高可用性機器通信。
    address
    友機的帶點十進位數 IP 位址。
    port
    用於和友機通信的埠。預設值是 12345。
    port
    埠號。
    role
    高可用性角色。
    primary | secondary
    主要或次要角色。
    dropreach
    從高可用性基準中移除此連繫目標。
    address
    連繫目標的帶點十進位數 IP 位址。
    remove
    從高可用性配置中移除節點、友機及連繫目標。 使用此指令前,須先停止高可用性。
    report
    顯示高可用性資訊。
    set
    設定高可用性的性質。
    beatinterval
    設定傳送通訊檢查訊息給友機的頻率 (以毫秒計)。預設值是 500。
    time
    正整數,代表通訊檢查間隔時間 (以毫秒計)。
    takeoverinterval
    設定發生接管前須經歷的時間量 (以毫秒計,其間將不會收到通訊檢查訊息)。預設值是 2000。
    time
    正整數,代表接管間隔時間 (以毫秒計)。
    loglevel
    設定記載活動的層次。預設值是 1。
    level
    層次號碼 0 到 5。預設值是 1。可能的值有:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定高可用性日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    高可用性日誌檔中所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    start
    開始使用高可用性。要使用此指令之前,須先配置高可用性節點、友機及連繫目標。
    auto | manual
    決定是否啟動高可用性以及自動或手動的復原策略。
    stop
    停止使用高可用性。
    takeover
    從現行的高可用性節點取得控制權。
    usereach
    將開始使用高可用性的連繫目標位址。 新增可 ping 到的連繫目標,以使高可用性友機可決定其目標的連繫程度。
    address
    連繫目標的帶點十進位數 IP 位址。

    範例

    nalcontrol metriccollector -- 配置測量單位收集器

    >>-nalcontrol--metricollector--+-report--scID+scID2+...:mN+mN2...--------------------------+-><
                                   '-set--scID+scID2+...:mN+mN2...--+-connecttimeout--sec----+-'
                                                                    +-loglevel--level--------+
                                                                    +-logsize--+-size------+-+
                                                                    |          '-unlimited-' |
                                                                    +-receivetimeout--sec----+
                                                                    '-sleeptime--sec---------'
     
     
    

    report
    顯示測量單位收集器的性質。
    scID (交換器顧問 ID)
    使用者定義用來代表顧問的字串。
    mN (測量單位名稱)
    用以識別所提供或自行設定之測量單位的名稱。
    set
    設定測量單位收集器的性質。
    connecttimeout
    設定測量單位收集器在報告連線失敗前所等候的時間。
    sec
    正整數,代表測量單位收集器在報告服務程式連線失敗前所等候的秒數。
    loglevel
    設定指定的顧問記載活動的層次。預設值為 1。
    level
    層次的號碼。預設值是 1。號碼愈大,寫入顧問日誌的資訊愈多。可能的值如下:

    0 = 無

    1 = 最少

    2 = 基本

    3 = 中

    4 = 進階

    5 = 詳細

    logsize
    設定日誌檔所記載的最大位元組數。預設值是 1048576。當您設定日誌檔的最大大小時,檔案會折返;當檔案達到指定大小時,後續的項目將從檔案頂端處寫入,並覆寫先前的日誌項目。 日誌大小不能小於目前的日誌大小。日誌項目皆有時間戳記,可讓您得知其寫入順序。 您設定的日誌層次越高,您越必須謹慎選擇日誌大小,因為當日誌層次較高時,空間會很快被用完。
    size | unlimited
    顧問日誌所記載的最大位元組數。 您可以指定大於零的正值,或指定 unlimited。 由於日誌項目的大小不同,所以日誌檔可能尚未到達真正的大小上限時,就開始覆寫。
    receivetimeout
    設定顧問在報告接收服務程式失敗前應等候的時間量。
    sec
    正整數,代表顧問在報告接收服務程式失敗前所等候的秒數。
    sleeptime
    以秒為單位設定測量單位收集器要在測量單位收集循環之間休眠的時間量。
    sec
    正整數,代表休眠時間的秒數。

    範例

    nalcontrol server -- 配置伺服器

    >>-nalcontrol--serer--+-report--scID+scID2...:svcID+svcID2...:serverID+svrID2...-----------------------------------+-><
                          '---set--scID+scID2...:svcID+svcID2...:serverID+svrID2--+--------------------------------+---'
                                                                                  +-fixedweight--+-integer-+-------+
                                                                                  |              '-off-----'       |
                                                                                  +-requestsourceip--IPAddress-----+
                                                                                  +-metricserveraddress--IPAddress-+
                                                                                  '-metricserverport--portNumber---'
     
     
    

    report
    顯示伺服器的性質。
    scID
    使用者定義用來代表顧問的字串。
    svcID
    使用者定義用來代表交換器上的虛擬服務識別碼及虛擬埠號的字串。
    serverID
    代表交換器上的伺服器的整數。
    set
    設定伺服器的性質。
    fixedweight
    針對此伺服器設定固定的加權。預設值是 off。fixedweight 的最大值是 48。
    integer | off
    正整數,代表此伺服器的固定加權;或為 off 字樣,用以指定沒有固定加權。
    requestsourceip
    設定用於聯繫伺服器的應用程式要求之位址。
    IPAddress
    用於聯繫伺服器的 IP 位址,可為代號名稱或使用帶點十進位數格式。
    metricserveraddress
    設定用於聯繫伺服器的測量單位伺服器要求的位址。
    IPAddress
    用於聯繫測量單位伺服器的 IP 位址,可為代號名稱或使用帶點十進位數格式。
    metricserverport
    設定用於聯繫測量單位伺服器的埠。
    portNumber
    用於聯繫測量單位伺服器的埠號。

    範例

    nalcontrol service -- 配置服務

    >>-nalcontrol--service--+-add--scID+scID2...:serviceID+svcID2...--vsid--virSvrID--vport--virPortNum------+-><
                            +-測量單位--scID+scID2...:svcID+svcID2...--mN--importance--mCN2--i2--------------+
                            +-refresh--scID+scID2...:svcID+svcID2...-----------------------------------------+
                            +-remove--scID+scID2...:svcID+svcID2...------------------------------------------+
                            +-report--scID+scID2...:svcID+svcID2...------------------------------------------+
                            '-set--scID+scID2...:svcID+svcID2...----metric--mN----+-requeststring--string--+-'
                                                                                  +-responsestring--string-+
                                                                                  '-重試--numretries-------'
     
     
    

    新增
    新增服務程式給指定的顧問。
    scID (switchConsultantID)
    使用者定義用來代表顧問的字串。
    svcID (serviceID)
    使用者定義用來識別服務的字串。
    vsid
    虛擬服務識別碼關鍵字。
    virSvrID (virtualServerID)
    交換器上用以代表虛擬伺服器的號碼。
    vport
    虛擬埠關鍵字。
    virPortNum (virtualPortNumber)
    目前在交換器上所配置的服務的埠號。
    metrics
    指定在計算各測量單位之加權值及重要性時,所用的測量單位集。 重要性是以總數的百分比來表示。重要性的總和必須等於 100。測量單位可以是連線資料測量單位、應用程式通告器測量單位及測量單位伺服器測量單位的任意組合。 預設值為作用中連線 (activeconn) 及連線速率 (connrate) 測量單位,以及 50/50 的重要性。
    mN (測量單位名稱)
    識別將用來收集測量值以決定伺服器加權值的測量單位收集器的名稱。

    底下是有效測量單位名稱及其相關埠的清單。

    通告器名稱 通訊協定
    connect ICMP 12345
    db2 private 50000
    dns DNS 53
    ftp FTP 21
    http HTTP 80
    https SSL 443
    cachingproxy HTTP (透過 Caching Proxy) 80
    imap IMAP 143
    ldap LDAP 389
    nntp NNTP 119
    ping PING 0
    pop3 POP3 110
    smtp SMTP 25
    ssl SSL 443
    telnet Telnet 23
    WLM private 10,007
    activeconn
    connrate
    cpuload
    memload
    importance
    從 0 到 100 的數值,代表在計算伺服器加權值時這個測量單位的重要性。
    refresh
    以來自 Nortel Alteon Web Switch 的資訊重新整理服務。
    remove
    移除服務。
    report
    報告服務的性質。
    set
    設定服務的性質。
    metric
    設定已配置之測量單位的性質。
    mN (測量單位名稱)
    所要之測量單位的名稱。
    requeststring
    設定所指定的測量單位的要求字串。 此字串代表測量單位收集器所傳送,用以收集測量單位資訊的要求。
    string
    測量單位收集器傳給伺服器的要求字串。
    responsestring
    設定所指定的測量單位的回應字串。測量單位收集器會使用指定的回應字串, 來比較它從伺服器收到的回應,接著決定伺服器可用性。
    string
    測量單位收集器用來與收到的伺服器回應作比較的回應字串。
    重試
    「重試」可設定在將伺服器標示為當機之前能夠重試的次數。
    numretries
    一個大於或等於 0 的整數。建議這個值不要大於 3。如果沒有配置重試關鍵字,則重試的次數預設值為 0。

    範例


    附錄與後記


    附錄 A. GUI:一般指示

    在 Load Balancer 的圖形式使用者介面 (GUI) 中,其左側畫面會顯示一樹狀結構,最上層為 Load Balancer, Dispatcher、Content Based Routing (CBR)、Site Selector、Cisco CSS Controller 及 Nortel Alteon Controller 則為元件。

    如需強調各個不同元件之 Load Balancer GUI 的圖形範例,請參閱:

    圖 41. 顯示 GUI 樹狀結構並展開 Dispatcher 元件的圖形式使用者介面 (GUI)

    用於顯示 Dispatcher 元件之 GUI 樹狀結構的 Load Balancer 圖形式使用者介面

    圖 42. 顯示 GUI 樹狀結構並展開 CBR 元件的圖形式使用者介面 (GUI)

    用於顯示 CBR 元件之 GUI 樹狀結構的 Load Balancer 圖形式使用者介面

    圖 43. 顯示 GUI 樹狀結構並展開 Site Selector 元件的圖形式使用者介面 (GUI)

    用於顯示 Site Selector 元件之 GUI 樹狀結構的 Load Balancer 圖形式使用者介面

    圖 44. 顯示 GUI 樹狀結構並展開 Cisco CSS Controller 元件的圖形式使用者介面 (GUI)

    用於顯示 Cisco CSS Controller 元件之 GUI 樹狀結構的 Load Balancer 圖形式使用者介面

    圖 45. 顯示 GUI 樹狀結構並展開 Nortel Alteon Controller 元件的圖形式使用者介面 (GUI)

    用於顯示 Nortel Alteon Controller 元件之 GUI 樹狀結構的 Load Balancer 圖形式使用者介面

    所有元件都可以從 GUI 來配置。 您可以藉由按一下滑鼠按鍵 1 (通常是左鍵) 來選取樹狀結構中的元素,然後藉由按一下滑鼠按鍵 2 (通常是右鍵) 來顯示蹦現功能表。 您也可以從畫面頂端的功能表列中存取樹狀結構元素的蹦現功能表。

    按一下樹狀結構中的加號或減號則可展開或收縮相關項目。

    若要從 GUI 執行指令:請高亮度顯示 GUI 樹狀結構中的「主電腦」節點,並從「主電腦」蹦現功能表中選取傳送指令....。 在指令輸入欄位中,鍵入要執行的指令,例如:executor report。 您在現行階段作業中所執行的指令,其結果及歷程將出現在所提供的視窗中。

    畫面右邊會顯示目前所選取之元素的狀態指示器標籤。

    若要存取說明,可按一下 Load Balancer 視窗右上角的問號 (?)。


    附錄 B. 內容規則 (型樣) 語法

    本附錄將說明如何使用 CBR 元件及 Dispatcher 元件之 cbr 轉送方法的內容規則 (型樣) 語法,以及有關其用法的情節與範例。


    內容規則 (型樣) 語法:

    此語法只有當您選取了「內容」當作規則類型後才適用。

    請輸入您想使用的型樣語法,但須注意下列限制:

    保留的關鍵字

    保留關鍵字後面一定會接著一個等號 (=)。

    Method
    要求中的 HTTP 方法,例如 GET、POST 等。

    URI
    URL 要求的路徑

    Version
    特定的要求版本,HTTP/1.0 或 HTTP/1.1

    Host
    來自 host: 表頭的值。

    註:
    HTTP/1.0 通信協定的選用項目

    <key>
    Dispatcher 可搜尋的任何有效 HTTP 表頭名稱。例如,User-Agent、Connection、Referer 等。

    http://www.company.com/path/webpage.htm 為目標的瀏覽器可能會得到下列值:

    Method=GET
    URI=/path/webpage.htm
    Version=HTTP/1.1
    Host=www.company.com
    Connection=Keep-Alive
    Referer=http://www.company.com/path/parentwebpage.htm
    
    註:
    作業系統的 Shell 會解譯特殊字元,例如 ampersand (&),並在 cbrcontrol 加以評估前將其轉換成替代文字。

    例如,下列指令只在使用 cbrcontrol>> 提示時才屬有效。

    rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern client=181.0.153.222&uri=/nipoek/*
    

    使用特殊字元時,若要使此同一指令能在作業系統的提示下作用,須在型樣前後加上雙引號 (" "),如下所示:

    cbrcontrol rule add 10.1.203.4:80:cbr_prod_rule_ek type content
      pattern "client=181.0.153.222&uri=/nipoek/*"
    

    如果未使用引號,當規則存入 CBR 時,部份型樣將遭截斷。 請注意:使用 cbrcontrol>> 指令提示時,引號並不被支援。

    以下是使用型樣語法時的一些可能情節與範例

    情節 1:

    叢集名稱的設定涉及一組 Web 伺服器負責處理標準 HTML 內容,另一組具備 WebSphere Application Server 的 Web 伺服器處理 servlet 要求,另一組 Lotus Notes 伺服器處理 NSF 檔案,依此類推。 要分辨這些所要求的頁面,必須存取從屬站的資料。還須將其傳送給適當的伺服器。 內容型樣相符規則可提供完成此類作業所需的分隔。 其間配置了一系列的規則,所以必需的要求分隔將自動發生。 例如,下列指令會完成所提的三項分割:

    >>rule add cluster1:80:servlets type content pattern uri=*/servlet/* priority 1
    >>rule uses cluster1:80:servlets server1+server2
    

    >>rule add cluster1:80:notes type content pattern uri=*.nsf* priority 2
    >>rule uses cluster1:80:notes server3+server4
    

    >>rule add cluster1:80:regular type true priority 3
    >>rule uses cluster1:80:regular server5+server6
    

    若一 NSF 檔案的要求送達 Load Balancer,首先檢查的是 servlets 規則,但並不相符。 此要求接著由附註規則加以檢查,並回報符合。 從屬站即在 server3 及 server4 之間進行平衡負載。

    情節 2

    另一個常見的情節發生在主要網站控制了數個獨特的內部群組時。 例如, www.company.com/software 涉及了來自 www.company.com/hardware 部門的不同伺服器組及內容。 由於要求都是發自 root www.company.com 叢集,因此需要內容規則來查明 URI 差異並完成平衡負載。 此情節的規則與下列者類似:

    >>rule add cluster1:80:div1 type content pattern uri=/software/* priority 1
    >>rule uses cluster1:80:div1 server1+server2
    

    >>rule add cluster1:80:div2 type content pattern uri=/hardware/* priority 2
    >>rule uses cluster1:80:div2 server3+server4
    

    情節 3

    某些組合對各規則的搜尋順序極為敏感。 例如,在情節 2 中,從屬站會根據其要求路徑中的目錄來分割; 不過,目標目錄可能會出現在該路徑的多個層次,而放置處不同其意義亦不同。 例如,www.company.com/pcs/fixes/softwarewww.company.com/mainframe/fixes/software 便是不同的目標。 故必須定義規則來處理此可能性,而不要在同一時刻應付過多情節。 例如,『uri=*/software/*』 測試對此情況即為過於廣泛的萬用字元搜尋。 選擇方案規則可用下列方式來架構:

    透過組合搜尋來縮小範圍:

    >>rule add cluster1:80:pcs type content pattern (uri=/pcs/*)&(uri=*/software/*)
    >>rule uses cluster 1:80:pcs server1
    

    若無任何組合可用時,順序就變得很重要:

    >>rule add cluster1:80:pc1 type content pattern uri=/pcs/*
    >>rule uses cluster1:80:pc1 server2
    

    當 『pcs』 出現在稍後的目錄點而非第一個時,第二個規則即接手。

    >>rule add cluster1:80:pc2 type content pattern uri=/*/pcs/*
    >>rule uses cluster1:80:pc2 server3
    

    幾乎大多數的情況下,您會想用預設的永久為真規則來完成規則,以應付其它規則無法處理的任何狀況。 對於所有其它伺服器皆無法服務此從屬站的情節,這也可以是 『對不起,站台目前已當機,請稍後再試』伺服器。

    >>rule add cluster1:80:sorry type true priority 100
    >>rule uses cluster1:80:sorry server5
    

    附錄 C. 配置檔範例

    本附錄包含了 Load Balancer 的 Dispatcher 元件的範例配置檔。


    範例 Load Balancer 配置檔

    範例檔位在 ...ibm/edge/lb/servers/samples/ 目錄中。

    Dispatcher 配置檔--AIX、Red Hat Linux 及 Solaris

    #!/bin/bash
    #
    # configuration.sample - Sample configuration file for the
    Dispatcher component
    #
    #
    # Ensure the root user is the one executing this script.
    #
    # iam=`whoami`
     
    # if [ "$iam" != "root" ]if [ "$iam" != "root" ]
    #  then 
    #  echo "You must login as root to run this script"
    #   exit 2
    # fi 
     
    #
    # First start the server
    #
    # dsserver start
    # sleep 5
     
    #
    # Then start the executor
    #
    # dscontrol executor start
     
    #
    #  The Dispatcher can be removed at any time using the 
    # "dscontrol executor stop" and "dsserver stop" commands to
    # stop the executor and server respectively prior to removing 
    # the Dispatcher software.
    #
    # The next step in configuring the Dispatcher is to set the 
    # NFA (non-forwarding address) and the cluster address(es).
    #
    # The NFA is used to remotely access the Dispatcher machine 
    # for administration or  configuration purposes.  This 
    # address is required since the Dispatcher will forward  packets 
    # to the cluster address(es).
    # 
    # The CLUSTER address is the hostname (or IP address) to 
    # which remote clients will connect.
    #
    # Anywhere in this file, you may use hostnames and IP 
    # addresses interchangeably.
    #
     
    # NFA=hostname.domain.name
    # CLUSTER=www.yourcompany.com
     
    # echo "Loading the non-forwarding address"
    # dscontrol executor set nfa $NFA
     
    #
    #  The next step in configuring the Dispatcher is to create
    # a cluster.  The Dispatcher will route requests sent to 
    # the cluster address to the corresponding server machines
    # defined to that cluster.  You may configure and server 
    # multiple cluster address using Dispatcher. 
     
    # Use a similar configuration for CLUSTER2, CLUSTER3, etc.
    #
     
    # echo "Loading first CLUSTER address "
    # dscontrol cluster add $CLUSTER
     
    #
    # Now we must define the ports this cluster will use.  Any
    # requests received by the Dispatcher on a defined port will 
    # be forwared to the corresponding port of one of the server 
    # machines.
    #
     
    # echo "Creating ports for CLUSTER: $CLUSTER"
     
    # dscontrol port add $CLUSTER:20+21+80
     
    #
    # The last step is to add each of the server machines to the 
    # ports in this cluster.
    # Again, you can use either the hostname or the IP address 
    # of the server machines.
    #
     
    # SERVER1=server1name.domain.name
    # SERVER2=server2name.domain.name 
    # SERVER3=server3name.domain.name
     
    # echo "Adding server machines"
    # dscontrol server add $CLUSTER:20+21+80:
    # $SERVER1+$SERVER2+$SERVER3
     
    #
    #  We will now start the load balancing components of the
    # Dispatcher.  The main load  balancing component is called
    # the manager and the second load balancing components are the 
    # advisors.  If the manager and advisors are not running the 
    # Dispatcher sends requests in a round-robin format.  Once the
    # manager is started, weighting decisions based on the number
    # of new and active connections is employed and incoming 
    # requests are sent to the best server.  The advisors give the 
    # manager further insight into a servers ability to service
    # requests as well as detecting whether a server is up.  If
    # an advisor detects that a server is down it will be
    # marked down (providing the manager proportions have been
    # set to include advisor input) and no further requests will be
    #
     
    #  The last step in setting up the load balancing components 
    # is to set the manager proportions.  The manager updates the 
    # weight of each of the servers based on four policies:
    #   1. The number of active connections on each server.
    #   2. The number of new connections to each server.
    #   3. Input from the advisors.
    #   4. Input from the system level advisor.
    # These proportions must add up to 100.  As an example, setting
    # the manager proportions to
    #    dscontrol manager proportions 48 48 0 0
    # will give active and new connections 48% input into the 
    # weighting decision, the advisors will contribute 4% and 
    # the system input will not be considered.
    #
    # NOTE: By default the manager proportions are set to 50 50 0 0
    #
     
    # echo "Starting the manager..."
    # dscontrol manager start
     
    # echo "Starting the FTP advisor on port 21 ..."
    # dscontrol advisor start ftp 21
    # echo "Starting the HTTP advisor on port 80 ..."
    # dscontrol advisor start http 80
    # echo "Starting the Telnet advisor on port 23 ..."
    # dscontrol advisor start telnet 23
    # echo "Starting the SMTP advisor on port 25 ..."
    # dscontrol advisor start smtp 25
    # echo "Starting the POP3 advisor on port 110 ..."
    # dscontrol advisor start pop3 110
    # echo "Starting the NNTP advisor on port 119 ..."
    # dscontrol advisor start nntp 119
    # echo "Starting the SSL advisor on port 443 ..."
    # dscontrol advisor start ssl 443
    #
     
    # echo "Setting the manager proportions..."
    # dscontrol manager proportions 58 40 2 0
     
    #
    # The final step in setting up the Dispatcher machine is to 
    # alias the Network Interface Card (NIC).
    #
    # NOTE: Do NOT use this command in a high availability
    # environment.  The go* scripts will configure the NIC and 
    # loopback as necessary.
    # dscontrol executor configure $CLUSTER
     
    #  If your cluster address is on a different NIC or subnet 
    from the NFA use the following format for the cluster configure 
    command.
    #  dscontrol executor configure $CLUSTER tr0 0xfffff800
    # where tr0 is your NIC (tr1 for the second token ring card, en0 
    # for the first ethernet card) and 0xfffff800 is a valid 
    # subnet mask for your site.
    #
     
    #
    # The following commands are set to the default values.
    # Use these commands as a guide to change from the defaults.
    #  dscontrol manager loglevel    1
    #  dscontrol manager logsize     1048576
    #  dscontrol manager sensitivity 5.000000
    #  dscontrol manager interval    2
    #  dscontrol manager refresh     2
    #
    #  dscontrol advisor interval ftp  21  5
    #  dscontrol advisor loglevel ftp  21  1
    #  dscontrol advisor logsize  ftp  21  1048576
    #  dscontrol advisor timeout  ftp  21  unlimited
    #  dscontrol advisor interval telnet 23 5
    #  dscontrol advisor loglevel telnet 23 1
    #  dscontrol advisor logsize  telnet 23 1048576
    #  dscontrol advisor timeout  telnet 23 unlimited
    #  dscontrol advisor interval smtp 25  5
    #  dscontrol advisor loglevel smtp 25  1
    #  dscontrol advisor logsize  smtp 25  1048576
    #  dscontrol advisor timeout  smtp 25  unlimited
    #  dscontrol advisor interval http 80  5
    #  dscontrol advisor loglevel http 80  1
    #  dscontrol advisor logsize  http 80  1048576
    #  dscontrol advisor timeout  http 80  unlimited
    #  dscontrol advisor interval pop3 110 5
    #  dscontrol advisor loglevel pop3 110 1
    #  dscontrol advisor logsize  pop3 110 1048576
    #  dscontrol advisor timeout  pop3 110 unlimited
    #  dscontrol advisor interval nntp 119 5
    #  dscontrol advisor loglevel nntp 119 1
    #  dscontrol advisor logsize  nntp 119 1048576
    #  dscontrol advisor timeout  nntp 119 unlimited
    #  dscontrol advisor interval ssl  443 5
    #  dscontrol advisor loglevel ssl  443 1
    #  dscontrol advisor logsize  ssl  443 1048576
    #  dscontrol advisor timeout  ssl  443 unlimited
    #
     
    

    Dispatcher 配置檔--Windows

    以下所列是搭配 Window 使用的範例 Load Balancer 配置檔,稱之為 configuration.cmd.sample

    @echo off
    rem configuration.cmd.sample - Sample configuration file for the
    rem Dispatcher component.
    rem
     
    rem dsserver must be started via Services
     
    rem
     
    rem
    rem Then start the executor
    rem
    rem call dscontrol executor start
     
    rem
     
    rem The next step in configuring the Dispatcher is to set the
    rem NFA (non-forwarding address) and to set the cluster 
    rem address(es).
    rem
     
    rem The NFA is used to remotely access the Dispatcher 
    rem machine for administration configuration purposes.  This 
    rem address is required since the Dispatcher will forward 
    rem packets to the cluster address(es).
     
    rem
    rem The CLUSTER address is the hostname (or IP address) to which 
    rem remote clients will connect.
    rem
     
    rem Anywhere in this file, you may use hostnames and IP 
    rem addresses interchangeably. 
    rem  NFA=[non-forwarding address]
    rem CLUSTER=[your clustername]
    rem
     
    rem set NFA=hostname.domain.name
    rem set CLUSTER=www.yourcompany.com
     
    rem echo "Loading the non-forwarding address"
    rem call dscontrol executor set nfa %NFA%
     
    rem
    rem The following commands are set to the default values.
    rem Use these commands to change the defaults
     
    rem  call dscontrol executor set fintimeout 30
    rem  call dscontrol executor set fincount 4000
    rem
    rem The next step in configuring the Dispatcher is to create
    rem a cluster.  The Dispatcher will route requests sent to 
    rem the cluster address to the corresponding server machines 
    rem defined to that cluster.  You may configure and server
    rem multiple cluster addresses using Dispatcher.
    rem Use a similar configuration for CLUSTER2, CLUSTER3, etc.
    rem
     
    rem echo "Loading first CLUSTER address "
    rem call dscontrol cluster add %CLUSTER%
     
    rem
    rem Now we must define the ports this cluster will use. Any 
    rem requests received by the Dispatcher on a defined port 
    rem will be forwarded to the corresponding
    rem port of one of the server machines.
    rem
     
    rem echo "Creating ports for CLUSTER: %CLUSTER%"
    rem call dscontrol port add %CLUSTER%:20+21+80
     
    rem
    rem The last step is to add each of the server machines to 
    rem the ports in this cluster.  Again, you can use either the 
    rem hostname or the IP address of the server machines.
    rem
     
    rem set SERVER1=server1name.domain.name
    rem set SERVER2=server2name.domain.name
    rem set SERVER3=server3name.domain.name
     
    rem echo "Adding server machines"
    rem call dscontrol server add %CLUSTER%:20+21+80:
    rem %SERVER1%+%SERVER2%+%SERVER3%
     
    rem
    rem  We will now start the load balancing components of the 
    rem Dispatcher.  The main load balancing component is called 
    rem the manager and the second load balancing components are the 
    rem advisors.  If the manager and advisors are not
    rem running the Dispatcher sends requests in a round-robin 
    rem format.  Once the manager is started, weighting decisions 
    rem based on the number of new and active connections is 
    rem employed and incoming requests are sent to the best
    rem server.  The advisors give the manager further insight 
    rem into a servers ability to service requests as well as 
    rem detecting whether a server is up.  If an advisor detects 
    rem that a server is down it will be marked down (providing the
    rem manager proportions have been set to include advisor 
    rem input) and no further requests will be routed to the server.
    rem The last step in setting up the load balancing 
    rem components is to set the manager proportions.  The 
    rem manager updates the weight of each of the servers based 
    rem on four policies:
     
    rem   1.  The number of active connections on each server
    rem   2.  The number of new connections for each server
    rem   3.  Input from the advisors.
    rem   4.  Input from the system level advisor.
    rem
    rem  These proportions must add up to 100.  As an example, 
    rem  setting the cluster proportions via
    rem      dscontrol cluster set <cluster> proportions 48 48 4 0
    rem  will give active and new connections 48% input into the
    rem  weighting decision, the advisor will contribute 4% and
    rem  the system input will not be considered.
    rem
    rem NOTE: By default the manager proportions are set to
    rem 50 50 0 0
     
    rem echo "Starting the manager..."
    rem call dscontrol manager start
     
    rem echo "Starting the FTP advisor on port 21 ..."
    rem call dscontrol advisor start ftp 21
    rem echo "Starting the HTTP advisor on port 80 ..."
    rem call dscontrol advisor start http 80
    rem echo "Starting the Telnet advisor on port 23 ..."
    rem call dscontrol advisor start telnet 23
    rem echo "Starting the SMTP advisor on port 25 ..."
    rem call dscontrol advisor start smtp 25
    rem echo "Starting the POP3 advisor on port 110 ..."
    rem call dscontrol advisor start pop3 110
    rem echo "Starting the NNTP advisor on port 119 ..."
    rem call dscontrol advisor start nntp 119
    rem echo "Starting the SSL advisor on port 443 ..."
    rem call dscontrol advisor start ssl 443
    rem
     
    rem echo "Setting the cluster proportions..."
    rem call dscontrol cluster set %CLUSTER% proportions 58 40 2 0
     
    rem
    rem The final step in setting up the Dispatcher machine is
    rem  to alias the Network Interface Card (NIC).
    rem
    rem NOTE: Do NOT use this command in a high availability 
    rem environment.  The go* scripts will configure the NIC and 
    rem loopback as necessary.
    rem
    rem dscontrol executor configure %CLUSTER%
     
    rem  If your cluster address is on a different NIC or subnet
    rem  from the NFA use the following format for the cluster 
    rem  configure command.
    rem  dscontrol executor configure %CLUSTER% tr0 0xfffff800
    rem  where tr0 is your NIC (tr1 for the second token ring card,
    rem  en0 for the first ethernet card) and 0xfffff800 is 
    rem  a valid subnet mask for your site.
    rem
     
    rem
    rem The following commands are set to the default values.
    rem Use these commands to guide to change from the defaults.
    rem call dscontrol manager loglevel    1
    rem call dscontrol manager logsize     1048576
    rem call dscontrol manager sensitivity 5.000000
    rem call dscontrol manager interval    2
    rem call dscontrol manager refresh     2
    rem
    rem call dscontrol advisor interval ftp  21  5
    rem call dscontrol advisor loglevel ftp  21  1
    rem call dscontrol advisor logsize  ftp  21  1048576
    rem call dscontrol advisor timeout  ftp  21  unlimited
    rem call dscontrol advisor interval telnet 23 5
    rem call dscontrol advisor loglevel telnet 23 1
    rem call dscontrol advisor logsize  telnet 23 1048576
    rem call dscontrol advisor timeout  telnet 23 unlimited
    rem call dscontrol advisor interval smtp 25  5
    rem call dscontrol advisor loglevel smtp 25  1
    rem call dscontrol advisor logsize  smtp 25  1048576
    rem call dscontrol advisor timeout  smtp 25  unlimited
    rem call dscontrol advisor interval http 80  5
    rem call dscontrol advisor loglevel http 80  1
    rem call dscontrol advisor logsize  http 80  1048576
    rem call dscontrol advisor timeout  http 80  unlimited
    rem call dscontrol advisor interval pop3 110 5
    rem call dscontrol advisor loglevel pop3 110 1
    rem call dscontrol advisor logsize  pop3 110 1048576
    rem call dscontrol advisor timeout  pop3 110 unlimited
    rem call dscontrol advisor interval nntp 119 5
    rem call dscontrol advisor loglevel nntp 119 1
    rem call dscontrol advisor logsize  nntp 119 1048576
    rem call dscontrol advisor timeout  nntp 119 unlimited
    rem call dscontrol advisor interval ssl  443 5
    rem call dscontrol advisor loglevel ssl  443 1
    rem call dscontrol advisor logsize  ssl  443 1048576
    rem call dscontrol advisor timeout  ssl  443 unlimited
    rem
     
    

    範例通告器

    以下是範例通告器檔案,名稱為 ADV_sample

    /**
     * ADV_sample:  The Load Balancer HTTP advisor
     * 
     * 
     * This class defines a sample custom advisor for Load Balancer.  Like all
     * advisors, this custom advisor extends the function of the advisor base,
     * called ADV_Base.  It is the advisor base that actually performs most of
     * the advisor's functions, such as reporting loads back to the Load Balancer
     * for use in the Load Balancer's weight algorithm.  The advisor base also
     * performs socket connect and close operations and provides send and receive
     * methods for use by the advisor.  The advisor itself is used only for
     * sending and receiving data to and from the port on the server being
     * advised.  The TCP methods within the advisor base are timed to calculate
     * the load.  A flag within the constructor in the ADV_base overwrites the
     * existing load with the new load returned from the advisor if desired.
     *
     * Note: Based on a value set in the constructor,  the advisor base supplies
     * the load to the weight algorithm at specified intervals.  If the actual
     * advisor has not completed so that it can return a valid load, the advisor
     * base uses the previous load.
     *  
     * NAMING
     * 
     * The naming convention is as follows:
     *
     *  - The file must be located in the following Load Balancer directory:
     *   
     *    lb/servers/lib/CustomAdvisors/ (lb\servers\lib\CustomAdvisors on Windows)
     *
     * - The Advisor name must be preceded with "ADV_".  The advisor can be
     *    started with only the name, however; for instance, the "ADV_sample"
     *    advisor can be started with "sample".
     *
     * - The advisor name must be in lowercase.
     *
     *  With these rules in mind, therefore, this sample is referred to as:
     * 
     *             <base directory>/lib/CustomAdvisors/ADV_sample.class
     *
     *
     
    

     * Advisors, as with the rest of Load Balancer, must be compiled with the
     * prereq version of Java.  To ensure access to Load Balancer classes, make
     * sure that the ibmnd.jar file (located in the lib subdirectory of the base
     * directory) is included in the system's CLASSPATH.
     *
     * Methods provided by ADV_Base:
     * 
     * - ADV_Base (Constructor):
     *
     *   - Parms
     *     - String sName = Name of the advisor
     *     - String sVersion = Version of the advisor
     *     - int iDefaultPort = Default port number to advise on
     *     - int iInterval = Interval on which to advise on the servers
     *     - String sDefaultLogFileName = Unused.  Must be passed in as "".
     *     - boolean replace = True - replace the load value being calculated
     *                                by the advisor base
     *                         False - add to the load value being calculated
     *                                 by the advisor base
     *   - Return
     *     - Constructors do not have return values.
     *
     * Because the advisor base is thread based, it has several other methods
     * available for use by an advisor.  These methods can be referenced using
     * the CALLER parameter passed in getLoad().
     *
     * These methods are as follows:
     * 
     * - send - Send a packet of information on the established socket connection
     *           to the server on the specified port.
     *   - Parms
     *     - String sDataString - The data to be sent in the form of a string
     *   - Return
     *     - int RC - Whether the data was sucessfully sent or not: zero indicates
     *                 data was sent; a negative integer indicates an error.
     * 
     * - receive - Receive information from the socket connection.
     *   - Parms
     *     - StringBuffer sbDataBuffer - The data received during the receive call
     *   - Return
     *     - int RC - Whether the data was successfully received or not; zero
     *                indicates data was sent; a negative integer indicates
     *                an error.
     *
     * If the function provided by the advisor base is not sufficient,
     * you can create the appropriate function within the advisor and
     * the methods provided by the advisor base will then be ignored.
     *
     * An important question regarding the load returned is whether to apply
     * it to the load being generated within the advisor base,
     * or to replace it; there are valid instances of both situations.
     * 
     * This sample is essentially the Load Balancer HTTP advisor. It functions
     * very simply: a send request--an http head request--is issued.  Once a
     * response is received, the getLoad method terminates, flagging the advisor
     * base to stop timing the request.  The method is then complete.  The
     * information returned is not parsed; the load is based on the time
     * required to perform the send and receive operations.
     */
     
    package CustomAdvisors;
    import com.ibm.internet.nd.advisors.*;
     
    public class ADV_sample extends ADV_Base implements ADV_MethodInterface
    {
      String COPYRIGHT = "(C) Copyright IBM Corporation 1997, All Rights Reserved.\n";
      static final String  ADV_NAME              = "Sample";
      static final int     ADV_DEF_ADV_ON_PORT   = 80;
      static final int     ADV_DEF_INTERVAL      = 7;
     
      // Note: Most server protocols require a carriage return ("\r") and line
      //       feed ("\n") at the end of messages.  If so, include them in
      //       your string here.
      static final String  ADV_SEND_REQUEST      =
        "HEAD / HTTP/1.0\r\nAccept: */*\r\nUser-Agent: " +
        "IBM_Load_Balancer_HTTP_Advisor\r\n\r\n";
     
      /**
       * Constructor.
       *
       * Parms:  None; but the constructor for ADV_Base has several parameters
       *         that must be passed to it.
       *
       */
      public ADV_sample()
      {
        super( ADV_NAME,
    		   "2.0.0.0-03.27.98",
               ADV_DEF_ADV_ON_PORT,
               ADV_DEF_INTERVAL,
               "",     // not used
               false);
        super.setAdvisor( this );
      }
     
     
      /**
       * ADV_AdvisorInitialize
       *
       * Any Advisor-specific initialization that must take place after the
       * advisor base is started. This method is called only once and is
       * typically not used.
       */
      public void ADV_AdvisorInitialize()
      {
        return;
      }
     
     
      /**
       * getLoad()
       *
       * This method is called by the advisor base to complete the advisor's
       * operation, based on details specific to the protocol.  In this sample
       * advisor, only a single send and receive are necessary; if more complex
       * logic is necessary, multiple sends and receives can be issued.  For
       * example, a response might be received and parsed.  Based on the
       * information learned thereby, another send and receive could be issued.
       *
       * Parameters:
       * 
       * - iConnectTime - The current load as it refers to the length of time it
       *                  took to complete the connection to the server through
     *          the specified port.
       *
       * - caller - A reference to the advisor base class where the Load
       *            Balancer-supplied methods are to perform simple TCP requests,
       *            mainly send and receive.
       *
       * Results:
       *
       * - The load - A value, expressed in milliseconds, that can either be added
       *   to the existing load, or that can replace the existing load, as
       *   determined by the constructor's "replace" flag.
       *
       *   The larger the load, the longer it took the server to respond; 
       *   therefore, the lower the weight will become within the Load Balancer.
       *
       *   If the value is negative, an error is assumed.  An error from an
       *   advisor indicates that the server the advisor is trying to reach is not
       *   accessible and has been identified as being down.  Load Balancer will
       *   not attempt to load balance to a server that is down. Load Balancer will
       *   resume load balancing to the server when a positive value is received.
       *
       */
      public int getLoad(int iConnectTime, ADV_Thread caller)
      {
    	int iRc;
    	int iLoad = ADV_HOST_INACCESSIBLE;  // -1
     
    	// Send tcp request
    	iRc = caller.send(ADV_SEND_REQUEST);
    	if (iRc >= 0)
        {
    		// Perform a receive
    		StringBuffer sbReceiveData = new StringBuffer("");
    		iRc = caller.receive(sbReceiveData);
     
          /**
          *  In the normal advisor mode ("replace" flag is false), the load
          *  returned is either 0 or 1 indicating the server is up or down.
          *  If the receive is successful, a load of zero is returned
          *  indicating that the load built within the base advisor is to be used.
          * 
          *  Otherwise ("replace" flag is true), return the desired load value.
          */
     
    	if (iRc >= 0)
          {
    			iLoad = 0;
          }
        }
    	return iLoad;
      }
     
    } // End - ADV_sample
     
    

    附錄 D. 使用 Dispatcher、CBR 及 Caching Proxy 的兩層高可用性配置範例

    本附錄將說明如何設定兩層高可用性配置, 結合兩個 Load Balancer 元件 (Dispatcher 元件與 CBR 元件) 以及 Caching Proxy 的功能。


    伺服器機器設定

    圖 46. 使用 Dispatcher、CBR 及 Caching Proxy 的兩層高可用性配置範例

    使用 Dispatcher、CBR 及 Caching Proxy 的高可用性配置

    圖 46 的伺服器機器設定如下:

    圖 46 所示為多個伺服器 (EdgeServer1、EdgeServer2、EdgeServer3) 針對多個後端 Web 伺服器進行平衡負載時的基本呈現。 CBR 元件是根據 URL 的內容,利用 Caching Proxy 將要求轉送給後端 Web 伺服器。 Dispatcher 元件是用來跨 EdgeServers 來平衡負載 CBR 元件。 Dispatcher 元件的高可用性特性則是用於確保相關要求會隨時持續地送達後端伺服器,即使主要高可用性機器 (EdgeServer1) 發生故障。

    基本配置指南:

    註:
    1. 若要避免後端伺服器位址顯示在從屬站上的 URL 中, 您將需要在 Caching Proxy 配置檔中,為每一個後端伺服器位址設定 ReversePass 指引。
    2. 為確保有效使用 Web 記憶體快取,請在 Caching Proxy 配置檔中,將 "Caching" 指引設成 "ON"',並將 "CacheMemory" 指引調高到所需的大小。
    3. 附註 1-2 (上方) 所指的範例行:
      Caching              ON
      CacheMemory          128000 K
      ReversePass /* http://websrvA.company.com/* http://www.company.com/*
      
    4. 請記得為 EdgeServer1 之網路介面卡上的叢集位址建立別名,並為其餘 EdgeServers 上的迴圈裝置建立其叢集位址的別名。
    5. 如果針對 EdgeServers 使用 Linux 平台,您必須安裝 Linux 核心程式的修補程式。 進一步資訊,請參閱安裝 Linux 核心修補程式 (以便不顯示迴圈介面上的 arp 回應)
    6. 對 CBR 而言,使用內容規則時不得使用埠相關性 (stickytime),否則當處理送至後端 Web 伺服器的要求時,此內容規則將無法啟動。

    範例配置檔:

    下列範例配置檔即類似於設定 Edge 元件配置時所建立的檔案,如圖 46 中所示。 此範例配置檔代表了 Load Balancer 之 Dispatcher 及 CBR 元件的檔案。 在此範例配置中,各 EdgeServer 機器皆使用了單一乙太網路配接卡, 而所有位址皆呈現在專用子網路中。 此範例配置檔對指定之機器使用了下列 IP 位址:

    主要高可用性 EdgeServer 上之 Dispatcher 元件的範例配置檔:

    dscontrol executor start
     
    dscontrol cluster add 192.168.1.11 primaryhost 192.168.1.10
     
    dscontrol port add 192.168.1.11:80
     
    dscontrol server add 192.168.1.11:80:edgeserver1 address 192.168.1.10
     
    dscontrol server add 192.168.1.11:80:edgeserver2 address 192.168.1.20
     
    dscontrol server add 192.168.1.11:80:edgeserver3 address 192.168.1.30
     
    dscontrol manager start manager.log 10004
     
    dscontrol highavailability heartbeat add 192.168.1.10 192.168.1.20
    dscontrol highavailability backup add primary auto 4567
     
     
    

    EdgeServers 上之 CBR 元件的範例配置檔:

    cbrcontrol set loglevel 1
    cbrcontrol executor start
     
    cbrcontrol cluster add 192.168.1.11
     
    cbrcontrol port add 192.168.1.11:80
     
    cbrcontrol server add 192.168.1.11:80:webserverA address 192.168.1.71
     
    cbrcontrol server add 192.168.1.11:80:webserverB address 192.168.1.72
     
    cbrcontrol server add 192.168.1.11:80:webserverC address 192.168.1.73
     
    cbrcontrol rule add 192.168.1.11:80:webA_rule type content
      pattern (URI=*WSA*)|(URI=*wsA*) priority 21
    cbrcontrol rule useserver 192.168.1.11:80:webA_rule webserverA
     
    cbrcontrol rule add 192.168.1.11:80:webB_rule type content
      pattern (URI=/WS_B*) priority 22
    cbrcontrol rule useserver 192.168.1.11:80:webB_rule webserverB
     
    cbrcontrol rule add 192.168.1.11:80:webC_rule type content
      pattern URI=*webC* priority 23
    cbrcontrol rule useserver 192.168.1.21:80:webC_rule webserverC
     
    

    附錄 E. 注意事項

    本資訊是針對 IBM 在美國所提供之產品與服務開發出來的。

    而在其他國家中,IBM 不一定會提供本書中所提的各項產品、 服務、或功能。要知道在您所在地區是否可用到這些產品與服務時,請向當地的 IBM 服務代表查詢。 本書在提及 IBM 產品、程式或服務時,不表示或暗示只能使用 IBM 產品、程式或服務。 只要未侵犯 IBM 的智慧財產權,任何功能、產品或服務都可以取代 IBM 的產品。 不過,其他非 IBM 產品、程式或服務在運作上的評價與驗證,其責任屬於使用者。

    在這本書或文件中可能包含著 IBM 所擁有之專利或專利申請案。 本書使用者並不享有前述專利之任何授權。您可以用書面方式來查詢授權,來函請寄到:
    IBM Director of Licensing
    IBM Corporation
    500 Columbus Avenue
    Thornwood, NY 10594
    U.S.A.

    若要查詢有關二位元組 (DBCS) 資訊的特許權限事直,請聯絡您國家的 IBM 智慧財產部門, 或者用書面方式寄到:
    IBM World Trade Asia Corporation
    Licensing
    2-31 Roppongi 3-chome, Minato-ku
    Tokyo 106, Japan

    下列段落若與該國之法律條款抵觸,即視為不適用:

    IBM 只以「現狀」提供這份文件,並不提供任何明示或暗示的保證, 其中包括且不限於無侵權、可銷售性或特定目的之適用性的隱含保證。 若有些地區在某些交易上並不允許排除上述保證,則該排除無效。

    本書中可能會有技術上或排版印刷上的訛誤。 因此,IBM 會定期修訂;並將修訂後的內容納入新版或文件中。 同時,IBM 得隨時改進並 (或) 變動本書中所提及的產品及 (或) 程式。

    資訊中提供的非 IBM 網站僅供 貴客戶參考方便,絕不代表為那些網站背書。 那些網站上的內容並非本 IBM 產品內容的一部份, 貴客戶使用該網站時應自行承擔風險。

    IBM 得以各種適當的方式使用或散布由 貴客戶提供的任何資訊,而無需對您負責。

    本程式之獲授權者若希望取得相關資料, 以便使用下列資訊者可洽詢 IBM。 其下列資訊指的是: (1) 獨立開發的程式與其他程式 (包括本程式) 之間更換資訊的方式 (2) 相互使用已交換之資訊方法。 若有任何問題請聯繫:
    IBM Corporation
    Attn.: G7IA./503.
    P.O. Box 12195
    3039 Cornwallis Rd.
    Research Triangle Park, N.C. 27709-2195
    U.S.A.

    上述資料之取得有其特殊要件,在某些情況下必須付費方得使用。

    IBM 基於雙方之「IBM 國際程式授權合約」(或任何同等合約) 條款, 提供本文件中所述的授權程式與其所有適用的授權資料。

    這裡所包含的任何效能資料,都是在受控制的環境內而取得的。 因此,在其它作業環境中,所得的結果可能大大不同。 有些測定是在開發階段的系統上進行的,不過這並不保證在一般系統上會出現相同結果。 此外,有些測量結果可能是透過推測方式評估的。 實際結果結果可能會不同。 本文件的用戶應查證所屬環境是否適用這些資料。

    本書所提及之非 IBM 產品資訊,係一由產品的供應商,或其出版的聲明或其它 公開管道取得。IBM 並未測試過這些產品,也無法確認這些非 IBM 產品的執行效能、相容性或產品的任何其他主張是否完全無誤。 有關非 IBM 產品的性能問題應直接洽詢該產品供應商。

    有關 IBM 未來動向的任何陳述,只代表 IBM 的目標而已,並可能於未事先聲明的情況下有所變動或撤回。

    本資訊含有日常業務運作所用的資料報告範例。 為了盡可能地加以完整說明,範例中含有個人、公司、品牌及產品的名稱。 所有名稱均是虛構的, 如有任何名稱及地址與實際商業公司所使用的類似,純屬巧合。

    如果您閱讀本資訊軟本,照片及彩色圖例可能不會出現。


    商標

    下列術語為 IBM 公司在美國及 (或) 其它國家的註冊商標或商標:

    AFS

    AIX

    DFS

    IBM

    OS/2

    NetView

    RS/6000

    SecureWay

    ViaVoice

    WebSphere

    Lotus 及 WordPro 是國際商業機器股份有限公司 (IBM) 及 Lotus Development Corporation 在美國及 (或) 其它國家的商標。

    Tivoli 是 Tivoli Systems, Inc. 在美國及 (或) 其它國家的註冊商標。

    Java 及所有以 Java 為基礎的商標及標誌是 Sun Microsystems, Inc. 在美國及 (或) 其他國家的商標或註冊商標。

    Solaris 是 Sun Microsystems, Inc. 公司在美國及 (或) 其他國家的商標。

    Microsoft 及 Windows 2000 是 Microsoft Corporation 公司在美國及 (或) 其他國家的商標或註冊商標。

    UNIX 是 The Open Group 在美國及其他國家的註冊商標。

    其它用雙星號 (**) 標示的公司、產品和服務名稱, 可能是其它公司的商標或服務標記。

    其他公司、產品及服務名稱可能是其他公司的商標或服務標記。


    名詞解釋

    一劃

    乙太網路 (Ethernet)
    一個標準類型的區域網路 (LAN)。它可以讓許多工作站隨時存取傳輸媒體,毋須事先的協調; 可以使用載波感應及延遲以避免競爭;且可使用碰撞偵測和傳輸來解決競爭。雖然乙太網路系統所使用的軟體通信協定種類繁多,但已包括 TCP/IP 在內。

    二劃

    二進位記載 (binary logging)
    可將伺服器資訊儲存於二進位檔案中,再加以處理來分析過去所收集到的伺服器資訊。

    三劃

    子網路遮罩 (subnet mask)
    在 Internet 子網路中,用來識別 IP 位址之主電腦部份的子網路位址位元的 32 位元遮罩。

    四劃

    中斷連接 (mark down)
    切斷伺服器的所有作用中連線,並停止任何傳給該伺服器的新連線或封包。

    內部網路 (intranet)
    一種安全、專用的網路,其整合 Internet 標準及應用程式(如,Web 瀏覽器)與組織現有的電腦網路基本結構。

    五劃

    主要 (primary)
    在 Dispatcher 的高可用性中,一種作為積極遞送封包的機器。它的友機(備份機器)會監督主要機器的狀態,並在必要時,取而代之。 請參閱備份, 高可用性。

    主電腦 (host)
    一種與網路連接的電腦,可提供該網路的存取點。主電腦可以是從屬站、伺服器,或這兩者。

    主電腦名稱 (host name)
    指定給主電腦的符號名稱。主電腦名稱會透過網域名稱伺服器而解析為 IP 位址。

    代理程式 (agent)
    (1) 在系統管理中,使用者針對特定的互動所採用的代理角色。
    (2) 代表一或多個受管理物件的實體,以 (a) 發佈物件相關通知, 以及 (b) 處理管理程式之修改或查詢物件的管理作業要求。

    可調整的 (scalable)
    一種系統功能,隨時可以適應較大或較小的使用、容體或要求量。例如,可調整的系統可有效地與執行不同複雜性作業的大型或小型網路搭配運作。

    目的地位址 (destination address)
    通訊檢查訊息及回應所傳到的高可用性友機的位址。

    六劃

    共同高可用性 (mutual high availability)
    共同高可用性可讓兩台 Dispatcher 機器彼此作為對方的主要及備份機器。 亦請參閱備份 (backup)、高可用性 (high availability)、主要 (primary)。

    多重位址並列 (multiple address collocation)
    多重位址並列可讓客戶指定並列伺服器的位址,使其與配置中的非轉送位址 (NFA) 不同。 亦請參閱並置 (collocate)。

    七劃

    位址 (address)
    網路各連線裝置或工作站指派的專用碼。標準 IP 位址為 32 位元的位址欄位。 這個欄位有二個部份。第一個部份為網路位址; 第二個部份為主電腦編號。

    伺服器 (server)
    一種電腦,可提供共用服務程式給網路上其它電腦。 像是檔案伺服器、列印伺服器、或郵件伺服器等。

    伺服器位址 (server address)
    指派給每一部電腦的唯一字碼。該電腦可透過這一組字碼提供共用服務程式給網路上的其他電腦;例如檔案伺服器、列印伺服器或郵件伺服器。 標準 IP 位址為 32 位元的位址欄位。 此伺服器位址可以是帶點十進位 IP 位址或主電腦名稱。

    伺服器機器 (server machine)
    由 Dispatcher 與其它伺服器群組而成為單一、 虛擬伺服器的一種伺服器。Dispatcher 可平衡伺服器機器之間的資料傳輸。 與叢集伺服器同義。

    別名 (alias)
    指定給伺服器的其他名稱。別名可讓伺服器與其主電腦機器的名稱無關。別名且必須定義在網域名稱伺服器中。

    防火牆 (Firewall)
    將專用網路 (如業務) 連接到公用網路 (如 Internet) 的電腦。它包含了限制在兩個網路之間進行存取的程式。另請參閱 proxy 閘道 (proxy gateway)

    八劃

    並列 (collocate)
    Load Balancer 安裝在它平衡負載的同一機器上時。

    來源位址 (source address)
    在 Dispatcher 的高可用性中,傳送通訊檢查訊息之高可用性友機的位址。

    受管理的節點 (managed node)
    在 Internet 通訊中,含有網路管理代理程式的工作站、伺服器或路由器。在 Internet 通訊協定 (IP) 中,受管理的節點通常包含「簡易網路管理通訊協定 (SNMP)」代理程式。

    服務 (service)
    (1) 一或多個節點所提供的功能;例如,HTTP、FTP、Telnet。
    (2) 對於 Nortel Alteon Controller,服務是一般使用者從站台要求的功能或資訊。在一般使用者要求上,它是以虛擬 IP 位址及虛擬埠號來加以識別。 在交換器上,它是以整數的虛擬伺服器識別碼及虛擬埠號或服務名稱來加以識別。
    (3) 對於 Cisco CSS Consultant,服務是內容片段實際常駐的目的地位置。 例如,本端或遠端伺服器及埠。

    服務品質 (Quality of Service, QoS)
    是指網路服務程式之效能內容,包括產量、傳輸延遲及優先順序。 有些通訊協定允許將 QoS 基本需求併入封包或串流。

    九劃

    封包 (packet)
    在 Internet 上原始地與目的地之間,或是任何其他切換封包的網路上傳遞的資料單位。

    十劃

    站台名稱 (site name)
    站台名稱是一種不可解析的主電腦名稱 (從屬站會對其提出要求)。例如,某一網站對站台名稱 www.dnsload.com 配置了三個伺服器 (1.2.3.4、1.2.3.5 及 1.2.3.6)。 當一從屬站要求此站台名稱時,將解析這三個伺服器 IP 位址其中之一後傳回。此站台名稱必須為完整的網域名稱,例如:dnsload.com。 不完整的名稱如 dnsload,則是無效的站台名稱。

    迴圈介面 (loopback interface)
    一種介面,當資訊位址設定在同一系統的實體上時,會略過不必要的通訊功能。

    迴圈別名 (loopback alias)
    與迴圈介面有關的替代 IP 位址。 替代位址具有未在實際介面上公告的有用邊際效益。

    高可用性 (high availability)
    一種 Load Balancer 特性,可讓某一 Load Balancer 接管另一部份失效的功能。

    十一劃

    埠 (port)
    用來識別抽象通訊裝置的號碼。在預設的狀況下,Web 伺服器會使用埠 80。

    執行器 (executor)
    Load Balancer 的功能之一。執行器會將要求遞送至 TCP 或 UDP 伺服器, 而且也會監督新的、作用中及已完成的連線數目,並對已完成或重設的連線進行垃圾收集。執行器會對管理程式功能,提供新的和作用中連線。

    專用網路 (private network)
    一種個別網路,Dispatcher 可在其上與叢集伺服器通訊,以提高效能。

    常駐程式 (daemon)
    磁碟及執行監督程式。一個未明確涉及 (表示出來) 的程式,但靜候一些情況的發生。其理念在於條件的施加者不須知曉常駐程式正潛伏 (雖然程式多半只是因為知曉其將隱含地呼叫常駐程式時才會確認動作)。

    帶點十進數表示法 (dotted-decimal notation)
    32 位元整數的語法表示法,它是由四個 8 位元數字所構成,以 10 為基準且以句點(點)隔開。可用來代表 IP 位址。

    從屬站 (client)
    要求另一個電腦系統或處理提供服務的電腦系統或處理。例如,向 Lotus Domino Go Webserver 要求 HTML 文件的工作站或個人電腦即是該伺服器的從屬站。

    控制器 (controller)
    一個或多個顧問的集成。

    規則 (rule)
    在規則型平衡負載中,將伺服器組成群組,以根據目的地位址及埠以外的資訊來選擇伺服器的一種機制。

    規則類型 (rule type)
    在規則型平衡負載中,應進行評估以判斷規則是否為真的資訊指示器。

    通告器 (advisor)
    通告器是 Load Balancer 的一項功能。通告器將收集及分析來自個別伺服器的反饋信息, 並通知管理程式功能。

    通訊協定 (protocol)
    一組規則,可在通訊發生時管理通訊系統的功能單元作業。通訊協定可以判斷機器對機器介面的低階明細,例如,來自位元組之位元傳送順序;也可以判斷應用程式之間的高階交換,例如,檔案轉送。

    通訊檢查訊息 (heartbeat)
    以備用的 Load Balancer 所使用的高可用性模式, 在兩台 Load Balancer 機器間傳送的簡式封包,可監督使用中 Load Balancer 的狀況。

    連繫 (reach)
    Dispatcher 中的一種通告器,會向給定的目標發出 ping 指令,並報告目標有無回應。

    連繫位址 (reach address)
    在 Dispatcher 之高可用性中的目標位址,通告器應向它發出 ping 指令,以查看目標有無回應。

    十二劃

    備份 (backup)
    在 Dispatcher 的高可用性下,主要機器的友機。它會監督主要機器的狀態,並在必要時,取而代之。 也請參閱高可用性,主要。

    測量單位 (metric)
    一個處理或指令,會傳回一個數值,供網路平衡負載之用;例如目前登入的使用者數目。

    測量單位收集器 (metric collector)
    常駐在顧問並負責收集測量單位。

    測量單位位址 (metric address)
    測量單位伺服器連結的位址。

    策略 (strategy)
    在 Dispatcher 的高可用性中的一種關鍵字,用來指定作用中的機器失效後所採取的復原動作。

    結束範圍 (end range)
    在規則型平衡負載中,在規則中所指定的高值。 此值的預設值是根據規則的類型而定。

    開始連接 (mark up)
    讓伺服器接收新連線。

    開始範圍 (begin range)
    在規則型平衡負載中,在規則中所指定的低值。此值的預設值是根據規則的類型而定。

    十三劃

    傳回位址 (return address)
    唯一的 IP 位址或主電腦名稱。它是配置於 Dispatcher 機器上,當平衡負載從屬站對伺服器的要求時,Dispatcher 用來當作來源端位址。

    跨埠相關性 (cross port affinity)
    跨埠相關性是擴充以涵蓋跨多埠的相關性 (滯留) 特性。 亦請參閱滯留時間。

    路由 (route)
    從來源到目的地的網路資料傳輸路徑。

    路由器 (router)
    一種於網路間轉送封包的裝置。此轉送之決策是以網路層資訊及路由選擇表 (通常由路由產品所建構) 為基礎。

    逾時 (timeout)
    分配給操作發生的時間間隔。

    閘道 (gateway)
    一種可交互連接不同架構的兩種電腦網路的功能單元。

    預設 (default)
    未明確指定時所採用的值、屬性或選項。

    十四劃

    滯留時間 (sticky time)
    關閉連線到開啟新連線之間的間隔, 從屬站在這段期間會被傳回到第一次連線時所使用的伺服器。滯留時間後, 從屬站要求則被傳到其它的伺服器,而不是第一次連線時使用的伺服器。

    管理程式 (manager)
    Load Balancer 的功能之一。管理程式會依據執行器中的內部計數器及通告器所提供的反饋信息,來設定加權。然後,執行器會使用加權來執行平衡負載。

    精靈 (wizard)
    應用程式內的一種對話框,使用逐步指示來引導使用者完成特定的作業。

    網址埠轉換 (Network Address Port Translation, NAPT)
    NAPT,又稱為埠對映。 可讓您於一個實體伺服器內配置多重伺服器常駐程式,在不同的埠號上接收。

    網址轉換 (Network Address Translation)
    NAT 或網址轉換程式、虛擬 LAN。 一種目前所開發的硬體裝置,可用於延伸目前所用的網際網路位址。 它允許將重複的 IP 位址用於企業及唯一的外部位址。

    網域名稱伺服器 (domain name server)
    DNS。多用途的分散式、複製、資料查詢服務,其主要用於 Internet,以將主電腦名稱轉換為網際網路位址。此外,也指用於 Internet 主電腦名稱的樣式,儘管其正確名稱為完整的網域名稱。根據被搜尋的網域名稱,可配置 DNS 來使用一系列的名稱伺服器,直到尋獲一個相符的名字為止。

    網路 (network)
    硬體及軟體資料通信系統。 網路的分類依據通常是它們的地理範圍,如區域網路 (LAN)、都會區網路 (MAN)、廣域網路 (WAN), 而且也會依據所使用的通信協定。

    網路接近 (network proximity)
    由 Site Selector 藉由量測來回時間所決定的,兩個連網實體 (例如從屬站與伺服器) 的接近度。

    網路管理站 (network management station)
    在「簡易網路管理通訊協定 (SNMP)」中,執行用來監督及控制網路元素之管理應用程式的工作站。

    網路遮罩 (netmask)
    在 Internet 子網路中,用來識別 IP 位址之主電腦部份的子網路位址位元的 32 位元遮罩。

    網際網路 (Internet)
    使用網際網路通信協定組及允許公用存取的全球互連網路集合。

    十六劃

    擁有者內容 (owner content)
    代表擁有者的擁有者名稱及內容規則, 兩者都定義在 Cisco CSS Switch。

    靜止 (quiesce)
    讓作業正常完成,以結束處理。

    頻寬 (bandwidth)
    傳輸通道之最高及最低頻率之間的差異;每秒透過給定的通訊電路所能傳送的資料量。

    十七劃

    優先順序 (priority)
    在規則型平衡負載中,指定給任何給定規則的重要性層次。Dispatcher 評估規則的順序是:從第一個優先順序層次到最後一個優先順序。

    檔案轉送通信協定 (FTP, File Transfer Protocol)
    用來在網路電腦之間轉送檔案的應用程式通訊協定。FTP 需有一個使用者 ID,且有時也需有一個密碼,才可存取遠端主電腦系統上的檔案。

    十八劃

    叢集 (cluster)
    Dispatcher 中目的相同的一組 TCP 或 UDP 伺服器, 會使用單一的主電腦名稱來識別。請參閱機器組 (cell)。

    叢集位址 (cluster address)
    在 Dispatcher 中,從屬站所連接的位址。

    叢集伺服器 (clustered server)
    由 Dispatcher 與其它伺服器群組而成為單一、 虛擬伺服器的一種伺服器。Load Balancer 會平衡這些叢集伺服器之間的 TCP 或 UDP 資料傳輸。

    二十一劃

    顧問 (consultant)
    從正在平衡負載的伺服器收集伺服器測量單位, 然後將伺服器加權值資訊傳給執行平衡負載的交換器。

    A

    ACK
    不佔順序空間的控制位元 (認可), 指出此區段的認可欄位會指定此區段的傳送者期望接收的下一個序號、並由此認可所有先前接收的序號。

    API
    應用程式設計介面。應用程式會透過介面 (呼叫慣例) 來存取作業系統及其他服務程式。 API 定義在原始程式層次,並在應用程式與核心 (或其他專用公用程式) 之間提供摘要層次, 以確定程式碼的可移轉性。

    C

    Caching Proxy
    一種快取 proxy 伺服器, 可以透過高效率的快取體制來幫助您加快一般使用者的回應時間。 彈性的 PICS 過濾可幫助網路管理者去控制一個中央位置上的 Web 型資訊之存取權。

    CBR
    Content Based Routing。Load Balancer 的一種元件。 CBR 可搭配 Caching Proxy,根據使用指定規則類型的 Web 頁面內容,將外來要求平衡負載到 HTTP 或 HTTPS 伺服器。

    cbrcontrol
    提供 Load Balancer 的 Content Based Router 元件介面。

    cbrserver
    在 Content Based Router 中,從指令行處理對執行器、管理程式及通告器的要求。

    ccocontrol
    在 Cisco CSS Controller 中,提供 Cisco CSS Switch 的介面。

    ccoserver
    在 Cisco CSS Controller 中,處理來自指令行對顧問的要求。

    CGI
    通用閘道介面 (CGI)。在 Web 伺服器及外部程式之間交換資訊的標準。外部程式可以是用作業系統所支援的任何語言撰寫而成的程式,且執行通常不是由伺服器所執行的作業,如套表處理。

    CGI script
    用 script 語言(如 Perl 或 REXX)撰寫而成的 CGI 程式。它會使用「通用閘道介面」來執行通常不是由伺服器所執行的作業,如表格處理。

    Cisco CSS Controller
    IBM Load Balancer 的一種元件。Cisco CSS Controller 是使用 Load Balancer 技術來提供即時的平衡負載資訊給 Cisco Content Services Switch。

    Cisco CSS Switch
    任何 Cisco 的 CSS 11000 系列交換器,用來作封包轉送及內容遞送。

    D

    dscontrol
    提供 Load Balancer 的 Dispatcher 元件介面。

    dsserver
    在 Dispatcher 中,處理來自指令行對執行器、管理程式及通告器的要求。

    F

    FIN
    佔一個序號的控制位元 (finis),指出傳送者將不再傳送佔順序空間的資料或控制。

    FIN 狀態 (FIN state)
    已完成的異動的狀態。一旦異動處於 FIN 狀態,Load Balancer 垃圾收集器則可清除保留給連線的記憶體。

    FQDN
    完整網域名稱。一個系統的完整名稱,由其本端主電腦名稱及其網域名稱所組成,包含頂層網域 (tld)。例如,"venera" 是個主電腦名稱且 "venera.isi.edu" 是一個 FQDN。 FQDN 應足以為 Internet 上的任何主電腦來決定唯一的網際網路位址。 這樣的過程稱之為「名稱解析」,它使用「網域名稱系統 (DNS)」。

    G

    GRE
    同屬遞送封裝。它是一種通訊協定,藉由將 A 的封包封裝在 GRE 封包內,再將 GRE 封包內含在 B 的封包內, 即可透過其他任意的通訊協定 B 傳遞任意的網路通訊協定 A。

    H

    HTML (超本文標註語言) (HTML, Hypertext Markup Language)
    用來建立超本文文件的語言。超本文文件包括與其他文件的鏈結,而這些文件則含有以高亮度顯示的詞彙或主題的額外資訊。 例如,HTML 可控制文字的格式及表格輸入區的位置,以及可導覽的鏈結。

    HTTP (超本文傳送通訊協定) (HTTP, Hypertext Transfer Protocol)
    用來轉送及顯示超本文文件的通訊協定。

    HTTPS (超本文轉送通信協定, 安全) (HTTPS, Hypertext Transfer Protocol, Secure)
    用來使用 SSL 轉送及顯示超本文文件的通訊協定。

    I

    ICMP
    Internet 控制訊息通訊協定。一種訊息控制與錯誤報告通訊協定,用於主電腦伺服器與 Internet 的閘道之間。

    IMAP
    Internet 訊息存取通訊協定。可讓從屬站存取及操作伺服器上之電子郵件訊息的通訊協定。它允許操作遠端訊息 (信箱),方法同於本端信箱。

    IP
    Internet 通訊協定。透過網路或交互連接的網路來遞送資料的無連線通訊協定。IP 可作為較高通訊協定層與實體層之間的中繼項。

    IP 位址 (IP address)
    Internet 通訊協定位址。唯一的 32 位元位址,可指定網路中每一個裝置或工作站的實際位置。也稱為 Internet 位址。

    IPSEC
    Internet 通訊協定安全性。 一種開發中的標準,用於網路上的安全控管或網路通信處理層次上的封包。

    L

    LAN
    區域網路 (LAN)。在有限地理區域內連線以進行通訊的裝置所構成的電腦網路, 它可連線到較大的網路。

    M

    MAC 位址 (MAC address)
    媒體存取控制位址。連結到共用網路媒體的裝置的硬體位址。

    Metric Server
    先前稱為「伺服器監督代理程式 (SMA)」。Metric server 會提供系統特定的測量單位給 Load Balancer 管理程式。

    MIB
    (1) 管理資訊庫。可以利用網路管理通訊協定存取的物件的集合。
    (2) 管理資訊的定義,會指定可從主電腦或閘道取得的資訊以及允許的作業。

    N

    nalcontrol
    提供 Load Balancer 的 Nortel Alteon Controller 元件介面。

    nalserver
    在 Nortel Alteon Controller 中,處理來自指令行對「顧問」的要求。

    nfa (非轉送的位址) (nfa, nonforwarding address)
    Load Balancer 機器的主要 IP 位址,供管理及配置作業之用。

    NIC
    網路介面卡。它是一種安裝於電腦裡的配接卡電路主機板,用來提供實體連線以連結網路。

    NNTP
    網路新聞轉送通訊協定。一種用來轉送新聞項目的 TCP/IP 通訊協定。

    P

    PICS
    Internet 內容選項平台。具 PICS 功能的從屬站可讓使用者決定他們所想使用的分級服務, 並決定各分級服務中可接受及無法接受的分級。

    ping
    一種指令,期待將「Internet 控制訊息通訊協定 (ICMP)」回應要求封包傳給主電腦、閘道或路由器後得到回應。

    POP3
    郵局通訊協定 3,是一種用來交換網路郵件及存取信箱的通訊協定。

    R

    RMI
    遠端方法呼叫。Java 程式設計語言程式庫的一部分,可啟用某部電腦上執行的 Java 程式,以存取不同電腦上所執行的另一個 Java 程式之物件與方法。

    root 使用者 (root user)
    一種沒有限制的權限,可以存取及修改 AIX、Red Hat Linux、或 Solaris 作業系統的任何部份,通常與管理系統的使用者有關。

    RPM
    Red Hat Package Manager。

    S

    shell
    一種軟體,可以接收及處理來自使用者工作站的指令行。bash shell 是數種可用的 UNIX shell 的一種。

    Site Selector
    Load Balancer 的 DNS 型平衡負載元件。Site Selector 會使用廣域網路 (WAN) 伺服器上執行的 Metric Server 元件所收集的測量值與加權值,平衡這些伺服器上的負載。

    SMTP
    簡易郵件轉送通訊協定。Internet 通訊協定組中的一種應用程式通訊定,可於 Internet 環境中的使用者之間轉送郵件。SMTP 會指定郵件交換順序及訊息格式。它會假定「傳輸控制通訊協定 (TCP)」是基本的通訊協定。

    SNMP
    簡易網路管理通訊協定。定義於 STD 15, RFC 1157 的 Internet 標準通訊協定,其開發目的為管理 IP 網路中的節點。 SNMP 不限於 TCP/IP。它可用來管理及監督所有設備,包括電腦、路由器、配線中樞、烤麵包機和自動點唱機。

    SPARC
    可調整的處理器架構。

    sscontrol
    提供 Load Balancer 的 Site Selector 元件介面。

    SSL
    安全 Socket 層次。由 Netscape Communications 公司加上 RSA Data Security 公司所開發出來的著名安全機制。 SSL 容許從屬站對伺服器進行證驗,並將所有資料及要求加密。SSL 所保護之安全伺服器的 URL 是以 https 開頭 (而不是 HTTP)。

    ssserver
    在 Site Selector 中,處理來自指令行對站台名稱、管理程式及通告器的要求。

    SYN
    進入的區段中的控制位元,佔一個連線起始時使用的一個序號, 可指出序號從何處開始編號。

    T

    TCP
    傳輸控制通訊協定。在 Internet 上使用的通訊協定。TCP 提供可靠的主電腦對主電腦的資訊交換。它將 IP 當成基本通訊協定。

    TCP 伺服器機器 (TCP server machine)
    Load Balancer 與其它伺服器鏈結,成為單一、虛擬伺服器的一種伺服器。Load Balancer 會平衡 TCP 伺服器機器之間的 TCP 資料傳輸。與叢集伺服器同義。

    TCP/IP
    傳輸控制通訊協定/Internet 通訊協定。 一組通訊協定,可讓網路之間進行通訊,不須顧慮每一個網路中所使用的網路技術。

    Telnet
    終端機模擬通訊協定,是一種適用於遠端連線服務程式的 TCP/IP 應用程式通訊協定。Telnet 可讓某個站台的使用者存取遠端主電腦,就像使用者的工作站已直接與該遠端主電腦連接一般。

    TOS
    服務程式類型。SYN 封包的 IP 標頭中的某個位元組欄位。

    TTL
    DNS TTL (維持時間) 是指從屬站可快取名稱解析回應的秒數。

    U

    UDP
    使用者資料包通訊協定。Internet 通訊協定組中的一種通訊協定,提供的是不可靠、非連線資料包服務程式。它可讓一台機器或處理上的應用程式將資料包傳送給另一台機器或處理上的應用程式。UDP 是使用「Internet 通訊協定 (IP)」來傳送資料包。

    URI
    廣用資源識別碼 (Universal Resource Identifier)。 Web 上任何資源 (如 HTML 文件、影像、影片、程式等) 的編碼位址。

    URL
    通用資源指位器。用來指定一個物件 (通常是網頁) 在 Internet 上的位置之標準方式。 URL 是用於全球資訊網的位址形式。它用在 HTML 文件來指定超鏈結的目標,可能儲存於另一台電腦上的另一個 HTML 文件。

    V

    VPN
    虛擬專用網路 (VPN)。由連接兩個以上網路的一或多個安全 IP 通道所組成的一種網路。

    W

    WAN
    廣域網路 (Wide Area Network)。這是一種網路,它所提供的通信服務之地理區域比 LAN 或都會區網路的更大,並且可能使用或提供公用通信機能。

    WAP
    無線應用程式通訊協定。它是一種使用無線通信之應用程式的開放式國際標準,例如:從行動電話上網。

    WAS
    WebSphere Application Server。

    Web
    含有程式及檔案的 HTTP 伺服器網路;這些程式及檔案中,有許多是含有與 HTTP 伺服器上其他文件鏈結的超本文文件。也稱為全球資訊網 (World Wide Web)。

    WLM
    工作量管理程式。Dispatcher 中所提供的通告器。這個程式僅能與執行 MVS Workload Manager (WLM) 元件的 OS/390 大型主電腦上的伺服器一起使用。

    特殊字元

    Nortel Alteon Controller
    IBM Load Balancer 的一種元件。Nortel Alteon Controller 係使用 Load Balancer 技術來提供即時平衡負載資訊給 Nortel Alteon Web Switch。

    Nortel Alteon Web Switch
    來自 Alteon Web Switching 組合的 Nortel Alteon ACE Director Series Switch 與 Nortel Alteon 180 Series Switch,用於封包轉送及內容遞送。

    Dispatcher
    Load Balancer 的一個元件,可以有效平衡個別連結的伺服器群組之間的 TCP 或 UDP 資料傳輸。Dispatcher 機器是執行 Dispatcher 程式碼的伺服器。

    索引

     一劃   三劃   四劃   五劃   六劃   七劃   八劃   九劃   十劃   十一劃   十二劃   十三劃   十四劃   十五劃   十六劃   十七劃   十八劃   二十劃   二十一劃   二十三劃   A   B   C   D   E   F   G   H   I   J   L   M   N   O   P   R   S   U   W 
    一劃 三劃 四劃 五劃 六劃 七劃 八劃 九劃 十劃 十一劃 十二劃 十三劃 十四劃 十五劃 十六劃 十七劃 十八劃 二十劃 二十一劃 二十三劃 A B C D E F G H I J L M N O P R S U W