跳到主內容

修復安裝時再管理介面上設定VLAN錯誤

摘要

在使用網路聚合介面且啟用VLAN標記的主機上,CubeCOS安裝會發生失敗。

詳細資訊

問題描述

在安裝 CubeCOS 期間,若於管理介面設定 VLAN,可能會因下列錯誤訊息而失敗:

Policy changes could not be applied. No changes have been made to the system.
Unexpected error.

此問題是由於 CubeCOS 安裝腳本中的解析邏輯錯誤所導致。 因此,在使用綁定網路介面且啟用VLAN標記的主機上,安裝程序將失敗。

適用版本

CubeCOS 3.0.0

本文適用於運行 CubeCOS 3.0.0 版本的環境。

決議

在安裝 CubeCOS 之前,必須手動套用修補程式,才能讓 CubeCOS 主機使用具有 VLAN 標籤的綁定網路介面。

  1. 將 CubeCOS 還原至實體主機。

  2. 透過實體或虛擬控制台以 root 身分登入 CubeCOS 主機。

  3. 更新 SDK 健康檢查工具函式

    1. 編輯以下檔案

      vim /usr/lib/hex_sdk/proj_functions
    2. 請找到 shared_ip()mgmt_ip() 函式,並將其替換為下方所示的更新邏輯。

      shared_ip()
      {
      source hex_tuning /etc/settings.txt cubesys.control.vip
      local vip=$T_cubesys_control_vip
      if [[ "$vip" == "" ]] ; then
      source hex_tuning /etc/settings.txt cubesys.controller.ip
      vip=$T_cubesys_controller_vip
      fi
      if [[ "$vip" == "" ]] ; then
      source hex_tuning /etc/settings.txt cubesys.management
      local mgmt_if=$T_cubesys_management
      source hex_tuning /etc/settings.txt "net.if.addr.$mgmt_if"
      - local mgmt_ip_key="T_net_if_addr_${mgmt_if}"
      + local mgmt_ip_key="T_net_if_addr_${mgmt_if/./_}"
      vip=${!mgmt_ip_key}
      fi
      echo -n "$vip"
      }

      mgmt_ip()
      {
      source hex_tuning /etc/settings.txt cubesys.management
      local mgmt_if=$T_cubesys_management
      source hex_tuning /etc/settings.txt "net.if.addr.$mgmt_if"
      - local mgmt_ip_key="T_net_if_addr_${mgmt_if}"
      + local mgmt_ip_key="T_net_if_addr_${mgmt_if/./_}"
      echo -n "${!mgmt_ip_key}"
      }
  4. 退出 root shell 會話。 儲存檔案後,無需重新啟動服務。 退出 root shell 會話。

  5. 繼續安裝 繼續執行 CubeCOS 安裝程序。

此修補程式確保在安裝過程中,含有虛擬區域網路標記的管理名稱(例如 bond0.100)能被正確解析。

其他資訊

相關變更: 原始碼