elk搭建實(shí)戰(zhàn)

elk搭建實(shí)戰(zhàn)

1 安裝elasticsearch

1.1安裝elasticsearch

ES中文文檔地址:https://es.xiaoleilu.com

ES下載地址:https://www.elastic.co/downloads/elasticsearch

解壓:tar -zxvf elasticsearch-5.6.2.tar.gz

cd elasticsearch-5.6.2/ ? ?

運(yùn)行

./bin/elasticsearch

./bin/elasticsearch -d????????? #后臺(tái)運(yùn)行

tail -f logs/elasticsearch.log?????????? #查看日志

注意:

elasticsearch5.0啟動(dòng)失敗故硅,出現(xiàn)如下提示:

1、Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x0000000085330000, 2060255232, 0) failed; error='Cannot allocate memory' (errno=12)

由于elasticsearch5.0默認(rèn)分配jvm空間大小為2g画株,修改jvm空間分配

#?vim?config/jvm.options

-Xms2g

-Xmx2g

修改為

-Xms512m

-Xmx512m

驗(yàn)證:elasticsearch --version

注:ES有執(zhí)行腳本的能力菌瘪,因安全因素舰罚,不能在root用戶下運(yùn)行特恬,強(qiáng)行運(yùn)行會(huì)報(bào)如下錯(cuò)誤:

org.elasticsearch.bootstrap.StartupException: java.lang.RuntimeException: can not run elasticsearch as root

解決方案:

groupadd es????????? #增加es組

useradd es -g es -p es123456 ? ? ? ? ?#增加es用戶并附加到es組

chown -R es:es elasticsearch-5.6.2 ? #給目錄權(quán)限

su es????????? #使用es用戶

./bin/elasticsearch -d ???????? #后臺(tái)運(yùn)行es

外網(wǎng)訪問

vi conf/elasticsearch.yml

修改network.host: 0.0.0.0

再次啟動(dòng)linux可能出現(xiàn)如下類似錯(cuò)誤

bootstrap checks failed

max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

解決方案

1悠砚、vi /etc/sysctl.conf

設(shè)置fs.file-max=655350

保存之后sysctl -p使設(shè)置生效

2士嚎、vi /etc/security/limits.conf 新增

* soft nofile 655350

* hard nofile 655350

3凹嘲、重新使用SSH登錄师倔,再次啟動(dòng)elasticsearch即可。

外網(wǎng)訪問:serverip:9200/


2周蹭、max number of threads [1024] for user [elasticsearch] is too low, increase to at least [2048]

修改?/etc/security/limits.d/90-nproc.conf

* ? ? ? ? ?soft ? ?nproc ? ? 1024

* ? ? ? ? ?soft ? ?nproc ? ? 2048


3趋艘、max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

修改/etc/sysctl.conf配置文件,

cat /etc/sysctl.conf | grep vm.max_map_count

vm.max_map_count=262144

如果不存在則添加

echo "vm.max_map_count=262144" >>/etc/sysctl.conf


默認(rèn)端口:9200

配置elasticsearch:

打開config/elasticsearch.yml

修改以下配置:

path.data: /Users/chenshunyang/tools/elasticsearch/data

path.logs: /Users/chenshunyang/tools/elasticsearch/logs

cluster.name: elktest //更改默認(rèn)的名稱為我們想要的名稱

node.name: node-elktest? //更改節(jié)點(diǎn)默認(rèn)的名稱

network.host: localhost

1.2 安裝插件:elasticsearch-head

elasticsearch 2.x 版本

elasticsearch 2.x版本中凶朗,直接使用/bin/plugin install mobz/elasticsearch-head安裝即可

驗(yàn)證:通過訪問http://localhost:9200/_plugin/head/

elasticsearch 5.1 版本

安裝:elasticsearch 5.1中瓷胧,elasticsearch-head插件不能放在elasticsearch的 plugins、modules 目錄下棚愤,不能使用 elasticsearch-plugin install搓萧,直接啟動(dòng)elasticsearch即可

