Consul - Nœuds de requête

Dans ce chapitre, nous allons apprendre à interroger les nœuds avec les fonctions suivantes -

  • Utilisation de dig
  • Utilisation de la commande Monitor
  • Utilisation de la commande Watch
  • En enregistrant des services externes

Comprenons chacune de ces fonctions en détail.

Utilisation de Dig

Consul écoute sur 127.0.0.1:8600 les requêtes DNS dans le consul. La façon dont il détermine quels nœuds sont disponibles pour fournir un service utilise des contrôles qui peuvent être:

  • Un script qui est exécuté et qui renvoie un nagios compliant code.

  • Une vérification HTTP qui renvoie un code de réponse HTTP.

  • Un contrôle TCP qui vérifie si un port est ouvert.

La commande générale pour essayer dig est -

$ dig @127.0.0.1 -p <port> <service-name>.consul

Maintenant, essayons un échantillon dig commande -

$ dig @127.0.0.1 -p 8600 web.service.consul

La sortie serait comme indiqué dans la capture d'écran suivante.

Utilisation de la commande Monitor

Il est utilisé pour se connecter et afficher les journaux d'un agent Consul en cours d'exécution. Cette commande affichera les journaux récents. Il vous permet également de journaliser l'agent à un niveau de journalisation relativement élevé. Il se compose de différents niveaux de journalisation, que vous pouvez suivre, tels que - Trace, Debug, Info, Warn et Err.

Essayons la commande suivante -

$ consul monitor

La sortie serait comme indiqué dans la capture d'écran suivante.

Vous pouvez également définir la commande moniteur à l'aide des sous-commandes telles que -log-level et -rpc-address. Par défaut, l'adresse du RPC est 127.0.0.1:8400. Pour plus d'informations, cliquez ici .

Utilisation de la commande Watch

Cette commande nous fournit un mécanisme pour surveiller les changements dans la liste des nœuds, des membres du service, de la valeur de clé, etc. Elle appelle également un processus avec les dernières valeurs de la vue. Si aucun processus n'est spécifié, les valeurs actuelles sont traitéesSTDOUT, qui peut être un moyen utile d'inspecter les données dans Consul. L'aide de la commande Consul Watch propose diverses options, comme illustré dans la capture d'écran suivante -

Essayons une démo avec -type = service comme indiqué dans la commande suivante.

$ consul watch -type = service -service = consul

Pour plus d'informations sur ce sujet, vous pouvez cliquer ici .

En enregistrant des services externes

Une fois enregistrée, l'interface DNS pourra renvoyer les 'A Records' ou CNAME Records appropriés pour le service. Enregistrons un service externe, tel qu'Amazon, comme indiqué dans le bloc de code suivant et la capture d'écran également.

$ sudo curl -X PUT -d '{"Datacenter": "dc1", "Node": "amazon",
"Address": "www.amazon.com",
"Service": {"Service": "shop", "Port": 80}}'
http://127.0.0.1:8500/v1/catalog/register

La commande ci-dessus spécifie un service appelé boutique. Ce nœud est appelé amazon avec son URL disponible sur www.amazon.com sur le port 80. Vérifions la sortie sur consul pour nous assurer que nous avons correctement installé ce service. Pour cela, veuillez ouvrir la fenêtre du navigateur à localhost: 8500.

Pour supprimer le service, nous pouvons simplement utiliser la commande suivante.

$ curl -X PUT -d '{"Datacenter": "dc1", "Node": "amazon"}'
http://127.0.0.1:8500/v1/catalog/deregister

Laissez-nous vérifier l'interface utilisateur comme indiqué dans la capture d'écran suivante.