跳到主內容

修復安裝時再管理介面上設定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)能被正確解析。

其他資訊​

相關變更: 原始碼