Mettez à niveau le firmware ExtraHop via l'API REST avec ExtraHop Cloud Services

Vous pouvez automatiser les mises à niveau du micrologiciel de vos appareils via l' API REST ExtraHop. Vous pouvez également consulter les versions de firmware disponibles et télécharger le firmware directement sur votre appliance via ExtraHop Cloud Services.

Remarque :Avant de pouvoir suivre les étapes de ce guide, l'appliance doit être connectée à ExtraHop Cloud Services. Pour plus d'informations sur la mise à niveau sans ExtraHop Cloud Services, voir Mettre à jour le firmware ExtraHop via l'API REST.

Bien que le processus de mise à niveau du microprogramme soit similaire sur tous les appareils ExtraHop, certains appareils comportent des considérations ou étapes supplémentaires que vous devez prendre en compte avant d'installer le microprogramme dans votre environnement. Si vous avez besoin d' aide pour votre mise à niveau, contactez le support ExtraHop.

Tous les appareils doivent répondre aux exigences suivantes :

  • La version du microprogramme doit être compatible avec le modèle de votre appareil.
  • La version du microprogramme de votre appliance doit être prise en charge par la version de mise à niveau.
  • Les appareils de commande doivent exécuter un microprogramme supérieur ou égal à celui des appareils connectés.
  • Les appliances Discover doivent exécuter un microprogramme supérieur ou égal à celui des appliances Explore and Trace connectées.

Si votre déploiement inclut uniquement un sonde, passez au Explorateur d'API ou Python instructions de mise à niveau.

Si votre déploiement inclut des types d'appareils supplémentaires, vous devez résoudre les dépendances suivantes avant de suivre les instructions de mise à niveau.

Si votre déploiement inclut... Tâches préalables à la mise Ordre de mise à niveau
Appareils de commande Réservez une fenêtre de maintenance d'une heure pour les appareils Command gérant 50 000 appareils ou plus.
  • Appareil de commande
  • Découvrez les appareils
  • Toutes les appliances Explore (nœuds de gestion, puis nœuds de données)
  • Appareils Trace
Découvrez les appareils Voir Mise à niveau des magasins de disques ExtraHop.
Appareils Trace Aucune

Mettez à niveau le firmware ExtraHop via l'explorateur d'API REST

Important :L'explorateur d'API REST n'est pas disponible sur Reveal (x) 360.

Afficher les versions de firmware disponibles

  1. Dans un navigateur, accédez à l'explorateur d'API REST.
    L'URL est le nom d'hôte ou l'adresse IP de votre sonde ou console, suivi de /api/v1/explore/. Par exemple, si votre nom d'hôte est seattle-eda, l'URL est https://seattle-eda/api/v1/explore/.
  2. Cliquez Entrez la clé d'API puis collez ou saisissez votre clé d'API dans Clé d'API champ.
  3. Cliquez Autoriser puis cliquez sur Fermer.
  4. Cliquez Hop supplémentaire.
  5. Cliquez OBTENEZ /extrahop/firmware/next.
  6. Cliquez Essayez-le.
  7. Cliquez Envoyer une demande.
    Dans la section Corps de la réponse, consultez les versions de chaque version et notez la version vers laquelle vous souhaitez effectuer la mise à niveau.
    Remarque :Pour les capteurs, la liste inclut uniquement les versions du microprogramme compatibles avec la version exécutée sur la console connectée.

Téléchargez le microprogramme et mettez à niveau l'appliance

  1. Cliquez POST/extrahop/firmware/téléchargement/version.
  2. Cliquez Essayez-le.
  3. Dans le champ body, spécifiez les champs suivants :

    version: Version du microprogramme vers laquelle vous souhaitez effectuer la mise à niveau.

    mettre à niveau: Indique s'il convient de mettre à niveau l'appliance une fois le téléchargement du microprogramme terminé. Définissez ce champ sur true.

    Le champ de corps suivant met à niveau l'appliance vers la version 8.7.1.1282 du microprogramme :

    {
        "upgrade": true,
        "version": "8.7.1.1282"
    }
  4. Cliquez Envoyer une demande.
    Dans les en-têtes de réponse, notez la valeur située après la dernière barre oblique location en-tête. Vous aurez besoin de cette valeur pour suivre la progression de la tâche de mise à niveau. Par exemple, l'ID de tâche dans l'exemple suivant est ebbdbc9e-7113-448c-ab9b-cc1ec2407702:
    /api/v1/jobs/ebbdbc9e-7113-448c-ab9b-cc1ec2407702

Surveillez la progression de la tâche de mise à niveau

  1. Cliquez Emplois.
  2. Cliquez GET /jobs/ {id}.
  3. Dans le champ id, saisissez la valeur que vous avez copiée depuis location en-tête de la tâche précédente.
  4. Cliquez Envoyer une demande.
  5. Dans le corps de la réponse, consultez les informations relatives à la tâche.
    Le status le champ est DONE lorsque le travail est terminé.

Récupérez et exécutez l'exemple de script Python

Le référentiel GitHub d'ExtraHop contient un exemple de script Python qui met à niveau plusieurs appareils en lisant les URL et les clés d'API d'un fichier CSV.

