Awx-operator: Erreur de serveur interne après le déploiement avec le nouveau awx-operator version 0.7.0

Créé le 23 mars 2021  ·  8Commentaires  ·  Source: ansible/awx-operator

Hier (22 mars 2021), j'ai déployé AWX finement avec l'opérateur awx version 0.6.0.
Aujourd'hui, j'ai la nouvelle version 0.7.0 de awx-operator et tous les pods démarrent, mais awx-web est plein d'erreurs.
l'url d'entrée vers AWX me donne maintenant la seule ligne : Erreur de serveur interne

ce que j'ai aussi remarqué qu'hier je n'avais que 3 conteneurs dans le déploiement awx, maintenant j'en ai 4. awx-ee est maintenant aussi le 4ème conteneur dans le POD.

journalisation de awx-web :

Traceback (appel le plus récent en dernier) :
Fichier "/usr/bin/awx-manage", ligne 8, dans
sys.exit(gérer())
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/awx/__init__.py", ligne 154, dans manage
execute_from_command_line(sys.argv)
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/core/management/__init__.py", ligne 381, dans execute_from_command_line
utilitaire.execute()
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/core/management/__init__.py", ligne 357, en exécution
django.setup()
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/__init__.py", ligne 19, dans la configuration
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/utils/log.py", ligne 76, dans configure_logging
logging_config_func(logging_settings)
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 802, dans dictConfig
dictConfigClass(config).configure()
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 573, dans configure
'%r : %s' % (nom, e))
ValueError : impossible de configurer le gestionnaire 'console' : impossible d'ajouter le filtre 'guid' : 'guid'
2021-03-23 ​​22:05:53,677 INFO sorti: wsbroadcast (état de sortie 1; non attendu)
2021-03-23 ​​22:05:53,677 INFO sorti: wsbroadcast (état de sortie 1; non attendu)
2021-03-23 ​​22:05:54,753 INFO engendrée: 'wsbroadcast' avec pid 4180
2021-03-23 ​​22:05:54,753 INFO générée: 'wsbroadcast' avec pid 4180
Traceback (appel le plus récent en dernier) :
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 692, dans add_filters
filterer.addFilter(self.config['filters'][f])
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 326, dans __getitem__
valeur = dict.__getitem__(self, clé)
KeyError : 'guid'

Lors du traitement de l'exception ci-dessus, une autre exception s'est produite :

Traceback (appel le plus récent en dernier) :
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 565, dans configure
gestionnaire = self.configure_handler(gestionnaires[nom])
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 753, dans configure_handler
self.add_filters(résultat, filtres)
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 694, dans add_filters
raise ValueError('Impossible d'ajouter le filtre %r : %s' % (f, e))
ValueError : impossible d'ajouter le filtre 'guid' : 'guid'

Lors du traitement de l'exception ci-dessus, une autre exception s'est produite :

Traceback (appel le plus récent en dernier) :
Fichier "/var/lib/awx/venv/awx/bin/daphne", ligne 8, dans
sys.exit(CommandLineInterface.entrypoint())
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/daphne/cli.py", ligne 191, dans le point d'entrée
cls().run(sys.argv[1:])
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/daphne/cli.py", ligne 252, en cours d'exécution
application = import_by_path(args.application)
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/daphne/utils.py", ligne 12, dans import_by_path
cible = importlib.import_module(module_path)
Fichier "/var/lib/awx/venv/awx/lib64/python3.6/importlib/__init__.py", ligne 126, dans import_module
return _bootstrap._gcd_import(nom[niveau :], package, niveau)
Déposer "", ligne 994, dans _gcd_import
Déposer "", ligne 971, dans _find_and_load
Déposer "", ligne 955, dans _find_and_load_unlocked
Déposer "", ligne 665, dans _load_unlocked
Déposer "", ligne 678, dans exec_module
Déposer "", ligne 219, dans _call_with_frames_removed
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/awx/asgi.py", ligne 35, dans
django.setup()
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/__init__.py", ligne 19, dans la configuration
configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
Fichier "/var/lib/awx/venv/awx/lib/python3.6/site-packages/django/utils/log.py", ligne 76, dans configure_logging
logging_config_func(logging_settings)
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 802, dans dictConfig
dictConfigClass(config).configure()
Fichier "/usr/lib64/python3.6/logging/config.py", ligne 573, dans configure
'%r : %s' % (nom, e))
ValueError : impossible de configurer le gestionnaire 'console' : impossible d'ajouter le filtre 'guid' : 'guid'
2021-03-23 ​​22:05:55,974 INFO succès : wsbroadcast est entré dans l'état RUNNING, le processus est resté en place pendant plus de 1 secondes (startsecs)
2021-03-23 ​​22:05:55,974 INFO succès : wsbroadcast est entré dans l'état RUNNING, le processus est resté en place pendant > 1 secondes (startsecs)
2021-03-23 ​​22:05:55,974 INFO sortie : daphne (sortie statut 1 ; pas attendu)
2021-03-23 ​​22:05:55,974 INFO sortie : daphne (sortie statut 1 ; pas attendu)

