升級 BeeGFS 服務
使用 Ansible 更新 HA 叢集上執行的 BeeGFS 版本。
總覽
BeeGFS 遵循 major.minor.patch`版本管理方案。BeeGFS HA Ansible 角色適用於每個支援的 `major.minor`版本(例如、 `beegfs_ha_7_2`和 `beegfs_ha_7_3)。每個 HA 角色都固定在 Ansible 集合發行時可用的最新 BeeGFS 修補程式版本上。
所有 BeeGFS 升級,包括 BeeGFS 主版本、次版本和補丁版本之間的遷移,都應該使用 Ansible。要更新 BeeGFS,您首先需要更新 BeeGFS Ansible 集合,這也會引入部署/管理自動化和底層高可用性叢集的最新修復和增強功能。即使更新到最新版本的集合,在執行 `ansible-playbook`並設定 `-e "beegfs_ha_force_upgrade=true"`之前,BeeGFS 不會升級。有關每次升級的更多詳細資訊,請參閱"BeeGFS升級文件"您當前版本的文件。
|
|
如果您要升級到 BeeGFS v8,請參閱 "升級至 BeeGFS v8" 相關步驟。 |
已測試的升級途徑
以下升級路徑已通過測試和驗證:
| 原始版本 | 升級版本 | 多重軌道 | 詳細資料 |
|---|---|---|---|
7.2.6 |
7.3.2 |
是的 |
將beegfs集合從v3.0.1升級至v3.1.0、新增多重軌道 |
7.2.6 |
7.2.8 |
否 |
將beegfs集合從v3.0.1升級至v3.1.0 |
7.2.8 |
7.3.1 |
是的 |
使用beegfs集合v3.1.0升級、新增多重軌道 |
7.3.1 |
7.3.2 |
是的 |
使用beegfs集合v3.1.0升級 |
7.3.2 |
7.4.1.. |
是的 |
使用beegfs集合v3.2.0升級 |
7.4.1.. |
7.4.2.. |
是的 |
使用beegfs集合v3.2.0升級 |
7.4.2.. |
7.4.6 |
是的 |
使用beegfs集合v3.2.0升級 |
7.4.6 |
8.0 |
是的 |
請按照 "升級至 BeeGFS v8" 操作步驟中的說明進行升級。 |
7.4.6 |
8.1 |
是的 |
請按照 "升級至 BeeGFS v8" 操作步驟中的說明進行升級。 |
7.4.6 |
8.2 |
是的 |
請按照 "升級至 BeeGFS v8" 操作步驟中的說明進行升級。 |
BeeGFS 升級步驟
下列各節提供更新 BeeGFS Ansible 系列和 BeeGFS 本身的步驟。請特別注意任何額外步驟、以更新BeeGFS主要或次要版本。
步驟 1 :升級 BeeGFS 系列
可存取的集合升級 "Ansible Galaxy",執行下列命令:
ansible-galaxy collection install netapp_eseries.beegfs --upgrade
如需離線收藏升級、請從下載收藏 "Ansible Galaxy" 按一下所需的 Install Version` 然後 Download tarball。將tar傳輸到Ansible控制節點、然後執行下列命令。
ansible-galaxy collection install netapp_eseries-beegfs-<VERSION>.tar.gz --upgrade
請參閱 "安裝集合" 以取得更多資訊。
步驟 2 :更新 Ansible 庫存
對叢集的 Ansible 清單檔案進行任何必要或所需的更新。有關具體升級要求的詳細資訊,請參閱以下 版本升級注意事項 部分。有關配置 BeeGFS HA 清單的一般資訊,請參閱 "Ansible Inventory Overview" 部分。
步驟 3 :更新 Ansible 教戰手冊(僅更新主要或次要版本時)
如果您要在主要或次要版本之間移動、請在 playbook.yml 用於部署和維護叢集的檔案中、更新角色名稱 beegfs_ha_<VERSION> 以反映所需的版本。例如,如果您想部署 BeeGFS 7.4 ,這將是 beegfs_ha_7_4:
- hosts: all
gather_facts: false
any_errors_fatal: true
collections:
- netapp_eseries.beegfs
tasks:
- name: Ensure BeeGFS HA cluster is setup.
ansible.builtin.import_role: # import_role is required for tag availability.
name: beegfs_ha_7_4
如需此教戰手冊檔案內容的詳細資訊"部署BeeGFS HA叢集"、請參閱一節。
步驟 4 :執行 BeeGFS 升級
若要套用BeeGFS更新:
ansible-playbook -i inventory.yml beegfs_ha_playbook.yml -e "beegfs_ha_force_upgrade=true" --tags beegfs_ha
BeeGFS HA角色將在幕後處理:
-
確保叢集處於最佳狀態、且每個BeeGFS服務都位於其偏好的節點上。
-
將叢集置於維護模式。
-
更新HA叢集元件(如有需要)。
-
每次升級一個檔案節點、如下所示:
-
將其置於待命狀態、並將其服務容錯移轉至次要節點。
-
升級BeeGFS套件。
-
回復服務:
-
-
將叢集移出維護模式。
版本升級注意事項
從BeeGFS 7.2.6或7.3.0版升級
連線型驗證變更
BeeGFS 版本 7.3.2 及更高版本需要設定基於連線的身份驗證。若缺少以下任一項,服務將無法啟動:
-
指定一個
connAuthFile,或 -
在服務的設定檔中進行設定
connDisableAuthentication=true。
強烈建議啟用基於連線的身份驗證以確保安全。請參閱 "BeeGFS連線型驗證" 以獲取更多資訊。
這些 beegfs_ha* 角色會自動產生身份驗證檔案並將其分發給:
-
叢集中的所有檔案節點
-
Ansible 控制節點位於
<playbook_directory>/files/beegfs/<beegfs_mgmt_ip_address>_connAuthFile
該 `beegfs_client`角色會在此檔案存在時自動偵測並將其套用到用戶端。
|
|
如果您未使用 beegfs_client 角色設定用戶端,則必須手動將身份驗證檔案分發給每個用戶端,並在 beegfs-client.conf 檔案中設定 connAuthFile 設定。從不支援基於連線的身份驗證的 BeeGFS 版本升級時,除非您在升級過程中透過在 group_vars/ha_cluster.yml 中設定 beegfs_ha_conn_auth_enabled: false 來停用基於連線的身份驗證(不建議這樣做),否則用戶端將失去存取權限。
|
如需更多詳細資訊和替代設定選項,請參閱 "指定通用檔案節點組態" 部分中的連線驗證設定步驟。