[ELK] [Phần 2] Hướng dẫn cài đặt ELK

Cài đặt ELK 6.x logs stack để đẩy log – Linux | Network | Services ...

Ở phần trước mình đã có 1 bài tổng quan về các thành phần trong ELK. Trong hướng dẫn này, mình sẽ hướng dẫn các bạn cách cài đặt Elastic Stack trên máy chủ CentOS 7. Mình sẽ hướng dẫn tất cả các thành phần của Elastic Stack – bao gồm Filebeat , Filebeat được sử dụng để chuyển tiếp và tập trung các nhật ký và tệp – và định cấu hình chúng để thu thập và trực quan hóa nhật ký hệ thống.

Mô hình triển khai :

1. Phía server

1.1. Cài đặt Java

yum install java-1.8.0-openjdk.x86_64 java-1.8.0-openjdk-devel.x86_64

1.2. Cài đặt Elasticsearch

  • Thêm repo elasticsearch
rpm --import http://packages.elastic.co/GPG-KEY-elasticsearch
cat <<EOF > /etc/yum.repos.d/elasticsearch.repo
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
  • Cài đặt elasticsearch
yum install elasticsearch -y 
  • Mở file elasticsearch.yml và sửa lại dòng network.host như sau:
vi /etc/elasticsearch/elasticsearch.ym
network.host: localhost
  • Khởi động elasticsearch
systemctl start elasticsearch
systemctl enable elasticsearch

và kiểm tra trạng thái dịch vụ :

systemctl status elasticsearch
  • Kiểm tra dịch vụ Elasticsearch
curl -X GET http://localhost:9200
Imgur

1.3. Cài đặt logstash

  • Thêm repo logstash
cat << EOF > /etc/yum.repos.d/logstash.repo
[logstash-6.x]
name=Elastic repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
  • Cài đặt logstash :
yum install logstash -y
  • Khởi động logstash
systemctl daemon-reload
systemctl start logstash
systemctl enable logstash

1.4. Cài đặt Kibana

  • Tạo repo kibana
cat <<EOF > /etc/yum.repos.d/kibana.repo
[kibana-6.x]
name=Kibana repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
  • Cài đặt kibana
yum install kibana -y
  • Sửa file cấu hình kibana
sed -i 's/#server.host: "localhost"/server.host: "0.0.0.0"/'g /etc/kibana/kibana.yml
  • Khởi động và cho phép dịch vụ khởi động cùng hệ thống
systemctl daemon-reload
systemctl start kibana
systemctl enable kibana
  • Truy cập vào kibana để kiểm tra
http://ip-elk_server:5601
Imgur

2. Phía client Centos 7

2.1. Cài đặt Elasticsearch

  • Cài đặt repo elasticsearch
rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch
cat > /etc/yum.repos.d/elastic.repo << EOF
[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

2.2. Cài đặt filebeat

  • Cài đặt filebeat
yum install filebeat -y
  • Khởi động filebeat
systemctl enable filebeat
systemctl start filebeat
systemctl status filebeat 
  • Sao chép file cấu hình filebeat.yml để backup:
cp /etc/filebeat/filebeat.yml /etc/filebeat/filebeat.yml.orig
rm -rf /etc/filebeat/filebeat.yml
touch /etc/filebeat/filebeat.yml
  • Thêm vào filebeat phần cấu hình sau :
cat > /etc/filebeat/filebeat.yml << EOF
filebeat:
prospectors:
    - paths:
        - /var/log/*.log
    encoding: utf-8
    input_type: log
    fields:
        level: debug
    document_type: type
registry_file: /var/lib/filebeat/registry
output:
logstash:
    hosts: ["10.10.35.191:5044"]
    worker: 2
    bulk_max_size: 2048
logging:
to_syslog: false
to_files: true
files:
    path: /var/log/filebeat
    name: filebeat
    rotateeverybytes: 1048576000 # = 1GB
    keepfiles: 7
selectors: ["*"]
level: info
EOF
  • Khởi động filebeat
systemctl start filebeat
systemctl enable filebeat

3. Trở lại máy chủ ELK

3.1. Tại terminal

  • Tạo file config logstash:
vi /etc/logstash/conf.d/02-logstash.conf
  • Thêm nội dung vào file :
input {
beats {
    port => 5044
    ssl => false
}
}

output {
    elasticsearch {
    hosts => ["localhost:9200"]
    sniffing => true
    index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}"
    }
}
  • Khởi động lại máy chủ ELK
systemctl stop logstash
systemctl start logstash
  • Quay lại máy client và khởi động lại file beat :
systemctl restart filebeat

3.2. Trên kibana

  • Truy cập vào kibana
http://ip-elk_server:5601
  • Kích vào mục sau để mở rộng tùy chọn :
Imgur
  • Tại mục management, chọn Stack Managemant
Imgur
  • Ở Kibana, chọn Index Patterns`
Imgur
  • Sau đó chọn Create index pattern để thêm 1 index
Imgur
  • Nhập index pattern và chọn Next step
Imgur
  • Chọn Create index pattern để tạo
Imgur
  • Sau khi tạo, truy cập vào mục Discover của kibana để kiểm tra
Imgur
  • Kết quả như sau :
Imgur

Kết luận

Trong hướng dẫn này, bạn đã học cách cài đặt và cấu hình Elastic Stack để thu thập và phân tích nhật ký hệ thống. Bạn có thể gửi bất kỳ loại nhật ký hoặc dữ liệu được lập chỉ mục nào tới Logstash bằng Beats , nhưng dữ liệu sẽ trở nên hữu ích hơn nếu nó được phân tích cú pháp và cấu trúc bằng bộ lọc Logstash, vì điều này biến dữ liệu thành một định dạng nhất quán có thể đọc được dễ dàng bởi Elasticsearch.

Add a Comment

Your email address will not be published. Required fields are marked *