docs

Commentaire le plus utile

Test final de ma part, car ça marche maintenant :-)

encore une fois avec un nouveau cluster k8s propre.
J'ai utilisé la 0.7.0 pour l'opérateur awx
J'ai changé la ligne dans mon-awx.yml pour obtenir l'image de quay.io/ansible/ awx: dernière
Cela a abouti à la version 18.0, donc @Zokormazo avait raison de dire que mon cluster k8s a obtenu la dernière version de dockerhub.

kubectl -n awx obtenir les pods
NOM ÉTAT PRÊT REDÉMARRAGE ÂGE
awx-889f8c78-4bj5l 4/4 Course à pied 0 26m
awx-postgres-0 1/1 Course à pied 0 27m

le conteneur awx-ee est désormais également déployé dans le module de déploiement AWX.

AWX a été complètement déployé sans aucun problème. :-)
De plus, le secret "awx-admin-password" est créé avec la version awx-operator 0.7.0 et cela fonctionne comme un charme.

Conclusion:
Tout fonctionne comme prévu si vous avez la bonne combinaison pour l'opérateur awx et la version d'image AWX.
Donc:
- awx-operator version 0.7.0 (dernier) fonctionne UNIQUEMENT avec succès en combinaison avec AWX 18.0.0 (dernier de quay.io/ansible/awx:latest)
- awx-operator version 0.6.0 en combinaison avec les versions AWX que j'ai testées (AWX 15.0.0 et 17.1.0) fonctionne correctement avec la solution de contournement pour le mot de passe administrateur AWX.

Peut-être que cela pourrait être mentionné plus clairement dans la documentation d'installation.

Le problème peut être clos :-)

grtz,
André

Tous les 8 commentaires

Avez-vous fourni votre propre tower_image ? Vous devrez soit utiliser la dernière version, soit utiliser une ancienne version de cet opérateur.

L'image de la tour était la version vanille 15.0. (je ne l'ai pas configuré dans mon yaml)
Je vais essayer la dernière image de la tour aujourd'hui.
Merci pour le retour.
Grtz,
André

