ELK集群部署

ELK介紹

ELK是ElasticSerach缎患、Logstash借笙、Kibana三款產(chǎn)品名稱的首字母集合,用于日志的搜集和搜索较锡。

Elasticsearch:是一個(gè)開源分布式搜索引擎业稼,提供搜集、分析蚂蕴、存儲(chǔ)三大功能低散,特點(diǎn)是分布式俯邓、零配置、自動(dòng)發(fā)現(xiàn)熔号、索引自動(dòng)分片稽鞭、索引副本機(jī)制,restful風(fēng)格接口引镊,多數(shù)據(jù)源朦蕴,自動(dòng)搜索負(fù)載等。

Logstash:主要用來日志收集弟头、分析吩抓、過濾日志的工具,支持大量數(shù)據(jù)獲取方式赴恨。一般工作方式為C\S架構(gòu)疹娶,Client端安裝在需要收集日志的主機(jī)上,server端負(fù)責(zé)將收集到的各個(gè)節(jié)點(diǎn)日志進(jìn)行過濾伦连、修改等操作雨饺,然后一并發(fā)給elasticsearch。

Kibana:可以作為Logstash和elasticsearch提供的日志分析友好的UI界面惑淳,可以幫助匯總额港、分析和搜索重要數(shù)據(jù)日志。

Filebeat:輕量級(jí)數(shù)據(jù)收集引擎歧焦,ELK Stack 在 Agent 的第一選擇移斩。

1.系統(tǒng)配置

? 設(shè)置hostname,打開文件/etc/hostname倚舀,將內(nèi)容改為elk-server

? 關(guān)閉防火墻(如果因?yàn)槠渌虿荒荜P(guān)閉防火墻叹哭,也請(qǐng)不要禁止80端口)

systemctl stop firewalld.service

? 禁止防火墻自動(dòng)啟動(dòng)

systemctl disable firewalld.service

? 打開文件vim /etc/security/limits.conf,添加下面四行內(nèi)容:

* soft nofile 65536

* hard nofile 131072

* soft nproc 2048

* hard nproc 4096

? 打開文件vim /etc/sysctl.conf痕貌,添加下面一行內(nèi)容:

vm.max_map_count=655360

? 加載sysctl配置风罩,執(zhí)行命令:sysctl -p

2.部署ELK

? 配置jdk環(huán)境

1.檢查一下系統(tǒng)中的jdk版本

java -version

2.檢測jdk安裝包

# rpm -qa | grep java

3.如果有卸載

比如: rpm -e --nodeps tzdata-java-2018c-1.el7.noarch

4.將jdk包拷貝到/usr/java下

mv jdk-8u161-linux-x64.tar.gz /usr/java

cd /usr/java

tar -xzvf jdk-8u161-linux-x64.tar.gz

cd jdk1.8.0_161/

5.設(shè)置環(huán)境變量

vim /etc/profile

在最前面添加:

export JAVA_HOME=/usr/java/jdk1.8.0_161

export CLASSPATH=$JAVA_HOME/lib/

export PATH=$PATH:$JAVA_HOME/bin

export PATH JAVA_HOME CLASSPATH

使環(huán)境變量生效

source /etc/profile

? 部署Elasticsearch

單機(jī)版

1.創(chuàng)建目錄

mkdir /usr/local/elk

2.將ElasticSerach、Logstash舵稠、Kibana安裝包拷貝到此目錄并解壓

3.創(chuàng)建用戶組

groupadd elk

4.創(chuàng)建用戶加入用戶組

useradd elk -g elk

5.創(chuàng)建日志文件

touch touch /usr/local/elk/elasticsearch-6.7.2/logs/elasticsearch.log

6.單獨(dú)創(chuàng)建數(shù)據(jù)存放路徑

mkdir /mnt/esdata

修改主配置文件中數(shù)據(jù)存放位置(若安裝完成后需要修改超升,可以將elasticsearch-6.7.2/data/目錄下所有文件復(fù)制到新創(chuàng)建的文件下)cp -Rp

7.設(shè)置ElasticSerach文件夾為用戶elk所有:

chown -R elk. /usr/local/elk/elasticsearch-6.7.2/

若修改了數(shù)據(jù)存放路徑,則創(chuàng)建的文件夾也需要修改

chown -R elk. /mnt/esdata/

8.執(zhí)行啟動(dòng)命令

su - elk -c "/usr/local/elk/elasticsearch-6.7.2/bin/elasticsearch -d"

9.查看日志是否有報(bào)錯(cuò)

tail -f /usr/local/elk/elasticsearch-6.7.2/logs/elasticsearch.log

