ELK(ElasticSearch+Logstash+Kibana)5.0 搭建全纪录

工作中经常会遇到业务数据统计的需求,通常的做法是通过定时任务,每天汇总一次数据到数据库,简单直观,缺点是做不到实时(频繁调用定时任务,数据量大的话,会很耗性能),而实时展示业务数据的需求还是很有必要的。最近了解到了ELK,被它的强大且易用所折服,Logstash负责数据的采集,ElasticSearch负责数据的存储及搜索(官方说可支持PB级别的数据存储),Kibana主要负责数据报表的展示,简直就是一条龙服务啊。不多说,下面记录下搭建的全过程 ###一、环境准备: 操作系统:阿里云Ubuntu 14.04.5

首先,去Elastic官网 https://www.elastic.co/downloads 下载安装包,拷贝到服务器上,我用的是5.0版本

tips1:安装ELK5.0以上版本,唯一要求是先安装JDK1.8 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html ###二、启动ElasticSearch

>cd elasticsearch-5.0.0/bin
> ./elasticsearch

此时会报错,原因是官方处于安全考虑,不允许用root用户启动elasticsearch 输入图片说明

需要新建一个账户el来启动。为了能写入数据,需要将elasticsearch文件夹的操作权限付给新建的账户el

# 创建elgroup用户组及el用户
>groupadd elgroup 
>useradd el -g elgroup -p 123456
-g是添加到组,-p是密码

更改elasticsearch-5.0.0文件夹及内部文件的所属用户及组为el:elgroup

# 切到elasticsearch-5.0.0外层目录
>chown -R el:elgroup elasticsearch-5.0.0

切换到el用户,再启动

>su el 
>cd elasticsearch-5.0.0
>./bin/elasticsearch
# 后台启动的命令为:./bin/elasticsearch -d

此时还会遇到两个问题

问题一:max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]

这是由于 vm.max_map_count 太小引起的 可以在sysctl.conf增加 vm.max_map_count=262144

>vim /etc/sysctl.conf
# 增加一句 vm.max_map_count=262144
# 然后查看是否生效
> sysctl -p /etc/sysctl.conf
问题二:max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]

Linux对新用户的进程(Process)会有一些限制

> vim /etc/security/limits.conf
# 增加两句 
el hard nofile 65536
el soft nofile 65536

切换回el用户,终于可以启动,curl下吧,curl http://localhost:9200?pretty
输入图片说明

启动成功,本地可以访问,但还无法用浏览器远程访问,因为相应的端口没开,还需两步

1、开启3个端口,9200、9300(es使用)、5601(kibana)使用

> iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9200 -j ACCEPT
> iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 9300 -j ACCEPT
> iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 5601 -j ACCEPT
> iptables -L  ## 查看是否生效

2、更改es配置,允许接受外部请求

> cd config/elasticsearch.yml
# 更改 network.host: 0.0.0.0

好了,重启es,外网访问OK 输入图片说明

至此,elasticsearch 5.0 搭建启动完毕 ###三、启动Kibana 很简单

> cd kibana-5.0.0-linux-x86_64/
> vim /config/kibana.yml
# 更改 server.host: "0.0.0.0",允许外网访问
# 启动
> ./bin/kibana
# 后台启动的命令为: nohup bin/kibana &

OK,访问下吧

输入图片说明

Kibana也搭建完了,简单吧

大家可以看到上面Kibana的图,已经有了数据,因为已经使用了Logstash来采集日志,下一遍将围绕一个小案例,ELK采集分析nginx日志,来具体解释下Logstash的搭建与使用

转载于:https://my.oschina.net/niejimao/blog/819049

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值