套用至 SUSE Linux Enterprise High Availability Extension 12 SP5

5 升級叢集和更新軟體套件

摘要

本章介紹兩種不同的方案︰將叢集升級到另一個版本的 SUSE Linux Enterprise High Availability Extension (主要版本或 Service Pack),以及更新叢集節點上的個別套件。請參閱第 5.2 節 「將叢集升級到產品的最新版本」第 5.3 節 「更新叢集節點上的軟體套件」

如果您要升級叢集,請在開始升級之前查閱第 5.2.1 節 「SLE HA 和 SLE HA Geo 支援的升級路徑」第 5.2.2 節 「升級前的必要準備」

5.1 術語

下面將介紹本章中使用的最重要的術語定義︰

主要版本, 廣泛使用 (GA) 版本

SUSE Linux Enterprise (或任何軟體產品) 的主要版本是一個新版本,該版本中引入了新功能及工具,去除了以前取代的元件並提供了不可反向相容的變更。

離線移轉

如果新的產品版本包含不可反向相容的重大變更,則需要透過離線移轉來升級叢集︰需要先將所有節點離線,再升級整個叢集,然後才能將所有節點重新上線。

滾存升級

在滾存升級過程中,每次將會升級一個叢集節點,其餘的叢集節點會保持執行中狀態︰您需要將第一個節點離線,將它升級,再將它重新上線以加入叢集。然後,需要對每個節點重複上述程序,直到所有叢集節點都升級為主要版本。

Service Pack (SP)

將多個修補程式合併為一種易於安裝或部署的形式。Service Pack 都指定了編號,通常包含程式的安全性修正、更新、升級或增強。

更新

安裝套件的較新次要版本。

升級

安裝套件或套裝作業系統的較新主要版本,會引入新功能。另請參閱離線移轉滾存升級

5.2 將叢集升級到產品的最新版本

支援哪種升級路徑以及如何執行升級,視目前產品版本以及您要移轉到的目標版本而定。

  • 僅支援從產品版本 GA 滾存升級至下一個 Service Pack,以及從一個 Service Pack 滾存升級至下一個 Service Pack。

  • 從一個主要版本升級至下一個主要版本 (例如,從 SLE HA 11 升級至 SLE HA 12),或者從屬於一個主要版本的 Service Pack 升級至下一個主要版本 (例如,從 SLE HA 11 SP3 升級至 SLE HA 12),需要執行離線移轉。

如需升級基礎系統 (SUSE Linux Enterprise Server) 的資訊,請參閱目標升級版本的《SUSE Linux Enterprise Server 部署指南》。該指南可在 https://documentation.suse.com/#sles/ 上取得。

第 5.2.1 節提供了 SLE HA (Geo) 支援的升級路徑綜覽,並提供了其他可供參考的文件。

重要
重要:升級後不支援混合叢集和降級
  • 不支援在 SUSE Linux Enterprise High Availability Extension 11/SUSE Linux Enterprise High Availability Extension 12 上執行混合叢集。

  • 執行了升級到產品版本 12 的程序之後,將支援還原到產品版本 11。

5.2.1 SLE HA 和 SLE HA Geo 支援的升級路徑

升級來源與目標

升級路徑

詳細資料請參閱

從 SLE HA 11 SP3 到 SLE HA (Geo) 12

離線移轉

  • 基礎系統︰《SUSE Linux Enterprise Server 12 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的離線移轉

  • SLE HA Geo︰《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 Geo 叢集快速入門》中的「從 SLE HA  (Geo)  11 SP3 升級至 SLE HA Geo 12」一節

從 SLE HA (Geo) 11 SP4 到 SLE HA (Geo) 12 SP1

離線移轉

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP1 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的離線移轉

  • SLE HA Geo︰《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP1 Geo 叢集快速入門》中的「升級至最新產品版本」一節

從 SLE HA (Geo) 12 到 SLE HA (Geo) 12 SP1

滾存升級

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP1 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的滾存升級

  • SLE HA Geo︰《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP1 Geo 叢集快速入門》中的「升級至最新產品版本」一節

從 SLE HA (Geo) 12 SP1 到 SLE HA (Geo) 12 SP2

滾存升級

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP2 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的滾存升級

  • SLE HA Geo︰《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP2 Geo 叢集快速入門》中的「升級至最新產品版本」一節

  • DRBD 8 到 DRBD 9︰從 DRBD 8 移轉到 DRBD 9

從 SLE HA (Geo) 12 SP2 到 SLE HA (Geo) 12 SP3