至此單機(jī)版es安裝完成哺徊∈易粒可用curl 127.0.0.1:9200 查看返回值


集群版

1.創(chuàng)建目錄

mkdir /usr/local/elk

2.將ElasticSerach、Logstash落追、Kibana安裝包拷貝到此目錄并解壓

3.創(chuàng)建用戶組

groupadd elk

4.創(chuàng)建用戶加入用戶組

useradd elk -g elk

5.創(chuàng)建日志文件

touch touch /usr/local/elk/elasticsearch-6.7.2/logs/elasticsearch.log

6.單獨(dú)創(chuàng)建數(shù)據(jù)存放路徑

mkdir /mnt/esdata

修改主配置文件中數(shù)據(jù)存放位置(若安裝完成后需要修改盈滴,可以將elasticsearch-6.7.2/data/目錄下所有文件復(fù)制到新創(chuàng)建的文件下)cp -Rp

7.設(shè)置ElasticSerach文件夾為用戶elk所有:

chown -R elk. /usr/local/elk/elasticsearch-6.7.2/

若修改了數(shù)據(jù)存放路徑,則創(chuàng)建的文件夾也需要修改

chown -R elk. /mnt/esdata/

8.修改es主配置文件

vim /usr/local/elk/elasticsearch-6.7.2/config/elasticsearch.yml

加入如下內(nèi)容

cluster.name: elk? ###保證三臺(tái)服務(wù)器節(jié)點(diǎn)集群名稱相同

node.name: node-1 #### 每個(gè)節(jié)點(diǎn)名稱不一樣 其他兩臺(tái)為node-1 ,node-2

network.host: 0.0.0.0 #### 實(shí)際服務(wù)器ip地址

discovery.zen.ping.unicast.hosts: ["172.16.3.158", "172.16.3.157"]

discovery.zen.minimum_master_nodes: 1

9.執(zhí)行啟動(dòng)命令

su - elk -c "/usr/local/elk/elasticsearch-6.7.2/bin/elasticsearch -d"

10.查看日志是否有報(bào)錯(cuò)

tail -f /usr/local/elk/elasticsearch-6.7.2/logs/elasticsearch.log

可用curl 127.0.0.1:9200 查看返回值

查看集群狀態(tài)(另外一臺(tái)重復(fù)上述操作)

curl -u USER:PASS http://127.0.0.1:9200/_cat/nodes?v


11.修改內(nèi)存大小 ,一般為服務(wù)器內(nèi)存大小一半

vim /usr/local/elk/elasticsearch-6.7.2/config/jvm.options?

后面安裝Kibana后可以查看到

? 部署Logstash

1.退出當(dāng)前用戶巢钓,回到root用戶

在目錄/usr/local/elk/logstash-6.7.2下創(chuàng)建文件vim default.conf病苗,內(nèi)容如下:

# 監(jiān)聽5044端口作為輸入

input {

????beats {

????????port => "5044"

????????}

}

# 數(shù)據(jù)過濾

filter {

????grok {

????????match => { "message" => "%{COMBINEDAPACHELOG}" }

????????}

????geoip {

source => "clientip"

????????}

}

# 輸出配置為本機(jī)的9200端口,這是ElasticSerach服務(wù)的監(jiān)聽端口

output {

????elasticsearch {

????????hosts => ["127.0.0.1:9200"]

????}

}

后臺(tái)啟動(dòng)Logstash服務(wù)

nohup bin/logstash -f default.conf --config.reload.automatic &

查看啟動(dòng)日志

tail -f logs/logstash-plain.log

?部署Kibana

1.打開Kibana的配置文件vim /usr/local/elk/kibana-6.7.2-linux-x86_64/config/kibana.yml症汹,到第七行左右修改server.host

2.運(yùn)行Kibana

進(jìn)入Kibana的目錄:/usr/local/elk/kibana-6.7.2-linux-x86_64 ;執(zhí)行啟動(dòng)命令:nohup bin/kibana &

nohup /usr/local/elk/kibana-6.7.2-linux-x86_64/bin/kibana &

查看啟動(dòng)日志

tail -f /usr/local/elk/kibana-6.7.2-linux-x86_64/nohup.out?

在瀏覽器訪問http://ip:5601硫朦,看到如下頁面

?部署Filebeat

1.安裝nginx

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

yum install -y nginx

systemctl enable nginx

systemctl start nginx

2.安裝FileBeat

vim /usr/local/elk/filebeat-6.7.2-linux-x86_64/filebeat.yml

24    enabled: true

