回到網頁內容 臺灣-繁體中文
HP.com 首頁 產品資訊 支�#169;及驅動程式 解決方案 如何購買
» 聯絡 HP
進階選項
HP.com 首頁
HP Serviceguard 仲裁伺服器 A.02.00 版版本需知,第四版 > 第 1 章. HP Serviceguard 仲裁伺服器 A.02.00版版本需知,第四版

相容性資訊及安裝需求

» 

技術文件

PDF 格式的完整書籍
» 回饋意見
內容©韟像B開©l

 » 目錄

 » 索引

開始安裝前,需先閱讀此整本文件,及其他您可能有的版本需知或 README (讀我檔案)。

系統需求

仲裁伺服器是一種在其提供仲裁服務之叢集外的 HP-UX 或 Linux 系統上執行的程序,它會使用 TCP/IP,傾聽連接埠編號 1238 之 Serviceguard 節點所提出的連線要求。仲裁伺服器替每個叢集維護特定的記憶體區域,當節點取得叢集鎖定時,該區域會標示出來,其他節點會視該鎖定為「已使用」。仲裁伺服器可提供多個叢集的仲裁服務。若需支援平台的其他資訊,請參閱《《HP 9000 Servers Configuration Guide》》(可洽詢您的 HP 業務代表)。

與 Serviceguard 版本的相容性

下表說明仲裁伺服器版本與 Serviceguard 相容的版本。

請注意,IA64 版在功能上與 PA RISC 版相等,且 PA RISC 的仲裁伺服器並沒有 A.01.01 版。

若需更完整的支援性對照表,請造訪 《 docs.hp.com/hpux/ha》 -> 《Quorum Server》 -> 《Supportability Matrixes》 和 《Serviceguard》 -> 《Matrixes》。

表 1-1 仲裁伺服器與 Serviceguard 的相容性

仲裁伺服器版本本版主要功能

相容的 OS 版本

Serviceguard 版本

A.02.00
(目前版本)

HP-UX 和 Linux 的共同功能與交互使用性
(interoperability)
  • HP-UX 11.0、11i v1.0、1.5、v1.6、2.0 (Integrity 和 HP 9000 伺服器)

  • SuSE Linux、
    SLES (Linux
    Enterprise Server) v9 和 v8,United Linux v1.0,其核心程式版本為 2.4.19-64GB-SMP

11.13 版及更新的版本

A.01.01

支援 HP-UX IA64 的第一版

HP-UX (IA64)11.14.01

A.01.00

支援 HP-UX 的第一版

HP-UX (PA)11.13 和 11.14

A.01.00 Linux

作為平局決勝 (tie-breaker) 服務的第一版

Linux Red HatA.11.13 和 Linux 上的 A.11.13.01 版

 

附註: 舊版仲裁伺服器 (1.0 版和 1.1 版) 無法與 Servicegguard 11.14.02 或更新版本相容。若使用 Serviceguard 11.14.02 或更新版本,請使用此 A.02.00 版的仲裁伺服器。

記憶體和磁碟需求

記憶體: 7.0 MB

磁碟空間: 1 MB

安裝仲裁伺服器

QS 軟體需在叢集配置時執行,必須安裝在與執行叢集之節點不同的系統上,可為單一的 Linux 或 HP-UX 系統,或可為其他分開的叢集。

若自舊版仲裁伺服器更新,請參閱下列更新指示。

若更新仲裁伺服器,同時亦將 Serviceguard 更新至 11.14.02 版以上,則更新的順序十分重要。您必須更新仲裁伺服器,之後才更新 Serviceguard。請參閱下列轉移指示。

附註: 建議 QS 執行的節點應與其提供服務的叢集位於同一個子網路上,以避免網路延遲而影響仲裁伺服器的運作。若使用不同的子網路,網路可能會延遲,造成仲裁伺服器逾時 (timeout)。欲避免逾時,可在叢集的 ASCII 檔內使用
QS_TIMEOUT_EXTENSION 參數,以增加仲裁伺服器的逾時間隔。

若連接仲裁伺服器的網路為叢集心跳 (heartbeat) 網路,請確認至少另配置一個以上的網路作為心跳網路,避免仲裁伺服器和心跳通訊同時失效。

在 HP-UX 上安裝

使用 swinstall 命令,在欲執行 QS 的系統上安裝 QS,產品編號 B8467BA。您應在使用仲裁服務之叢集外的節點上安裝仲裁伺服器。在使用仲裁伺服器鎖定的叢集上,只需安裝 Serviceguard。

