SLES/SLES for SAP的操作系統如何升級到新版本?
更新時間:
問題描述
由于業務需要,您想升級SUSE Linux Enterprise Server(SLES)/SUSE Linux Enterprise Server for SAP(SLES for SAP)操作系統到新的版本。
適用于
- SLES 12/15 或 SLES for SAP 12/15小版本(support package)升級,SUSE官方支持的升級路徑如下:
- SLES 12升級到SLES 15的大版本(major release)升級
- SLES for SAP 12升級到SLES for SAP 15的大版本(major release)升級
升級路徑
準備和使用限制
- 升級SLES for SAP操作系統需要連接SUSE SMT更新源。如果您是從阿里云云市場購買使用的付費SLES for SAP鏡像(如何判斷ECS使用的鏡像是否是SLES for SAP付費鏡像?),它已經預置了授權并且默認配置了阿里云SUSE SMT更新源,可以直接進行升級操作。
- 如果您使用的是自定義鏡像,需要持有SUSE registration code,注冊并連接到SUSE官方SMT更新源(How to register SLES using the SUSEConnect)可以進行小版本升級操作,但不支持大版本升級操作。
- 規劃停機窗口,確保SAP應用和數據庫的服務處于停止狀態。
- 升級前強烈建議做好備份,您可以參考單塊云盤快照或者多個云盤快照。如果您已經購買了HBR產品服務,可以使用創建ECS整機備份
- 請確保系統盤有足夠的空間,如需擴容請參考在線擴容云盤(Linux系統)。
解決方案一(小版本升級)
以下操作以SLES for SAP 12 SP4升級到SLES for SAP 12 SP5為例描述操作流程:
- 在任意節點上執行以下命令,將集群設置為維護模式。
說明:單機環境請直接跳至步驟3。
crm configure property maintenance-mode=true
設置成功后,執行以下命令,確認所有資源都是unmanaged狀態。crm_mon -r
系統顯示類似如下。
說明:如果還有沒被unmanaged的資源,需要手工將其設置成unmanaged,命令語法如下:
crm resource maintenance <resource name> true
例如,手工設置圖中HANA HDB的資源的命令如下:
crm resource maintenance rsc_SAPHana_HDB true
- 執行以下命令,停止集群服務。
systemctl stop pacemaker
- 按順序停止SAP應用和數據庫服務。
- 登錄要升級的ECS服務器,執行以下命令,刷新SMT repository。
zypper ref
系統顯示類似如下。
說明:如果您使用的是自定義鏡像,默認并沒有配置SMT更新源,需要手動注冊并連接到SUSE官方的更新源才能進行后續的操作,手動注冊的命令如下:
SUSEConnect --regcode <YOUR_REGISTRATION_CODE>
- 執行以下命令,安裝最新的更新。
zypper patch
- 執行以下命令,安裝zypper-migration-plugin組件。
zypper in zypper-migration-plugin
- 運行更新程序,選擇要升級到的目標版本。
選擇1,升級到SLES for SAP 12 SP5zypper migration
系統顯示類似如下。Executing 'zypper refresh'
Repository 'SLE-12-SP4-SAP-Updates' is up to date.
Repository 'SLE-HA12-SP4-Pool' is up to date.
Repository 'SLE-HA12-SP4-Updates' is up to date.
Repository 'SLE-Module-Public-Cloud12-Updates' is up to date.
Repository 'SLE-Module-Toolchain12-Updates' is up to date.
Repository 'SLE-SDK12-SP4-Updates' is up to date.
Repository 'SLE12-SP4-SAP-Pool' is up to date.
Repository 'SLES12-SP4-Pool' is up to date.
Repository 'SLES12-SP4-Updates' is up to date.
All repositories have been refreshed.
Executing 'zypper --no-refresh patch-check --updatestack-only'
Loading repository data...
Reading installed packages...
Considering 0 out of 389 applicable patches:
0 patches needed (0 security patches)
Available migrations:
1 | SUSE Linux Enterprise Server for SAP Applications 12 SP5 x86_64
[num/q]: 1 - 確認有變更的組件信息,尤其是將要刪除的包。輸入y繼續(要升級的軟件包數量可能因為不同的系統存在差異)。
- 閱讀并確認許可條款,輸入yes,回車。
Do you agree with the terms of the license? [yes/no] (no): yes
- 安裝成功后重啟ECS,執行以下命令,驗證升級后的操作系統版本。
cat /etc/issue
系統顯示類似如下。Welcome to SUSE Linux Enterprise Server for SAP Applications 12 SP5 (x86_64) - Kernel \r (\l).
- 在另一個節點執行步驟2-10。
- 集群兩個節點都成功升級后,啟動集群服務。
systemctl start pacemaker
說明:單機環境的場景需要手動啟動數據庫和SAP應用。
- 在任意節點上執行以下命令,關閉集群維護模式。
crm configure property maintenance-mode=false
- 執行以下命令,驗證集群服務。
crm_mon -r
系統顯示類似如下。
解決方案二(大版本升級)
以下操作以SLES for SAP 12 SP5升級到SLES for SAP 15 SP1為例描述操作流程:
- 在任意節點上執行以下命令,將集群設置為維護模式。
說明:單機環境請直接跳至步驟3。
crm configure property maintenance-mode=true
設置成功后,執行以下命令,確認所有資源都是unmanaged狀態。crm_mon -r
系統顯示類似如下。
說明:如果還有沒被unmanaged的資源,需要手工將其設置成unmanaged,命令語法如下:
crm resource maintenance <resource name> true
例如,手工設置圖中SAP HANA HDB的資源的命令如下:
crm resource maintenance rsc_SAPHana_HDB true
- 停止集群服務。
systemctl stop pacemaker
- 驗證更新服務SMT的連接狀態。
SUSEConnect -s
SLES 12/SLES for SAP 12版本激活正常的結果,類似如下:
[{"identifier":"SLES_SAP","version":"12.5","arch":"x86_64","status":"Registered"}]
- 安裝升級必需用組件。
SUSEConnect -p sle-module-public-cloud/12/x86_64
zypper in SLES15-Migration - 執行升級程序。
sudo run_migration
整個升級過程中預計需要15-30分鐘,升級過程中嘗試SSH連接會出現如下提示:
The client has disconnected from the server. Reason:
Unable to authenticate using any of the configured authentication methods.
- 升級成功后會登錄ECS,執行以下命令,驗證升級后的操作系統版本。
cat /etc/issue
系統顯示類似如下。Welcome to SUSE Linux Enterprise Server for SAP Applications 15 SP1 (x86_64) - Kernel \r (\l).
- 在另一個節點執行步驟2-6。
- 集群兩個節點都成功升級后,啟動集群服務。
systemctl start pacemaker
說明:單機環境的場景需要手動啟動數據庫和SAP應用。
- 在任意節點上執行以下命令,關閉集群維護模式。
crm configure property maintenance-mode=false
- 執行以下命令,驗證集群服務。
crm_mon -r
系統顯示類似如下。
參考文檔
文檔內容是否對您有幫助?