From 800fcde88041d2269d6601d1fd29d5a94663e81e Mon Sep 17 00:00:00 2001 From: Sergey Antropoff Date: Wed, 10 Sep 2025 20:00:22 +0300 Subject: [PATCH] =?UTF-8?q?feat:=20=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB?= =?UTF-8?q?=D0=B5=D0=BD=D0=B0=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D0=B0?= =?UTF-8?q?=20make=20ps=20=D0=B8=20=D1=83=D0=BB=D1=83=D1=87=D1=88=D0=B5?= =?UTF-8?q?=D0=BD=20health-check?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Добавлена команда make ps для просмотра статуса контейнеров Docker - Улучшен health-check с паузами для ClickHouse сервисов: - 30 секунд ожидания перед проверкой ClickHouse реплик - 10 секунд ожидания перед проверкой Load Balancer - Исправлен health-check: заменен localhost на 127.0.0.1 для корректной работы внутри контейнеров - Обновлена документация с информацией о новой команде ps - Добавлены примечания о паузах в health-check Автор: Сергей Антропов, сайт: https://devops.org.ru --- Makefile | 16 ++++++++++++---- README.md | 8 ++++++-- 2 files changed, 18 insertions(+), 6 deletions(-) diff --git a/Makefile b/Makefile index 6d90b39..567c96d 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@ SHELL := /bin/bash PROJECT_NAME := sensus-infra COMPOSE_FILE := docker-compose.yml -.PHONY: help setup up down restart status logs clean +.PHONY: help setup up down restart status logs clean ps .PHONY: kafka-topics kafka-ui postgres-cli clickhouse-cli .PHONY: health-check backup restore ssl-generate ssl-clean ssl-info .PHONY: docker-install docker-update docker-compose-install docker-compose-update docker-check @@ -143,6 +143,10 @@ restart: ## Перезапустить всю инфраструктуру @sleep 5 @$(MAKE) up +ps: ## Показать статус контейнеров Docker + @echo "📊 Статус контейнеров Docker:" + docker ps --format "table {{.Names}}\t{{.Image}}\t{{.Status}}\t{{.Ports}}" + # ============================================================================= # МОНИТОРИНГ И ДИАГНОСТИКА # ============================================================================= @@ -162,12 +166,16 @@ health-check: ## Проверить здоровье сервисов @docker exec sensus-kafka kafka-broker-api-versions --bootstrap-server localhost:9092 >/dev/null 2>&1 && echo "✅ Kafka доступен" || echo "❌ Kafka недоступен" @echo "PostgreSQL:" @docker exec sensus-postgres pg_isready -U sensus -d sensus >/dev/null 2>&1 && echo "✅ PostgreSQL доступен" || echo "❌ PostgreSQL недоступен" + @echo "⏳ Ожидание готовности ClickHouse (30 секунд)..." + @sleep 30 @echo "ClickHouse-1:" - @docker exec sensus-clickhouse-1 wget --no-verbose --tries=1 --spider http://localhost:8123/ping >/dev/null 2>&1 && echo "✅ ClickHouse-1 доступен" || echo "❌ ClickHouse-1 недоступен" + @docker exec sensus-clickhouse-1 wget --no-verbose --tries=1 --spider http://127.0.0.1:8123/ping >/dev/null 2>&1 && echo "✅ ClickHouse-1 доступен" || echo "❌ ClickHouse-1 недоступен" @echo "ClickHouse-2:" - @docker exec sensus-clickhouse-2 wget --no-verbose --tries=1 --spider http://localhost:8123/ping >/dev/null 2>&1 && echo "✅ ClickHouse-2 доступен" || echo "❌ ClickHouse-2 недоступен" + @docker exec sensus-clickhouse-2 wget --no-verbose --tries=1 --spider http://127.0.0.1:8123/ping >/dev/null 2>&1 && echo "✅ ClickHouse-2 доступен" || echo "❌ ClickHouse-2 недоступен" + @echo "⏳ Ожидание готовности Load Balancer (10 секунд)..." + @sleep 10 @echo "ClickHouse Load Balancer:" - @docker exec sensus-clickhouse-lb wget --no-verbose --tries=1 --spider http://localhost:80/health >/dev/null 2>&1 && echo "✅ ClickHouse LB доступен" || echo "❌ ClickHouse LB недоступен" + @docker exec sensus-clickhouse-lb wget --no-verbose --tries=1 --spider http://127.0.0.1:80/health >/dev/null 2>&1 && echo "✅ ClickHouse LB доступен" || echo "❌ ClickHouse LB недоступен" # ============================================================================= # РАБОТА С KAFKA diff --git a/README.md b/README.md index 7bdf796..2cac4fd 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,7 @@ make health-check # Проверка здоровья сервисов make up # Запуск инфраструктуры make down # Остановка инфраструктуры make restart # Перезапуск инфраструктуры +make ps # Статус контейнеров Docker make status # Статус сервисов make logs # Логи всех сервисов ``` @@ -107,6 +108,7 @@ make logs # Логи всех сервисов | `make up` | Запустить инфраструктуру | | `make down` | Остановить инфраструктуру | | `make restart` | Перезапустить инфраструктуру | +| `make ps` | Показать статус контейнеров Docker | | `make status` | Показать статус всех сервисов | | `make logs` | Показать логи всех сервисов | | `make health-check` | Проверить здоровье сервисов | @@ -317,8 +319,10 @@ make health-check - ZooKeeper - Kafka - PostgreSQL -- ClickHouse (обе реплики) -- ClickHouse Load Balancer +- ClickHouse (обе реплики) - с паузой 30 секунд для полной инициализации +- ClickHouse Load Balancer - с паузой 10 секунд + +**Примечание:** Команда включает паузы для ClickHouse сервисов, так как они требуют времени для полной инициализации после запуска. ### Логи ```bash