JavaRush /Курси /Модуль 2: Fullstack /Централізоване логування

Централізоване логування

Модуль 2: Fullstack
Рівень 17 , Лекція 6
Відкрита

7.1 Компоненти ELK Stack

ELK Stack, який складається з Elasticsearch, Logstash і Kibana, є потужним інструментом для централізованого логування та аналізу даних. Він дозволяє збирати, зберігати, аналізувати та візуалізувати логи з різних джерел, включаючи Docker-контейнери. У цій лекції ми детально розглянемо, як налаштувати ELK Stack для централізованого логування Docker-контейнерів.

Компоненти ELK Stack

  1. Elasticsearch — розподілена пошукова та аналітична система, що використовується для зберігання та пошуку логів.
  2. Logstash — інструмент для збору, обробки та передачі логів у Elasticsearch.
  3. Kibana — веб-інтерфейс для візуалізації та аналізу даних, які зберігаються в Elasticsearch.

7.2 Встановлення Elasticsearch

На Linux

1. Додавання репозиторію Elasticsearch

Завантажте та встановіть публічний ключ репозиторію:

Terminal

wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Додайте репозиторій Elasticsearch:

Terminal

sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > \
/etc/apt/sources.list.d/elastic-7.x.list'
sudo apt-get update

2. Встановлення Elasticsearch

Terminal

sudo apt-get install elasticsearch

3. Запуск і ввімкнення автозапуску Elasticsearch

Terminal

sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch

На MacOS

1. Встановлення через Homebrew

Terminal

brew update
brew install elasticsearch

2. Запуск Elasticsearch

Terminal

elasticsearch

На Windows

1. Завантаження інсталяційного файлу

Завантажте останню версію Elasticsearch з офіційного сайту: https://www.elastic.co/downloads/elasticsearch.

2. Встановлення Elasticsearch

Запустіть завантажений інсталяційний файл і дотримуйтесь інструкцій на екрані.

3. Запуск Elasticsearch

Після встановлення перейдіть в папку з Elasticsearch і запустіть службу через PowerShell:

PowerShell

.\bin\elasticsearch.bat

Для автозапуску Elasticsearch додайте його в служби Windows через services.msc.

7.3 Встановлення Logstash

На Linux

1. Встановлення Logstash

Встановіть Logstash з репозиторію Elastic:

Terminal

sudo apt-get install logstash

2. Налаштування Logstash

Створіть конфігураційний файл logstash.conf:

Terminal

sudo nano /etc/logstash/conf.d/logstash.conf

Приклад конфігурації для збору логів Docker:

plaintext

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "docker-logs-%{+YYYY.MM.dd}"
  }
}

3. Запуск і включення автозапуску Logstash

Запустіть і включіть автозапуск Logstash:

Terminal

sudo systemctl start logstash
sudo systemctl enable logstash

На MacOS

1. Встановлення Logstash через Homebrew

Terminal

brew update
brew install logstash

2. Налаштування Logstash

Створіть конфігураційний файл logstash.conf в папці конфігурації Logstash:

Terminal

nano /usr/local/etc/logstash/logstash.conf

Приклад конфігурації:

plaintext

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "docker-logs-%{+YYYY.MM.dd}"
  }
}

3. Запуск Logstash

Запустіть Logstash через Homebrew:

Terminal

logstash -f /usr/local/etc/logstash/logstash.conf

На Windows

1. Завантаження і встановлення Logstash

Завантажте останню версію Logstash з офіційного сайту: https://www.elastic.co/downloads/logstash.

Розпакуйте архів Logstash у зручне місце (наприклад, C:\logstash).

2. Налаштування Logstash

Створіть конфігураційний файл logstash.conf в папці конфігурації Logstash:

PowerShell

notepad C:\logstash\config\logstash.conf

Приклад конфігурації:

plaintext

input {
  beats {
    port => 5044
  }
}

filter {
  json {
    source => "message"
  }
}

output {
  elasticsearch {
    hosts => ["localhost:9200"]
    index => "docker-logs-%{+YYYY.MM.dd}"
  }
}

3. Запуск Logstash

Запустіть Logstash з конфігурацією:

PowerShell

cd C:\logstash
bin\logstash.bat -f config\logstash.conf

7.4 Встановлення Kibana

На Linux

1. Встановлення Kibana

Встановіть Kibana:

Terminal

sudo apt-get install kibana

2. Запуск і ввімкнення автозапуску Kibana

Запустіть і ввімкніть автозапуск Kibana:

Terminal

sudo systemctl start kibana
sudo systemctl enable kibana

Kibana буде доступна за адресою http://localhost:5601.

На MacOS

1. Встановлення Kibana через Homebrew

Terminal

brew update
brew install kibana

2. Запуск Kibana

Запустіть Kibana через Homebrew:

Terminal

brew services start kibana

Kibana буде доступна за адресою http://localhost:5601.

На Windows

1. Завантаження і встановлення Kibana

Завантажте останню версію Kibana з офіційного сайту: https://www.elastic.co/downloads/kibana.

Розпакуйте архів Kibana в зручне місце (наприклад, C:\kibana).

2. Запуск Kibana

Запустіть Kibana:

PowerShell

cd C:\kibana\bin
kibana.bat

Kibana буде доступна за адресою http://localhost:5601.

8.5 Налаштування Filebeat для збору логів Docker

На Linux

1. Встановлення Filebeat

Встановіть Filebeat з репозиторію Elastic:

Terminal

sudo apt-get install filebeat

2. Конфігурація Filebeat

Налаштуйте Filebeat для збору логів Docker:

Terminal

sudo nano /etc/filebeat/filebeat.yml

Приклад конфігурації:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

output.logstash:
  hosts: ["localhost:5044"]

3. Запуск та увімкнення автозапуску Filebeat

Запустіть та увімкніть автозапуск Filebeat:

Terminal

sudo systemctl start filebeat
sudo systemctl enable filebeat

На MacOS

1. Встановлення Filebeat через Homebrew

Terminal

brew update
brew install filebeat

2. Конфігурація Filebeat

Налаштуйте Filebeat, відредагувавши файл filebeat.yml:

Terminal

nano /usr/local/etc/filebeat/filebeat.yml

Приклад конфігурації:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

output.logstash:
  hosts: ["localhost:5044"]

3. Запуск Filebeat

Запустіть Filebeat через Homebrew:

Terminal

brew services start filebeat

На Windows

1. Завантаження та встановлення Filebeat

Завантажте останню версію Filebeat з офіційного сайту: https://www.elastic.co/downloads/beats/filebeat.

Розпакуйте архів Filebeat у зручне місце (наприклад, C:\filebeat).

2. Конфігурація Filebeat

Відредагуйте файл filebeat.yml:

PowerShell

notepad C:\filebeat\filebeat.yml

Приклад конфігурації:

Yaml

filebeat.inputs:
- type: docker
  containers.ids:
    - '*'
  processors:
    - add_docker_metadata: ~

output.logstash:
  hosts: ["localhost:5044"]

3. Запуск Filebeat

Запустіть Filebeat:

PowerShell

cd C:\filebeat
filebeat.exe -e -c filebeat.yml
Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