Lors du déploiement d’un Horizon Edge Gateway avec l’OVA horizon-edge-gw-2506.1.0.ova, nous avons rencontré un incident bloquant lors de la phase d’installation automatique du Edge Gateway.

Comme dans beaucoup d’environnements d’entreprise, le déploiement se fait derrière un proxy HTTP.
Lors de l’assistant de configuration, les paramètres proxy ont été renseignés comme suit :

  • Adresse du proxy
  • Port
  • Proxy SSL : False (car HTTP simple)

Une fois le déploiement lancé, Edge Gateway démarre son processus d’installation… mais celui-ci n’aboutit pas.

Pour configurer le clavier en français sur Edge Gateway :

loadkeys fr

Une vérification via la commande :

kubectl get pods -A

montre qu’un des conteneurs reste bloqué en état ImagePullBackOff, indiquant une impossibilité de télécharger l’image requise.

L’exécution du script de diagnostic :

/opt/horizon/bin/diagnostic.sh

confirme que certaines URL nécessaires au déploiement sont inaccessibles depuis l’appliance.

Après investigation, la cause a été identifiée du côté de la configuration Docker générée automatiquement pendant le déploiement.

En effet, le fichier suivant contient les paramètres de proxy utilisés par Docker :

cat /usr/lib/system/docker.service.d/http-proxy.conf

Problème : bien que le déploiement ait été configuré avec un proxy HTTP, la configuration inscrite pour Docker utilise https dans les variables d’environnement, provoquant ainsi une tentative de passage par un proxy HTTPS… inexistant dans notre cas.

Résultat : Docker ne parvient pas à télécharger les images nécessaires (ImagePullBackOff.)

Solution appliquée

1. Édition du fichier de configuration Docker

En tant qu’utilisateur root, éditer le fichier suivant :

vi /usr/lib/systemd/system/docker.service.d/http-proxy.conf

Puis remplacer toutes les occurrences de https par http dans les adresses de proxy.

2. Rechargement et redémarrage du service Docker

systemctl daemon-reload
systemctl restart docker

3. Relancer le déploiement du conteneur en échec

kubectl -n edge-namespace rollout restart deployment edgedevice-deployment

4. Vérifier le bon redéploiement

Surveiller la progression des pods :

watch kubectl get pods -A

Une fois les statuts en Running, le déploiement est de nouveau fonctionnel.

Merci à JusteGeek qui a trouvé la solution et m'a fait un résumé pour écrire cet article !

Diagnostics - Failure 

-> Failed - ssl deep packet is enabled for https://softwareupdate.omnissa.com 
-> Failed - ssl deep packet is enabled for https://edgehubprodna.azure-devices.net 
-> Failed - ssl deep packet is enabled for https://horizonedgeprod.azurecr.io 
-> Failed - ssl deep packet is enabled for https://eventproxy.na1.data.vmwservices.com 
-> Failed - ssl deep packet is enabled for https://edgehubprodna.blob.core.windows.net 
-> Failed - ssl deep packet is enabled for https://cloud-sg-us-hdc-mqtt.horizon.omnissa.com 
-> Failed - ssl deep packet is enabled for https://auereplica125.blob.core.windows.net 
-> Failed - https://cloud-sg-us-hdc-mqtt.horizon.omnissa.com url is not reachable from edge 

Ludovic

Consultant @ Dell Technologies

Partagez cet article