ELK安裝和使用

如果安裝ELK只是為了玩玩,可以單機(jī)搭建沒問題,但是真實(shí)業(yè)務(wù)運(yùn)行時(shí),必須考慮實(shí)用和效率問題。
ES client節(jié)點(diǎn): 作為ES節(jié)點(diǎn)的任務(wù)協(xié)調(diào)節(jié)點(diǎn),所有來自kibana的請求,全部到client節(jié)點(diǎn),它會(huì)智能的負(fù)載均衡到其他的ES data節(jié)點(diǎn)(Mapper階段),每個(gè)Data節(jié)點(diǎn)執(zhí)行請求后,將結(jié)果返回給Client節(jié)點(diǎn),Client節(jié)點(diǎn)聚合(Reduce階段)后將結(jié)果返回給Kibana。
腦裂: 假設(shè)集群包含兩個(gè)可參與master選舉的節(jié)點(diǎn),當(dāng)著兩個(gè)節(jié)點(diǎn)之間的網(wǎng)絡(luò)通信斷開時(shí),每個(gè)節(jié)點(diǎn)都認(rèn)為只有自己是可競選的節(jié)點(diǎn),當(dāng)minimum_master_nodes也設(shè)置為1時(shí),每個(gè)節(jié)點(diǎn)都選舉自己成為master(認(rèn)為另外一個(gè)節(jié)點(diǎn)是死的),這樣就會(huì)導(dǎo)致出現(xiàn)了兩個(gè)cluster,也稱腦裂。

準(zhǔn)備工作
安裝ELK之前,需要明確下面幾點(diǎn):

  • 組網(wǎng)方式。集群有幾個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)上搭建哪些服務(wù)。
  • 數(shù)據(jù)源。
  • 兼容性。

組網(wǎng)方式

  • kibana安裝在ES client節(jié)點(diǎn)(不要安裝在master或者Data節(jié)點(diǎn)上),因?yàn)閏lient節(jié)點(diǎn)有reduce階段,所以該節(jié)點(diǎn)盡量內(nèi)存和CPU充足些。
  • 默認(rèn)情況下,ES節(jié)點(diǎn)既是master節(jié)點(diǎn)也是data節(jié)點(diǎn)。但是集群規(guī)模增大時(shí),需考慮將master節(jié)點(diǎn)和data節(jié)點(diǎn)分離
  • minimum_master_nodes需要設(shè)置為(master_eligible_nodes / 2)+1 用來防止腦裂情況,兼顧高可用,master_eligible_nodes 最小值為3的奇數(shù),minimum_master_nodes最小值為2。
  • logstash一般安裝至少兩個(gè)節(jié)點(diǎn),用來保證高可用。

數(shù)據(jù)源
數(shù)據(jù)從哪里獲取,這個(gè)能決定你選擇哪個(gè)版本的ELK。比如:若你的kafka集群是0.9.x的版本,你安裝了最新6.x的ELK,那么不好意思,該版本的logstash是無法從kafka獲取到數(shù)據(jù)的。

兼容性
Elasticsearch, Logstash, Kibana不同的版本之間,兼容性需考慮清楚。建議ELK選擇同一個(gè)版本安裝。

下面以安裝ELK6.2.4版本為例(Linux環(huán)境)
軟件下載:https://www.elastic.co/cn/products 根據(jù)平臺(tái)版本下載對應(yīng)的安裝包
環(huán)境要求: java版本是8或以上

組網(wǎng)方式


image.png

Elasticsearch

  • 解壓:tar -zxvf elasticsearch-6.2.4.tar.gz
  • 修改配置:
    --1. jvm.options文件,主要修改下-Xms和-Xmx,建議都設(shè)置為內(nèi)存的50%左右
    --2. elasticsearch.yml,主要修改