若自舊版仲裁伺服器更新,請跳至下面昇級指示的部份。

有兩種安裝方式:

  • 自 HP Serviceguard Distributed Components 光碟安裝:

    1. 裝載光碟機,使用 /SD-CDROM 作為裝載目錄。

    2. 執行 swinstall 命令。

    3. 視窗開啟時,請將 Source Depot Type (來源儲存站類型) 設為 Local CDROM (本機光碟機)。

    4. Source Depot Path (來源儲存站路徑) 請輸入適用的建置:

      /SD-CDROM/QuorumServer/HP-UX/11.00/quorumserver.depot
      /SD-CDROM/QuorumServer/HP-UX/11.11/quorumserver.depot
      /SD-CDROM/QuorumServer/HP-UX/11.22/quorumserver.depot
      /SD-CDROM/QuorumServer/HP-UX/11.23/eng.Notice.txt

    5. 隨後會開啟一個視窗,其中仲裁伺服器產品會反白,如: B8467BA A.02.00.03 Quorum Server。請選取此項目,再開始安裝作業。

      A.02.00 版包含數項小幅更新,以支援新版的 HP-UX 和 Linux。這些更新並未變更功能。下載軟體時,即可指定作業系統並自動取得正確的版本。

  • 欲自網站安裝,請造訪 http://www.hp.com/go/softwaredepot。按一下「High Availability」,再選取「HP Serviceguard Quorum Server for HP-UX」。

    1. 下載 B8467BA A.02.00 版,將該檔案儲存在磁碟中 (您可於結束安裝後將該儲存站自磁碟中移除)。

    2. 在該儲存站上執行 swinstall 命令。選取 B8467BA A.02.00.03 Quorum Server

      A.02.00 版包含數項小幅更新,以支援新版的 HP-UX 和 Linux。這些更新並未變更功能。下載軟體時,即可指定作業系統並自動取得正確的版本。

QS 執行檔 qs 安裝於 /usr/lbin 目錄下。安裝完成後,您必須在 QS 執行的伺服器上建立授權檔,讓特定的主機系統可取得仲裁服務。該檔案必要的路徑名稱為 /etc/cmcluster/qs_authfile。在該檔案中輸入所有存取該仲裁伺服器之仲裁服務的叢集節點名稱,每個節點一行,如下所示:

ftsys9.localdomain.com
ftsys10.localdomain.com

若要讓所有節點皆可存取,請輸入加號 (+)。

亦請建立 QS 日誌檔目錄,建議的路徑名稱請見表 1-3 「qs-pkg 的套件控制命令集參數」 (您可能需建立目錄)。

在 Linux 上安裝

A.02.00 版包含數項小幅更新,以支援新版的 HP-UX 和 Linux。這些更新並未變更功能。下載軟體時,即可指定作業系統並自動取得正確的版本。

Linux 的安裝命令使用完整的版本名稱,如 A.02.00.03。安裝前,可在檔案名稱見到完整的版本;安裝後,則可使用
rpm -q qs
命令取得完整的版本名稱。

欲在 Red Hat Linux 或 SuSE Linux 上安裝軟體,請裝載 distribution 光碟、變更至仲裁伺服器目錄,接著至作業系統的適當目錄。您會在檔案見到完整的產品編號。請針對該產品名稱執行 rpm 命令,例如若為 A.02.00.03 版,則輸入:

# cd /mnt/cdrom/QuorumServer/Linux/ ...

(若為 Red Hat) # rpm -i qs-A.02.00.03-0.product.redhat.i386.rpm

(若為 SuSE) # rpm -i qs-A.02.00.03-0.product.suse.i386.rpm

仲裁伺服器執行檔 qs 安裝於 Red Hat 的 /usr/local/qs/bin 目錄下;以及 SuSE 的 /opt/qs/bin 目錄下。

安裝完成後,您必須在 QS 執行的伺服器上建立授權檔,讓特定的主機系統可取得仲裁服務。該檔案必要的路徑名稱為:

若為 Red Hat: /usr/local/qs/conf/qs_authfile

若為 SuSE: /opt/qs/conf/qs_authfile

在該檔案中輸入所有存取該仲裁伺服器之叢集服務的叢集節點名稱,每個節點一行,如下所示:

ftsys9.localdomain.com
ftsys10.localdomain.com

若要讓所有節點皆可存取,請輸入加號 (+)。

亦請建立 QS 日誌檔目錄,建議的路徑名稱請見表 1-3 「qs-pkg 的套件控制命令集參數」 (您可能需建立目錄)。

建立仲裁伺服器的套件

您可在另一個叢集上以套件的形式執行仲裁伺服器。在一個叢集上執行的 QS 套件可為多達 50 個叢集提供仲裁服務 (若所有叢集的節點總數不得超過 100 個)。

過去不支援兩個叢集互相擁有對方的仲裁伺服器,但目前已有達到此作業的方式。若您的叢集數量有限,且欲研究此方式,請參閱網際網路
docs.hp.com/hpux/ha》 -> 《Quorum Server》 發佈的《《Cross-cluster Quorum Server Configurations》》白皮書。

欲配置仲裁伺服器至套件內,以 QS 作為被監控的服務,請使用下列程序:

  1. 在所有節點上安裝仲裁伺服器軟體,如上所述。

  2. 在配置目錄 ($SGCONF) 中建立一個 QS 套件的子目錄,再進入該子目錄:

    # mkdir qs-pkg
    # cd qs-pkg

  3. 使用 cmmakepkg 命令建立一個套件 ASCII 檔:

    # cmmakepkg -P qs-pkg.config

  4. 使用下表中的參數編輯檔案。

    表 1-2 qs-pkg 的套件 ASCII 檔參數

    參數
    PACKAGE_NAMEqs-pkg
    PACKAGE_TYPEFAILOVER
    FAILOVER_POLICYCONFIGURED_NODE
    FAILBACK_POLICYMANUAL
    NODE_NAME*
    AUTO_RUNYES
    LOCAL_LAN_FAILOVER_ALLOWEDYES
    NODE_FAIL_FAST_ENABLEDNO
    RUN_SCRIPT$SGCONF/qs-pkg/qs-pkg.ctl
    RUN_SCRIPT_TIMEOUTNO_TIMEOUT
    HALT_SCRIPT$SGCONF/qs-pkg/qs-pkg.ctl
    HALT_SCRIPT_TIMEOUTNO_TIMEOUT
    SERVICE_NAMEqs
    SERVICE_FAIL_FAST_ENABLEDNO
    SERVICE_HALT_TIMEOUT10
    SUBNET在此指定您的子網路

     

  5. 在同一個目錄下建立控制命令集:

    # cmmakepkg -s qs-pkg.ctl

  6. 使用下表中的參數編輯檔案。

    表 1-3 qs-pkg 的套件控制命令集參數

    參數
    IP[0]存取仲裁伺服器時使用的 IP 位址
    SUBNET[0]在此指定您的子網路
    SERVICE_NAME[0]qs
    SERVICE_CMD[0]

    (此例的 >> 重新指向檔案顯示建議的日誌路徑名稱)

    若為 HP-UX: /usr/lbin/qs >> /var/adm/qs/qs.log 2>&1

    若為 Linux:

      若為 Red Hat: /usr/local/qs/bin/qs >> /var/log/qs/qs.log 2>&1

      若為 SuSE: /opt/qs/bin/qs >> /var/log/qs/qs.log 2>&1

    SERVICE_RESTART“-R”

     

  7. 執行叢集並啟動仲裁伺服器套件。

執行仲裁伺服器及指定日誌檔

仲裁伺服器必須在下列叢集作業期間執行:

  • 下達 cmquerycl 命令時。

  • 下達 cmapplyconf 命令時。

  • 叢集重組時。

仲裁伺服器的 run-time 訊息預設會傳送至 stdoutstderr。建議您建立目錄,再將 stdoutstderr 重新指向此目錄的檔案,如
/var/adm/qs/qs.log。建議的路徑名稱請見表 1-3 「qs-pkg 的套件控制命令集參數」

您必須擁有 root 許可權才能執行仲裁伺服器。在單一的系統上,將仲裁伺服器配置於安裝仲裁伺服器的系統重新啟動或重新開機時,啟動仲裁伺服器。在 /etc/inittab 檔案中建立如下的項目,即可完成此作業:

  • 若為 HP-UX:

qs:345:respawn:/usr/lbin/qs >> /var/adm/qs/qs.log 2>&1

  • 若為 Red Hat Linux (於單行輸入):

qs:345:respawn:/usr/local/qs/bin/qs>>/var/log/qs/qs.log 2>&1

  • 若為 SuSE Linux:

qs:345:respawn:/opt/qs/bin/qs >> /var/log/qs/qs.log 2>&1

輸入下列命令啟動仲裁伺服器:

# init q

命令完成後會出現提示符號。

檢查 qs.log 檔案,確認仲裁伺服器已執行 (建議的日誌路徑名稱請見表 1-3 「qs-pkg 的套件控制命令集參數」)。

若為 HP-UX,請輸入: # cat /var/adm/qs/qs.log

若為 Linux,請輸入: # cat /var/log/qs/qs.log

日誌檔應包含如下項目,標示仲裁伺服器已啟動:

Oct 04 12:25:06:0:main:Starting Quorum Server
Oct 04 12:25:09:0:main:Server is up and waiting for connections at port 1238

考慮設定仲裁伺服器輪詢間隔
(Serviceguard A.11.16 版及更新版)

Serviceguard 會依叢集配置中 QS_POLLING_INTERVAL 參數決定的間隔探測仲裁伺服器。仲裁探測間隔 QS_POLLING_INTERVAL 的預設值為 5 分鐘,最小值則為 10 秒。

若仲裁伺服器處理程序在其節點仍啟動時關閉,則 Serviceguard 叢集節點會偵測到仲裁伺服器處理程序中止。Serviceguard 會以每 10 秒的間隔試圖重新連接仲裁伺服器,直到仲裁伺服器重新啟動而連線成功為止。若在此停機時間中需要仲裁伺服器提供平局決勝服務,則叢集會中止。

然而,若仲裁伺服器的節點關閉,Serviceguard 無法立即偵測至處理程序的連接已中斷,而會持續在配置的間隔進行輪詢,直到進行下次輪詢時才發現仲裁伺服器的連線已關閉。若進行下次輪詢前開始叢集重組,則 Serviceguard 會假設仲裁伺服器已關閉。由於 需要仲裁伺服器提供平局決勝服務,因此會中止叢集。即使仲裁伺服器在重組前或重組中回復運作,Serviceguard 仍必須等到下次輪詢才知道仲裁伺服器已啟動。

輪詢間隔最小值為 10 秒。減少 QS_POLLING_INTERVAL 意即 Serviceguard 會較迅速地偵測到仲裁伺服器的節點失效,但由於輪詢較為頻繁,同時也會加重仲裁伺服器的負載。若設定低間隔,可能需減少使用仲裁伺服器的叢集 (或) 節點數量以降低負載。減少支援節點 (叢集) 的需求與 SGeFF (Serviceguard Extension for Faster Failover) 產品尤為相關,該產品的鎖定取得時間值設定也非常低。極低的設定值需經過謹慎測試以微調所有定時參數,且需針對在模擬實際生產環境中運作的叢集進行測試。

叢集配置檔內的仲裁伺服器參數

您必須在叢集配置 ASCII 檔內配置仲裁伺服器。利用如下的命令,以取得包含仲裁伺服器參數的叢集 ASCII 檔:

# cmquerycl -q <QS_主機> -n <節點1> -n <節點2> -C <叢集名稱>.config

叢集配置 ASCII 檔中會包含 QS_HOSTQS_POLLING_INTERVAL
QS_TIMEOUT_EXTENSION 參數。系統會根據 Serviceguard 參數,包括
NODE_TIMEOUTHEARTBEAT_INTERVAL 計算預設的 QS 逾時。若遇到仲裁伺服器逾時,您可以增加這些參數,或利用叢集配置 ASCII 檔的
QS_TIMEOUT_EXTENSION 參數來增加仲裁伺服器的逾時值,以便延長 SG 存取 QS 節點的允許時間。

附註: 增加這些值會相對影響故障轉移 (failover) 的時間。

若需在叢集配置期間找到仲裁伺服器的相關資訊,請參閱「安裝仲裁伺服器」

更新授權檔

仲裁伺服器會在啟動時讀取授權檔。

HP-UX 的授權檔為 /etc/cmcluster/qs_authfile

Linux Red Hat 為 /usr/local/qs/conf/qs_authfile;Linux SuSE 則為 /opt/qs/conf/qs_authfile

您若修改此檔,必須執行下列命令以強迫重新讀取該檔案:

  • 若為 HP-UX: # /usr/lbin/qs -update

  • 若為 Linux:

    • 若為 Red Hat: # /usr/local/qs/bin/qs -update

    • 若為 SuSE: # /opt/qs/bin/qs -update