滾存升級

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP3 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的滾存升級

  • SLE HA Geo:《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP3 Geo 叢集指南》中的「升級至產品的最新版本」一節

從 SLE HA (Geo) 12 SP3 到 SLE HA (Geo) 12 SP4

滾存升級

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP4 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的滾存升級

  • SLE HA Geo:《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP4 Geo 叢集指南》中的「升級至產品的最新版本」一節

從 SLE HA (Geo) 12 SP4 到 SLE HA (Geo) 12 SP5

滾存升級

  • 基礎系統︰《SUSE Linux Enterprise Server 12 SP5 部署指南》中的「更新和升級 SUSE Linux Enterprise」部分

  • SLE HA︰執行全叢集的滾存升級

  • SLE HA Geo:《Geo Clustering for SUSE Linux Enterprise High Availability Extension 12 SP5 Geo 叢集指南》中的「升級至產品的最新版本」一節

可以在 https://documentation.suse.com 上取得詳細資料請參閱欄中所列的全部文件。

5.2.2 升級前的必要準備

備份

確保您的系統備份是最新版本且可還原。

測試

在線上環境中執行升級程序前,請先在叢集設定的臨時例項上測試該程序。

這樣,您便可以預估維護期所需的時間範圍。這也有助於偵測和解決可能會出現的任何非預期問題。

5.2.3 離線移轉

本節適用於以下案例︰

  • 從 SLE HA 11 SP3 升級至 SLE HA 12

  • 從 SLE HA 11 SP4 升級至 SLE HA 12 SP1

如果您的叢集仍然以早期的產品版本而不是上面所列版本為基礎,請先將它升級至某個版本的 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension,而該版本可用做升級至所需目標版本時的來源。

The High Availability Extension 12 叢集堆疊的各個元件包含重大變更 (例如 /etc/corosync/corosync.conf、OCFS2 的磁碟格式)。因此,不支援從任何 SUSE Linux Enterprise High Availability Extension 11 版本進行滾存升級。所有叢集節點都必須處於離線狀態,並且需要依照程序 5.1 「執行全叢集的離線移轉」所述移轉整個叢集。

程序 5.1︰ 執行全叢集的離線移轉
  1. 登入每個叢集節點,並使用以下指令停止叢集堆疊︰

    root # rcopenais stop
  2. 將每個叢集節點升級至 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension 的所需目標版本。如果您有一個現有的 Geo 叢集設定且想升級它,請參閱《Geo Clustering for SUSE Linux Enterprise High Availability Extension Geo 叢集快速入門》中的其他指示。若要瞭解個別升級程序的詳細資料,請參閱第 5.2.1 節 「SLE HA 和 SLE HA Geo 支援的升級路徑」

  3. 完成升級程序後,將裝有 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension 升級版本的每個節點重新開機。

  4. 如果在叢集設定中使用了 OCFS2,請執行以下指令更新裝置上的結構︰

    root # o2cluster --update PATH_TO_DEVICE

    該指令會向磁碟新增附加參數,SUSE Linux Enterprise High Availability Extension 12 和 12 SPx 隨附的 OCFS12 更新版本需要這些參數。

  5. 若要更新 Corosync 版本 2 的 /etc/corosync/corosync.conf

    1. 登入某個節點,然後啟動 YaST 叢集模組。

    2. 切換到通訊通道類別,並輸入以下新參數的值︰叢集名稱預期投票數。如需詳細資料,請分別參閱程序 4.1 「定義第一個通訊通道 (多點傳播)」程序 4.2 「定義第一個通訊通道 (單點傳播)」

      如果 YaST 偵測到對 Corosync 版本 2 無效或缺失的任何其他選項,它會提示您變更這些選項。

    3. 確認您在 YaST 中所做的變更。YaST 會將組態寫入 /etc/corosync/corosync.conf

    4. 如果為叢集設定了 Csync2,請使用以下指令將更新的 Corosync 組態推入至其於叢集節點︰

      root # csync2 -xv

      如需 Csync2 的詳細資料,請參閱第 4.5 節 「將組態傳輸至所有節點」

      或者,也可以透過將 /etc/corosync/corosync.conf 手動複製到所有叢集節點的方式來同步化更新的 Corosync 組態。

  6. 登入每個節點,並使用以下指令啟動叢集堆疊︰

    root # systemctl start pacemaker
  7. 使用 crm status 或 Hawk2 檢查叢集狀態。

  8. 將以下服務設定為在開機時啟動︰

    root # systemctl enable pacemaker
    root # systemctl enable hawk
    root # systemctl enable sbd
