
http://172.17.0.1:8505
если вдруг не работает
sudo docker rm consul
sudo docker run -d --name=consul -e CONSUL_BIND_INTERFACE=eth0 -e CONSUL_CLIENT_INTERFACE=eth0 -p 8500:8500 -p 8600:8600/udp hashicorp/consul:1.15.0
Пояснение частей интерфейса:
Consul UI Home (Главная страница):
В верхней части экрана обычно находится название сервера (в данном случае это будет Consul или имя вашего узла).
Health (Здоровье): В верхней части, рядом с кнопками для перехода между разделами, отображается состояние вашего сервера Consul.
Если кластер работает корректно, вы увидите зеленый статус (или "healthy" в сообщении).
Если возникли проблемы с кластером, будет красный статус или сообщение об ошибке.
Key/Value (Ключи и значения):
Этот раздел позволяет работать с базой данных ключ-значение (KV Store). В нем можно добавлять, изменять или удалять ключи и их значения.
Используется для хранения конфигурационных данных и других параметров, которые могут быть использованы сервисами в кластере.
Например, можно хранить настройки приложений, токены и другие данные.
Что можно делать здесь:
Добавлять новые ключи и значения.
Изменять значения уже существующих.
Просматривать историю изменений.
Services (Сервисы):
Здесь отображаются все сервисы, зарегистрированные в Consul. Это могут быть микросервисы или другие приложения, которые интегрированы с Consul для обнаружения сервисов (service discovery).
В данном разделе вы можете управлять сервисами, видеть их состояние, а также отслеживать их доступность.
Что можно делать здесь:
Регистрировать новые сервисы.
Смотреть, какие сервисы в данный момент активны.
Проверять состояние каждого сервиса (например, "зелёный" означает, что сервис доступен).
Nodes (Узлы):
В этом разделе отображаются все узлы (машины или контейнеры), которые являются частью кластера Consul.
Вы можете увидеть, какие узлы активны, а также их текущие состояния.
Это помогает отслеживать состояние всех агентов в кластере и их взаимодействие.
Что можно делать здесь:
Просматривать список всех узлов.
Проверять, подключены ли они и какое состояние у каждого из них.
Удалять или добавлять узлы, если это необходимо.
Datacenters (Центры обработки данных):
Если у вас несколько центров обработки данных (например, в разных географических локациях), здесь вы можете управлять ими.
В кластере Consul можно настроить несколько дата-центров, чтобы они взаимодействовали между собой.
Этот раздел предоставляет информацию о расположении и статусе дата-центров.
Checks (Проверки):
Этот раздел показывает активные проверки состояния сервисов и узлов в кластере.
Проверки могут быть настроены для мониторинга состояния сервисов, например, пингов, доступности портов или других характеристик.
Вы можете настраивать различные типы проверок и следить за их состоянием.
Что можно делать здесь:
Настроить проверки для сервисов или узлов.
Просматривать, если сервисы или узлы не прошли проверку.
System (Система):
Этот раздел дает информацию о конфигурации вашего Consul-сервера.
Включает информацию о параметрах, настройках и текущем состоянии системы.
Что можно делать здесь:
Получить информацию о текущем состоянии сервера.
Просматривать логи и настройки системы.
Добавление нового кластера 1)добавим новый контейнер
--name=consul-agent2: имя контейнера для нового узла.
-node=agent2: имя узла для нового агента.
-p 8501:8500 и -p 8601:8600/udp: проброс портов для нового узла.
sudo docker ps – проверка контейнера
sudo docker run -d --name=consul-server-22 -e CONSUL_BIND_INTERFACE=eth0 -e CONSUL_CLIENT_INTERFACE=eth0 -p 8522:8500 -p 8622:8600/udp hashicorp/consul:1.15.0 consul agent -data-dir=/consul/data -node=agent -join=172.17.0.2 -client=0.0.0.0
(меняем ip в конце и server-1 2 3 и тд)
agent- имя
consul-server-3 – при добавлении увеличиваем +1
172.17.0.2 – локальная сеть
Освободить память
sudo docker rm -f consul-server-22
добавляем в контейнер
добавим лидера
sudo docker run -d \
--name=consul-server-2\
-e CONSUL_BIND_INTERFACE=eth0 \
-e CONSUL_CLIENT_INTERFACE=eth0 \
-p 8502:8500 \
-p 8602:8600/udp \
hashicorp/consul:1.15.0 \
consul agent -server \
-data-dir=/consul/data \
-bind=0.0.0.0 \
-client=0.0.0.0 \
-join=172.17.0.3 \
-bootstrap-expect=3 \
-ui=true
проверка работы
sudo docker ps (если контейнер есть в списке то ок)
команда которая выводит лидера кластера
curl http://localhost:8500/v1/status/leader
работа с ключами доступа
curl --request PUT --data 'my_value' http://localhost:8500/v1/kv/my_key2
получим ключ
curl http://localhost:8500/v1/kv/my_key2
5. Проверка взаимодействия между узлами:
В интерфейсе Consul выберите раздел Nodes.
Вы должны увидеть оба узла: consul-server и consul-client.
Откройте вкладку Key/Value и создайте пару ключ-значение на сервере.
На клиенте выполните запрос к серверу через консоль:
curl http://localhost:8500/v1/kv/hello (можно посмотреть ключ)