解除安裝仲裁伺服器 (HP-UX)

欲解除安裝軟體,請執行 HP-UX swremove 命令,如下所示:

# swremove B8467BA

解除安裝仲裁伺服器 (Linux)

欲解除安裝軟體,請執行 Linux rpm -e 命令,如下所示:

# rpm -e qs

(HP-UX) 更新 A.01.00 或 A.01.01 版的仲裁伺服器

將舊版的仲裁伺服器更新為 A.02.00 版可於執行叢集期間進行。

您必須更新仲裁伺服器,之後才將 Serviceguard 更新為 11.14.02 版或更新版。

  1. 取消 /etc/inittab 中的 QS 項目,並執行下列命令:

    # /sbin/init q

  2. 解除安裝現有的仲裁伺服器:

    # swremove B8467BA

  3. 安裝仲裁伺服器 A.02.00 版:

    # swinstall B8467BA

  4. 回復您在 /etc/inittab 檔中所取消的仲裁伺服器項目。

  5. 啟動仲裁伺服器:

    # /sbin/init q

(Red Hat Linux) 更新 A.01.00 版的仲裁伺服器

  1. 移除 /etc/inittab 中的仲裁伺服器項目,並執行下列命令:

    # init q

  2. 解除安裝現有的仲裁伺服器。例如:

    # rpm -e qs-A.01.00

    此命令會移除 /var/log/qs/qs.log 檔案。若此為您的日誌檔,您可在執行此命令前先儲存檔案。

  3. 安裝仲裁伺服器 A.02.00 版。例如:

    # rpm -i qs-A.02.00.03-0.product.redhat.i386.rpm

    解除安裝 A.02.00 版可能不會移除日誌檔。

  4. /etc/inittab 檔內加入如下項目 (於單行輸入):

    qs:2345:respawn:/usr/local/qs/bin/qs>>/var/log/qs/qs.log 2>&1

    (由於仲裁伺服器現在為即時程序,因此您無需再使用「nice」選項。)

  5. 重新啟動仲裁伺服器:

    # init q

替換失效的仲裁伺服器系統

遵循下列程序替換故障的仲裁伺服器系統。若遵循此程序,則無需變更叢集節點的配置。

  1. 移除網路上舊的仲裁伺服器系統。

  2. 設定新系統,新系統應配置舊仲裁伺服器的 IP 位址及主機名稱。

  3. 在新系統上安裝並配置仲裁伺服器軟體。請確認在新的 QS 授權檔中,加入舊仲裁伺服器所配置的所有節點。

    HP-UX 的授權檔為 /etc/cmcluster/qs_authfile

    Linux Red Hat 為 /usr/local/qs/conf/qs_authfile

    Linux SuSE 則為 /opt/qs/conf/qs_authfile

    若需配置 QS 授權檔的詳細資訊,請參閱 qs(1) 線上援助頁。

  4. 如下所述啟動仲裁伺服器:

    若需詳細資訊,請參閱 qs(1) 線上援助頁。

  5. 所有使用舊仲裁伺服器之叢集的節點會連接至新的仲裁伺服器。在任何使用仲裁伺服器的叢集上使用-v 命令,以確認該叢集的節點皆已連接至 QS。

  6. 新仲裁伺服器的仲裁伺服器日誌檔會針對各個使用仲裁伺服器的叢集顯示如下的日誌訊息:

    Request for lock /sg/<叢集名稱> succeeded. New lock owners: N1, N2
  7. 欲檢查仲裁伺服器是否已正確配置,並確認節點是否連接至仲裁伺服器,可在叢集節點執行下列命令:

    # cmquerycl -q <仲裁伺服器主機名稱> -n <節點1> -n <節點2> ...

    若指定的節點無法與仲裁伺服器通訊,則該命令會輸出錯誤訊息。

附註: 當舊仲裁伺服器關機,而新伺服器正在設定時,可能會發生下列狀況:
  • 這三個命令無法運作:cmquerycl -qcmapplyconf -C,和
    cmcheckconf -C

  • 若節點或網路失效,造成 50-50 成員分離 (membership split),則仲裁伺服器無法提供平局決勝 (tie-breaking) 服務,且叢集會失效。

警告! 請確認舊系統未以舊 IP 位址重新加入網路。
可列印版本
隱私權聲明 使用範圍與著作權聲明
© Hewlett-Packard Development Company, L.P.