注意
注意:升級 CIB 語法版本

標記 (用於對資源分組) 和某些 ACL 功能僅適用於 pacemaker-2.0 或更高的 CIB 語法版本。(若要檢查版本,請使用 cibadmin -Q |grep validate-with 指令。)如果您已從 SUSE Linux Enterprise High Availability Extension 11 SPx 升級,則 CIB 版本預設不會升級。若要手動升級到最新的 CIB 版本,請使用下列其中一個指令︰

root # cibadmin --upgrade --force

root # crm configure upgrade force

5.2.4 滾存升級

本節適用於以下案例︰

  • 從 SLE HA 12 升級到 SLE HA 12 SP1

  • 從 SLE HA 12 SP1 升級至 SLE HA 12 SP2

  • 從 SLE HA (Geo) 12 SP2 升級到 SLE HA (Geo) 12 SP3

  • 從 SLE HA (Geo) 12 SP3 升級到 SLE HA (Geo) 12 SP4

  • 從 SLE HA (Geo) 12 SP4 升級到 SLE HA (Geo) 12 SP5

警告
警告:使用中的叢集堆疊

在開始升級某個節點之前,請停止該節點上的叢集堆疊。

如果某個節點上的叢集資源管理員在軟體更新期間處於使用中狀態,可能會導致出現不可預知的結果,例如圍籬區隔使用中的節點。

程序 5.2︰ 執行全叢集的滾存升級
  1. root 使用者身分登入要升級的節點,並停止叢集堆疊︰

    root # systemctl stop pacemaker
  2. 升級至 SUSE Linux Enterprise Server 和 SUSE Linux Enterprise High Availability Extension 的所需目標版本。若要瞭解個別升級程序的詳細資料,請參閱第 5.2.1 節 「SLE HA 和 SLE HA Geo 支援的升級路徑」

  3. 在已升級的節點上重新啟動叢集堆疊,讓該節點重新加入叢集︰

    root # systemctl start pacemaker
  4. 讓下一個節點離線,並對其重複執行此程序。

  5. 使用 crm status 或 Hawk2 檢查叢集狀態。

重要
重要:滾存升級的時間限制

只有將所有叢集節點升級至最新產品版本之後,才可使用最新產品版本隨附的新功能。在滾存升級期間,只有一段較短的時間支援混合版本叢集。請在一週內完成滾存升級。

如果偵測到您的叢集節點有不同的 CRM 版本,Hawk2 狀態螢幕還會顯示一則警告。

5.3 更新叢集節點上的軟體套件

警告
警告:使用中的叢集堆疊

啟動某節點的更新之前,請停止該節點上的叢集堆疊,或將該節點置於維護模式,具體視叢集堆疊是否受影響而定。如需詳細資料,請參閱步驟 1

如果某個節點上的叢集資源管理員在軟體更新期間處於使用中狀態,可能會導致出現不可預知的結果,例如圍籬區隔使用中的節點。

  1. 在節點上安裝任何套件更新之前,請檢查以下幾點︰

    • 更新是否會影響屬於 SUSE Linux Enterprise High Availability Extension 或 Geo Clustering Extension 的任何套件?如果,請在開始軟體更新前先在節點上停止叢集堆疊︰

      root # systemctl stop pacemaker
    • 更新套件是否需要重新開機?如果,請在開始軟體更新前先在節點上停止叢集堆疊︰

      root # systemctl stop pacemaker
    • 如果不屬於以上任一種情況,則不需要停止叢集堆疊。在此情況下,請在開始軟體更新前將節點置於維護模式︰

      root # crm node maintenance NODE_NAME

      如需維護模式的詳細資料,請參閱第 16.2 節 「用於維護任務的不同選項」

  2. 使用 YaST 或 Zypper 來安裝套件更新。

  3. 在成功安裝更新後︰

    • 啟動相應節點上的叢集堆疊 (如果在執行步驟 1 時已將它停止)︰

      root # systemctl start pacemaker
    • 或者移除維護旗標,使節點恢復正常模式︰

      root # crm node ready NODE_NAME
  4. 使用 crm status 或 Hawk2 檢查叢集狀態。

5.4 更多資訊

如需所升級產品目標版本的任何變更及新功能的詳細資訊,請參閱其版本說明,這些文件可從 https://www.suse.com/releasenotes/ 取得。

列印此頁面