git clone https://github.com/mobz/elasticsearch-head.git

cd elasticsearch-head/

npm install grunt

配置:修改elasticsearch/config/elasticsearch.yml

添加

http.cors.enabled: true

http.cors.allow-origin: "*"

打開elasticsearch-head-master/Gruntfile.js,找到下面connect屬性宛畦,新增hostname: ‘0.0.0.0’:

connect: {

server: {

options: {

hostname: '0.0.0.0',

port: 9100,

base: '.',

keepalive: true

}

}

}

啟動(dòng)插件:

elasticsearch-head/ && ./node_modules/grunt/bin/grunt server

查看

http://localhost:9100

2 安裝kibana

下載:從https://www.elastic.co/downloads/kibana下載對(duì)應(yīng)操作系統(tǒng)版本的kibana

解壓: tar -xzvf kibana-5.2.0-darwin-x86_64.tar.gz

配置kibana:進(jìn)入kibana/config

打開kibana.yml瘸洛,設(shè)置elasticsearch.url? ? 為es實(shí)例的地址

eg:elasticsearch.url: "http://localhost:9200"

啟動(dòng):./bin/kibana.sh

默認(rèn)端口:5601

訪問:http://localhost:5601

3 安裝logstash

下載:從https://www.elastic.co/downloads/logstash下載對(duì)應(yīng)操作系統(tǒng)版本的logstash

解壓:tar -zxvf logstash-5.2.0.tar.gz

啟動(dòng):./bin/logstash -f /home/push/logstash/conf/logstash.conf (logstash.conf為logstash的配置文件)

驗(yàn)證:logstah --version

配置logstash:

生成一個(gè)logstash.conf文件,配置示例內(nèi)容如下

input {

kafka {

zk_connect => "192.168.248.230:2181,192.168.248.175:2181,192.168.249.238:2181/kafka"

group_id => "sms-service3"

topic_id => "sms-service"

codec => "json"

reset_beginning => false

consumer_threads => 5

decorate_events => true

auto_offset_reset => "smallest"

}

}

output {

elasticsearch {

hosts => ["localhost:9200"]

index => "logstash-smsservice-%{+YYYY.MM.dd}"

document_type => "sms-service"

workers => 1

flush_size => 20000

idle_flush_time => 10

template_overwrite => true

}

}

關(guān)鍵配置詞語解釋:

Input 解釋

作為 Consumer 端,插件使用的是 High-level-consumer API次和,請(qǐng)結(jié)合上述 kafka 基本概念進(jìn)行設(shè)置:

group_id

消費(fèi)者分組反肋,可以通過組 ID 去指定,不同的組之間消費(fèi)是相互不受影響的踏施,相互隔離石蔗。

topic_id

指定消費(fèi)話題,也是必填項(xiàng)目畅形,指定消費(fèi)某個(gè) topic 养距,這個(gè)其實(shí)就是訂閱某個(gè)主題,然后去消費(fèi)束亏。

reset_beginning

logstash 啟動(dòng)后從什么位置開始讀取數(shù)據(jù)铃在,默認(rèn)是結(jié)束位置,也就是說 logstash 進(jìn)程會(huì)以從上次讀取結(jié)束時(shí)的偏移量開始繼續(xù)讀取,如果之前沒有消費(fèi)過定铜,那么就開始從頭讀取.如果你是要導(dǎo)入原有數(shù)據(jù)阳液,把這個(gè)設(shè)定改成 "true", logstash 進(jìn)程就從頭開始讀取.有點(diǎn)類似 cat 揣炕,但是讀到最后一行不會(huì)終止帘皿,而是變成 tail -F ,繼續(xù)監(jiān)聽相應(yīng)數(shù)據(jù)畸陡。

decorate_events

