天天看點

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

@[TOC](EFK簡介)

@[TOC](EFK下載下傳)

@[TOC](Elasticsearch部署)

@[TOC](部署kibana)

@[TOC](部署filebeat)

@[TOC](測試資料圖表展示成果)

@[TOC](結束語)

EFK簡介

1. Elasticsearch -->存儲資料

是一個實時的分布式搜尋和分析引擎,它可以用于全文搜尋,結構化搜尋以及分析。它是一個建立在全文搜尋引擎 Apache Lucene 基礎上的搜尋引擎,使用 Java 語言編寫,能對大容量的資料進行接近實時的存儲、搜尋和分析操作。

2.FileBeat:

  • Filebeat隸屬于Beats。目前Beats包含六種工具:
  • Packetbeat(搜集網絡流量資料)
  • Metricbeat(搜集系統、程序和檔案系統級别的 CPU 和記憶體使用情況等資料)
  • Filebeat(搜集檔案資料)
  • Winlogbeat(搜集 Windows 事件日志資料)
  • Auditbeat( 輕量型審計日志采集器)
  • Heartbeat(輕量級伺服器健康采集器)

3. Kibana --> 展示資料

資料分析和可視化平台。通常與 Elasticsearch 配合使用,對其中資料進行搜尋、分析和以統計圖表的方式展示。

EFK下載下傳

注意:記憶體需要給到4G不然會報錯

環境說明:

系統centos7

IP位址:192.168.0.11

軟體 版本
Elasticsearch 7.8.0
Filebeat 7.8.0
Kibana 7.8.0

下載下傳位址:

Elasticsearch: 7.8.0

https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-linux-x86_64.tar.gz

Kibana: 7.8.0

https://artifacts.elastic.co/downloads/kibana/kibana-7.8.0-linux-x86_64.tar.gz

Filebeat: 7.8.0

https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.8.0-linux-x86_64.tar.gz

Logstash: 7.8.0

https://artifacts.elastic.co/downloads/logstash/logstash-7.8.0.tar.gz

Elasticsearch部署

安裝es的節點一定安裝java環境,在此不過多贅述。

//解壓下載下傳後的安裝包
[[email protected] opt]# tar -zxvf elasticsearch-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/
// 做軟連結
[[email protected] local]# ln -s elasticsearch-7.8.0/ elasticsearch
// 配置環境變量
[[email protected] bin]# cat /etc/profile.d/myenv.sh
export PATH=/opt/EFK/elasticsearch/bin:$PATH
[[email protected] bin]# source /etc/profile.d/myenv.sh
// 建立使用者并設定密碼,因為Elasticsearch不能使用root來管理
[[email protected] ~]# useradd es
[[email protected] ~]# passwd es
[[email protected] local]# chown -R es.es elasticsearch-7.8.0/
//建立elasticsearch的資料目錄和日志目錄
[[email protected] ~]# mkdir -p /var/data/elasticsearch
[[email protected] ~]# mkdir -p /var/log/elasticsearch
[[email protected] data]# chown -R es.es elasticsearch/
[[email protected] log]# chown -R es.es elasticsearch/
// 修改elasticsearch的配置檔案
 cluster.name: my-es  //取消注釋,叢集名稱,可根據需要進行修改
 path.data: /var/data/elasticsearch  //elasticsearch資料目錄存放位置,建議建立此目錄(官網推薦)
 path.logs: /var/log/elasticsearch  //elasticsearch日志檔案存放位置
 network.host: 192.168.0.11  //取消注釋,這裡是監聽位址
 http.port: 9200  //取消注釋,這裡是監聽的端口号
 discovery.seed_hosts: ["node"]  //取消注釋,指定要發現的節點,可以寫節點名也可寫IP位址,因為我們這裡是單節點是以寫目前節點名就可以了
 xpack.security.enabled: true
 xpack.license.self_generated.type: basic
 xpack.security.transport.ssl.enabled: true
 cluster.initial_master_nodes: ["node"]
 http.host: 0.0.0.0
此檔案為yml檔案,新加的行要注意縮進不然啟動服務會報錯
           
// 設定elasticsearch的使用者名和密碼,因為我們上面開啟了ssl
執行設定使用者名和密碼的指令,需要設定密碼的使用者有elastic、apm_system、kibana_system、logstash_system、beats_system、remote_monitoring_user
[[email protected] elasticsearch]$ elasticsearch-setup-passwords interactive
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]y


