跳至主要内容

步驟 6. 安裝和配置 XClarity Administrator (Docker)

在剛安裝的 Docker 主機上安裝及配置 Lenovo XClarity Administrator 容器。

開始之前

確定主機系統符合最低的硬體和軟體需求(請參閱硬體和軟體必要條件)。

確定已啟用所有適用的埠,包括 XClarity Administrator 所需的埠(請參閱埠可用性)。

確認主機系統與您要管理的裝置位於相同網路中。

確保主機 OS 和 XClarity Administrator 使用相同的 NTP 伺服器。

XClarity Administrator 允許用於資料管理、硬體管理和 OS 部署的網路使用自訂名稱(請參閱網路配置)。以下程序中的範例使用的是 eth0。

XClarity Administrator 允許用於資料和硬體管理的網路和用於 OS 部署的網路使用自訂名稱(請參閱網路配置)。以下程序中的範例使用的分別是 eth0 和 eth1

確定主機系統上的核心中載入了 macvlan 網路。若要檢查是否已載入,請使用 lsmod | grep macvlan 指令。若要將 macvlan 載入核心中,請執行 modprobe macvlan 指令。

在同一個主機上執行多個 XClarity Administrator 容器時,確保為每個容器使用唯一的名稱和 IP 位址。

如果您打算管理 ThinkServer 和其他舊式裝置,請確保啟用 Docker 以支援 IPv6。
  1. 編輯 /etc/docker/daemon.json 檔案,將 ipv6 機碼設定為 true,並將 fixed-cidr-v6 機碼設定為您的 IPv6 子網路。

    以下是 daemon 檔案的範例。

    {
    "ipv6": true,
    "fixed-cidr-v6": "2001:db8:1::/64",
    "experimental": true,
    "ip6tables": true
    }
  2. 執行下列指令以重新載入 Docker 配置檔。
    systemctl reload docker
XClarity Administrator不是做為特殊權限容器執行。
XClarity Administrator 容器中未配置防火牆規則。若要為主機系統上的容器新增防火牆規則,請完成下列步驟。
  1. 透過執行下列指令取得由「NSPID」識別的 Docker 程序 ID。
    docker inspect --format='{{ .State.Pid }}' "$CONTAINER_NAME"
  2. 透過執行下列指令建立符號鏈結。

    LINKFILE="/var/run/netns/$NSPID"
    mkdir -p /var/run/netns
    /bin/rm -f "$LINKFILE"
    ln -s "/proc/$NSPID/ns/net" "$LINKFILE"
  3. 透過執行下列指令配置適當的 iptables 規則。

    ip netns exec $NSPID iptables -I OUTPUT -j DROP
  4. 透過執行下列指令確保所有鏈結都已移除。

    /bin/rm -f "$LINKFILE"

程序

若要使用 Docker compose 安裝 XClarity Administrator 容器,請完成下列步驟。

  1. XClarity Administrator 下載網頁XClarity Administrator 虛擬裝置映像檔、環境檔案和 YAML 檔案下載到用戶端工作站。登入網站,然後使用提供給您的存取金鑰以下載映像檔。
  2. 透過執行下列指令,將 XClarity Administrator 容器映像檔匯入 Docker 主機。
    docker load -i lnvgy_sw_lxca_<ver>_anyos_noarch.tar.gz
  3. 編輯 docker_compose.env 檔案,並更新下列環境變數。
    • CONTAINER_NAME。唯一的容器名稱,用於為每個 XClarity Administrator 實例建立 Docker 磁區(例如,CONTAINER_NAME=LXCA-203
    • ADDRESS。容器的靜態 IPv4 位址(例如,ADDRESS=192.0.2.0
    • BACKUP_MOUNT。(選用)可用於儲存 XClarity Administrator 備份的遠端共用路徑。這必須是 /mnt/backup_share
    • FIRMWARE_MOUNT。(選用)可用來做為韌體更新遠端儲存庫的遠端共用路徑。這必須是 /mnt/fw_share
    以下是環境檔案的範例。
    CONTAINER_NAME="LXCA-203"
    ADDRESS="192.0.2.0"
    BACKUP_MOUNT="/mnt/backup_share"
    FIRMWARE_MOUNT="/mnt/fw_share"

  4. 編輯 docker_compose.yml,並更新以下內容。
    • image 內容設定為步驟 2 中使用的安裝映像檔的名稱。
      您可以使用 docker tag 指令變更映像檔名稱(例如,變更為「latest」)。
    • 如果要使用遠端共用做為遠端韌體儲存庫並儲存 XClarity Administrator 備份,請在 volumes 內容中為每個遠端共用設定主機裝載點。
    • dns 內容設定為 DNS 伺服器的 IP 位址。
    • 容器共用主機可用的處理器和記憶體資源儲存區。(選用)透過設定 cpusmemory 內容,定義資源使用限制。
    • parent 內容設定為主機系統上的網路介面名稱,以用來做為容器中 macvlan 介面的父介面。此介面必須可以直接存取指派給容器的子網路。
    • 根據您的網路拓撲設定 subnetgateway。通常,子網路和閘道用於 ${ADDRESS} 所屬的管理網路。
    • 如果要支援 IPv6,請將 enable_ipv6 內容設定為 true,將 ipv6_address 內容設定為 IPv6 位址,並根據您的網路拓撲新增另一組 subnetgateway 內容(通常是該 IPv6 位址所屬的管理網路)。

    下面是啟用了 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:
    lan1:
    ipv4_address: ${ADDRESS}
    ipv6_address: "2001:8003:7d51:2000::2"
    lan2:
    ipv4_address: 192.0.1.3
    ipv6_address: "2001:8003:7d51:2003::2"
    dns:
    - 192.0.40.10
    - 192.0.50.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:
    lan1:
    name: lan1
    driver: macvlan
    enable_ipv6: true
    driver_opts:
    parent: eno1
    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"
    lan2:
    name: lan2
    driver: macvlan
    enable_ipv6: true
    driver_opts:
    parent: virbr0
    ipam:
    config:
    - subnet: 192.0.122.0/24
    - subnet: "2001:8003:7d51:2005::/80"

  5. 透過執行下列指令在 Docker 中部署映像檔,其中 <ENV_FILENAME> 是您在步驟 2 中建立的環境變數檔案的名稱。
    COMPOSE_HTTP_TIMEOUT=300 docker-compose –p ${CONTAINER_NAME} ––env–file <ENV_FILENAME> up -d

在您完成之後

登入並配置 XClarity Administrator(請參閱初次存取 Lenovo XClarity Administrator Web 介面配置 Lenovo XClarity Administrator)。