Zum Hauptinhalt springen

XClarity Administrator v4.0 auf v4.1 als Container aktualisieren

Wenn Lenovo XClarity Administrator als Docker-Container ausgeführt wird, verwenden Sie dieses Aktualisierungsverfahren, um die neueste Software als neuen Container zu installieren und die Datenträger des ursprünglichen Containers an den neuen Container anzubinden.

Vorbereitende Schritte

Für die Aktualisierung von XClarity Administrator v4.0 auf v4.1 als Container ist ein spezielles Aktualisierungsscript erforderlich, um bestimmte nicht persistente Dateien persistent zu machen.

Die Protokollierungsstufe wird nach Abschluss der Aktualisierung auf die Standardeinstellung wiederhergestellt.

Stellen Sie sicher, dass ein Linux-Nicht-Rootbenutzer auf dem Hostsystem vorhanden ist und dass der Nicht-Rootbenutzer Docker-Befehle ausführen kann. Ist dies nicht der Fall, fügen Sie den Benutzer zur Docker-Gruppe hinzu, indem Sie die folgenden Befehle ausführen:
bash
sudo groupadd docker
sudo gpasswd -a $USER docker
newgrp docker
docker ps

Zu dieser Aufgabe

Anmerkung
XClarity Administrator wird nicht als privilegierter Container ausgeführt.

Vorgehensweise

Gehen Sie wie folgt vor, um einen XClarity Administrator Container zu aktualisieren.

  1. Wechseln Sie zum Nicht-Rootbenutzer der Docker-Gruppe.
  2. Laden Sie die XClarity Administrator-Container-Imagedatei (do-container-update.sh, docker-compose.env, docker-compose.yml, lnvgy_sw_lxca_ *.tar.gz) von Website zum Herunterladen von XClarity Administrator in einem neuen Verzeichnis auf Ihr neues lokales System herunter. Melden Sie sich auf der Website an und verwenden Sie dann den erhaltenen Zugriffsschlüssel für den Image-Download.
  3. Importieren Sie das XClarity Administrator-Container-Image mit dem folgenden Befehl in Ihren Docker-Host.
    docker load -i <CONTAINER-IMAGE-FILENAME>
    Beispiel:
    docker load -i lnvgy_sw_lxca_110-4.1.0_anyos_noarch
  4. Bearbeiten Sie die neue Datei docker-compose.env und aktualisieren Sie die folgenden Umgebungsvariablen, damit sie mit den Werten in der ursprünglichen Datei docker-compose.env übereinstimmen.

    Nachfolgend finden Sie ein Beispiel für eine Umgebungsdatei.

    CONTAINER_NAME="LXCA-400"
    ADDRESS="192.0.2.0"
    BACKUP_MOUNT="/mnt/backup_share"
    FIRMWARE_MOUNT="/mnt/fw_share"
  5. Bearbeiten Sie die neue Datei docker-compose.yml. Aktualisieren Sie die Eigenschaft image oben in der Datei auf den Dateinamen des neuen Docker-Images und aktualisieren Sie die Netzwerkkonfigurationseinstellungen (Subnetz, Gateway und DNS), damit sie mit den Werten in der ursprünglichen Datei docker-compose.yml übereinstimmen.

    Im Folgenden wird eine YML-Beispieldatei gezeigt.

    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
  6. Aktualisieren Sie das Container-Image in Docker, indem Sie den folgenden Befehl ausführen, wobei <ORIGINAL-CONTAINER-IMAGE-PATH> der Speicherort der ursprünglichen Containerdateien und <NEW-CONTAINER-IMAGE-PATH> der Speicherort ist, an dem Sie in Schritt 2 die neuen Container-Image-Dateien heruntergeladen haben.
    bash do-container-update.sh <ORIGINAL-CONTAINER-IMAGE-PATH> <NEW-CONTAINER-IMAGE-PATH>
    Beispiel:
    bash do-container-update.sh /home/$USER/lxca-400 /home/$USER/lxca-410
    Anmerkung
    Während des Aktualisierungsprozesses werden Sie aufgefordert, das Kennwort für den Befehl sudo einzugeben. Sie müssen das Kennwort eingeben, um fortfahren zu können.