將 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 容器,請完成下列步驟。
- 切換到 Docker 群組中的非 Root 使用者。
- 從 XClarity Administrator 下載網頁將 XClarity Administrator 容器映像檔(do-container-update.sh、docker-compose.env、docker-compose.yml、lnvgy_sw_lxca_ *.tar.gz)下載到本端系統的新目錄中。登入網站,然後使用提供給您的存取金鑰以下載映像檔。
- 透過執行下列指令,將 XClarity Administrator 容器映像檔匯入 Docker 主機。
docker load -i <CONTAINER-IMAGE-FILENAME>
例如:
docker load -i lnvgy_sw_lxca_110-4.1.0_anyos_noarch
- 編輯新的 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"
- 編輯新的 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
- 透過執行以下指令升級 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 指令的密碼。您必須輸入密碼才能繼續。