Installer Cyberwatch en mode hors-ligne avec MicroK8s (déprécié)

Ce document détaille la procédure à suivre pour installer le logiciel Cyberwatch sur une machine hors-ligne.

Prérequis

La procédure d’installation de Cyberwatch nécessite :

  • une machine sur laquelle MicroK8s est installé ;
  • une machine disposant d’un accès à internet avec un système d’exploitation identique à celle n’ayant pas d’accès à internet ;
  • un couple identifiant/mot de passe valides pour l’accès au repository du logiciel Cyberwatch (fourni par Cyberwatch).

Récupérer les fichiers nécessaires

  1. Se connecter sur une machine disposant du même système d’exploitation que la machine sur laquelle va être installée Cyberwatch.

  2. Créer un répertoire cyberwatch_sources qui contiendra toutes les dépendances :

    mkdir cyberwatch_sources; cd cyberwatch_sources
    
  3. Sur une distribution basée sur Red Hat :

    1. Installer yum-utils :

      sudo yum install yum-utils curl epel-release
      
    2. Installer le paquet snapd :

      sudo yum install snapd
      
    3. Installer podman :

      sudo yum install podman
      export CONTAINER_DOWNLOADER=podman
      
  4. Sur une distribution basée sur Debian :

    1. Installer le paquet snapd :

      sudo apt install snapd
      
    2. Installer docker :

      sudo apt install docker.io
      export CONTAINER_DOWNLOADER=docker
      
  5. Télécharger le paquet Cyberwatch adapté à la distribution de la machine hors-ligne :

    • pour Apt :

      wget https://dl.cyberwatch.fr/apt/incoming/cyberwatch.deb
      
    • pour Rpm :

      wget https://dl.cyberwatch.fr/rpm/incoming/cyberwatch.rpm
      
  6. Exporter les variables de connexion à Cyberwatch dans l’environnement (completer avec les identifiants fournis par Cyberwatch) :

     export CBW_USER=
     export CBW_PASSWORD=
    
  7. Récupérer les images des conteneurs nécessaires au bon fonctionnement de MicroK8s.

    Se connecter au registre des images :

    sudo $CONTAINER_DOWNLOADER login -u cbw\$$CBW_USER -p $CBW_PASSWORD harbor.cyberwatch.fr/cbw-on-premise
    

    Importer les images :

    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/olympe:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/redis:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/nginx:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/mariadb:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/third_parties:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/kibana-oss:latest
    sudo $CONTAINER_DOWNLOADER pull harbor.cyberwatch.fr/cbw-on-premise/elasticsearch-oss:latest
    
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/olympe:latest            -o olympe.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/redis:latest             -o redis.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/nginx:latest             -o nginx.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/mariadb:latest           -o mariadb.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/third_parties:latest     -o third_parties.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/kibana-oss:latest        -o kibana-oss.tar
    sudo $CONTAINER_DOWNLOADER save harbor.cyberwatch.fr/cbw-on-premise/elasticsearch-oss:latest -o elasticsearch-oss.tar
    

    S’assurer que 7 images ont bien été téléchargées :

    ls *.tar | wc -l
    
  8. Récupérer le chart Helm.

    Installer helm :

    sudo systemctl start snapd
    sudo ln -s /var/lib/snapd/snap /snap
    sudo snap install helm --classic
    

    Se connecter puis télécharger le chart :

    echo "$CBW_PASSWORD" | /snap/bin/helm registry login harbor.cyberwatch.fr/cbw-on-premise \
       --username "cbw\$$CBW_USER" --password-stdin
    /snap/bin/helm pull oci://harbor.cyberwatch.fr/cbw-on-premise/cyberwatch-chart
    
  9. Effacer les variables d’environnement :

    unset CBW_USER CBW_PASSWORD
    history -c
    
  10. Archiver les sources :

    cd ..
    sudo tar czvf cyberwatch_sources.tar.gz cyberwatch_sources
    

Installer Cyberwatch

  1. Transférer l’archive sur la machine déconnectée d’internet.

  2. Passer avec l’utilisateur root :

    sudo su
    
  3. Décompresser les sources :

    tar xvzf cyberwatch_sources.tar.gz
    cd cyberwatch_sources
    
  4. Démarrer MicroK8s :

    /snap/bin/microk8s start
    
  5. Charger les images des conteneurs depuis leurs archives :

    ls *.tar| xargs -I {} /snap/bin/microk8s ctr i import $(pwd)/{}
    
  6. Vérifier que MicroK8s est bien démarré :

    /snap/bin/microk8s kubectl get po -A
    

    En cas d’erreur, vérifier la page Troubleshooting.

  7. Installer le paquet Cyberwatch :

    Pour les distributions basées sur Debian :

       dpkg -i cyberwatch.deb
    

    Pour les distributions basées sur Red Hat :

       rpm -i cyberwatch.rpm
    
  8. Ajouter les variables d’environnement suivantes dans le fichier /etc/cyberwatch/config.env :

    CBW_OFFLINE="true"
    HELM="helm -n cyberwatch --kubeconfig /var/snap/microk8s/current/credentials/client.config"
    
  9. Configurer Cyberwatch :

    sudo cyberwatch configure --offline
    
  10. Démarrer cyberwatch :

    sudo cyberwatch start
    
  11. Surveiller l’avancée du déploiement :

    sudo cyberwatch status
    
  12. Créer le compte administrateur depuis l’interface web.

    En cas d’erreur, vérifier la page Troubleshooting.


Retour en haut