CodeGym /Các khóa học /Docker SELF /Ghi log tập trung

Ghi log tập trung

Docker SELF
Mức độ , Bài học
Có sẵn

7.1 Các thành phần của ELK Stack

ELK Stack, bao gồm Elasticsearch, Logstash và Kibana, là một công cụ mạnh mẽ để thu thập nhật ký tập trung và phân tích dữ liệu. Nó cho phép thu thập, lưu trữ, phân tích và hiển thị nhật ký từ nhiều nguồn khác nhau, bao gồm Docker containers. Trong bài giảng này, tụi mình sẽ tìm hiểu chi tiết cách cấu hình ELK Stack để thu thập nhật ký tập trung từ Docker containers.

Các thành phần của ELK Stack

  1. Elasticsearch — hệ thống tìm kiếm và phân tích phân tán được sử dụng để lưu trữ và tìm kiếm nhật ký.
  2. Logstash — công cụ để thu thập, xử lý và chuyển nhật ký vào Elasticsearch.
  3. Kibana — giao diện web để hiển thị và phân tích dữ liệu lưu trữ trong Elasticsearch.

7.2 Cài đặt Elasticsearch

Trên Linux

1. Thêm repository của Elasticsearch

Tải về và cài đặt public key của repository:

Terminal

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

Thêm repository 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. Cài đặt Elasticsearch

Terminal

sudo apt-get install elasticsearch

3. Khởi động và bật tự khởi động Elasticsearch

Terminal

sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch

Trên MacOS

1. Cài đặt qua Homebrew

Terminal

brew update
brew install elasticsearch

2. Khởi động Elasticsearch

Terminal

elasticsearch

Trên Windows

1. Tải file cài đặt

Tải phiên bản mới nhất của Elasticsearch từ trang chính thức: https://www.elastic.co/downloads/elasticsearch.

2. Cài đặt Elasticsearch

Chạy file cài đặt đã tải về và làm theo hướng dẫn trên màn hình.

3. Khởi động Elasticsearch

Sau khi cài đặt, chuyển đến thư mục Elasticsearch và khởi động dịch vụ qua PowerShell:

PowerShell

.\bin\elasticsearch.bat

Để Elasticsearch tự khởi động, thêm nó vào dịch vụ Windows qua services.msc.

7.3 Cài đặt Logstash

Trên Linux

1. Cài đặt Logstash

Cài đặt Logstash từ kho của Elastic:

Terminal

sudo apt-get install logstash

2. Cấu hình Logstash

Tạo file cấu hình logstash.conf:

Terminal

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

Ví dụ cấu hình để thu thập log từ Docker:

plaintext

input {
  beats {
    port => 5044
  }
}

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

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

3. Khởi động và bật tự động chạy Logstash

Khởi động và bật tự động chạy Logstash:

Terminal

sudo systemctl start logstash
sudo systemctl enable logstash

Trên MacOS

1. Cài đặt Logstash bằng Homebrew

Terminal

brew update
brew install logstash

2. Cấu hình Logstash

Tạo file cấu hình logstash.conf trong thư mục cấu hình của Logstash:

Terminal

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

Ví dụ cấu hình:

plaintext

input {
  beats {
    port => 5044
  }
}

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

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

3. Khởi động Logstash

Khởi động Logstash bằng Homebrew:

Terminal

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

Trên Windows

1. Tải và cài đặt Logstash

Tải phiên bản mới nhất của Logstash từ trang chính thức: https://www.elastic.co/downloads/logstash.

Giải nén file Logstash vào vị trí thuận tiện (ví dụ: C:\logstash).

2. Cấu hình Logstash

Tạo file cấu hình logstash.conf trong thư mục cấu hình của Logstash:

PowerShell

notepad C:\logstash\config\logstash.conf

Ví dụ cấu hình:

plaintext

input {
  beats {
    port => 5044
  }
}

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

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

3. Khởi động Logstash

Khởi động Logstash với cấu hình:

PowerShell

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

7.4 Cài đặt Kibana

Trên Linux

1. Cài đặt Kibana

Cài đặt Kibana:

Terminal

sudo apt-get install kibana

2. Khởi động và bật tự động khởi động Kibana

Khởi động và bật chế độ tự động khởi động cho Kibana:

Terminal

sudo systemctl start kibana
sudo systemctl enable kibana

Kibana sẽ có sẵn tại địa chỉ http://localhost:5601.

Trên MacOS

1. Cài đặt Kibana qua Homebrew

Terminal

brew update
brew install kibana

2. Khởi động Kibana

Khởi động Kibana qua Homebrew:

Terminal

brew services start kibana

Kibana sẽ có sẵn tại địa chỉ http://localhost:5601.

Trên Windows

1. Tải và cài đặt Kibana

Tải phiên bản mới nhất của Kibana từ trang web chính thức: https://www.elastic.co/downloads/kibana.

Giải nén file Kibana vào một vị trí thuận tiện (ví dụ, C:\kibana).

2. Khởi động Kibana

Khởi động Kibana:

PowerShell

cd C:\kibana\bin
kibana.bat

Kibana sẽ có sẵn tại địa chỉ http://localhost:5601.

8.5 Cấu hình Filebeat để thu thập log của Docker

Trên Linux

1. Cài đặt Filebeat

Cài đặt Filebeat từ repository Elastic:

Terminal

sudo apt-get install filebeat

2. Cấu hình Filebeat

Cấu hình Filebeat để thu thập log Docker:

Terminal

sudo nano /etc/filebeat/filebeat.yml

Ví dụ cấu hình:

Yaml

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

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

3. Khởi động và bật tự động khởi động Filebeat

Khởi động và bật tự động khởi động Filebeat:

Terminal

sudo systemctl start filebeat
sudo systemctl enable filebeat

Trên MacOS

1. Cài đặt Filebeat qua Homebrew

Terminal

brew update
brew install filebeat

2. Cấu hình Filebeat

Cấu hình Filebeat bằng cách chỉnh sửa file filebeat.yml:

Terminal

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

Ví dụ cấu hình:

Yaml

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

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

3. Khởi động Filebeat

Khởi động Filebeat qua Homebrew:

Terminal

brew services start filebeat

Trên Windows

1. Tải về và cài đặt Filebeat

Tải phiên bản mới nhất của Filebeat từ trang chính thức: https://www.elastic.co/downloads/beats/filebeat.

Giải nén Filebeat vào thư mục tiện lợi (ví dụ: C:\filebeat).

2. Cấu hình Filebeat

Chỉnh sửa file filebeat.yml:

PowerShell

notepad C:\filebeat\filebeat.yml

Ví dụ cấu hình:

Yaml

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

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

3. Khởi động Filebeat

Khởi động Filebeat:

PowerShell

cd C:\filebeat
filebeat.exe -e -c filebeat.yml
Bình luận
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION