В этой главе мы узнаем, как запрашивать узлы с помощью следующих функций:
- Используя копать
- Использование команды Monitor
- Использование команды Watch
- Регистрация внешних служб
Давайте разберемся с каждой из этих функций в деталях.
Используя Dig
Консул прослушивает 127.0.0.1:8600 для DNS-запросов в консуле. То, как он определяет, какие узлы доступны для предоставления услуги, использует проверки, которые могут быть:
-
Сценарий, который выполняется и возвращает код, совместимый с nagios .
-
Проверка HTTP, которая возвращает код ответа HTTP.
-
Проверка TCP, которая проверяет, открыт ли порт.
Сценарий, который выполняется и возвращает код, совместимый с nagios .
Проверка HTTP, которая возвращает код ответа HTTP.
Проверка TCP, которая проверяет, открыт ли порт.
Общая команда для тестирования копать —
$ dig @127.0.0.1 -p <port> <service-name>.consul
Теперь давайте попробуем пример команды dig —
$ dig @127.0.0.1 -p 8600 web.service.consul
Вывод будет таким, как показано на следующем скриншоте.
Использование команды Monitor
Он используется для подключения и отображения журналов работающего агента Consul. Эта команда покажет последние журналы. Это также позволяет вам регистрировать агента на относительно высоком уровне регистрации. Он состоит из различных уровней журнала, которым вы можете следовать, таких как — Trace, Debug, Info, Warn и Err.
Давайте попробуем следующую команду —
$ consul monitor
Вывод будет таким, как показано на следующем скриншоте.
Вы также можете установить команду монитора, используя подкоманды, такие как -log-level и -rpc-address. По умолчанию адрес RPC — 127.0.0.1:8400. Для получения дополнительной информации, нажмите здесь .
Использование команды Watch
Эта команда предоставляет нам механизм для отслеживания изменений в списке узлов, членов службы, значения ключа и т. Д. Она также вызывает процесс с последними значениями представления. Если процесс не указан, текущие значения обрабатываются в STDOUT , что может быть полезным способом проверки данных в Консуле. Справка команды Consul Watch Command имеет множество различных параметров, как показано на следующем снимке экрана —
Давайте попробуем демонстрацию с -type = service, как показано в следующей команде.
$ consul watch -type = service -service = consul
Для получения дополнительной информации по этой теме, вы можете нажать здесь .
Регистрация внешних служб
После регистрации интерфейс DNS сможет возвращать соответствующие записи «A» или «CNAME» для службы. Давайте зарегистрируем внешний сервис, такой как Amazon, как показано в следующем блоке кода и на снимке экрана.
$ 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
Приведенная выше команда указывает сервис, называемый магазином. Этот узел называется amazon с его URL-адресом, доступным по адресу www.amazon.com на порте 80. Давайте проверим вывод на консуле, чтобы убедиться, что мы правильно установили этот сервис. Для этого, пожалуйста, откройте окно браузера по адресу localhost: 8500.
Чтобы удалить сервис, мы можем просто использовать следующую команду.
$ curl -X PUT -d '{"Datacenter": "dc1", "Node": "amazon"}' http://127.0.0.1:8500/v1/catalog/deregister
Давайте проверим пользовательский интерфейс, как показано на следующем снимке экрана.