Comment puis-je résoudre les problèmes de surveillance de l'état de Route 53 qui ne sont pas sains ?

Lecture de 7 minute(s)
0

Les surveillances de l’état d'Amazon Route 53 que j'ai créés sont signalés comme n’étant pas sains.

Résolution

Remarque : Si vous recevez des erreurs lors de l'exécution des commandes de l'interface de la ligne de commande AWS (AWS CLI), assurez-vous que vous utilisez la version la plus récente de l'interface de ligne de commande AWS.

Tout d'abord, déterminez la raison de l'échec de la dernière surveillance de l’état à l'aide de la console de gestion AWS. Vous pouvez également utiliser la commande get-health-check-last-failure-reason dans l'AWS CLI.

Suivez ensuite les étapes de dépannage correspondantes décrites dans la section suivante pour identifier et résoudre le problème.

Remarque : Quel que soit le type de surveillance de l'état, vérifiez le statut de l'option Inverser le statut de surveillance de l’état. Si cette option est définie sur true, Route 53 considère que la surveillance de l’état n'est pas saine même si elle est marquée comme saine.

Résoudre les problèmes liés à une surveillance de l’état qui surveille un point de terminaison

Erreur : Le vérificateur de l’état n'a pas pu établir de connexion dans le délai imparti

L'erreur précédente se produit lorsque la tentative des vérificateurs de l’état de se connecter au point de terminaison configuré expire. Les délais minimaux pour établir une connexion sont les suivants :

  • Pour les surveillances de l’état TCP, la connexion TCP entre les vérificateurs de l’état et le point de terminaison doit être établie dans les dix secondes.
  • Pour les surveillances de l’état HTTP et HTTPS, la connexion TCP entre les vérificateurs de l’état et le point de terminaison doit être établie dans les quatre secondes. Le point de terminaison doit répondre avec un code d'état HTTP 2xx ou 3xx dans les deux secondes suivant l'établissement d'une connexion.

Pour plus d'informations, consultez Comment Amazon Route 53 détermine si un contrôle de surveillance de l’état est sain.

Pour éviter l'erreur de délai d'expiration, procédez comme suit :

  1. Dans la configuration du contrôle de surveillance de l’état, notez le nom de domaine ou l'adresse IP du point de terminaison.

  2. Accédez au point de terminaison. Vérifiez que le pare-feu ou le serveur autorise les connexions à partir des adresses IP publiques Route 53 pour les régions AWS désignées dans la configuration du contrôle de surveillance de l’état. Consultez les plages d'adresses IP et recherchez le service : ROUTE53 \ _HEALTHCHECKS. Pour les ressources de point de terminaison hébergées sur AWS, configurez des groupes de sécurité et des listes de contrôle d'accès réseau pour autoriser les adresses IP des vérificateurs de l’état de Route 53.

  3. Utilisez les outils suivants pour tester la connectivité avec le point de terminaison configuré via Internet. Remplacez les espaces réservés dans la commande suivante. Dans les exemples de commandes suivants, les variables avec les valeurs correspondant à votre cas d'utilisation.

Test TCP

$ telnet <domain name / IP address> <port>

Test HTTP/HTTPS

$ curl -Ik -w "HTTPCode=%{http_code} TotalTime=%{time_total}\n" <http/https>://<domain-name/ip address>:<port>/<path> -so /dev/null

Comparez les résultats des tests précédents avec les valeurs de délai d'expiration des contrôles de surveillance de l’état. Vérifiez ensuite que votre demande répond dans les délais impartis.

Par exemple, si vous exécutez le test suivant :

curl -Ik -w "HTTPCode=%{http_code} TotalTime=%{time_total}\n" https://example.com -so /dev/null

La sortie est alors la suivante :

HTTPCode=200 TotalTime=0.001963

Dans cet exemple, le temps total nécessaire pour obtenir des réponses avec le code d'état HTTP 200 est de 0,001963 secondes.

Pour les connexions HTTP, le temps de connexion doit être inférieur à quatre secondes. Le point de terminaison doit répondre avec le code d'état HTTP dans les deux secondes suivant la connexion. La durée totale est de six secondes. Une valeur supérieure à six secondes indique que le terminal tarde à répondre et que le contrôle de surveillance de l’état échoue. Dans ce cas, vérifiez votre point de terminaison pour vous assurer qu'il répond dans le délai imparti.

