Skip to content

Spardoks/ELK_testing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

Домашнее задание к занятию «ELK» - Коряко Виталий

https://github.com/netology-code/sdb-homeworks/blob/main/11-03.md


Дополнительные ресурсы

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

Примечание: если у вас недоступны официальные образы, можете найти альтернативные варианты в DockerHub, например, такой.


Задание 1. Elasticsearch

Установите и запустите Elasticsearch, после чего поменяйте параметр cluster_name на случайный.

Приведите скриншот команды 'curl -X GET 'localhost:9200/_cluster/health?pretty', сделанной на сервере с установленным Elasticsearch. Где будет виден нестандартный cluster_name.

Решение 1

apt update && apt install gnupg apt-transport-https

# wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
cat GPG-KEY-elasticsearch | apt-key add -
echo "deb [trusted=yes] https://mirror.yandex.ru/mirrors/elastic/7/ stable main" | sudo tee /etc/apt/sources.list.d/elastic-7.x.list

apt update && apt-get install elasticsearch

systemctl daemon-reload
systemctl enable elasticsearch.service
systemctl start elasticsearch.service

nano /etc/elasticsearch/elasticsearch.yml
# change cluster.name
systemctl restart elasticsearch.service

curl 'localhost:9200/_cluster/health?pretty'

GPG-KEY-elasticsearch

cluster_health


Задание 2. Kibana

Установите и запустите Kibana.

Приведите скриншот интерфейса Kibana на странице http://<ip вашего сервера>:5601/app/dev_tools#/console, где будет выполнен запрос GET /_cluster/health?pretty.

Решение 2

# add yandex repo like with elastic and then install

apt install kibana
systemctl daemon-reload
systemctl enable kibana.service
systemctl start kibana.service

kibana_health

Задание 3. Logstash

Установите и запустите Logstash и Nginx. С помощью Logstash отправьте access-лог Nginx в Elasticsearch.

Приведите скриншот интерфейса Kibana, на котором видны логи Nginx.

Решение 3

# add yandex repo like with elastic and then install

apt install logstash
systemctl daemon-reload
systemctl enable logstash.service
systemctl start logstash.service

apt install nginx

nano nginx-access.conf
# add config

cp nginx-access.conf /etc/logstash/conf.d/
systemctl restart logstash.service

chmod 777 /var/log/nginx/access.log

goto kibana and discover data

logstash_nginx_access

logstash_nginx_access


Задание 4. Filebeat.

Установите и запустите Filebeat. Переключите поставку логов Nginx с Logstash на Filebeat.

Приведите скриншот интерфейса Kibana, на котором видны логи Nginx, которые были отправлены через Filebeat.

Решение 4

# add yandex repo like with elastic and then install

apt install filebeat
systemctl daemon-reload
systemctl enable filebeat.service
systemctl start filebeat.service

filebeat setup --dashboards
filebeat modules enable system nginx

nano /etc/filebeat/filebeat.yml
# change to
# output.elasticsearch:
#   hosts: ["localhost:9200"]

systemctl restart filebeat

filebeat_nginx_access

Дополнительные задания (со звёздочкой*)

Эти задания дополнительные, то есть не обязательные к выполнению, и никак не повлияют на получение вами зачёта по этому домашнему заданию. Вы можете их выполнить, если хотите глубже шире разобраться в материале.

Задание 5*. Доставка данных

Настройте поставку лога в Elasticsearch через Logstash и Filebeat любого другого сервиса , но не Nginx. Для этого лог должен писаться на файловую систему, Logstash должен корректно его распарсить и разложить на поля.

Приведите скриншот интерфейса Kibana, на котором будет виден этот лог и напишите лог какого приложения отправляется.

About

ELK_testing

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published