将 Lenovo XClarity Administrator 作为容器运行,请按照此更新过程将最新软件安装为新容器,并将原始容器的卷绑定到新容器。
开始之前
只能从 XClarity Administrator v3.0 或更高版本的实例更新到 XClarity Administrator v4.0 或更高版本。如果使用的 XClarity Administrator 版本低于 v3.0,则必须先升级到 v3.0 或更高版本,然后才能升级到 v4.0。
要使用 Lenovo XClarity Orchestrator 管理 XClarity Administrator v4.0 或更高版本的实例,需要安装 XClarity Orchestrator v2.0 或更高版本。如果要将 XClarity Administrator 更新到 v4.0 或更高版本,请确保 XClarity Orchestrator 的版本不低于 v2.0。
关于本任务
docker-compose.yml 文件使用以下环境变量,这些变量由您在安装原始 容器的过程中进行设置。新容器也使用这些环境变量。
CONTAINER_NAME。唯一的容器名称,用于为每个 XClarity Administrator 实例创建 Docker 卷(例如,CONTAINER_NAME=LXCA-203)
XClarity Administrator 使用容器名称为容器创建卷。如果对新容器使用相同的容器名称,则新的 XClarity Administrator 实例将使用相同的卷,因此可以访问与原始 XClarity Administrator 实例(容器)相同的系统数据和设置。
如果更改容器名称,则会为容器创建新卷,并且新的 XClarity Administrator 实例不能访问与原始 XClarity Administrator 实例(容器)相同的系统数据和设置。如果需要更改容器名称或 IP 地址,请在安装新容器之前备份原始 XClarity Administrator 实例的系统数据和设置,然后使用该备份在新容器中恢复系统数据和设置。
ADDRESS。容器的静态 IPv4 或 IPv6 地址(例如,ADDRESS=192.0.2.0)
如果管理设备后再更改 XClarity Administrator 的 IP 地址,可能会使设备在 XClarity Administrator 中处于脱机状态。确保更改 IP 地址前先终止管理所有设备。
BACKUP_MOUNT 和 FIRMWARE_MOUNT。(可选)可用于存储 XClarity Administrator 备份或用作固件更新的远程存储库的远程共享路径。路径必须分别为 /mnt/backup_share 和 /mnt/fw_share。
XClarity Administrator不是 作为特权容器运行。
过程
要更新 XClarity Administrator 容器,请完成以下步骤。
- 从 XClarity Administrator 下载 Web 页面将 XClarity Administrator 容器镜像下载到客户端工作站。登录到该网站,然后使用提供给您的访问密钥下载该映像。
- 通过运行以下命令将 XClarity Administrator 容器镜像导入 Docker 主机。
docker load -i lnvgy_sw_lxca_110-3.5.0_anyos_noarch
- 编辑用于原始容器的 docker-compose.yml。更新文件顶部的映像属性,使其指向步骤 2 中的新 Docker 映像。可使用 docker tag 命令更改映像标记。
下面是启用了 IPv6 的 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}
ipv6_address: "2001:8003:7d51:2003::2"
dns:
- 192.0.2.10
- 192.0.2.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
enable_ipv6: true
driver_opts:
parent: eth0
ipam:
config:
- subnet: 192.0.0.0/19
gateway: 192.0.30.1
- subnet: "2001:8003:7d51:2000::/80"
gateway: "2001:8003:7d51:2000::1"
- 通过运行以下命令来关闭原始 容器。
docker-compose -p ${CONTAINER_NAME} down
- 通过运行以下命令在 Docker 中部署新 映像,其中 <ENV_FILENAME> 是环境变量文件的名称。
<span className="ph">COMPOSE_HTTP_TIMEOUT=300</span> docker-compose -p ${CONTAINER_NAME} ––env-file <ENV_FILENAME> up -d