Si le résultat des commandes de test affiche un code HTTP autre que 200, vérifiez les configurations suivantes :

  • Règles de pare-feu
  • Groupes de sécurité
  • Listes de contrôle d'accès au réseau

Lorsque vous vérifiez les configurations précédentes, vérifiez que votre point de terminaison autorise les connexions à partir d'adresses IP publiques Route 53.

  1. Si cette option est activée, utilisez l'option graphique de latence dans la configuration de surveillance de l’état pour vérifier le graphique des métriques pour les éléments suivants :
  • Durée de connexion TCP
  • Délai jusqu'au premier octet
  • Il est temps de terminer l'établissement de la connexion SSL

Pour plus d'informations, consultez la section Surveillance de la latence entre les vérificateurs de l’état et votre point de terminaison.

**Remarque : **

  • Si le graphique de latence n'est pas activé, vous ne pouvez pas modifier les surveillances de l’état existantes. Vous devez plutôt créer une nouvelle surveillance de l’état.
  • Si l'adresse IP Elastic du point de terminaison que vous surveillez est publiée ou mise à jour, le contrôle de surveillance de l’état peut échouer.

Erreur : Alerte SSL : prise de contact \ _failure

L'erreur d'échec de l'établissement de connexion indique que la négociation SSL ou TLS avec le point de terminaison a échoué. Lorsque vous activez le SNI (HTTPS uniquement), Route 53 envoie le nom d'hôte contenu dans le message « client \ _hello » au point de terminaison pendant la négociation TLS. Cette action permet au point de terminaison de répondre à la demande HTTPS avec le certificat SSL ou TLS applicable.

Si votre nom d'hôte surveillé ne fait pas partie du nom commun du certificat SSL ou TLS du point de terminaison, vous recevez le message d'erreur « SSL alert handshake \ _failure ».

Remarque : Pour activer le SNI, le point de terminaison surveillé doit prendre en charge le SNI.

Résoudre les problèmes de vérification de surveillance de l'état liés à la condition de correspondance des chaînes

Le serveur de point de terminaison renvoie « 200 OK », mais Route 53 marque le contrôle de surveillance de l’état comme étant un échec

Les vérificateurs de l’état doivent établir une connexion TCP avec le point de terminaison dans les quatre secondes. Les vérificateurs de l’état doivent ensuite recevoir un code d'état HTTP 2xx ou 3xx dans les deux secondes qui suivent. Ensuite, la chaîne configurée doit apparaître dans les 5 120 premiers octets du corps de la réponse dans les deux secondes qui suivent. Si la chaîne n'est pas présente dans les 5 120 premiers octets, Route 53 marque la surveillance de l’état comme un échec.

Pour vérifier que la chaîne apparaît dans les 5 120 premiers octets du corps de la réponse, utilisez la commande suivante. Remplacez nom de domaine, port et $search-string par vos valeurs.

$ curl -sL <http/https>://<domain-name>:<port> | head -c 5120 | grep $search-string

Résoudre les problèmes liés à une surveillance de l’état qui surveille une alarme CloudWatch

Route 53 n'attend pas que l'alarme Amazon CloudWatch passe à l'état ALARM.

La situation précédente se produit lorsque Route 53 surveille le flux de données métriques plutôt que l'état de l'alarme CloudWatch.

Pour résoudre cette erreur, procédez comme suit :

  1. Vérifiez la configuration de la surveillance de l’état dont l'état est DONNÉES INSUFFISANTES. Si le flux de données métriques ne fournit pas suffisamment d'informations pour déterminer l'état de l'alarme, l'état de surveillance de l’état dépend de la configuration Insufficient DataHealthStatus. Les options d'état du paramètre InsufficientDataHealthStatus sont saines, non saines, ou dernier état connu.

  2. Lorsque vous mettez à jour la configuration d'une alarme CloudWatch, les nouveaux paramètres n'apparaissent pas automatiquement dans la surveillance de l’état associée. Pour synchroniser la configuration de la surveillance de l’état avec la configuration mise à jour de l'alarme CloudWatch :

  • Dans la console Route 53, choisissez Surveillances de l’état.
  • Sélectionnez la surveillance de l’état, puis choisissez Synchroniser la configuration.
AWS OFFICIEL
AWS OFFICIELA mis à jour il y a un an