跳至主要内容

XClarity Administrator 做為容器從 v4.0 更新到 v4.1

Lenovo XClarity Administrator 做為 Docker 容器執行時,請使用此更新程序安裝最新軟體以做為新容器,並將原始容器的磁區連結至新容器。

開始之前

XClarity Administrator 做為容器從 v4.0 更新到 v4.1 時,需要使用特殊的更新指令碼使某些非持續性檔案持久化。

更新完成後,日誌層級會還原為預設值。

確保主機系統上存在非 Root Linux 使用者,而且該非 Root 使用者可以執行 Docker 指令。如果沒有,請透過執行下列指令將使用者新增到 Docker 群組。
bash
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
docker ps

關於此作業

XClarity Administrator不是做為特殊權限容器執行。

程序

若要更新 XClarity Administrator 容器,請完成下列步驟。

  1. 切換到 Docker 群組中的非 Root 使用者。
  2. XClarity Administrator 下載網頁XClarity Administrator 容器映像檔(do-container-update.shdocker-compose.envdocker-compose.ymllnvgy_sw_lxca_ *.tar.gz)下載到本端系統的新目錄中。登入網站,然後使用提供給您的存取金鑰以下載映像檔。
  3. 透過執行下列指令,將 XClarity Administrator 容器映像檔匯入 Docker 主機。
    docker load -i <CONTAINER-IMAGE-FILENAME>
    例如:
    docker load -i lnvgy_sw_lxca_110-4.1.0_anyos_noarch
  4. 編輯新的 docker-compose.env 檔案,更新以下環境變數以符合原始 docker-compose.env 檔案中的值。

    以下是環境檔案的範例。

    CONTAINER_NAME="LXCA-400"
    ADDRESS="192.0.2.0"
    BACKUP_MOUNT="/mnt/backup_share"
    FIRMWARE_MOUNT="/mnt/fw_share"
  5. 編輯新的 docker-compose.yml 檔案。將檔案頂部的 image 內容更新為新的 Docker 映像檔的檔案名稱,並更新網路配置設定(子網路、閘道和 DNS)以符合原始 docker-compose.yml 檔案中的值。

    以下顯示 yml 檔案的範例。

    version: '3.8'

    services:

    lxca:
    image: lenovo/lxca:4.1.0-124
    container_name: ${CONTAINER_NAME}
    tty: true
    stop_grace_period: 60s
    volumes:
    #bind mount example
    - /home/<HOST_MOUNT_POINT_FOR_BACKUP>:${BACKUP_MOUNT}
    - /home/<HOST_MOUNT_POINT_FOR_FW_SHARE>:${FIRMWARE_MOUNT}
    #docker volume mount
    - data:/opt/lenovo/lxca/data
    - postgresql:/var/lib/postgresql
    - log:/var/log
    - confluent-etc:/etc/confluent
    - confluent-log:/var/log/confluent
    - confluent:/var/lib/confluent
    - propconf:/opt/lenovo/lxca/bin/conf
    - ssh:/etc/ssh
    - xcat:/etc/xcat
    networks:
    lan:
    ipv4_address: ${ADDRESS}
    dns: 192.0.30.10
    192.0.30.11
    deploy:
    resources:
    limits:
    cpus: "2.0"
    memory: "8g"

    volumes:
    data:
    name: ${CONTAINER_NAME}-data
    postgresql:
    name: ${CONTAINER_NAME}-postgresql
    log:
    name: ${CONTAINER_NAME}-log
    confluent-etc:
    name: ${CONTAINER_NAME}-confluent-etc
    confluent-log:
    name: ${CONTAINER_NAME}-confluent-log
    confluent:
    name: ${CONTAINER_NAME}-confluent
    propconf:
    name: ${CONTAINER_NAME}-propconf
    ssh:
    name: ${CONTAINER_NAME}-ssh
    xcat:
    name: ${CONTAINER_NAME}-xcat
    networks:
    lan:
    name: lan
    driver: macvlan
    driver_opts:
    parent: eth0
    ipam:
    config:
    - subnet: 192.0.0.0/19
    gateway: 192.0.30.1
  6. 透過執行以下指令升級 Docker 中的容器映像檔,其中 <ORIGINAL-CONTAINER-IMAGE-PATH> 是原容器檔案的位置,<NEW-CONTAINER-IMAGE-PATH> 是您在步驟 2 中下載的新容器映像檔的位置。
    bash do-container-update.sh <ORIGINAL-CONTAINER-IMAGE-PATH> <NEW-CONTAINER-IMAGE-PATH>
    例如:
    bash do-container-update.sh /home/$USER/lxca-400 /home/$USER/lxca-410
    在升級程序期間,系統會提示您輸入 sudo 指令的密碼。您必須輸入密碼才能繼續。