28     - /var/log/nginx/*.log

148    #output.elasticsearch:

150 # hosts: ["localhost:9200"]

161 output.logstash:

163 hosts: ["10.0.0.175:5044"]

3.啟動(dòng)FileBeat

nohup ./filebeat -e -c filebeat.yml &>/dev/null &

4.驗(yàn)證

3.kibana平臺(tái)增加安全認(rèn)證

kibana是nodejs開發(fā)的,本身并沒有任何安全限制背镇,直接瀏覽url就能訪問咬展,如果公網(wǎng)環(huán)境非常不安全,可以通過nginx請(qǐng)求轉(zhuǎn)發(fā)增加認(rèn)證

1.安裝nginx并修改配置文件:

yum install nginx

systemctl enable nginx

vim /etc/nginx.conf

user root;

worker_processes? 4;

events {

worker_connections? 1024;

}

http {

include? ? ? mime.types;

default_type application/octet-stream;

sendfile? ? ? ? on;

keepalive_timeout? 65;

server {

listen? ? ? 80;

server_name? 127.0.0.1;

auth_basic "Kibana Auth";

auth_basic_user_file /etc/nginx/.htpasswd;

location / {

proxy_pass http://127.0.0.1:5601;

proxy_redirect off;

}

}

}

2.安裝生成密碼工具

yum install httpd-tools

生成密碼瞒斩,用戶名為admin

htpasswd -c /usr/local/nginx/.htpasswd admin

提示輸入2遍密碼

New password:

Re-type new password:

Adding password for user admin

3.啟動(dòng)nginx

systemctl start nginx

4.驗(yàn)證

4.漢化kibana

1.安裝git

yum install -y git

2.下載漢化包

git clone https://github.com/anbai-inc/Kibana_Hanization.git

3.進(jìn)行漢化

修改kibana配置文件vim /usr/local/elk/kibana-6.7.2-linux-x86_64/config/kibana.yml中的配置項(xiàng):i18n.locale: "zh-CN" 并重啟kibana

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末破婆,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子济瓢,更是在濱河造成了極大的恐慌荠割,老刑警劉巖妹卿,帶你破解...
    沈念sama閱讀 211,639評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件旺矾,死亡現(xiàn)場離奇詭異,居然都是意外死亡夺克,警方通過查閱死者的電腦和手機(jī)箕宙,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來铺纽,“玉大人柬帕,你說我怎么就攤上這事〗泼牛” “怎么了陷寝?”我有些...
    開封第一講書人閱讀 157,221評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長其馏。 經(jīng)常有香客問我凤跑,道長,這世上最難降的妖魔是什么叛复? 我笑而不...
    開封第一講書人閱讀 56,474評(píng)論 1 283
  • 正文 為了忘掉前任仔引,我火速辦了婚禮,結(jié)果婚禮上褐奥,老公的妹妹穿的比我還像新娘咖耘。我一直安慰自己,他們只是感情好撬码,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,570評(píng)論 6 386
  • 文/花漫 我一把揭開白布儿倒。 她就那樣靜靜地躺著,像睡著了一般呜笑。 火紅的嫁衣襯著肌膚如雪夫否。 梳的紋絲不亂的頭發(fā)上找筝,一...
    開封第一講書人閱讀 49,816評(píng)論 1 290
  • 那天,我揣著相機(jī)與錄音慷吊,去河邊找鬼袖裕。 笑死,一個(gè)胖子當(dāng)著我的面吹牛溉瓶,可吹牛的內(nèi)容都是我干的急鳄。 我是一名探鬼主播,決...
    沈念sama閱讀 38,957評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼堰酿,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼疾宏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起触创,我...
    開封第一講書人閱讀 37,718評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤坎藐,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后哼绑,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體岩馍,經(jīng)...
    沈念sama閱讀 44,176評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,511評(píng)論 2 327
  • 正文 我和宋清朗相戀三年抖韩,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蛀恩。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,646評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡茂浮,死狀恐怖双谆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情席揽,我是刑警寧澤顽馋,帶...
    沈念sama閱讀 34,322評(píng)論 4 330
  • 正文 年R本政府宣布,位于F島的核電站幌羞,受9級(jí)特大地震影響寸谜,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜新翎,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,934評(píng)論 3 313
  • 文/蒙蒙 一程帕、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧地啰,春花似錦愁拭、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春惜论,著一層夾襖步出監(jiān)牢的瞬間许赃,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評(píng)論 1 266
  • 我被黑心中介騙來泰國打工馆类, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留混聊,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,358評(píng)論 2 360
  • 正文 我出身青樓乾巧,卻偏偏與公主長得像句喜,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子沟于,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,514評(píng)論 2 348