环境:CENTOS 6.6 64BIT + JDK 1.7
建议最低环境:内存2G+,硬盘 20G+ (内存和硬盘过小在安装时候会产生报错,博主踩的坑)
步骤:
一、下载ELK的三大组件
Elasticsearch下载地址: https://www.elastic.co/downloads/elasticsearch (目前最新版本:2.4.0)
Logstash下载地址: https://www.elastic.co/downloads/logstash (目前最新版本:2.4.0)
Kibana下载地址: https://www.elastic.co/downloads/kibana (目前最新版本:4.6.1)
下载后将其解压到某个目录即可,本文中的解压目录为:
/opt/elasticsearch-2.4.0
/opt/logstash-2.4.0
/opt/kibana-4.6.1-linux-x86_64
注:这3个组件相互之间的关系及作用如下:
Logstash(收集服务器上的日志文件) –》然后保存到 ElasticSearch(搜索引擎) –》Kibana提供友好的web界面(从ElasticSearch读取数据进行展示)
二、启动elasticsearch
2.1
进入elasticsearch目录/bin
./elasticsearch
如果启动报错提示不能使用root账号运行,请su到普通账号,比如我的普通账号和组是chenjie
那么在root下先 chown -R chenjie:chenjie /opt/elasticsearch-2.4.0 然后 su chenjie 再执行启动命令
顺利的话,启动成功后,在浏览器里输入http://localhost:9200/ 应该能看到类似下面的输出:
2.2 安装kopf插件
先按Ctrl+C停止elasticsearch,接下来准备安装插件,elasticsearch有大量插件资源,用于增加其功能,bin目录下,输入
./plugin list 可以查看当前安装的插件列表,我们刚刚全新安装,输出的是一个空列表,继续输入
./plugin install lmenezes/elasticsearch-kopf
将会联网安装kopf插件,安装完成后,再次用./plugin list确认下:
[root@localhost bin]# ./plugin list Installed plugins in /opt/elasticsearch-2.4.0/plugins: - kopf
如果输出上述类似,表明kopf安装成功。
然后重启elasticsearch,浏览器里输入http://localhost:9200/_plugin/kopf,将会看到类似下面的界面,可以很直观的看到elasticsearch的一些运行状况
以上操作都ok后,建议Ctrl+C关掉,改用nohup ./elasticsearch & 将其做为后台进程运行,以免退出。
三、logstash的启动与配置
3.1 新建索引配置文件
/opt/logstash-2.4.0/bin 下
mkdir conf
vi conf/logstash-indexer.conf
input { file { path => ["/var/opt/log/a.log","/var/opt/log/b.log"] } } output { elasticsearch { hosts => ["localhost:9200"] } stdout { codec => rubydebug } }
上面几个步骤的意思就是创建一个名为logstash-indexer.conf的配置文件,input{file{…}}部分指定的是日志文件的位置(可以多个文件),一般来说就是应用程序log4j输出的日志文件。output部分则是表示将日志文件的内容保存到elasticsearch,这里hosts对应的是一个数组,可以设置多个elasticsearch主机,相当于一份日志文件的内容,可以保存到多个elasticsearch中。
至于第9行的stdout,则表示终端的标准输出,方便部署时验证是否正常运行,验证通过后,可以去掉。
3.2 启动
继续保持在logstash的bin目录下,输入
./logstash -f conf/logstash-indexer.conf
稍等片刻,如果看到Settings: Default pipeline workers: 1 Pipeline main started(logstash-2.4.0版本是这个提示,以前版本是Logstash startup completed),则表示启动成功。然后另开一个终端窗口,随便找个文本编辑工具(比如:vi),向/var/opt/log/a.log里写点东西,比如:hello world之类,然后保存。观察http://localhost:9200/_search?pretty
说明logstash工作正常,表明elasticsearch接收到logstash的数据了。
以上操作都ok后,建议Ctrl+C关掉,改用nohup ./logstash -f conf/logstash-indexer.conf & 将其做为后台进程运行,以免退出。
四、kibana的配置及启动
4.1 修改配置文件
/opt/kibana-4.6.1-linux-x86_64/config 下有一个配置文件kibana.yml,大概在12行的位置,改成下面这样:
elasticsearch.url: "http://localhost:9200"
即:指定elasticsearch的访问位置
4.2 启动
/opt/kibana-4.6.1-linux-x86_64/bin 下,输入:
./kibana
启动完成后,在浏览器里输入http://localhost:5601/ 即可看到kibana界面,首次运行,会提示创建index,直接点击Create按钮即可。
然后,就能看到类似下面的界面了:
以上操作都ok后,建议Ctrl+C关掉,改用nohup ./kibana & 将其做为后台进程运行,以免退出。
参考 http://www.cnblogs.com/yjmyzz/p/ELK-install-tutorial.html
路过~混个脸熟。