Remarque :Le script ne désactive pas automatiquement l'ingestion d'enregistrements pour les magasins de disques ExtraHop. Vous devez désactiver manuellement l'ingestion d'enregistrements avant d'exécuter le script pour un magasin de disques ExtraHop .
Important :L'exemple de script python s'authentifie auprès de la sonde ou de la console via une clé API, qui n'est pas compatible avec l' API REST Reveal (x) 360. Pour exécuter ce script avec Reveal (x) 360, vous devez modifier le script pour vous authentifier à l'aide de jetons d'API. Consultez le py_rx360_auth.py script dans le référentiel GitHub ExtraHop pour un exemple de procédure d'authentification à l'aide de jetons API.
  1. Accédez au Référentiel GitHub d'exemples de code ExtraHop et téléchargez le contenu du upgrade_system_cloud répertoire vers votre machine locale.
  2. Dans un éditeur de texte, ouvrez le systems.csv archivez et remplacez les valeurs d' exemple par les noms d'hôte et les clés d'API de vos appliances.
  3. Exécutez le upgrade_system_cloud.py script.
    Vous devez spécifier l'un des arguments suivants :
    --dernier correctif
    Met à jour le système vers le dernier correctif de la version actuellement installée sur le système ExraHop. Par exemple, si le système exécute la version 8.7.1 et que les versions 8.7.2, 8.7.3, 8.8.0 et 8.8.1 sont disponibles, le système est mis à niveau vers la version 8.7.3.
    --dernière version
    Met à niveau le système vers la dernière version vers laquelle le système peut être mis à niveau. Par exemple, si le système exécute la version 8.7.1 et que les versions 8.7.2, 8.7.3, 8.8.0 et 8.8.1 sont disponibles, le système est mis à niveau vers la version 8.8.1.
    --version {str}
    Met à niveau le système vers la version spécifiée.

    Les arguments suivants sont facultatifs :

    --force
    Ne demande pas de confirmation avant la mise à niveau.
    --max-threads {int}
    Spécifie le nombre maximum de threads simultanés. La valeur par défaut est 2.
    --wait {float}
    Spécifie le nombre de minutes à attendre avant de vérifier la progression d'une tâche de mise à niveau. La valeur par défaut est 0,5.

    Par exemple, la commande suivante met à niveau les appliances vers le dernier correctif de la version actuellement installée :

    python3 upgrade_system_cloud.py --latest-hotfix
    Remarque :Si le script renvoie un message d'erreur indiquant que la vérification du certificat SSL a échoué, assurez-vous que un certificat de confiance a été ajouté à votre sonde ou à votre console. Vous pouvez également ajouter le verify=False possibilité de contourner la vérification des certificats. Cependant, cette méthode n'est pas sûre et n'est pas recommandée. Le code suivant envoie une requête HTTP GET sans vérification de certificat :
    requests.get(url, headers=headers, verify=False)

    Le système affiche une sortie similaire au texte suivant :

    The following systems will be upgraded:
        extrahop.example.com: 8.7.5.2941
        extrahop.example2.com: 8.7.5.2941
    Do you want to continue?
    y/n

    Pour mettre à niveau le système, tapez y puis appuyez sur ENTER.

Mise à niveau des magasins de disques ExtraHop

Tâches préalables à la mise

Avant de mettre à niveau un espace de stockage des enregistrements ExtraHop, vous devez arrêter l'ingestion d'enregistrements. Vous pouvez arrêter l' acquisition d'enregistrements pour tous les nœuds d'un cluster à partir d'un seul nœud.

Remarque :Le message Could not determine ingest status on some nodes et Error peut apparaître sur la page Gestion des données du cluster dans les paramètres d'administration des nœuds mis à niveau jusqu'à ce que tous les nœuds du cluster soient mis à niveau. Ces erreurs sont attendues et peuvent être ignorées.
  1. Ouvrez une application de terminal.
  2. Exécutez la commande suivante, où YOUR_KEY est l'API de votre compte utilisateur, et HOSTNAME est le nom d'hôte de votre espace de stockage des enregistrements ExtraHop :
    curl -X PATCH "https://HOST/api/v1/extrahop/cluster" -H "accept: application/json" -H "Authorization: ExtraHop apikey=YOUR_KEY" -H "Content-Type: application/json" -d "{ \"ingest_enabled\": false}"

Tâches post-mise à niveau

Après avoir mis à niveau tous les nœuds du cluster d'espace de stockage des enregistrements, activez l' ingestion d'enregistrements.

  1. Ouvrez une application de terminal.
  2. Exécutez la commande suivante, où YOUR_KEY est l'API de votre compte utilisateur, et HOSTNAME est le nom d'hôte de votre espace de stockage des enregistrements ExtraHop :
    curl -X PATCH "https://HOST/api/v1/extrahop/cluster" -H "accept: application/json" -H "Authorization: ExtraHop apikey=YOUR_KEY" -H "Content-Type: application/json" -d "{ \"ingest_enabled\": true}"
Last modified 2023-11-07