Тема
Установка агентов мониторинга Opensearch (инструкция)
1. Отключить цветной вывод контейнера sboard
Указать для контейнера sboard
переменную окружения NO_COLOR: "true"
и выполнить команду повторного запуска docker-compose
2. Основные переменные окружения
Добавить в файл .env в папке с docker-compose.yml
следующие переменные окружения:
shell
OPENSEARCH_PASSWORD=opensearch_password
OPENSEARCH_DOCKER_NETWORK=sboard_default
Здесь
- OPENSEARCH_PASSWORD - секретный пароль opensearch (запрашивается у менеджера)
- OPENSEARCH_DOCKER_NETWORK - докер-сеть Эсборд, обычно создаётся автоматически и имеет название вида
*_default
(список доступных докер-сетей можно посмотреть командойdocker network ls
)
3. Переменные окружения для Docker-compose HA
Для варианта развертывания Docker-compose HA добавить в файл .env дополнительно следующие переменные окружения, необходимые для мониторинга Redis и PostgreSQL:
shell
OPENSEARCH_REDIS_HOST=redis-host:6379
OPENSEARCH_REDIS_PASSWORD=redis_pass
OPENSEARCH_POSTGRES_CONNECTION_URL=postgresql://postgres:example@postgres:5432/sboard?sslmode=disable
Значения переменных указаны в качестве примера.
4. Файл docker-compose.opensearch.yml
Создать файл docker-compose.opensearch.yml
в папке с docker-compose.yml
со следующим содержимым (выделенные строки необходимы только в случае варианта развертывания Docker-compose HA):
yml
version: '3.3'
services:
filebeat:
image: ${DOCKER_REGISTRY}/filebeat:${DOCKER_FILEBEAT_IMAGE_TAG:-latest}
container_name: filebeat
user: root
networks:
- sboard-network
cap_add:
- SYS_PTRACE
privileged: true
pid: host
environment:
DOMAIN_NAME: '${DOMAIN_NAME}'
OPENSEARCH_PASSWORD: '${OPENSEARCH_PASSWORD}'
volumes:
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- /var/run/docker.sock:/var/run/docker.sock:ro
metricbeat:
image: ${DOCKER_REGISTRY}/metricbeat:${DOCKER_METRICBEAT_IMAGE_TAG:-latest}
container_name: metricbeat
user: root
networks:
- sboard-network
cap_add:
- SYS_PTRACE
privileged: true
pid: host
environment:
DOMAIN_NAME: '${DOMAIN_NAME}'
OPENSEARCH_PASSWORD: '${OPENSEARCH_PASSWORD}'
OPENSEARCH_REDIS_HOST: '${OPENSEARCH_REDIS_HOST}'
OPENSEARCH_REDIS_PASSWORD: '${OPENSEARCH_REDIS_PASSWORD}'
OPENSEARCH_POSTGRES_CONNECTION_URL: '${OPENSEARCH_POSTGRES_CONNECTION_URL}'
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- /sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro
- /proc:/hostfs/proc:ro
- /:/hostfs:ro
networks:
sboard-network:
name: '${OPENSEARCH_DOCKER_NETWORK}'
external: true
5. Разрешить соединения с сервером
Если для сервера используется фаервол и сервер по умолчанию не имеет доступа к внешней сети, то необходимо разрешить исходящие соединения на opensearch.sboard.su
по https (443 порт)
6. Запуск
Загрузить образы с Docker registry командой
shell
docker-compose -f docker-compose.opensearch.yml pull
Выполнить запуск командой
shell
docker-compose -f docker-compose.opensearch.yml up -d --force-recreate