一、ELK介紹
ELK簡介
ELK是三個開源軟件的縮寫,分別表示:Elasticsearch , Logstash, Kibana , 它們都是開源軟件。新增了一個FileBeat,它是一個輕量級的日志收集處理工具(Agent),F(xiàn)ilebeat占用資源少,適合于在各個服務(wù)器上搜集日志后傳輸給Logstash,官方也推薦此工具。
Elasticsearch是個開源分布式搜索引擎,提供搜集、分析、存儲數(shù)據(jù)三大功能。它的特點有:分布式,零配置,自動發(fā)現(xiàn),索引自動分片,索引副本機制,restful風(fēng)格接口,多數(shù)據(jù)源,自動搜索負載等。主要負責(zé)將日志索引并存儲起來,方便業(yè)務(wù)方檢索查詢。
Logstash 主要是用來日志的搜集、分析、過濾日志的工具,支持大量的數(shù)據(jù)獲取方式。一般工作方式為c/s架構(gòu),client端安裝在需要收集日志的主機上,server端負責(zé)將收到的各節(jié)點日志進行過濾、修改等操作在一并發(fā)往elasticsearch上去。是一個日志收集、過濾、轉(zhuǎn)發(fā)的中間件,主要負責(zé)將各條業(yè)務(wù)線的各類日志統(tǒng)一收集、過濾后,轉(zhuǎn)發(fā)給 Elasticsearch 進行下一步處理。
Kibana 也是一個開源和免費的工具,Kibana可以為 Logstash 和 ElasticSearch 提供的日志分析友好的 Web 界面,可以幫助匯總、分析和搜索重要數(shù)據(jù)日志。
二、elasticsearch實戰(zhàn)
1.elasticsearch簡介
Elasticsearch 是一個分布式可擴展的實時搜索和分析引擎,一個建立在全文搜索引擎 Apache Lucene? 基礎(chǔ)上的搜索引擎.當(dāng)然 Elasticsearch 并不僅僅是 Lucene 那么簡單,它不僅包括了全文搜索功能,還可以進行以下工作:
1.分布式實時文件存儲,并將每一個字段都編入索引,使其可以被搜索。
2.實時分析的分布式搜索引擎。
3.可以擴展到上百臺服務(wù)器,處理PB級別的結(jié)構(gòu)化或非結(jié)構(gòu)化數(shù)據(jù)。
2.elasticsearch安裝與配置
server2/3/4安裝軟件
軟件下載:https://elasticsearch.cn/download/
官方文檔:https://www.elastic.co/guide/en/elasticsearch/reference/7.6/index.html
安裝軟件:
rpm -ivh jdk-8u171-linux-x64.rpm
rpm -ivh elasticsearch-7.6.1-x86_64.rpm //7.6版本自帶jdk
設(shè)置服務(wù)自啟:
systemctl daemon-reload
systemctl enable elasticsearch
在下載軟件后,修改配置文件:
vim /etc/elasticsearch/elasticsearch.yml
17 cluster.name: my-es //集群名稱
23 node.name: server2 //主機名,需要解析
33 path.data: /var/lib/elasticsearch //數(shù)據(jù)目錄
37 path.logs: /var/log/elasticsearch //日志目錄
43 #bootstrap.memory_lock: true //鎖定內(nèi)存,內(nèi)存小時千萬不要開(我這里不開了)
55 network.host: 172.25.254.2 //主機IP
59 http.port: 9200 //http服務(wù)端口
68 discovery.seed_hosts: ["server2", "server3", "server4"] //集群中包含的節(jié)點
72 cluster.initial_master_nodes: ["server2", "server3", "server4"] //集群中的master節(jié)點(在啟動這個集群的時候要找一個引導(dǎo)節(jié)點 derver2、3、4都可以成為引導(dǎo)節(jié)點)
上述在server2上已經(jīng)做出下載及相應(yīng)配置,此時要在server 3、4上做相同的配置,我們直接復(fù)制相關(guān)文件過去即可:
[root@server2 ~]# scp elasticsearch-7.6.1-x86_64.rpm server3:~
[root@server2 ~]# scp elasticsearch-7.6.1-x86_64.rpm server4:~
然后修改相應(yīng)參數(shù)即可。
systemctl enable --now elasticsearch ## 設(shè)置服務(wù)自啟
文章來源:http://www.zghlxwxcb.cn/news/detail-407970.html
cat /var/log/elasticsearch/my-es.log
由下圖可知,9300端口是節(jié)點之間用來通信的端口,ES集群之間是通過9300進行通訊。
并且 他會在三個節(jié)點中選一個當(dāng)master(當(dāng)然每個節(jié)點都有成為master的可能,他會自行選舉),現(xiàn)在是分布式的節(jié)點,down一個,其他三個還都能用。
此時 三臺機器的elasticsearch.service均已啟動,現(xiàn)在我們需要一個圖形來管理這個集群,當(dāng)然用命令行也可以去控制,并且官方也給出了文檔,(https://www.elastic.co/guide/en/elasticsearch/referen文章來源地址http://www.zghlxwxcb.cn/news/detail-407970.html
到了這里,關(guān)于ELK(ElasticSearch, Logstash, Kibana)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!