日誌系統ELK部署及使用--CentOS7 Docker

一、Docker部署ELK

#docker run -itd -p 5601:5601 -p 9200:9200 -p 5044:5044 -v /home/docker/elk_data/:/var/lib/elasticsearch --name elk sebp/elk

#備註:5601爲kibana端口,9200爲elasticsearch端口,5044爲logstach端口

二、部署Filebeat收集日誌

在日誌所在服務器下載及安裝Filebeat

curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.2.0-x86_64.rpm
rpm -ivh filebeat-7.2.0-x86_64.rpm

修改Filebeat配置文件

vim /etc/filebeat/filebeat.yml

filebeat.inputs:
- type: log 
  paths:
    - /var/log/system.log
    - /var/log/wifi.log
- type: log 
  paths:
    - "/var/log/apache2/*"
#配置自定義標籤便於查找
  fields:
    app_name: apache
#設置爲true,會把自定義字段放前
  fields_under_root: true 

#設置直接輸出到es,ip配置爲es及kibana對應ip
output.elasticsearch:
    hosts: ["172.17.0.1:9200"]
setup.kibana:
    host: "172.17.0.1:5601"

#備註:filebeat有部分模塊可用

#filebeat modules list

#模塊的配置文件位於/etc/filebeat/modules.d/

修改模塊並啓用,這裏以nginx爲例

#filebeat modules enable nginx

修改nginx模塊配置文件
#vim /etc/filebeat/modules.d/nginx.yml
#Module: nginx
#Docs: https://www.elastic.co/guide/en/beats/filebeat/7.2/filebeat-module-nginx.html

- module: nginx

  access:
    enabled: true
    #var.paths:
    var.paths: ["/usr/local/nginx/logs/access.log"]
    #var.convert_timezone: true

 error:
    enabled: true
    var.paths: ["/usr/local/nginx/logs/error.log"]

啓用filebeat

#filebeat setup -e
#systemctl start filebeat.service

三、登陸Kibana並配置日誌

1、登陸kibana並進入:

Management--Index patterns--Create index pattern

輸入filebeat,成功匹配後點擊Next step

日誌系統ELK部署及使用--CentOS7 Docker

2、配置nginx module

首頁點擊 Add-log-data,選擇Nginx logs,按提示操作(之前已配置),check data成功後點擊Nginx logs dashboard即可

日誌系統ELK部署及使用--CentOS7 Docker

四、Kibana查看日誌

1、在首頁點擊discover,選擇之前配置的filebeat,可以配置的自定義字段查找日誌

日誌系統ELK部署及使用--CentOS7 Docker

2、在首頁點擊logs,輸入字段查找日誌,點擊Stream live可實時查看

日誌系統ELK部署及使用--CentOS7 Docker

3、點擊Dashboard,查找filebeat-nginx即可查看之前創建的~

五、Kibana配置訪問密碼

#yum install httpd-tools

#生成密碼,用戶名爲admin
htpasswd -c /usr/local/nginx/.htpasswd admin

#nginx的配置

location / {
    #設置 auth
    auth_basic "kibana login auth";
    auth_basic_user_file /usr/local/nginx/.htpasswd;

    #轉發到 kibana
    proxy_pass http://localhost:5601;
    proxy_redirect off;
}

打開Kibana,需要輸入賬號密碼才能登陸了~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章