cluster.name: wm-es
node.name: bi1
path.data: /srv/nbs/0/elasticsearch/data
path.logs: /srv/nbs/0/elasticsearch/logs
network.host: esIp
http.port: 9200
discovery.zen.ping.unicast.hosts: ["es1_ip", "es2_ip", "es3_ip"]
discovery.zen.minimum_master_nodes: 2
bootstrap.system_call_filter: false
  • 啟動(dòng)ES ./bin/elasticsearch -d
  • 查看集群狀態(tài) GET /_cat/health?pretty GET /_cat/nodes?pretty
    如果啟動(dòng)ES過程中報(bào)錯(cuò):vm.max_map_count 65530 is too low等問題,請root權(quán)限修改vm.max_map_count并重啟即可。
    搭建ES-client節(jié)點(diǎn),需要在elasticsearch.yml中增加如下配置:
node.master: false
node.data: false
node.ingest: false
search.remote.connect: false

Logstash

  • 解壓:tar -zxvf logstash-2.4.0.tar.gz
  • 修改配置,新建kafka-pipeline.conf
input {
     kafka {
        bootstrap_servers => "10.194.xxx.yyy:9094,10.194.xxx.yyy:9094,10.194.xxx.yyy:9094"
        auto_offset_reset => "latest"
        group_id => "fenzhan"
    id => "8.0.6"
        client_id => "logstash-1"
        check_crcs => "false"
    topics => ["fenzhan.exception.online"]
        }
}
filter {
    grok {
        match => { "message" => "%{COMBINEDAPACHELOG}"}
    }
    geoip {
        source => "clientip"
    }
}
output {
      elasticsearch {
                hosts => ["10.172.xxx.yyy:9200","10.172.xxx.yyy:9200","10.172.xxx.yyy:9200"]
                index => "logstash-%{+YYYY.MM.dd}"
        template_overwrite => true
        } 
}

  • 檢查Logstash的配置
    ./bin/logstash -f kafka-pipeline.conf --config.test_and_exit
  • 檢查通過后,重載配置并啟動(dòng):
    ./bin/logstash -f kafka-pipeline.conf --config.reload.automatic
  • 查看進(jìn)程是否啟動(dòng) jps/ ps -ef |grep logstash

Kibana

  • 解壓:tar -zxvf kibana-6.2.4-linux-x86_64.tar.gz
  • 修改kibana.yml配置
server.port: 5601 
server.host: "10.171.xxx.yyy"   //這個(gè)是外部瀏覽器訪問的地址
elasticsearch.url: "http://esIp:9200" //這個(gè)是集群內(nèi)部通信的
  • 啟動(dòng)Kibana
    ./bin/kibana 會(huì)提示是否啟動(dòng)成功,URL是啥

所有節(jié)點(diǎn)安裝完成,并啟動(dòng)成功之后,進(jìn)入Kibana的頁面,點(diǎn)擊Dev Tools進(jìn)入Console,就可以通過REST API 來查詢ES的數(shù)據(jù)。


image.png

安裝過程中,有任何問題,請留言?。?!

參考資料:

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Elastic+logstash+head簡單介紹 一. 概述 ElasticSearch是一個(gè)基于Lucene的...
    柒月失凄閱讀 4,667評論 0 4
  • 環(huán)境 系統(tǒng)版本 Linux version 2.6.32-696.3.1.el6.x86_64 (mockbuil...
    lihuibo閱讀 1,269評論 0 1
  • 我的母親,在少女讀書時(shí),很用功,又聰明,考上了師范學(xué)校。但命運(yùn)的眷顧卻與她擦扃而過,名額陰差陽錯(cuò)給弄丟了,改變了她...
    陌上清幽閱讀 243評論 2 3
  • 《在人生拐角處》這本書里,趙昂老師舉了很多咨詢的案例。在這些案例里,我們都能找到自己的影子 。在人生的轉(zhuǎn)折點(diǎn),是選...
    大王世界真大閱讀 605評論 0 3
  • ――微小說 皮特蒙圈了,他的心肝肺像“開心麻花”扭纏在一起,這是盤古開天辟地嗎?還...
    子木201閱讀 268評論 0 1

友情鏈接更多精彩內(nèi)容