1

J'ai configuré un serveur eureka dans un cluster ECS et utilisé un équilibreur de charge d'application pour son service. L'eureka est configuré pour accepter l'authentification en utilisant le fichier de propriétés ci-dessous.La vérification de l'intégrité du serveur Eureka échoue dans AWS Application Load Balancer

security.user.name=xxxxx 
security.user.password=yyyy 

Dans l'équilibreur de charge i créé un groupe cible pour eureka sur le port 8761. Je lui ai donné l'url «/» pour le contrôle de la santé. Mais la vérification de l'état de l'équilibreur de charge échoue avec l'erreur suivante.

Health checks failed with these codes: [401] 

Ceci indique que l'analyse ALB ne réussit pas à passer le contrôle d'intégrité en raison de l'authentification. (La suppression de la partie d'authentification fonctionne mais provoque d'autres erreurs). Existe-t-il un moyen de passer le contrôle de santé dans ALB?

Répondre

2

Les URL utilisées avec les vérifications d'intégrité ALB doivent renvoyer une valeur comprise entre 200 et 399. De plus, votre ALB doit être configuré avec les valeurs de réponse acceptables.

Source: http://docs.aws.amazon.com/elasticloadbalancing/latest/application/target-group-health-checks.html

Tout le reste se traduira par un échec:

  • 401 se traduira par un échec.
  • 301 avec ALB non configuré pour que 301 soit OK, entraînera un échec.

Pour réussir une vérification d'intégrité ALB, vous devez fournir une URL pouvant renvoyer un code d'état acceptable. Il peut s'agir d'un chemin dédié à la vérification de l'état de santé, tel que /System/Check/.

+0

Vous pouvez configurer un ELB/ALB pour accepter d'autres codes retour. Par exemple, vous pourriez considérer une redirection 301 comme une réponse saine. Bien sûr, dans ce cas, un 401 ne sonne pas comme un bon code de retour. –

+0

Classique ELB est fixé à 200. ALB est configurable entre 200 et 399. J'ai mis à jour ma réponse. –

+0

Merci pour le lien de clarification et de documentation. J'ai oublié que vous ne pouvez pas l'éditer sur un ELB classique. Et je n'ai pas réalisé qu'il y avait une restriction de portée sur ALB. L'info-bulle dans la console AWS donne l'impression qu'elle accepterait n'importe quelle valeur. –