如何在 Ubuntu 和 Debian 上安裝和配置 ELK Stack

ELK 堆棧由一組用於檢索和管理日誌文件的應用程序組成。 在軟件開發行業,日誌文件在識別問題和解決問題方面起著至關重要的作用。 ELK 堆棧是不同開源應用程序工具的集合,例如 彈性搜索, 基巴納,日誌存儲. ELK 可用於使用查詢以任何模式收集、搜索和可視化從任何來源生成的日誌。 在本文中,我們將學習如何在 Ubuntu 和 Debian 上安裝和配置 ELK 堆棧。

先決條件:

  1. 新的 Ubuntu 20.04 或 Debian 10 服務器
  2. 根特權帳戶
  3. 正確的互聯網連接

安裝 Java

ELK 棧的安裝需要 Java 環境。 運行以下命令在 Ubuntu/Debian 上安裝 java

$ sudo apt 安裝 openjdk-8-jdk

通過檢查 java 版本來驗證安裝

$ java -version

輸出:

安裝和配置 Elasticsearch

安裝 java 後,現在是安裝和配置 Elasticsearch 的時候了。 由於 Elasticsearch 包在 Ubuntu/Debian 上默認不可用,我們需要添加 elasticsearch apt 存儲庫。 運行以下命令以添加 GPG 存儲庫密鑰。

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

現在使用命令創建存儲庫文件。

$ 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 適當更新 $ sudo apt 安裝彈性搜索

elasticsearch 的默認配置文件位於 /etc/elasticsearch/elasticsearch.yml 。 使用任何文本編輯器並取消註釋這些行:

network.host: 本地主機 http.port: 9200

啟動並啟用elasticsearch

$ sudo systemctl 啟動彈性搜索 $ sudo systemctl 啟用彈性搜索

運行以下命令查看 Elasticsearch 狀態和詳細信息

$ curl -X GET “本地主機:9200”

輸出:

測試 Elasticsearch

安裝和配置 Logstash

Logstash 包在 Ubuntu/Debian 系統中默認可用。 運行以下命令進行安裝。

$ sudo apt安裝logstash

啟動並啟用服務

$ sudo systemctl 啟動 logstash $ sudo systemctl 啟用日誌存儲

使用命令檢查服務

$ systemctl status logstash

配置 Logstash

logstash的默認配置目錄是 /etc/logstash/conf.d/ . 安裝完成後 輸入, 篩選輸出 可以根據所需的用例配置管道。

安裝和配置 Kibana

Kibana 是一個基於 Web 的 GUI 工具,用於分析和解析收集到的日誌。 Kibana 在 Ubuntu/Debian 的默認存儲庫中可用。 運行以下命令安裝軟件包。

$ sudo apt安裝kibana

要配置 kibana,請轉到默認配置目錄並取消註釋以下行

$ sudo vim /etc/kibana/kibana.yml server.port: 5601 server.host: “localhost” elasticsearch.hosts: [“https://localhost:9200”]

配置 Kibana

啟動並啟用服務

$ sudo systemctl 啟動 kibana $ sudo systemctl 啟用 kibana

在防火牆中允許 kibana 端口

$ sudo ufw 允許 5601/tcp

現在使用 url 訪問 Kibana 儀表板 https://本地主機:5601

Kibana 儀表板

安裝和配置filebeat

Filebeat 用於將日誌發送到elasticsearch 和logstash 進行解析。 Filebeat 在 Ubuntu/Debian 存儲庫中默認可用。 運行以下命令進行安裝。

$ sudo apt 安裝 filebeat -y

要配置filebeat,請轉到默認配置目錄並註釋掉以下內容。

$ sudo vim /etc/filebeat/filebeat.yml

# output.elasticsearch: # 要連接的主機數組。 # 主機: [“localhost:9200”]

取消註釋以下行並保存文件

output.logstash: 主機: [“localhost:5044”]

配置 Filebeat

下一步,啟用filebeat系統模塊

$ sudo filebeat 模塊啟用系統

啟用 filebeat 模塊

現在運行以下命令加載索引模板

$ sudo filebeat 設置 –index-management -E output.logstash.enabled=false -E ‘output.elasticsearch.hosts=[“localhost:9200”]’

加載 filebeat 模板

啟動並啟用 filebeat 服務

$ sudo systemctl start filebeat $ sudo systemctl 啟用文件拍

檢查狀態

$ sudo systemctl status filebeat

檢查 Filebeat 狀態

結論

在本文中,我介紹瞭如何以正確的方式在 Debian/Ubuntu 上安裝和配置 ELK 堆棧。 此外,我們還學習瞭如何使用 Kibana、Logstash 和 Kibana 等不同組件來分析和可視化來自任何來源的日誌。