Aller au contenu principal

Étape 6 : installation et configuration de XClarity Administrator (Docker)

Installez et configurez le conteneur Lenovo XClarity Administrator sur l’hôte Docker que vous venez d’installer.

Avant de commencer

Vérifiez que le système hôte respecte les exigences logicielles et matérielles minimales (voir Configurations matérielles et logicielles requises).

Vérifiez que tous les ports appropriés sont activés, y compris les ports requis par XClarity Administrator (voir Disponibilité de port).

Vérifiez que le système hôte est dans le même réseau que les dispositifs à gérer.

Assurez-vous que le système d’exploitation hôte et XClarity Administrator utilisent le même serveur NTP.

XClarity Administrator permet un nom personnalisé pour le réseau à utiliser pour la gestion des données et du matériel, ainsi que le déploiement SE (voir Configurations réseau). Les exemples de la procédure ci-après utilisent eth0.

XClarity Administrator autorise un nom personnalisé pour le réseau à utiliser pour la gestion des données et du matériel et le réseau utilisé pour le déploiement SE (voir Configurations réseau). Les exemples de la procédure ci-après utilisent respectivement eth0 et eth1

Assurez-vous qu’un réseau macvlan est chargé dans le noyau sur le système hôte. Utilisez la commande lsmod | grep macvlan pour vérifier s’il est bien chargé. Exécutez la commande modprobe macvlan afin de charger macvlan dans le noyau.

Assurez-vous de bien utiliser un nom unique et une adresse IP pour chaque conteneur lors de l’exécution de plusieurs conteneurs XClarity Administrator dans le même hôte.

Si vous avez l’intention de gérer des appareils ThinkServer et d’autres appareils existants, assurez-vous que Docker est activé pour prendre en charge le protocole IPv6.
  1. Éditez le fichier /etc/docker/daemon.json, définissez la clé ipv6 sur True et définissez la clé fixed-cidr-v6 sur votre sous-réseau IPv6.

    Voici un exemple de fichier daemon.

    {
    "ipv6": true,
    "fixed-cidr-v6": "2001:db8:1::/64",
    "experimental": true,
    "ip6tables": true
    }
  2. Rechargez la configuration Docker en exécutant la commande suivante.
    systemctl reload docker
Remarque
XClarity Administratorn’est pas exécuté en tant que conteneur avec privilèges.
Les règles de pare-feu ne sont pas configurées dans le conteneur XClarity Administrator. Procédez comme suit pour ajouter des règles de pare-feu au conteneur sur le système hôte.
  1. Obtenez l’ID de processus Docker, identifié par « NSPID ». Pour ce faire, il faut exécuter la commande suivante.
    docker inspect --format='{{ .State.Pid }}' "$CONTAINER_NAME"
  2. Exécutez la commande suivante pour créer un lien symbolique.

    LINKFILE="/var/run/netns/$NSPID"
    mkdir -p /var/run/netns
    /bin/rm -f "$LINKFILE"
    ln -s "/proc/$NSPID/ns/net" "$LINKFILE"
  3. Exécutez la commande suivante pour configurer des règles iptables appropriées.

    ip netns exec $NSPID iptables -I OUTPUT -j DROP
  4. Exécutez la commande suivante afin de vous assurer que tous les liens sont bien supprimés.

    /bin/rm -f "$LINKFILE"

Procédure

Pour installer un conteneur XClarity Administrator à l’aide de Docker compose, procédez comme suit.

  1. Téléchargez l’image de dispositif virtuel, le fichier d’environnement et le fichier YAML XClarity Administrator depuis Page Web de téléchargements XClarity Administrator sur un poste de travail client. Connectez-vous au site Web, puis utilisez la clé d'accès qui vous a été fournie pour télécharger l'image.
  2. Importez l’image de conteneur XClarity Administrator dans votre hôte Docker en exécutant la commande suivante.
    docker load -i lnvgy_sw_lxca_<ver>_anyos_noarch.tar.gz
  3. Éditez le fichier docker_compose.env, puis mettez à jour les variables d’environnement suivantes.
    • CONTAINER_NAME. Nom de conteneur unique, utilisé pour créer des volumes Docker pour chaque instance XClarity Administrator (par exemple, CONTAINER_NAME=LXCA-203)
    • ADDRESS. Adresse IPv4 statique du conteneur (par exemple, ADDRESS=192.0.2.0)
    • BACKUP_MOUNT. (Facultatif) Chemin pour le partage distant qui peut être utilisé pour stocker les sauvegardes XClarity Administrator. Cela doit être /mnt/backup_share.
    • FIRMWARE_MOUNT. (Facultatif) Chemin pour le partage distant pouvant être utilisé en tant que référentiel distant pour les mises à jour de microprogramme. Cela doit être /mnt/fw_share.
    Voici un exemple de fichier d’environnement.
    CONTAINER_NAME="LXCA-203"
    ADDRESS="192.0.2.0"
    BACKUP_MOUNT="/mnt/backup_share"
    FIRMWARE_MOUNT="/mnt/fw_share"

  4. Éditez docker_compose.yml et mettez à jour les propriétés suivantes.
    • Définissez la propriété de l’image sur le nom du fichier d’image d’installation utilisé lors de l’étape 2.
      Remarque
      Vous pouvez modifier le nom du fichier d’image (par exemple, « le plus récent ») à l’aide de la commande docker tag.
    • Si vous souhaitez utiliser des partages distants en tant que référentiel de microprogramme distant et stocker des sauvegardes XClarity Administrator, définissez le point de montage hôte pour chaque partage distant dans la propriété volumes.
    • Définissez la propriété dns sur l’adresse IP des serveurs DNS.
    • Le conteneur fait partie du groupe de ressources du processeur et de la mémoire qui sont disponibles pour l’hôte. En option, vous pouvez définir des limites relatives à l’utilisation des ressources en définissant les propriétés cpus et mémoire.
    • Définissez la propriété parent sur le nom de l’interface réseau du système hôte à utiliser en tant qu’interface parent pour l’interface macvlan du conteneur. Cette interface doit avoir un accès direct au sous-réseau affecté au conteneur.
    • Définissez le sous-réseau et la passerelle en fonction de votre topologie de réseau. En général, le sous-réseau et la passerelle sont pour le réseau de gestion, auquel appartient ${ADDRESS}.
    • Si vous souhaitez prendre en charge le protocole IPv6, définissez la propriété enable_ipv6 sur True, définissez la propriété ipv6_address sur l’adresse IPv6 et ajoutez un autre ensemble de propriétés de sous-réseau et de passerelle en fonction de votre topologie de réseau (généralement pour le réseau de gestion auquel l’adresse IPv6 appartient).

    Ce qui suit est un exemple de fichier YML, avec IPv6 activé.

    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. Déployez la nouvelle dans Docker en exécutant la commande ci-après, <ENV_FILENAME> étant le nom du fichier des variables d’environnement créé lors de l’étape 2.
    COMPOSE_HTTP_TIMEOUT=300 docker-compose –p ${CONTAINER_NAME} ––env–file <ENV_FILENAME> up -d

Après avoir terminé

Connectez-vous et configurez XClarity Administrator (voir Accès à l'interface Web Lenovo XClarity Administrator la première fois et Configuration des Lenovo XClarity Administrator).