Настройка внешнего подключения стека Elasticsearch, Logstash и Kibana (ELK)

Важно

  • Версия внешнего сервиса должна совпадать с версией, указанной в файле docker-compose.yml.
  • В качестве примера в этой инструкции используется проект с именем testit. Вы можете использовать другое название.
  1. При настройке стека ELK укажите в .env файле следующие параметры соответственно вашей конфигурации:

    ELASTICSEARCH_CONNECTION_STRING=http://external-server:9200 (где external-server — IP-адрес или DNS-имя вашего сервера с Elasticsearch)
    ELASTICSEARCH_INDEX= (заданное вами имя индекса для Test IT)
    ELASTICSEARCH_LOGS_INDEX= (заданное вами имя индекса логов)
    LOGSTASH_CONNECTION_STRING=http://external-server:5044 (где external-server — IP-адрес или DNS-имя вашего сервера с Logstash)
    
  2. В файле docker-compose.yml:
    а. Добавьте следующую строку в секцию webapi, раздел environment:

     ```
     Serilog__UserActionAll__WriteTo__1__Args__requestUri: "${LOGSTASH_CONNECTION_STRING:-http://logstash:5044}"
     ```
    


    а. Добавьте следующую строку в секцию auth, раздел environment:

     ```
     Serilog__Admin__WriteTo__1__Args__requestUri: "${LOGSTASH_CONNECTION_STRING:-http://logstash:5044}"
     ```
    


    а. Закомментируйте секции с сервисами Elasticsearch, Logstash, Kibana, зависимости от него других контейнеров (все упоминания elasticsearch, logstash, kibana в блоках depends_on) и elastic-volume в списке volumes.

  3. Перезапустите систему Test IT:

    docker compose -f docker-compose.yml --project-name testit up --detach --timeout 120 --remove-orphans