Перейти к содержанию

Обзор развертывания Splunk Enterprise (бесплатная пробная версия) на сервере

Предварительные требования и базовые условия

  • Операционная система: Сервер на базе Linux с установленными Docker и Docker Compose.

  • Привилегии: Для создания директорий и управления контейнерами Docker требуется доступ с правами root или через sudo.

  • Конфигурация домена: Сервер должен быть настроен для обработки трафика зоны hostkey.in.

  • Порты: Порты 80, 443 и 8000 должны быть открыты и доступны в межсетевом экране (firewall) сервера.

FQDN конечной панели

Приложение доступно по следующему полностью указанному доменному имени (FQDN):

  • splunk<ServerID>.hostkey.in

  • Путь по умолчанию — /.

  • Безопасный доступ предоставляется через HTTPS на порту 443.

Структура файлов и директорий

Развертывание использует следующую структуру директорий на хост-сервере:

  • /root/splunk: Основная директория, содержащая файл конфигурации Docker Compose.

  • /root/splunk/compose.yml: Файл определения Docker Compose.

  • /data/nginx/user_conf.d: Директория, монтируемая для пользовательских конфигураций Nginx.

  • /etc/letsencrypt: Директория, монтируемая как том Docker (nginx_secrets) для хранения SSL-сертификатов.

Процесс установки приложения

Приложение развертывается с использованием Docker Compose. Установка включает в себя генерацию файла конфигурации и запуск контейнеров.

  • Версия программного обеспечения: Развертывание использует последнюю доступную версию Splunk (splunk/splunk:latest) и прокси Nginx Certbot (jonasal/nginx-certbot:latest).

  • Метод развертывания: Система использует файл docker compose, расположенный в директории /root/splunk, для оркестрации сервисов.

  • Команда выполнения:

    docker compose up -d
    
    Эта команда выполняется из директории /root/splunk.

Контейнеры Docker и их развертывание

В файле compose.yml развертываются два основных контейнера:

  1. Nginx (Certbot)

    • Образ: jonasal/nginx-certbot:latest

    • Функция: Выступает в роли обратного прокси, обрабатывает генерацию SSL-сертификатов через Let's Encrypt и завершает HTTPS-соединения.

    • Политика перезапуска: unless-stopped

    • Переменные окружения:

    • CERTBOT_EMAIL: Установлено значение hkadm@hostkey.com

  2. Splunk

    • Образ: splunk/splunk:latest

    • Функция: Хостит приложение Splunk Enterprise.

    • Политика перезапуска: unless-stopped

    • Переменные окружения:

    • SPLUNK_START_ARGS: Установлено значение --accept-license для автоматического принятия лицензионного соглашения.

    • SPLUNK_PASSWORD: Конфигурируется динамически через скрипт установки.

Прокси-серверы

Контейнер Nginx служит точкой входа для всего внешнего трафика.

  • SSL/TLS: Включен через Let's Encrypt посредством интеграции Certbot внутри образа Nginx.

  • Маршрутизация: Контейнер Nginx сопоставляет внешние порты с внутренним сервисом Splunk.

  • Монтирование томов:

  • nginx_secrets: Сопоставляется с /etc/letsencrypt для хранения сертификатов.

  • /data/nginx/user_conf.d: Сопоставляется с /etc/nginx/user_conf.d для пользовательских конфигураций Nginx.

  • Зависимости: Сервис Nginx настроен с зависимостью от сервиса Splunk, что гарантирует готовность Splunk перед началом маршрутизации трафика прокси.

Расположение файлов конфигурации и данных

Конфигурация/Ресурс Расположение Описание
Файл Docker Compose /root/splunk/compose.yml Определяет сервисы, сети и тома для развертывания.
Корневая директория приложения /root/splunk Рабочая директория для проекта Docker Compose.
SSL-сертификаты nginx_secrets (том Docker) Управляет сертификатами Let's Encrypt, монтируемыми в контейнер Nginx.
Пользовательские конфигурации Nginx /data/nginx/user_conf.d Директория хоста для дополнительных файлов конфигурации Nginx.

Доступные порты для подключения

На сервере открыты и сопоставлены следующие порты:

  • Порт 80: HTTP-трафик для валидации Let's Encrypt.

  • Порт 443: HTTPS-трафик для безопасного доступа пользователей к веб-интерфейсу Splunk.

  • Порт 8000: Внутренний порт, используемый контейнером Splunk, сопоставлен для прямого взаимодействия между контейнерами.

Запуск, остановка и обновление

Все операции управления сервисами выполняются с помощью команд Docker Compose, исполняемых внутри директории /root/splunk.

  • Запуск сервисов:

    docker compose up -d
    

  • Остановка сервисов:

    docker compose down
    

  • Перезапуск сервисов:

    docker compose restart
    

  • Обновление образов: Для загрузки последних версий контейнеров, определенных в тегах образов:

    docker compose pull
    
    После чего:
    docker compose up -d
    

question_mark
Я могу вам чем-то помочь?
question_mark
ИИ Помощник ×