Désolé de dire que cela ne fait aucune différence :-(
Nettoyez le cluster K8s.
La seule ligne que j'obtiens sur l'URL vers AWX est : Erreur de serveur interne

kubectl -n awx obtenir les pods
NOM ÉTAT PRÊT REDÉMARRAGE ÂGE
awx-968dd9cc8-85l7n 4/4 Course à pied 0 35m
awx-postgres-0 1/1 Course à pied 0 35m

mon-awx.yml :

##################################################### #####

apiVersion : awx.ansible.com/v1beta1
genre : AWX
métadonnées :
espace de noms : awx
nom : awx
spécification :
tower_admin_user : administrateur
#tower_admin_password_secret :

tower_image: ansible/ awx:latest
tower_image_pull_policy : si non présent

tower_web_resource_requirements :
demandes :
processeur : 1000 m
mémoire : 2Gi
limites:
processeur : 2000 m
mémoire : 3Gi

tower_task_resource_requirements :
demandes :
processeur : 500 m
mémoire : 1 Gi
limites:
processeur : 1000 m
mémoire : 2Gi

tower_postgres_resource_requirements :
demandes :
mémoire : 1 Gi
stockage : 8Gi
limites:
mémoire : 2Gi
stockage : 16Gi
tower_postgres_storage_class : manuel

#

Tous les conteneurs, à l'exception de awx-web et awx_task, fonctionnent bien.
voir le fichier zip ci-joint pour toute la journalisation des conteneurs.
awx-postgres.zip

Je l'ai testé à nouveau avec un nouveau cluster k8s propre.
J'ai modifié la ligne suivante dans le fichier awx-operator.yaml après le téléchargement :
chat awx-operator.yaml | grep 0.
Image: "quay.io/ansible/awx- opérateur: 0.6.0 "
J'ai utilisé le même : my-awx.yml

kubectl -n awx obtenir les pods
NOM ÉTAT PRÊT REDÉMARRAGE ÂGE
awx-8b89d69f-xd259 3/3 Course à pied 0 19m
awx-postgres-0 1/1 Course à pied 0 19m

Maintenant, je n'ai pas le conteneur awx-ee dans le POD pour AWX.

MAIS le PLUS important est qu'AWX a été complètement déployé sans problème. :-)
Je suis maintenant connecté à AWX avec les nouvelles images AWX, ça a l'air beaucoup mieux, compliments pour ça :-)

Il y a définitivement quelque chose qui ne va pas avec awx-operator 0.7.0 et prob. la combinaison avec awx-ee ?

Le seul problème que j'ai avec cet opérateur awx est qu'il ne crée pas le mot de passe secret "awx-admin-password".
Vous ne pouvez donc pas vous connecter lorsque AWX est prêt à fonctionner.
Mais cela est facilement résolu en procédant comme suit:

kubectl -n awx exec -it Dans le conteneur, créez simplement votre propre compte de superutilisateur :
awx-manage createsuperuser --username

grtz,
André

Quel registre résout ce tower_image: ansible/awx:latest ? Je dirais que votre k8 tire cela de dockerhub, où latest est 17.1.0 et non 18.0.0

Essayez d'utiliser le nom de domaine complet : tower_image: quay.io/ansible/awx:latest

Je viens de vérifier, la version installée est bien la 17.1.0

Grtz,
André

Test final de ma part, car ça marche maintenant :-)

encore une fois avec un nouveau cluster k8s propre.
J'ai utilisé la 0.7.0 pour l'opérateur awx
J'ai changé la ligne dans mon-awx.yml pour obtenir l'image de quay.io/ansible/ awx: dernière
Cela a abouti à la version 18.0, donc @Zokormazo avait raison de dire que mon cluster k8s a obtenu la dernière version de dockerhub.

kubectl -n awx obtenir les pods
NOM ÉTAT PRÊT REDÉMARRAGE ÂGE
awx-889f8c78-4bj5l 4/4 Course à pied 0 26m
awx-postgres-0 1/1 Course à pied 0 27m

le conteneur awx-ee est désormais également déployé dans le module de déploiement AWX.

AWX a été complètement déployé sans aucun problème. :-)
De plus, le secret "awx-admin-password" est créé avec la version awx-operator 0.7.0 et cela fonctionne comme un charme.

Conclusion:
Tout fonctionne comme prévu si vous avez la bonne combinaison pour l'opérateur awx et la version d'image AWX.
Donc:
- awx-operator version 0.7.0 (dernier) fonctionne UNIQUEMENT avec succès en combinaison avec AWX 18.0.0 (dernier de quay.io/ansible/awx:latest)
- awx-operator version 0.6.0 en combinaison avec les versions AWX que j'ai testées (AWX 15.0.0 et 17.1.0) fonctionne correctement avec la solution de contournement pour le mot de passe administrateur AWX.

Peut-être que cela pourrait être mentionné plus clairement dans la documentation d'installation.

Le problème peut être clos :-)

grtz,
André

Je suis d'accord avec @lingenavd ici. Si la version d'awx-operator nécessite une version spécifique d'AWX, elle doit être écrite quelque part.

Cette page vous a été utile?
0 / 5 - 0 notes