Defender ne peut pas se connecter à la console avec l’erreur « Échec de la connexion en raison d’un conflit de nom d’hôte Prisma Cloud »
Symptom
Defender ne peut pas se connecter à la Prisma Cloud console avec le message d’erreur suivant affiché dans les journaux Defender :
Connection failed due to hostname conflict, Defender name "<hostname>" is already connected.
Environment
- Prisma Cloud
Cause
- Pendant l’installation, Defender prend le nom d’hôte de l’hôte sous-jacent en tant que Defender ID.
- Prisma Cloud La console nécessite que le Defender ID soit unique.
- Si elle n’est pas unique, la connexion ultérieure par un autre hôte avec le même Defender ID (nom d’hôte) sera rejetée.
Resolution
Voici les étapes répertoriées pour différents scénarios de déploiement pour réinstaller le Defender avec l’indicateur : unique_hostname=true
Orchestrator(daemonset):
- Avec n’importe quel orchestrateur tel que Kubernetes ou Openshift, vous pouvez simplement modifier le YAMLgraphique /Helm comme ci-dessous et l’appliquer à nouveau au cluster.
- L’orchestrateur redéploiera automatiquement les pods de défense sur les nœuds avec une nouvelle configuration.
Si vous avez YAML/HELM qui a été utilisé pour le déploiement, voici les étapes:
YAML
- Ouvrez le fichier yaml avec l’éditeur de texte, recherchez une clé avec le nom CLOUD_HOSTNAME_ENABLED, puis modifiez la valeur de false à true
Créez une nouvelle clé/valeur comme ci-dessous lorsque vous ne trouvez pas de clé CLOUD_HOSTNAME_ENABLED :
- Commande Execute pour pousser les nouveaux paramètres du démon :
kubectl apply -f example.yaml
Remarque : remplacez example.yaml par le nom de fichier yaml que vous utilisez.
4. Après la mise à jour du daemonset, le cluster supprimera automatiquement les pods existants et déploiera des pods avec de nouveaux paramètres qui ont un nom d’hôte / défenseur IDunique.
Tableau de barre
Ouvrez value.yaml dans le chemin du graphique Helm de twistlock defender et modifiez la valeur de la clé avec le nom unique_hostname, de false à true
Créez une nouvelle clé/valeur comme ci-dessous pic, lorsque vous ne trouvez pas la clé unique_hostname :
Exécutez la commande pour pousser les nouveaux paramètres du démon via helm:
Mise à niveau de la barre -n Twistlock Twistlock
(Remarque : vous devrez peut-être changer l’espace de noms et/ou le nom de la libération de barre de twistlock à votre propre nom défini)
Exemple de sortie :
Vous ne trouvez pas le /Helm Chart original YAML?
Si vous ne trouvez pas le graphique / utilisé pour déployer le YAMLdéfenseur, vous pouvez générer un nouveau YAML/HELMHELM avec les étapes ci-dessous:
Accédez à Calculer > gérer > défenseurs > déployer > défenseurs > Orchestrator.UI
Sélectionnez la meilleure option/valeur adaptée à votre environnement, par exemple le choix du type d’orchestrateur, du port de communication Defender... etc.
Assurez-vous que « Attribuer des noms globaux uniques aux hôtes (facultatif) » est « Activé » :
Après avoir confirmé que toutes les options sont bien choisies, cliquez sur télécharger YAML ou sur le graphique Helm en conséquence :
Défenseur simple:
Si vous utilisez Single Defender, vous devrez désinstaller le défenseur actuel, puis installer un nouveau défenseur en suivant les étapes ci-dessous:
Désinstallez le défenseur :
Windows:
Exécutez ce cmd dans l’invite de commande avec admin:
C:\Program Files\\scripts\Prisma Clouddefender.ps1 -uninstall
OR
C:\Program Files\Twistlock\scripts\defender.ps1 -uninstall
Linux - Container Defender:
Exécutez ce cmd :
sudo / var / lib / twistlock / scripts / twistlock.sh -u
Linux - Host Defender:
Exécutez ce cmd :
sudo / var / lib / twistlock / scripts / twistlock.sh -u defender-server
Réinstallez le Defender :
Visitez Calculer UI > gérer > défenseurs > déployer > défenseurs > seul défenseur
Sélectionnez la meilleure option/valeur adaptée à votre environnement, par exemple en choisissant le type Defender, le port de communication Defender... etc.
Assurez-vous que « Attribuer des noms globaux uniques aux hôtes (facultatif) » est « Activé »
Copiez le script à la dernière étape et exécutez-le sur votre hôte pour installer un nouveau défenseur.
Pour Linux, collez le résultat sur le terminal/CLI
Pour Windows, collez le résultat sur powershell
Après la nouvelle installation, le défenseur doit utiliser un nom d’hôte unique pour signaler à la console. Problème résolu.