ELK 堆棧由一組用於檢索和管理日誌文件的應用程序組成。 在軟件開發行業,日誌文件在識別問題和解決問題方面起著至關重要的作用。 ELK 堆棧是不同開源應用程序工具的集合,例如 彈性搜索, 基巴納, 和 日誌存儲. ELK 可用於使用查詢以任何模式收集、搜索和可視化從任何來源生成的日誌。 在本文中,我們將學習如何在 Ubuntu 和 Debian 上安裝和配置 ELK 堆棧。
先決條件:
- 新的 Ubuntu 20.04 或 Debian 10 服務器
- 根特權帳戶
- 正確的互聯網連接
安裝 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”
輸出:
安裝和配置 Logstash
Logstash 包在 Ubuntu/Debian 系統中默認可用。 運行以下命令進行安裝。
$ sudo apt安裝logstash
啟動並啟用服務
$ sudo systemctl 啟動 logstash $ sudo systemctl 啟用日誌存儲
使用命令檢查服務
$ systemctl status 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”]
啟動並啟用服務
$ sudo systemctl 啟動 kibana $ sudo systemctl 啟用 kibana
在防火牆中允許 kibana 端口
$ sudo ufw 允許 5601/tcp
現在使用 url 訪問 Kibana 儀表板 https://本地主機:5601
安裝和配置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系統模塊
$ sudo filebeat 模塊啟用系統
現在運行以下命令加載索引模板
$ sudo filebeat 設置 –index-management -E output.logstash.enabled=false -E ‘output.elasticsearch.hosts=[“localhost:9200”]’
啟動並啟用 filebeat 服務
$ sudo systemctl start filebeat $ sudo systemctl 啟用文件拍
檢查狀態
$ sudo systemctl status filebeat
結論
在本文中,我介紹瞭如何以正確的方式在 Debian/Ubuntu 上安裝和配置 ELK 堆棧。 此外,我們還學習瞭如何使用 Kibana、Logstash 和 Kibana 等不同組件來分析和可視化來自任何來源的日誌。