在Mac机器上安装ELK三件套。[On mac 10.11.2 (15C50)]

Jdk的安装

首先安装Jdk: Jdb download URL

我这里选择的是 jdk-8u66-macosx-x64.dmg

安装完后,在终端输入java -version,显示

$ java -version
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)

设置环境变量

$ sudo vim ~/.bashrc#input
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_66.jdk/Contents/Home
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH$ sudo source ~/.bashrc

安装 Redis

安装 Elastic search

从官网安装2.1.1版本: 下载地址

安装到一个/data/lek/e目录下,执行sudo ./bin/elasticsearch报错:

Exception in thread "main" java.lang.RuntimeException: don't run elasticsearch as root.
at org.elasticsearch.bootstrap.Bootstrap.initializeNatives(Bootstrap.java:93)
at org.elasticsearch.bootstrap.Bootstrap.setup(Bootstrap.java:144)
at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:285)
at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
Refer to the log for complete error details.

看上去是权限的问题,再次尝试执行命令$ ./bin/elastichsearch,再次报错:

log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: /data/lek/e/elasticsearch-2.1.1/logs/elasticsearch.log (Permission denied)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at java.io.FileOutputStream.<init>(FileOutputStream.java:133)at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)at org.apache.log4j.PropertyConfigurator.configureRootCategory(PropertyConfigurator.java:648)at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:514)at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:440)at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:128)at org.elasticsearch.bootstrap.Bootstrap.setupLogging(Bootstrap.java:204)at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:258)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
log4j:ERROR Either File or DatePattern options are not set for appender [file].
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: /data/lek/e/elasticsearch-2.1.1/logs/elasticsearch_deprecation.log (Permission denied)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at java.io.FileOutputStream.<init>(FileOutputStream.java:133)at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)at org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:672)at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:516)at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:440)at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:128)at org.elasticsearch.bootstrap.Bootstrap.setupLogging(Bootstrap.java:204)at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:258)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
log4j:ERROR Either File or DatePattern options are not set for appender [deprecation_log_file].
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: /data/lek/e/elasticsearch-2.1.1/logs/elasticsearch_index_indexing_slowlog.log (Permission denied)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at java.io.FileOutputStream.<init>(FileOutputStream.java:133)at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)at org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:672)at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:516)at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:440)at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:128)at org.elasticsearch.bootstrap.Bootstrap.setupLogging(Bootstrap.java:204)at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:258)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
log4j:ERROR Either File or DatePattern options are not set for appender [index_indexing_slow_log_file].
log4j:ERROR setFile(null,true) call failed.
java.io.FileNotFoundException: /data/lek/e/elasticsearch-2.1.1/logs/elasticsearch_index_search_slowlog.log (Permission denied)at java.io.FileOutputStream.open0(Native Method)at java.io.FileOutputStream.open(FileOutputStream.java:270)at java.io.FileOutputStream.<init>(FileOutputStream.java:213)at java.io.FileOutputStream.<init>(FileOutputStream.java:133)at org.apache.log4j.FileAppender.setFile(FileAppender.java:294)at org.apache.log4j.FileAppender.activateOptions(FileAppender.java:165)at org.apache.log4j.DailyRollingFileAppender.activateOptions(DailyRollingFileAppender.java:223)at org.apache.log4j.config.PropertySetter.activate(PropertySetter.java:307)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:172)at org.apache.log4j.config.PropertySetter.setProperties(PropertySetter.java:104)at org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:842)at org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:768)at org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:672)at org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:516)at org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:440)at org.elasticsearch.common.logging.log4j.LogConfigurator.configure(LogConfigurator.java:128)at org.elasticsearch.bootstrap.Bootstrap.setupLogging(Bootstrap.java:204)at org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:258)at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:35)
log4j:ERROR Either File or DatePattern options are not set for appender [index_search_slow_log_file].
[2016-01-03 16:57:38,427][INFO ][node                     ] [Hammerhead] version[2.1.1], pid[6224], build[40e2c53/2015-12-15T13:05:55Z]
[2016-01-03 16:57:38,428][INFO ][node                     ] [Hammerhead] initializing ...
[2016-01-03 16:57:38,532][INFO ][plugins                  ] [Hammerhead] loaded [], sites []
[2016-01-03 16:57:38,557][INFO ][env                      ] [Hammerhead] using [1] data paths, mounts [[/ (/dev/disk1)]], net usable_space [148.9gb], net total_space [232.6gb], spins? [unknown], types [hfs]
[2016-01-03 16:57:41,580][INFO ][node                     ] [Hammerhead] initialized
[2016-01-03 16:57:41,580][INFO ][node                     ] [Hammerhead] starting ...
[2016-01-03 16:57:41,728][INFO ][transport                ] [Hammerhead] publish_address {127.0.0.1:9301}, bound_addresses {127.0.0.1:9301}, {[fe80::1]:9301}, {[::1]:9301}
[2016-01-03 16:57:41,739][INFO ][discovery                ] [Hammerhead] elasticsearch/CckNREUXT6OsKQlcTBBNeQ
[2016-01-03 16:57:45,591][WARN ][discovery.zen.ping.unicast] [Hammerhead] failed to send ping to [{#zen_unicast_1#}{127.0.0.1}{127.0.0.1:9300}]
ReceiveTimeoutTransportException[[][127.0.0.1:9300][internal:discovery/zen/unicast] request_id [2] timed out after [3753ms]]at org.elasticsearch.transport.TransportService$TimeoutHandler.run(TransportService.java:645)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)
[2016-01-03 16:57:45,597][WARN ][discovery.zen.ping.unicast] [Hammerhead] failed to send ping to [{#zen_unicast_6#}{::1}{[::1]:9300}]
ReceiveTimeoutTransportException[[][[::1]:9300][internal:discovery/zen/unicast] request_id [4] timed out after [3761ms]]at org.elasticsearch.transport.TransportService$TimeoutHandler.run(TransportService.java:645)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)
[2016-01-03 16:57:46,276][INFO ][cluster.service          ] [Hammerhead] new_master {Hammerhead}{CckNREUXT6OsKQlcTBBNeQ}{127.0.0.1}{127.0.0.1:9301}, reason: zen-disco-join(elected_as_master, [0] joins received)
[2016-01-03 16:57:46,314][INFO ][http                     ] [Hammerhead] publish_address {127.0.0.1:9201}, bound_addresses {127.0.0.1:9201}, {[fe80::1]:9201}, {[::1]:9201}
[2016-01-03 16:57:46,314][INFO ][node                     ] [Hammerhead] started
[2016-01-03 16:57:46,351][INFO ][gateway                  ] [Hammerhead] recovered [0] indices into cluster_state

看第一条报错,应该是目录的权限不足,所以将该目录的权限修改为了777,再次执行命令$ ./bin/elasticsearch,响应如下。

[2016-01-03 17:01:54,518][INFO ][node                     ] [Pisces] version[2.1.1], pid[6275], build[40e2c53/2015-12-15T13:05:55Z]
[2016-01-03 17:01:54,519][INFO ][node                     ] [Pisces] initializing ...
[2016-01-03 17:01:54,618][INFO ][plugins                  ] [Pisces] loaded [], sites []
[2016-01-03 17:01:54,644][INFO ][env                      ] [Pisces] using [1] data paths, mounts [[/ (/dev/disk1)]], net usable_space [148.9gb], net total_space [232.6gb], spins? [unknown], types [hfs]
[2016-01-03 17:01:56,963][INFO ][node                     ] [Pisces] initialized
[2016-01-03 17:01:56,963][INFO ][node                     ] [Pisces] starting ...
[2016-01-03 17:01:57,111][INFO ][transport                ] [Pisces] publish_address {127.0.0.1:9301}, bound_addresses {127.0.0.1:9301}, {[fe80::1]:9301}, {[::1]:9301}
[2016-01-03 17:01:57,123][INFO ][discovery                ] [Pisces] elasticsearch/OqIO479gTKSY31UfJuZy5w
[2016-01-03 17:02:00,993][WARN ][discovery.zen.ping.unicast] [Pisces] failed to send ping to [{#zen_unicast_1#}{127.0.0.1}{127.0.0.1:9300}]
ReceiveTimeoutTransportException[[][127.0.0.1:9300][internal:discovery/zen/unicast] request_id [4] timed out after [3751ms]]at org.elasticsearch.transport.TransportService$TimeoutHandler.run(TransportService.java:645)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)
[2016-01-03 17:02:00,993][WARN ][discovery.zen.ping.unicast] [Pisces] failed to send ping to [{#zen_unicast_6#}{::1}{[::1]:9300}]
ReceiveTimeoutTransportException[[][[::1]:9300][internal:discovery/zen/unicast] request_id [3] timed out after [3752ms]]at org.elasticsearch.transport.TransportService$TimeoutHandler.run(TransportService.java:645)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)
[2016-01-03 17:02:01,655][INFO ][cluster.service          ] [Pisces] new_master {Pisces}{OqIO479gTKSY31UfJuZy5w}{127.0.0.1}{127.0.0.1:9301}, reason: zen-disco-join(elected_as_master, [0] joins received)
[2016-01-03 17:02:01,686][INFO ][http                     ] [Pisces] publish_address {127.0.0.1:9201}, bound_addresses {127.0.0.1:9201}, {[fe80::1]:9201}, {[::1]:9201}
[2016-01-03 17:02:01,686][INFO ][node                     ] [Pisces] started
[2016-01-03 17:02:01,711][INFO ][gateway                  ] [Pisces] recovered [0] indices into cluster_state

应该还是有点X超时问题,但是看上去不影响功能。根据输入信息,访问


http://localhost:9201/

获得输出信息:

{name: "Pisces",cluster_name: "elasticsearch",version: {number: "2.1.1",build_hash: "40e2c53a6b6c2972b3d13846e450e66f4375bd71",build_timestamp: "2015-12-15T13:05:55Z",build_snapshot: false,lucene_version: "5.3.1"},tagline: "You Know, for Search"
}

安装 Logstash

我下载的是Logstash 2.1.1

安装成功后,在目录下执行

./bin/logstash -e 'input { stdin { } } output { stdout {} }'

输入:hello world,返回结果:

2016-01-03T09:57:15.372Z niceforbear.local hello world

可以看到,在终端里进行log的输入,logstash会返回时间戳和IP地址,以及输入的log。

安装 Kibana

下载 Kibana

命令行中执行

sudo ./bin/kibana

看到输出中显示[info][listening] Server running at http://0.0.0.0:5601

访问http://localhsot:5601,成功显示Kibana的dashboard。

至此,三件套安装成功。

参考

  1. 使用logstash+elasticsearch+kibana快速搭建日志平台

ELK三件套安装实践之路(1)相关推荐

  1. 亿级用户百TB级数据的 AIOps 技术实践之路(增强版)

    作者简介 周荣,华为消费者BG云运维部 AIOps 负责人,GOPS 2018 深圳站金牌讲师,07年加入华为,先后分别负责下一代智能网.中间件平台.运维工具等产品的研发与规划,在分布式系统.大数据分 ...

  2. 在碰撞中成长 - 北京银行的DevOps实践之路

    2018年10/27日,在上海召开的微软年度最大规模的技术盛会-微软2018技术暨生态大会上,北京银行渠道系统负责人&敏捷团队负责人周兵女士和大家一起分享了北京银行的DevOps 实践转型经验 ...

  3. 日志服务器搭建及配置_[ELK入门到实践笔记] 一、通过rsyslog搭建集中日志服务器...

    ELK 是elastic公司提供的一套完整的日志收集以及展示的解决方案,这是我在ELK学习和实践过程写下的笔记,整理成了一个ELK入门到实践的系列文章,分享出来与大家共勉.本文为该系列文章的第一篇,通 ...

  4. 360内部监控系统Wonder实践之路

    女主宣言 Wonder监控系统目前已经是360内部最大.最健全的监控系统.基于open-falcon改造的Wonder,从2016年4月上线至今已经运行了一年多,从最初的"乞丐版" ...

  5. 领域驱动设计(DDD)实践之路(三):如何设计聚合

    本文首发于 vivo互联网技术 微信公众号  链接:https://mp.weixin.qq.com/s/oAD25H0UKH4zujxFDRXu9Q 作者:wenbo zhang [领域驱动设计实践 ...

  6. OpenCV实践之路——雅虎色情图片检测神经网络试用报告

    本文由@星沉阁冰不语出品,转载请注明作者和出处. 文章链接:http://blog.csdn.net/xingchenbingbuyu/article/details/52821497 微博:http ...

  7. 有赞数据库自动化运维实践之路

    「运维内推」有赞诚聘:应用运维工程师.系统运维工程师.运维开发工程师.DBA.请关注文末链接 一.前言 有赞作为"新零售"的软件服务供应商,随着业务的不断发展,从第一批几十家商户到 ...

  8. 讯飞智慧交通的实践之路

    来源:ITS智能交通 9月13日上午,由深圳市智能交通行业协会主办的第十七届中国(国际)城市智能交通论坛成功举行,科大讯飞股份有限公司智慧城市事业群副总裁谭昶发表题为<讯飞智慧交通的实践之路&g ...

  9. 京东技术中台Flutter实践之路(二)

    移动互联网历经高速发展的黄金10年,多样的市场需求催化了前端技术不断升级改造,真正的前端大统一时代正在来临,不管你愿不愿意相信,大前端技术的发展趋势已是定势,前进的脚步无可改变. 众所周知,iOS.A ...

最新文章

  1. Delegate,Action,Func,匿名方法,匿名委托,事件
  2. php mssql image,php5连接mssql2005数据库表中的image字段图片显示
  3. AVL,B,B+,红黑
  4. filter函数的用法_JavaScript中forEach和filter的用法和原理
  5. 【译】LiveData 在 SnackBar/Navigation 情景下的使用(SingleLiveEvent)
  6. 服务器数据库端口修改方法,如何修改云服务器数据库端口
  7. 深入理解SQL Server的规划和安装
  8. java-工具-轮子
  9. Hive练习之join
  10. 一个研究生毕业以后的人生规划(ZT)
  11. 凯撒密码 (Python实现)
  12. VBA Mid()函数 截取字符串 - VBA函数学习笔记(一)
  13. lua开发/ 腾讯 Bugly / 截屏 / 遮罩
  14. linux sz 大于4g,ubuntu 使用sz命令传输windows大于4G的文件
  15. 毕设总结(理工本科)
  16. 磁盘提示:使用驱动器中的光盘之前需要将其格式化怎么办?
  17. Keras nlp入门 imdb电影评论分类
  18. 顶尖作者介绍 | 心理学领域研究“情绪”的大牛们有哪些?
  19. 红蜘蛛,极域,伽卡他卡,传奇电子教室的破解(源代码)
  20. 电力系统潮流程序C语言,电力系统潮流C语音程

热门文章

  1. 巨详细的prometheus+grafana实现服务器(集群)性能监控,并学着调用prometheus的api
  2. OpenCV结合socket进行实时视频传输(TCP协议)
  3. c语言程序朴素贝叶斯分类器,生成式学习算法(四)之----朴素贝叶斯分类器
  4. linux权限776代表,Linux 权限设置chmod
  5. 基于神策用户画像,在线教育企业线索标签体系搭建及培育全流程解析
  6. JVM性能调优监控工具专题二:VisualVM基本篇之监控JVM内存,CPU,线程
  7. 对 makefile中 order-only 前提条件的理解
  8. 两个js文件同时执行,解决覆盖问题
  9. 《社会智能与综合集成系统》第1章1.节参考文献
  10. Html基础Part1:Htmla标签的几种跳转姿势