Enter password for [elastic]: 
passwords must be at least [6] characters long
Try again.
Enter password for [elastic]: 
Reenter password for [elastic]: 
Enter password for [apm_system]: 
Reenter password for [apm_system]: 
Enter password for [kibana_system]: 
Reenter password for [kibana_system]: 
Enter password for [logstash_system]: 
Reenter password for [logstash_system]: 
Enter password for [beats_system]: 
Reenter password for [beats_system]: 
Enter password for [remote_monitoring_user]: 
Reenter password for [remote_monitoring_user]: 
Changed password for user [apm_system]
Changed password for user [kibana_system]
Changed password for user [kibana]
Changed password for user [logstash_system]
Changed password for user [beats_system]
Changed password for user [remote_monitoring_user]
Changed password for user [elastic]
           
Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

浏覽器IP:9200

使用者名為elastic,密碼為剛才設定的密碼,我這裡我密碼為123456

elastic使用者擁有superuser角色,是内置的超級使用者

kibana使用者:擁有kibana_system角色,使用者kibana用來連接配接elasticsearch并與之通信。Kibana伺服器以該使用者身份送出請求以通路叢集監視API和Kibana索引。不能通路index

logstash_system使用者:擁有logstash_system角色,使用者Logstash在Elasticsearch中存儲監控資訊時使用。

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

以上已經搭建成功,可以使用ip+9200進行通路,密碼為上步自設。這裡因為隻是測試搭建,是以并未使用自啟方法,感興趣的小夥伴可以自行查找es開機自啟的方法。

部署kibana

// 解壓tar包
[[email protected] opt]# tar -zxf kibana-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/
// 做軟連結
[[email protected] local]# ln -s kibana-7.8.0/ kibana
[[email protected] local]# chown -R kibana.kibana kibana-7.8.0/
[[email protected] ~]# useradd kibana
[[email protected] ~]# passwd kibana
// 配置環境變量
[[email protected] ~]# cat /etc/profile.d/myenv.sh 
export PATH=/opt/EFK/kibana/bin:$PATH
[[email protected] ~]# source /etc/profile.d/myenv.sh
// 建立相應檔案,并修改屬主和屬組
[[email protected] ~]# mkdir -p /var/log/kibana/
[[email protected] ~]# touch /var/log/kibana/kibana.log
[[email protected] ~]# chown -R kibana.kibana /var/log/kibana/kibana.log

[[email protected] ~]# mkdir -p /run/kibana/
[[email protected] ~]# touch /run/kibana/kibana.pid
[[email protected] ~]# chown -R kibana.kibana /run/kibana/kibana.pid
// 修改kibana配置檔案,修改配置檔案之前建議先備份
[[email protected] config]# cp kibana.yml kibana.yml-bak
[[email protected] config]# vim kibana.yml
 server.port: 5601  //kibana監聽的端口号
 server.host: "192.168.0.11"  //預設為localhost,後端伺服器的主機位址
 elasticsearch.hosts: ["http://192.168.0.11:9200"]  //與es連接配接,es的IP+端口号
 elasticsearch.username: "elastic"  //kibana對接es的使用者和密碼
 elasticsearch.password: "123456"
 pid.file: /run/kibana/kibana.pid  //kibana的pid檔案路徑
  i18n.locale: "zh-CN"  //語言中文
           

啟動指令包括,背景啟動:nohup kibana &

浏覽器IP:5601

使用者名為上述配置檔案中設定的,密碼同上。

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語
Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

安裝成功。

部署filebeat

// 解壓filebeat
[[email protected] opt]# tar -zxvf filebeat-7.8.0-linux-x86_64.tar.gz -C /opt/EFK/
// 建立軟連結
[[email protected] local]# ln -s filebeat-7.8.0/ filebeat
//配置環境變量
[[email protected] ~]# cat /etc/profile.d/myenv.sh
export PATH=/opt/EFK/filebeat/filebeat:$PATH
[[email protected] ~]# source /etc/profile.d/myenv.sh
//配置檔案
[[email protected] filebeat]# vi filebeat.yml
filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/test.log  #根據自身目錄進行修改
setup.kibana:
  host: "192.168.0.11:5601"
output.elasticsearch:
  hosts: ["192.168.0.11:9200"]
  username: "elastic"
  password: "123456"
           

啟動:nohup ./filebeat -e -c filebeat.yml > filebeat.log &

在啟動中遇到了相關問題,因時間問題未記錄和重制,小夥伴們遇到後可嘗試使用初始化解決。

初始化指令:./filebeat setup -e

測試資料圖表展示成果

使用IP+端口登入kibana,選擇如下:

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

在索引模式輸入filebate,選擇下列索引,點選下一步:

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

選擇如下:

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

建立索引模式後,顯示:

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

圖表展示如下:

Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語
Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語
Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語
Centos7部署EFK7.8詳細步驟+最終圖表展示EFK簡介EFK下載下傳Elasticsearch部署部署kibana部署filebeat測試資料圖表展示成果結束語

結束語

至此,日志收集系統搭建完畢,因為是剛剛接觸,是以有講解不全之處,還請大神指點。

繼續閱讀