您好,登錄后才能下訂單哦!
這篇文章主要介紹“EFK搭建過程及ES的生命周期管理”,在日常操作中,相信很多人在EFK搭建過程及ES的生命周期管理問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”EFK搭建過程及ES的生命周期管理”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
概述
今天主要介紹下EFK搭建過程及ES的生命周期管理,平臺采用EFK(ElasticSearch-6.6.1 + FileBeat-6.6.2 + Kibana-6.6.1)架構。建議三個組件主次版本保持一致。
EFK概念
EFK采用集中式的日志管理架構
elasticsearch:一個開源分布式搜索引擎,提供搜集、分析、存儲數據三大功能。它的特點有:分布式,零配置,自動發現,索引自動分片,索引副本機制,restful風格接口,多數據源,自動搜索負載等。
kibana:可以為Logstash 、Beats和ElasticSearch提供友好的日志分析Web 界面,可以幫助匯總、分析和搜索重要數據日志。
filebeat:輕量級日志采集器。需要在每個應用服務器配置filebeat,來采集日志,并輸出到elasticsearch
一、ElasticSearch
#rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch #vi/etc/yum.repos.d/elasticsearch.repo ===================================================== [elasticsearch-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ===================================================== # yum install elasticsearch # vim /etc/elasticsearch/elasticsearch.yml ==================================================== network.host: 0.0.0.0 ==================================================== # service elasticsearch restart
二、Kibana
1、部署
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch # vim /etc/yum.repos.d/kibana.repo ===================================================== snippet.bash [kibana-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ===================================================== # yum install kibana # vim /etc/kibana/kibana.yml ===================================================== server.host: "kibana服務器ip" elasticsearch.hosts: ["http://ES服務器IP:9200"] #如果通過反向代理訪問,則還需要添加如下配置。路徑具體值視情況而定 server.basePath: "/kibana"
2、下載漢化包并復制到指定目錄
wget https://codeload.github.com/anbai-inc/Kibana_Hanization/zip/master unzip master cp -r Kibana_Hanization-master/translations/ /usr/share/kibana/src/legacy/core_plugins/kibana/ #修改語言配置 #vim /etc/kibana/kibana.yml ====================================== i18n.locale: "zh_CN" ======================================
3、重啟服務
service kibana restart
三、FileBeat
Filebeat隸屬于Beats家族。目前Beats家族包含六種工具:
Packetbeat(搜集網絡流量數據)
Metricbeat(搜集系統、進程和文件系統級別的 CPU 和內存使用情況等數據)
Filebeat(搜集文件數據)
Winlogbeat(搜集 Windows 事件日志數據)
Auditbeat( 輕量型審計日志采集器)
Heartbeat(輕量級服務器健康采集器)
1、部署
# rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch # vim /etc/yum.repos.d/filebeat.repo ================================================== snippet.bash [filebeat-6.x] name=Elasticsearch repository for 6.x packages baseurl=https://artifacts.elastic.co/packages/6.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md ================================================== # yum install filebeat
2、配置
/etc/filebeat/filebeat.yml
filebeat.inputs: # Each - is an input. Most options can be set at the input level, so # you can use different inputs for various configurations. # Below are the input specific configurations. - type: log # Change to true to enable this input configuration. enabled: true # Paths that should be crawled and fetched. Glob based paths. paths: - d:/ams_logs/*.log encoding: gbk # 輸出配置 output.elasticsearch: # Array of hosts to connect to. hosts: ["ES服務器IP:9200"]
3、重啟服務
service filebeat restart
效果圖如下:
四、ES生命周期管理
對于日志數據,由于單個索引的存儲量的瓶頸,ES一般推薦使用時間作為后綴為同一份日志數據創建多個索引,而用戶則通過一個定時器來定時刪除過期的索引。ES在6.6之后,在x-pack中推出了索引生命周期管理相關的API來簡化與增強類似日志數據索引的管理。該方案基于時間將索引數據分為四個階段:Hot、Warm、Cold、Delete,對于這四種并給不同的數據階段,ES也給出了不同的數據處理方式,最終實現日志的生命周期管理
1、策略配置
管理→Index Lifecycle Policies,Create Policy,
2、日志生成
filebeat提供了兩種日志生成方式。一般情況下,建議使用默認生成策略
2.1、默認生成策略
打開filebeat配置文件,添加如下內容。使用本方案所對應的策略配置名稱,必須為 beats-default-policy
output.elasticsearch: hosts: ["ES服務器IP:9200"] ilm.enabled: true ilm.rollover_alias: "fsl.ams" ilm.pattern: "{now/d}-000001"
2.2、高級生成策略
打開filebeat配置文件,添加如下內容。在6.6.1版本下,使用本方案前,請事先在es上創建合適的索引模板。否則其直接生成的索引將不會存在別名(疑似bug),最終造成無法使用生命周期策略。
output.elasticesarch: hosts: ["ES服務器IP:9200"] index: fsl.ams-%{+yyyy.MM.dd} setup.template.name: "fsl.ams" setup.template.pattern: "fsl.ams-*" setup.template.settings.index.lifecycle.rollover_alias: "fsl.ams" setup.template.settings.index.lifecycle.name: "beats-default-policy"
到此,關于“EFK搭建過程及ES的生命周期管理”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。