如何在 Ubuntu 20.04 上安裝 ELK

ELK 堆棧全稱為 Elastic Stack,是三個開源軟件 Elasticsearch、Kibana 和 Logstash 的集合。 ELK 堆棧用於搜索、分析和可視化大量數據。

Beats 是提升 Elasticsearch 能力的重要工具。 所以我們有四個主要組件可以免費下載和使用:

  • Elasticsearch:分佈式搜索引擎存儲收集到的數據
  • Logstash:數據處理組件將數據發送到 Elasticsearch
  • Kibana:GUI web 用於搜索和可視化日誌
  • Beats:輕量級插件用於聚合來自不同數據流的數據

本教程將介紹在 Ubuntu 20.04 上安裝 ELK 堆棧的步驟。

安裝 Java

為了安裝 ELK 堆棧,您必須通過以下命令在您的 Ubuntu 機器上安裝 Java:

$ sudo apt install openjdk-8-jdk

驗證 Java 是否已成功安裝:

$ java -version

輸出:

openjdk version "1.8.0_275"
OpenJDK Runtime Environment (build 1.8.0_275-8u275-b01-0ubuntu1~20.04-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)

安裝 Nginx

Kibana 儀表板需要在您的機器上安裝 Nginx 網絡服務器。 它使用 Nginx 作為反向代理。

通過以下命令安裝 Nginx:

$ sudo apt install nginx

安裝和配置 Elasticsearch

為了安裝 Elasticsearch,您必須將其存儲庫添加到您的 Ubuntu 20.04 源列表中。

導入 GPG 密鑰:

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

然後,安裝 apt-transport-https:

$ sudo apt install apt-transport-https

添加 Elasticsearch 存儲庫:

$ echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee –a /etc/apt/sources.list.d/elastic-7.x.list

現在,您可以安裝 Elasticsearch:

$ sudo apt update
$ sudo apt install elasticsearch

Elasticsearch 的配置文件位於 /etc/elasticsearch/elasticsearch.yml

使用你喜歡的編輯器,修改如下:

取消註釋行:

network.host: localhost

http.port: 9200

在中添加以下行 Discovery 部分:

discovery.type: single-node

彈性搜索配置文件

通過運行以下命令啟動 Elasticsearch 服務:

$ sudo systemctl start elasticsearch.service

啟用 Elasticsearch 服務以在啟動時啟動,鍵入:

$ sudo systemctl enable elasticsearch.service

驗證 Elasticsearch 是否正在運行並監聽端口 9200

$ curl -X GET "localhost:9200"

測試 Elasticsearch

安裝和配置 Kibana

要安裝 Kibana,請運行以下命令:

$ sudo apt install kibana

安裝完成後,打開 Kibana 配置文件:

$ sudo vim /etc/kibana/kibana.yml

取消註釋這些行:

server.port: 5601
server.host: "localhost"
elasticsearch.hosts: ["https://localhost:9200"]

Kibana 配置文件

啟動 Kibana 服務並使其在啟動時啟動:

$ sudo systemctl start kibana
$ sudo systemctl enable kibana

要訪問 Kibana 儀表板,您必須 允許端口 5601 上的流量

$ sudo ufw allow 5601/tcp

現在,我們可以訪問 Kibana Dashboard https://localhost:5601

Kibana 儀表板

安裝和配置 Logstash

要安裝 Logstash,請運行以下命令:

$ sudo apt install logstash

啟動 Logstash 服務並使其在啟動時啟動:

$ sudo systemctl start logstash
$ sudo systemctl enable logstash

驗證 Logstash 服務是否正在運行:

$ sudo systemctl status logstash

Logstash 服務狀態

所有 Logstash 配置文件都位於 /etc/logstash/conf.d/. 根據我們自己的用例,配置 INPUT, FILTERS, OUTPUT 管道。

安裝和配置 Filebeat

要安裝 filebeat,請運行以下命令:

$ sudo apt install filebeat

安裝完成後,通過編輯其配置文件來配置 Filebeat:

$ sudo vim /etc/filebeat/filebeat.yml

在 Elasticsearch 輸出部分,讓我們註釋掉以下幾行:

#output.elasticsearch:
# Array of hosts to connect to.
#hosts: ["localhost:9200"]

然後,在 Logstash 輸出部分取消註釋這些行:

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

Filebeat 配置文件

接下來,需要啟用 Filebeat 系統模塊:

$ sudo filebeat modules enable system

然後,加載索引模板:

$ sudo filebeat setup --index-management -E output.logstash.enabled=false -E 'output.elasticsearch.hosts=["localhost:9200"]'

啟動 Filebeat 服務並使其在啟動時啟動:

$ sudo systemctl start filebeat
$ sudo systemctl enable filebeat

結論

ELK 堆棧是一個非常強大的數據集中工具。 本教程完成了在 Ubuntu 20.04 上安裝和配置 ELK 堆棧的所有步驟。

感謝您的閱讀,請在下面的評論部分留下您的建議。