在輸出消息的時(shí)候會(huì)輸出自身的信息包括:消費(fèi)消息的大小鹰溜, topic 來源以及 consumer 的 group 信息。

rebalance_max_retries

當(dāng)有新的 consumer(logstash) 加入到同一 group 時(shí)丁恭,將會(huì) reblance 曹动,此后將會(huì)有 partitions 的消費(fèi)端遷移到新的 consumer 上,如果一個(gè) consumer 獲得了某個(gè) partition 的消費(fèi)權(quán)限牲览,那么它將會(huì)向 zookeeper 注冊(cè)墓陈, Partition Owner registry 節(jié)點(diǎn)信息,但是有可能此時(shí)舊的 consumer 尚沒有釋放此節(jié)點(diǎn)第献,此值用于控制贡必,注冊(cè)節(jié)點(diǎn)的重試次數(shù)。

consumer_timeout_ms

指定時(shí)間內(nèi)沒有消息到達(dá)就拋出異常庸毫,一般不需要改仔拟。

以上是相對(duì)重要參數(shù)的使用示例,更多參數(shù)可以選項(xiàng)可以跟據(jù)https://github.com/joekiller/logstash-kafka/blob/master/README.md查看 input 默認(rèn)參數(shù)飒赃。

output解釋:

Logstash 會(huì)努力攢到 20000 條數(shù)據(jù)一次性發(fā)送出去利花,但是如果 10 秒鐘內(nèi)也沒攢夠 20000 條,Logstash 還是會(huì)以當(dāng)前攢到的數(shù)據(jù)量發(fā)一次盒揉。

作者:shunyang

鏈接:http://www.reibang.com/p/6b7f0488ddff

來源:簡書

著作權(quán)歸作者所有晋被。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處刚盈。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末羡洛,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子藕漱,更是在濱河造成了極大的恐慌欲侮,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,204評(píng)論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件肋联,死亡現(xiàn)場(chǎng)離奇詭異威蕉,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)橄仍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門韧涨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來牍戚,“玉大人,你說我怎么就攤上這事虑粥∪缧ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 164,548評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵娩贷,是天一觀的道長第晰。 經(jīng)常有香客問我,道長彬祖,這世上最難降的妖魔是什么茁瘦? 我笑而不...
    開封第一講書人閱讀 58,657評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮储笑,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己弱左,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,689評(píng)論 6 392
  • 文/花漫 我一把揭開白布颈抚。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪叫榕。 梳的紋絲不亂的頭發(fā)上蠢莺,一...
    開封第一講書人閱讀 51,554評(píng)論 1 305
  • 那天会宪,我揣著相機(jī)與錄音拦赠,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼凹蜈,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼悄晃!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起沙热,我...
    開封第一講書人閱讀 39,216評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后拯啦,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,661評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,851評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了纵散。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梳码。...
    茶點(diǎn)故事閱讀 39,977評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖伍掀,靈堂內(nèi)的尸體忽然破棺而出掰茶,到底是詐尸還是另有隱情,我是刑警寧澤蜜笤,帶...
    沈念sama閱讀 35,697評(píng)論 5 347
  • 正文 年R本政府宣布濒蒋,位于F島的核電站,受9級(jí)特大地震影響把兔,放射性物質(zhì)發(fā)生泄漏沪伙。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,306評(píng)論 3 330
  • 文/蒙蒙 一县好、第九天 我趴在偏房一處隱蔽的房頂上張望围橡。 院中可真熱鬧,春花似錦缕贡、人聲如沸翁授。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽收擦。三九已至,卻和暖如春谍倦,著一層夾襖步出監(jiān)牢的瞬間塞赂,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評(píng)論 1 270
  • 我被黑心中介騙來泰國打工剂跟, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留减途,地道東北人酣藻。 一個(gè)月前我還...
    沈念sama閱讀 48,138評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長得像鳍置,于是被迫代替她去往敵國和親辽剧。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,927評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容