ELK的簡介與es的安裝部署

2021-09-25 06:29:03 字數 3463 閱讀 1057

elk是三個開源軟體的縮寫,分別表示:elasticsearch , logstash, kibana , 它們都是開源軟體。新增了乙個filebeat,它是乙個輕量級的日誌收集處理工具(agent),filebeat占用資源少,適合於在各個伺服器上蒐集日誌後傳輸給logstash,官方也推薦此工具。

elasticsearch是個開源分布式搜尋引擎,提供蒐集、分析、儲存資料三大功能。它的特點有:分布式,零配置,自動發現,索引自動分片,索引副本機制,restful風格介面,多資料來源,自動搜尋負載等。

logstash 主要是用來日誌的蒐集、分析、過濾日誌的工具,支援大量的資料獲取方式。一般工作方式為c/s架構,client端安裝在需要收集日誌的主機上,server端負責將收到的各節點日誌進行過濾、修改等操作在一併發往elasticsearch上去。

kibana 也是乙個開源和免費的工具,kibana可以為 logstash 和 elasticsearch 提供的日誌分析友好的 web 介面,可以幫助彙總、分析和搜尋重要資料日誌。

filebeat隸屬於beats。目前beats包含四種工具:

packetbeat(蒐集網路流量資料)

topbeat(蒐集系統、程序和檔案系統級別的 cpu 和記憶體使用情況等資料)

filebeat(蒐集檔案資料)

winlogbeat(蒐集 windows 事件日誌資料)

一般我們需要進行日誌分析場景:直接在日誌檔案中 grep、awk 就可以獲得自己想要的資訊。但在規模較大的場景中,此方法效率低下,面臨問題包括日誌量太大如何歸檔、文字搜尋太慢怎麼辦、如何多維度查詢。需要集中化的日誌管理,所有伺服器上的日誌收集彙總。常見解決思路是建立集中式日誌收集系統,將所有節點上的日誌統一收集,管理,訪問。

一般大型系統是乙個分布式部署的架構,不同的服務模組部署在不同的伺服器上,問題出現時,大部分情況需要根據問題暴露的關鍵資訊,定位到具體的伺服器和服務模組,構建一套集中式日誌系統,可以提高定位問題的效率。

乙個完整的集中式日誌系統,需要包含以下幾個主要特點:

收集-能夠採集多種**的日誌資料

傳輸-能夠穩定的把日誌資料傳輸到**系統

儲存-如何儲存日誌資料

分析-可以支援 ui 分析

警告-能夠提供錯誤報告,監控機制

elk提供了一整套解決方案,並且都是開源軟體,之間互相配合使用,完美銜接,高效的滿足了很多場合的應用。目前主流的一種日誌系統。

首先需要安裝jdk,之後在安裝elasticsearch,要注意先後順序。

安裝完成。

指定node節點和主機ip,開啟9200埠。

[root@server1 elasticsearch]# systemctl daemon-reload 

[root@server1 elasticsearch]# systemctl start elasticsearch.service

啟動服務。

檢視9200埠是否開啟,這個埠開啟了才算啟動成功。

在瀏覽器上也可以檢視到內容。

我們使用這個服務的時候,很多時候會將服務使用的記憶體鎖定。

[root@server1 elasticsearch]# vim elasticsearch.yml
開啟注釋的這一行。

重啟服務之後再使用netstat命令檢視端**們會發現已經查不到了,但是服務卻顯示正常,但由於埠為開啟,這個服務是不能正常使用的。

我們可以檢視es的日誌,發現服務已經關閉了。

[root@server1 elasticsearch]# vim /etc/security/limits.conf
elasticsearch   -       nofile  65535

elasticsearch - nproc 4096

elasticsearch - memlock unlimited

設定系統對資源的限制。

[root@server1 elasticsearch]# vim /usr/lib/systemd/system/elasticsearch.service
limitmemlock=infinity
修改systemd的啟動指令碼。

[root@server1 elasticsearch]# vim elasticsearch.yml
[root@server1 elasticsearch]# systemctl daemon-reload
再次重啟服務後可以看到9200埠啟動了。

Docker框架簡介與部署安裝

太過專業的解釋往往不太能夠很好的理解記憶,學習docker目的是有大體的理解,從實際操作入手,淺入深出,以下引用知乎的解釋 docker的思想來自於貨櫃,貨櫃解決了什麼問題?在一艘大船上,可以把貨物規整的擺放起來。並且各種各樣的貨物被貨櫃標準化了,貨櫃和貨櫃之間不會互相影響。那麼我就不需要專門運送水...

DataX的部署與安裝

剛來公司的第二天做的事就是把cd的資料導到bj來,因為不能按照原來一模一樣的去導所以就用到了datax,而datax幫我搞定了這個難題,有道是花時間想辦法解決,不如找工具研究。下面開始 解壓到虛擬機器上 tar zxvf datax.tar.gz 修改許可權為755 進入bin 目錄即可操作同步作業...

Scrapyd的安裝與部署

本文的目的在於介紹 scrapyd 的安裝與使用,為節省篇幅,scrapy 的安裝與 scrapy爬蟲的開發在本文不予介紹,預設已經開發完成,當然,本機的python環境變數也是配置好的。筆者所用的環境如下 系統 windows 10 python python 3.6.3 scrapy scrap...