Установка Elasticsearch, Logstash, Kibana (ELK Stack)
Настраиваем хранилище для логов на базе Elasticsearch, Logstash и Kibana(ELK Stack). В это хранилище можно настроить отправку практически любых логов в разных форматах и большого объема.
Установка Elasticsearch
Копируем ключ репозитория
# wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Добавляем репозиторий в систему
# echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
Устанавливаем Elasticsearch
# apt update && apt install elasticsearch
Добавляем Elasticsearch в автозагрузку и запускаем
# systemctl daemon-reload # systemctl enable elasticsearch.service # systemctl start elasticsearch.service
Проверяем
# systemctl status elasticsearch.service
Для проверки, выполним запрос к Elasticsearch о его статусе
# curl 127.0.0.1:9200
{
"name" : "elk-srv",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "xiaIdZSPT53EhiGIWQ5SSg",
"version" : {
"number" : "7.12.1",
"build_flavor" : "default",
"build_type" : "deb",
"build_hash" : "3436837139b9c6b6d23c325660750651f10d3343b7",
"build_date" : "2021-04-20T20:56:39.040728659Z",
"build_snapshot" : false,
"lucene_version" : "8.8.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
Для того, чтобы Elasticsearch слушал все сетевые интерфейсы, выставляем в конфиге два параметра(первый - слушать все интерфейсы, второй - хосты кластера следует искать только локально)
network.host: 0.0.0.0 discovery.seed_hosts: ["127.0.0.1", "[::1]"]
Установка Kibana
Копируем ключ репозитория
# wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Добавляем репозиторий в систему
# echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
Устанавливаем Kibana
# apt update && apt install kibana
Добавляем Kibana в автозагрузку и запускаем
# systemctl daemon-reload # systemctl enable kibana.service # systemctl start kibana.service
Проверяем состояние запущенного сервиса:
# systemctl status kibana.service
Kibana слушает порт 5601. Стартует примерно минуту. Ждём и проверяем
# netstat -tulnp | grep 5601 tcp 0 0 127.0.0.1:5601 0.0.0.0:* LISTEN 1487/node
Для того, чтобы Kibana слушала все сетевые интерфейсы, выставляем в конфиге параметр
server.host: "172.16.44.15"
Установка Logstash
Копируем ключ репозитория
# wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Добавляем репозиторий в систему
# echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list
Устанавливаем Logstash
# apt update && apt install logstash
Добавляем Logstash в автозагрузку и запускаем
# systemctl daemon-reload # systemctl enable logstash.service # systemctl start logstash.service