跳到主要内容

XClarity Administrator 作为容器进行更新

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 容器,请完成以下步骤。

  1. XClarity Administrator 下载 Web 页面XClarity Administrator 容器镜像下载到客户端工作站。登录到该网站,然后使用提供给您的访问密钥下载该映像。
  2. 通过运行以下命令将 XClarity Administrator 容器镜像导入 Docker 主机。
    docker load -i lnvgy_sw_lxca_110-3.5.0_anyos_noarch
  3. 编辑用于原始容器的 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"

  4. 通过运行以下命令来关闭原始 容器。
    docker-compose -p ${CONTAINER_NAME} down
  5. 通过运行以下命令在 Docker 中部署 映像,其中 <ENV_FILENAME> 是环境变量文件的名称。
    <span className="ph">COMPOSE_HTTP_TIMEOUT=300</span> docker-compose -p ${CONTAINER_NAME} ––env-file <ENV_FILENAME> up -d