Passa al contenuto principale

Passaggio 6: installare e configurare XClarity Administrator (Docker)

Installare e configurare l'Lenovo XClarity Administrator nel contenitore sull'host Docker appena installato.

Prima di iniziare

Verificare che il sistema host soddisfi i requisiti minimi hardware e software (vedere Prerequisiti hardware e software).

Verificare che siano abilitate tutte le porte appropriate, tra cui le porte richieste da XClarity Administrator (vedere Disponibilità della porta).

Accertarsi che il sistema host si trovi nella stessa rete dei dispositivi che si desidera gestire.

Verificare che il sistema operativo host e XClarity Administrator utilizzino lo stesso server NTP.

XClarity Administrator consente di utilizzare un nome personalizzato per la rete di gestione di dati e hardware, oltre che per quella di distribuzione del sistema operativo (vedere Configurazioni di rete). In questo esempio nella procedura seguente viene utilizzato eth0.

XClarity Administrator consente di utilizzare un nome personalizzato per la rete di gestione di dati e hardware, oltre che per quella di distribuzione del sistema operativo (vedere Configurazioni di rete). In questi esempi nella seguente procedura vengono utilizzati rispettivamente eth0 ed eth1.

Verificare che una rete macvlan sia caricata nel kernel del sistema host. Per verificare se la rete è caricata, utilizzare il comando lsmod | grep macvlan. Per caricare macvlan nel kernel, eseguire il comando modprobe macvlan.

Accertarsi di utilizzare un nome univoco e un indirizzo IP per ogni contenitore quando si eseguono più contenitori XClarity Administrator sullo stesso host.

Se si intende gestire ThinkServer e altri dispositivi legacy, accertarsi che Docker sia abilitato per supportare IPv6.
  1. Modificare il file /etc/docker/daemon.json, impostare la chiave ipv6 su true e impostare la chiave fixed-cidr-v6 sulla sottorete IPv6.

    Di seguito viene riportato un file daemon di esempio.

    {
    "ipv6": true,
    "fixed-cidr-v6": "2001:db8:1::/64",
    "experimental": true,
    "ip6tables": true
    }
  2. Ricaricare il file di configurazione Docker eseguendo il comando seguente.
    systemctl reload docker
Nota
XClarity Administratornon viene eseguito come contenitore con privilegi.
Le regole del firewall non sono configurate nel contenitore XClarity Administrator. Per aggiungere regole del firewall per il contenitore nel sistema host, completare queste operazioni.
  1. Ottenere l'ID processo Docker, identificato da "NSPID", tramite il comando che segue.
    docker inspect --format='{{ .State.Pid }}' "$CONTAINER_NAME"
  2. Creare un collegamento simbolico tramite il comando che segue.

    LINKFILE="/var/run/netns/$NSPID"
    mkdir -p /var/run/netns
    /bin/rm -f "$LINKFILE"
    ln -s "/proc/$NSPID/ns/net" "$LINKFILE"
  3. Configurare le regole appropriate iptables tramite il comando che segue.

    ip netns exec $NSPID iptables -I OUTPUT -j DROP
  4. Verificare che tutti i collegamenti vengano rimossi tramite il comando che segue.

    /bin/rm -f "$LINKFILE"

Procedura

Per installare un contenitore XClarity Administrator utilizzando Docker Compose, completare la seguente procedura.

  1. Scaricare l'immagine, il file di ambiente e il file YAML dell'appliance virtuale XClarity Administrator dalla Pagina Web di download di XClarity Administrator in una workstation client. Accedere al sito Web, quindi utilizzare la chiave di accesso fornita per scaricare l'immagine.
  2. Importare l'immagine del contenitore XClarity Administrator nell'host docker, utilizzando il comando seguente.
    docker load -i lnvgy_sw_lxca_<ver>_anyos_noarch.tar.gz
  3. Modificare il file docker_compose.env e aggiornare le variabili di ambiente che seguono.
    • CONTAINER_NAME. Nome univoco del contenitore, utilizzato per creare volumi docker per ogni istanza di XClarity Administrator (ad esempio, CONTAINER_NAME=LXCA-203)
    • INDIRIZZO. Indirizzo IPv4 statico per il contenitore (ad esempio, ADDRESS=192.0.2.0)
    • BACKUP_MOUNT. (Facoltativo) Percorso per la condivisione remota che può essere utilizzata per archiviare i backup di XClarity Administrator. Il percorso deve essere: /mnt/backup_share.
    • FIRMWARE_MOUNT. (Facoltativo) Percorso per la condivisione remota che può essere utilizzata come repository remoto per gli aggiornamenti firmware. Il percorso deve essere: /mnt/fw_share.
    Di seguito viene riportato un file di ambiente.
    CONTAINER_NAME="LXCA-203"
    ADDRESS="192.0.2.0"
    BACKUP_MOUNT="/mnt/backup_share"
    FIRMWARE_MOUNT="/mnt/fw_share"

  4. Modificare il file docker_compose.yml e aggiornare le proprietà che seguono.
    • Impostare la proprietà image con il nome del file dell'immagine di installazione utilizzato nel passaggio 2.
      Nota
      È possibile modificare il nome del file di immagine (ad esempio, in "più recente") utilizzando il comando docker tag.
    • Se si desidera utilizzare la condivisione remota come repository firmware remoto per archiviare i backup di XClarity Administrator impostare il punto di montaggio dell'host per ciascuna condivisione remota nella proprietà volumi.
    • Impostare la proprietà dns sull'indirizzo IP dei server DNS.
    • Il contenitore condivide il pool di risorse di memoria e processore disponibili per l'host. Facoltativamente definire i limiti sull'utilizzo delle risorse impostando le proprietà cpus e memoria.
    • Impostare la proprietà principale sul nome dell'interfaccia di rete del sistema host da utilizzare come interfaccia principale per l'interfaccia macvlan nel contenitore. Questa interfaccia deve disporre dell'accesso diretto alla sottorete assegnata al contenitore.
    • Impostare la sottorete e il gateway in base alla topologia di rete. In genere, la sottorete e il gateway sono per la rete di gestione, a cui appartiene ${ADDRESS}.
    • Se si desidera supportare IPv6, impostare la proprietà enable_ipv6 su true, impostare la proprietà ipv6_address sull'indirizzo IPv6 e aggiungere un'altra serie di proprietà di sottorete e gateway in base alla topologia di rete (generalmente per la rete di gestione a cui appartiene l'indirizzo IPv6).

    Di seguito è riportato un file YML di esempio con IPv6 abilitato.

    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
    gateway: 192.0.122.1
    - subnet: "2001:8003:7d51:2003::/80"
    gateway: "2001:8003:7d51:2003::1"

  5. Distribuire l'immagine in docker, utilizzando il comando seguente, dove <ENV_FILENAME> è il nome del file delle variabili d'ambiente creato nel passaggio 2.
    COMPOSE_HTTP_TIMEOUT=300 docker-compose –p ${CONTAINER_NAME} ––env–file <ENV_FILENAME> up -d

Al termine

Eseguire il login e configurare XClarity Administrator (vedere Primo accesso all'interfaccia Web di Lenovo XClarity Administrator e Configurazione di Lenovo XClarity Administrator).