使用 nohup 或 disown 如果你要让某个进程运行在后台。

Elastic{ON}17 见闻

medcl 发表了文章 • 2 个评论 • 3921 次浏览 • 2017-03-09 02:06 • 来自相关话题

Elastic 一年一度的用户大会 Elasitc{ON}17 昨日在旧金山举行了,与参人员达到了 2000 多位,这是第三届 Elastic{ON} 了,让我们一起来看看这次大会都要哪些亮点吧。

在进入主题之前,我们先参观看看会场及周边情况吧,这次会场是在旧金山的 48 号码头,和去年的场地很近,不过今年的场地为了容纳的更多的人数,比去年的场地要大很多,码头对面就是著名的AT&T棒球场,看图。

IMG_5718.jpg


IMG_5720.jpg


IMG_5820.jpg


今年多了一个开场的舞蹈,跟别人不一样的事,芭蕾舞蹈演员身上佩戴着若干闪光的传感器,在大背景墙上面可以看到随着演员的舞蹈,有不断变化的各种传感器实时分析的 Kibana 界面,这一切都是实时的哦。

C6WCqNtU0AA3Ft1.jpg


C6WDw1dU8AAuJvA.jpg


然后就进入 Keynote 了,Elastic 公司 CEO Shay Banon 宣布 Elastic 的产品下载次数达到小目标,已经累计一个亿了。

C6WDw1eU8AAZETi.jpg


Elastic 的产品的一个重要原则就是简单,为了让简单的事情变简单,比如采集日志文件,现在的 Filebeat 引入了模块的概念,相应模块直接提供对应成套的配置文件,包括 Mapping、Ingest pipeline、Kibana Dashboard, 启动 filebeat 收集数据进入 es 之后,直接就能可视化分析了。

IMG_5742.jpg


现在使用 elasticsearch 来做 metric 分析的场景和用户越来越多,而 Kibana 的 Timeseries visual builder 就是为了 metric 场景而产生的一个新的特性,支持非常灵活的自定义可视化,还支持 elasticsearch 的 pipeline aggregation。

IMG_5748.jpg


IMG_5749.jpg


接下来就是,Elasticsearch 机器学习了,去年收购的 Perlert,目前已经和 Elasticsearch 无缝集成,现场 demo 演示了通过机器学习模块来分析日志的完整过程,实时的进行异常预测,从众多 service 的日志中找到 root cause。

IMG_5751.jpg


IMG_5752.jpg


IMG_5756.jpg


IMG_5759.jpg



然后就是 ECE,即 ElasticCloud 的私有云,企业可以很方便的借助它来实现搭建 Elastic 的私有云,集群管理,集群升级都很简单。

IMG_5761.jpg


IMG_5762.jpg


然后前 CEO Steven Schuurman 为大家揭晓了今年的第一届 Elastic Cause Awards 获奖的结果,你知道吗,Elasticsearch 正被用于预防埃博拉病毒、拯救人口贩卖以及防止校园暴力等很多有意义的项目中。

IMG_5765.jpg


C6WWI9kU4AADZb5.jpg


C6WWI9kU4AEYmEm.jpg


C6WWI92UoAA-vwB.jpg


然后 Costin Leau 为大家演示了 Elasticsearch-sql,新的和 Elasticsearch 交互的方式,jdbc 兼容,大家期盼已久的功能终于来了,你可以使用现有的支持 jdbc 协议的各种工具来使用 elasticsearch 了,当然不会是完整的 SQL 标准协议,但满足大部分常见的简单的场景。

C6WZQQ-U0AETS_S.jpg

IMG_5768.jpg

IMG_5769.jpg

IMG_5770.jpg

 
接下来,Rashid Khan 为大家介绍了与社区相关的一些统计,到最后才跳出来,这些炫酷的 infographic 和 presentation 居然就是在 Kibana 上面,并且这些数据是实时变化的,从而引入了 Kibana 新的功能:Kibana Canvas,借助它,你可以灵活布局设计报表或是 presentation,与后端Elasticsearch数据实时连接,另外与大家通常熟知的静态的 infographic 不同,所有的这些可视化图形都是可以交互操作的,比如过滤与搜索,从此,数据的探索与分析又有了一种新的方式了。

IMG_5773.jpg


IMG_5774.jpg


IMG_5775.jpg


IMG_5778.jpg


IMG_5781.jpg


Keynote 的内容主要就到这里了,下午还有很多其他的具体的演讲,都是各个产品的具体的新的特性,回头再补充。
 
现场还有很多各种类型的 Demo。

IMG_5784.jpg


IMG_5785.jpg


IMG_5786.jpg


IMG_5787.jpg


IMG_5788.jpg


IMG_5789.jpg


IMG_5790.jpg


IMG_5791.jpg



想知道 Elastic{ON}17 后续几天还有什么新鲜事么,欢迎关注我的微博:@medcl 和 Elastic 中文社区公众号。
 

Elastic Stack 5.2.2 发布

medcl 发表了文章 • 5 个评论 • 3374 次浏览 • 2017-03-01 10:37 • 来自相关话题

Elasticsearch 5.2.2
  • 修复request熔断器没有正确处理当前运行请求数的bug,当请求返回前却被客户端关闭时没有对计数减一,会造成节点慢慢的不能处理任何请求,除非重启节点,所有的用户都应该升级 #23317
  • 修复cgroup正则解析的bug,造成节点的不能正常启动 #23219
  • 被shard锁暂缓执行的请求可能会别其他线程启动,并且该请求丢失了上下文,会造成该请求被当做非法请求而拒绝
  • 恢复terms agg的include/exclude参数的支持

 
下载:https://www.elastic.co/downloads/elasticsearch
完整的Release notes:https://www.elastic.co/guide/e ... .html
XPack release notes:https://www.elastic.co/guide/e ... 5.2.2
 
Logstash 5.2.2
  • 修复持久化队列在windows启用造成的崩溃
  • 修复多实例公用相同的数据目录造成的数据损坏
  • 修复JVM性能指标收集造成的吞吐影响

 
下载:https://www.elastic.co/downloads/logstash
Release notes:https://www.elastic.co/guide/e ... .html
 
Kibana 5.2.2
  •  之前的版本kibana的visualization依赖一个旧的Elasticsearch的include/exclude特性,但是该功能在Elasticsearch5.2.1被突然移除了,引起了kibana的visualization的错误,现在Kibana对新创建的visualization使用正确的结构,并且能在查询时自动转换遗留的旧结构到新的结构
  • 从5.2.0开始,包含sub-bucket的垂直条形图(vertical bar)配置为分组没有合适的缩减y轴,造成相当小甚至某些情况下不可用,这次回归将再次对y轴进行必要的扩展而不管其条形图的模式

 
下载:https://www.elastic.co/downloads/kibana
完整Release notes https://www.elastic.co/guide/e ... .html
 
Beats 5.2.2
  • Metricbeat修复当docker容器被kill掉造成的docker 模块挂起的bug
  • Metricbeat修复超时时间设置而不是默认值

 
Release notes:https://www.elastic.co/guide/e ... .html
下载:https://www.elastic.co/downloads/beats/

欢迎参加Elastic的Meetup线下活动问卷调查

medcl 发表了文章 • 1 个评论 • 4804 次浏览 • 2017-02-23 11:25 • 来自相关话题

问卷调查直达链接:https://www.surveymonkey.com/r/elastic-china17 
 
同学们,乡亲们:
    想要今年的Elastic线下活动来到您身边么,快参加我们的问卷调查吧,如果您的城市不在下拉列表,记得添加进去,问卷调查比较简单啦,大概只需要花费您几分钟时间,快来吧:https://www.surveymonkey.com/r/elastic-china17
 
   另外Elastic也在寻找各个城市的演讲者、场地赞助、协办方、志愿者。如果您有项目用到了任何Elasticsearch、Kibana、Logstash或Beats,并且有兴趣分享您的经验故事(不管是5分钟还是50分钟)请让我们知道,我们非常愿意与我们的社区一起分享您的故事。不管是哪种参与方式都欢迎,请在问卷内留下联系方式或联系我:medcl123(添加注明来意)。


我们感谢您参与本次问卷调查!问题集中在您想参加的线下活动类型,调查结果将被用来使组织者更好地安排活动计划。本调查预计需要花费2 - 5分钟才能完成。我们将与所有参与调查的人分享任何有趣的发现。所有收集的信息将保持匿名。为了鼓励大家花费这一天中的几分钟时间,将随机抽取五个人赢得 $50 美元的亚马逊礼品卡和十五个人将赢得 Elastic Stack 特别版T恤。为了进行抽奖活动,我们会在调查结束时要求您提供电子邮件,但只会用它来让您知道如果您中奖了。


 
除了这个问卷调查,我们在也同时更新了 Elastic 用户组的行为准则(Code of Conduct)。参加我们的活动意味着您同意我们的准则。完整的准则可以访问:https://www.elastic.co/community/codeofconduct。所有的细节可以这个链接页找到。如果您还要其他问题,也欢迎告知我们:) — 我们会一直在这里提供帮助!  :)
 
timg.jpeg

Elastic Stack 5.2.1 发布

medcl 发表了文章 • 4 个评论 • 5531 次浏览 • 2017-02-15 14:07 • 来自相关话题

Elasticsearch 5.2.1 发布内容
 
基于 Lucene 6.4.1,所有5.2.0 用户都应该升级到该版本,修正了很多 bug,尤其了 Lucene6.4.1修复了两个重要的内存泄漏:
  • 当存储字段配置为“best_compression",我们依赖于 JVM 回收机制来释放解压缩实例(Deflater/Inflater instances)。然而这些类也行只使用了很少的 JVM 堆栈内存,却使用了大量了本地内存,所以可能 会出现在 JVM 回收解压缩实例之前而操作系统先用完了本地内存。 LUCENE-7647
  • 特定的查询可能会持有 IndexReader 的一个引用,当这些查询被缓存之后,本来应该已经被删除的段会因为这个引用而继续被 Lucene 持有。LUCENE-7657

 
功能废弃:
  • Geo distance range 废弃,请使用`geo_distance` bucket aggregation 或 geo_distance sort来替代。#22835

 改进增强:
  • 分配解释 API(allocation explaining)在未分配主分片信息中包含陈旧的副本信息(不管是陈旧还是损坏的)#22826

 
Bug 修复:
  • 如果查询超时,将缓存结果置为无效。#22807
  • Reindex 接口支持来源 es 版本<2.0,当不能清除旧的 scroll 不记录日志。
  • 将参数:search.highlight.term_vector_multi_value 保留为节点级别。

 
其他细节详见 Release notes。 
Download Elasticsearch 5.2.1
X-Pack 5.2.1 release notes
 
Kibana 5.2.1 发布内容:
 
在该版本中主要包括了一些重要的 bug 修复,包含一个安全风险的 fix 以及可能造成 kibana 崩溃的问题。
在5.0早期的版本中,如果配置了 SSL,特定的请求会造成 Kibana 无法释放文件打开句柄,这会造成进程随着时间推移的崩溃。请求在发生数据之前被取消也会造成进程的崩溃。还有一个安全的风险:ESA-2017-02(Http 头信息可能泄露敏感信息的问题,注:Kibana4不受影响)。
 
其他详见:Release notes
Download Kibana 5.2.1
 
Beats,Logstash 发布内容见:
https://www.elastic.co/guide/e ... .html
https://www.elastic.co/guide/e ... .html
 
 

Elastic Stack 5.2.0 发布

medcl 发表了文章 • 1 个评论 • 6988 次浏览 • 2017-02-03 13:26 • 来自相关话题

本周三,Elastic 发布了 ElasticStack 的全新版本5.2.0,包含了很多激动人心的特性,让我们 一起来看看吧,
(Elastic Stack 包括 Elasticsearch、Logstash、Kibana、Beats):
 Elasticsearch 5.2.0 主要亮点:
  1. 新增数字和日期范围字段类型,非常方便对范围类型进行交并集的查询,比如你的数据是日历类型的数据,每天都有一些会议信息,会议的开始和结束时间都不同,你想看本周那天有空,可以使用 range fields 很方便的进行查询。了解更多
  2. 新增分片分配解释 API,会告知分片失败的具体原因,如分片损坏、磁盘写满还是配置错误,进行快速运维,以前只能根据经验到处寻找可能是什么问题,费事费力,了解更多
  3. 对 Keyword 类型标准化,在5.0将 string 类型拆成了 text 和 keyword两种类型,text 支持分词,keyword 则不分词默认支持 doc values,不过有时候你还需要对 keyword 类型进行一些标准化处理,如都转成小写,现在可以使用 normalizers 参数来指定标准化的 filter。
  4. Terms 聚合的分区,terms 聚合默认返回10个 term,以前如果你需要返回全部的 term 列表是不可能的任务(基于内存压力),现在你可以通过将请求分区,以多次请求的方式来取回这些数据,了解更多
  5. 字段折叠,在搜索时可以按某个字段的值进行折叠,在每个折叠的值内进行排序选取 topN,了解更多

 
相关链接:
Download Elasticsearch 5.2.0
Elasticsearch 5.2.0 release notes
Elasticsearch 5.2.0 breaking changes
X-Pack 5.2.0 release notes
 
Logstash 5.2.0 主要亮点:
  1. 新的监控 UI,现在 X-Pack 也能监控 logstash 了,X-Pack 基础免费版就包括,如下图:
    MonitoringUI-rel-blog.png
    Screen_Shot_2017-01-09_at_16.51_.49_.png
  2. 更多的监控 API,新增3个类型的统计信息:cgroup、持久化队列和 output新增持续时间字段。
  3. 离线插件管理,在很多没有公网的部署环境,都需要离线安装,以前的离线安装不够完善,尽管大部分插件没问题,但是还是存在个别插件的依赖链下载不完整的问题,为了解决这个问题,我们基本上重新设计了整个工作流程使用了新的方式来打包插件和他所有的依赖,了解更多

 
相关连接:
Download Logstash 5.2.0
Logstash 5.2.0 release notes
 
Kibana 5.2.0 主要亮点:
  1. 支持 Elasticsearch Tribe 节点,在“admin”集群的基础上,引入了新的“data”集群,“data”集群可以理解成 Kibana 后面的数据来源,可以是 tribe 节点,而“admin”集群是存放 kibana 可视化信息“。kibana”索引的地方,默认 data 和 admin 集群都是在同一个集群,且不能是 tribe 节点,目前还有一些细节正在处理,如 console 还不能很好的工作。
  2. 增加新的可视化类型:热点图(heatmap),可以很方便的按区间和按时间来显示数据的范围分布,如下图:
    Heatmap_Linechart.png
  3. 开始进行国际化的支持,感谢 IBM 团队的努力,目前已经提供了基础的框架支持,虽然是万里长征的第一大步,但也是非常激动人心的。
  4. 地图服务的改进,Elastic 自己的 Tile 地图服务已经上线几个月了,我们现在能提供10个级别的缩放了,X-Pack 基础用户可以达到12个级别的缩放,并且我们正在尝试18个级别的缩放,并且从5.2开始,我们能让这些级别动态调整,不用发布新的 Kibana。
  5. 监控容器中的 Elasticsearch,现在我们可以监控容器里面的 Elasticsearch 实例的运行情况了,CPU 利用率、GC、堆栈使用情况等,如下图:
    monitoring-elasticsearch-in-containers.png

 
相关连接:
Download Kibana 5.2.0
Kibana 5.2.0 release notes
 
Beats 5.2.0 主要亮点:
  1. 新增 Beat:Heartbeat,一个新的正式的官方beat 成员,用于可用性监控,和所有的 beat 一样,轻量级,Heartbeat 可以用于很多场景,比如安全,你不希望暴露某个端口时,使用 Heartbeat,当你发现该端口对外开启了,就可以触发通知,或者服务/网站可用性检测,服务down 了可以及时感知,目前支持:ICMP、TCP 和 HTTP 类型的监控,目前 Heartbeat还处于 beat 阶段,暂不推荐用于生产环境。
  2. Metricbeat 可跟踪网络连接,从5.2开始,Metricbeat 导出了 linux 系统的应用程序的网络连接信息,每个进程打开的 tcp 套接字,本地及远程的 ip 都包含在内,基于它,你可以进行如下的图分析:
    connections-2.png
  3. 收集Prometheus导出的指标,从5.2开始,监控系统普罗米修斯的收集模块导出的数据可以提供给 Metricbeat 然后索引进 Elasticsearch。

 
相关连接:
Download Beats 5.2.0
Beats 5.2.0 release notes
 
Elastic Stack 下载链接:https://www.elastic.co/downloads
Bug 反馈:http://github.com/elastic

以后有版本的更新消息都会在这里发布一份中文版,欢迎大家关注。

对话 Kibana 之父:如果需要,你应该自己动手编写工具

medcl 发表了文章 • 2 个评论 • 8863 次浏览 • 2017-01-11 11:45 • 来自相关话题

转载:http://www.infoq.com/cn/news/2 ... nTool
Elastic 中国开发者大会 2016上,ELK 正式宣布更名为“Elastic Stack”,Elastic公司称其开源项目累计已经有8000万次下载。Elastic Stack 最新版本为5.0,从此,Elastic公司会对Elasticsearch、Kibana、Logstash、Beats、X-Pack进行统一规划以同版本号码发布。会上,Kibana 的原作者 Rashid Khan 进行了题为《Kibana 5.0: The Window into the Elastic Stack》。 PPT下载:http://elasticsearch.cn/article/122 

IMG_4857.gif


早在2001年,Rashid 就接触了运维工作,他的第一份工作是在摩根大通集团做网络运维管理分析员。2012年,Rashid 在美国一家媒体公司担任架构工程师,并且研发了 Kibana 的初始版本,那时他的目的是专门设计界面以适配 Logstash,如今 Kibana 已经逐渐演变成了 Elasticsearch 的分析平台。运维出身的他是在怎样的情况下开始了 Kibana 开发,Kibana 走到今天经历了什么,将来 Kibana 的发展会是怎样的?InfoQ 对 Rashid 进行了采访,以下文章来自于采访稿件的整理。

作为运维人员,我亟须优化日志搜索

开始的时候做运维工作遇到很多问题,on call待命,甚至在凌晨2点被叫醒;这种工作状态让我感到很厌烦。往往,在日志中可以发现问题所在,但是需要花费好久时间才能找到。

于是,我寻找有哪些开源软件可以做基本的日志搜索,然后发现了Logstash和与之配合使用的Elasticsearch。经过测试,我发现Elasticsearch速度很快并且提供我所需要的功能;然后我就开始编写一套非常简单的interface作为补充展示,大概花费了我几天的时间。这就是第一版Kibana的诞生过程,当时是采用PHP编写的,功能是可以展示日志并配有搜索入口,目的是把这个工具可以交付给我的boss,使得他无需我的参与便可以使用这个interface。需要提一句的是,Elasticsearch 对于Web编程很友好,并且日志数据按照日期排列。

在全职投入 Kibana 为 Elastic 公司工作之前,我一直从事运维工作并且我非常喜欢运维工作。因为这段实践经验帮助我体会到了运维人的问题和困难,这让我知道了需要创造一个什么样的工具。我依然认为运维是一个非常有挑战的工作,让所有的东西都正常地运转起来。

编程吧,动手创造自己的工具

的确,我是运维人员,但是我还自己动手开发工具。这在美国越来越普遍了,因为大家意识到,如果你可以编写代码,你的工作会轻松很多,代码可以代替你进行重复工作。通过代码实现自动化是正确的途径,没有人愿意不停地做同样的事情。

编写Kibana是因为我当时没有发现一个适合我的工具,于是我决定自己动手。第一版Kibana是用PHP写的,第二版是用Ruby,第三版之后是用JavaScript。我不害怕学习心得语言,因为学语言并不难,Ruby或者JavaScript的语言掌握仅仅是简单的熟悉语法,并没有接触到实际项目中复杂的事情。而重写Kibana的工作也并不复杂,因为其实Elasticsearch做的工作最重。

“哪种编程语言最好?”说实话,其实这个问题的讨论对我而言并不重要。重要的是,为你的工作选择恰当的语言。PHP在我心中仍然有一席之地,我认为它依然是一个好的语言,可能很多人有异议,但是我认为它简单易上手、稳定变化慢,相关工具也很容易上手。Node.js相对来说,比较复杂;Node社区也意识到这个问题,并且正在改进。比如说,当时我选择了Ruby重写Kibana,是因为Logstash是用JRuby写的,Elasticsearch 使用Java写的(JRuby可以理解为Ruby可以跑在JVM里面)。当时想把 Kibana 的 Ruby那个版本是因为想放到Logstash中,但是没有成功。所以,接下来我们研发了Kibana 3 。

在开发Kibana之前,我用过Graphite,但是为什么依然不满足呢?首先,Graphite很棒,所有关于数字、指标、时间序列的事情。但是那个时候,我需要的是一个可以做日志搜索的东西,需要有一个Dashboard可以给出一个图片。我非常希望从日志中获得信息并且把它们和预定的指标绑定在一起,实际上这些幕后工作都是Elasticsearch做的,并且速度真的快很多。此外需要考虑到扩展性,Graphite对于它适合的大小还算可以,即使超过了极限,更多的数据对应着更多的CPU消耗;但是想扩展很多的话,就很困难了,这一点上Graphite还有很多可以提升的空间,Elastic Stack就可以很轻松地实现。

不过,我依然很喜欢Graphite,我也依然认为这是一个有需求的工具,并且它其实是可以和Elasticsearch、Kibana结合在一起使用的。Architecture dependent的问题困扰了很多人, 比如32bit和64bit两者之间,即便是传输一个文件也不能工作,这是一个非常可怕的事情。Graphite 解决了这个问题,并且界面很美,功能强大 。Kibana也解决了很多相似的问题, 尤其是加上了Elasticsearch的配合,解决了许多我在做运维工作时总是非常想做的工作。

从来没有犹豫过是否开源

12岁的时候就开始接触开源项目了,所以在写Kibana的时候从来没有犹豫过要不要把它开源。

开始的时候我们只是把需求写在纸上,然后一条条做。放到Github之后,看到下载量不断上升我们感到很吃惊。我们没有想到,原来这么多人都面临这同样的问题,没有想到大家对这样的一个开源项目如此需要。开源的目的就是为了能帮助人们,最初我也曾疑惑有可能根本没有人用;然后发现越来越多的人在讨论、使用它。现在Elastic Stack是一个开源整体,把个人的事业career放在服务其他人的开源项目上,并能收获到好的反馈,这让我们感到很开心、很欣慰。

当时的小愿望,现在的大公司

Kibana第一版存在仅仅几周。是因为我开始使用Ruby进行重写,这大概花费了两周的时间。因为Logstash使用Ruby写的(即便当时我并不会Ruby),而我的目的就是让Kibana适配Logstash和Elasticsearch,让三者在一起可以协作获得更多的信息。当时我的想法就是让三个工具可以无缝衔接起来好似一个工具一样,有趣的是,这仅仅是当时我自己的一个愿望,后来Elasticsearch的人联系我问要不要合并在成为同一家公司,我们才发现彼此的看法竟然不谋而合。

elastic-logo-H-full-color.jpg


我现在依然是on call的。在 Elastic 公司,我们有on call轮班制。其实这是与用户交流的机会,这是我们 Elastic 每一个开发者都非常珍视的机会。在对用户支持的过程中,我们可以更清晰地了解用户的需求和真实使用情况;还有一些其他方式,比如会议、沙龙、见面会等,任何可以帮助我们与社区连接的。在我看来,在用户发生问题时,你在他身边并且帮助修复问题:没有比这个更好的工作方式。所以,on call不是折磨,是机会。

Kibana的下一步:数据挖掘、角色报表

1、数据挖掘,精益求精

最开始在做日志分析的那个时候,坦率地讲,我并没有关联到了Data mining。因为那时只是想先把问题弄清楚。但是在把所有的问题都解决完(这些并不难,只是花时间而已),实现了最初我们想要的Kibana之后,运维的工作量就大大减少了。

一切都运转得很顺利之后,我们开始思考怎样能把事情做得越来越好,尽量少地产生问题。我们可以获得数据,并且发现了一些问题发生的规律:问题的发生节点,比如说往往半夜三点、发布新版本之后;问题的发生频率,哪些问题非常热门,我们需要把对应的工作放在CDN上;问题的优化处理,发生问题之后如何最快地回滚。机器学习很强有力,而且对于运维人员而言,越少的红色提示越幸福。但是目前我的考虑是,能做到提前预警就已经很棒了。

基于这些思考,我们认为需要开始进行数据挖掘的工作了,这样才把事情做得越来越好,才能更大程度地帮助公司用户。在五六年前,很少会有人想到运维团队可以给出商业业务的指导意见,但是现在这开始越来越普遍。

2、接下来,Dashboard不会只有public一种

此前Kibana的Dashboard是完全公开的,没有角色区分。我知道一些其他的工具提供了包边权限区分的功能。最初的时候,只是想保持事情的简单化,Kibana并没有考虑到把Dashboard做成基于角色的,我们考虑更多的是产品易用性、功能,而没有打算触及安全模块。对于我们自己而言,这并不是过去那些年优先级第一的事项。最开始Kibana的主要矛盾是怎样把内容展现出来,打造Elasticsearch的良好用户界面,所以那个时候是界面是对所有用户可见的。而权限的控制我们是在Elasticsearch上面实现的,搜索、索引、集群操作添加是在Elasticsearch,也就是说我们首先Elasticsearch中实现数据层的安全。

接下来,我们考虑怎样把安全性延展到Kibana中,对不同角色进行区分化的搜索展示。(此前,有一个插件可以满足在Kibana中进行 Elasticsearch 用户的控制。代码是开源的,任何公司都可以编写自己的安全模块,并且我们也乐意帮助他们)在决定做一件事情之后我们就希望把一件事情做得非常好,而不是半途而废。

Kibana in Elastic Stack 5.0

Snip20170111_11.png


研发情况

研发出新功能的第一版本通常很快,但是需要不断的测试确保所有运转正常。Elastic Stack5.0 的所有功能大概花费了9个月的研发时间。在决策哪些功能需要研发时,我们有几周的考虑时间,还会参考社区中的反馈。然后我们还会给开发者一些自主空间,我们试着避免总是给某些人下发某些任务。我们认为最好主意并不来自与管理层或者经理,而是来自于那些与用户交流频繁的软件工程师,花费很多时间做客户支持的同事。会面通常是远程的,因为我们是个分布式的公司,公司成员分布于30多个国家,一共470多人。Kibana部分的研发、测试和运营人员一共有20多人。

如果有两个程序员所做的事情是一样的话,没有关系这不是重复劳动,反而可以让产品更加优化,两个人可以互相讨论加速功能研发;否则的话产品会被程序员打上过强的个人烙印,最终让产品交付给客户的是整个团队。

会一直并且只是配合Elasticsearch

是的,我们没有其他 datasource 的计划,因为我们大部分的使用case是要有时间序列的。

最开始融合在一起的是 Elasticsearch 和 Logstash,然后 Kibana 参与进来。在这个融合的过程中,遇到任何冲突或者改变,我们的评判标准都是怎样对用户而言更友好。举例说明,安全问题最佳的解决是在数据层,搜索非常占用内存,使用ES可以做很复杂的事情,在旧版本的 Kibana 中,可以使用 Elasticsearch 的 API,但是这拖缓了速度,并且用户可能会做一些危险的事情。在 Kibana 和 Elasticsearch 融合之后,我再也没有那样做了,对于一些重的内存需求工作不会在UI层(Kibana)而是会放到数据层(ES),用最少的内存,让尽可能多的计算脱离 JVM heap ,放入socket breaker,让我们管理更简洁干净并做到在UI可追踪。

Kibana的美学

Kibana最初的设计师只是我一个人,现在当然我们有了自己的很优秀的设计师,这是很被看重的部分,没有外包出去。因为我们需要和设计团队频繁地交流,不断地给予反馈,和工程团队。这是我们公司文化的一个重要部分。

你想一想这是运维人员需要终日面对的工具,没有人愿意一直看着丑的东西;此外,也希望Kibana可以让运维人员的boss们感到惊艳,我们希望可以帮助使用者产生非常美的工作。

写在最后

在采访结束时,InfoQ问Rashid是否可以给广大读者一些建议,Rashid想了想说:


如果你有一个想法,把它code出来,build起来。不要等其他人的开源代码,有可能你会等到,但是有可能你永远等不到。在你写出来之后,你没准会收获惊喜。


 
1.png

 

《Elasticsearch 权威指南》中文版

medcl 发表了文章 • 3 个评论 • 30305 次浏览 • 2017-01-09 16:29 • 来自相关话题

es-guide.gif

 在几十位社区同学的共同努力下,《Elasticsearch 权威指南》的翻译工作接近尾声,
在线访问链接如下:
http://es-guide-preview.elasticsearch.cn
 
晚点会放到 elastic.co 官网上,大家学习 Elasticsearch 又多了一份好的资料,大家在访问的过程,如果发现有问题(翻译的各种 bug,翻译有误,不合理,不通顺,标点,格式等等),欢迎前往  https://github.com/elasticsear ... guide 提交 Issue,同时也欢迎直接提交 pull request 来改进本书。
 
同时也希望更多的志愿者加入我们一起进行翻译,后续我们会继续翻译其他的手册,另外有很多同学自己已经在翻译部分内容,也欢迎加入我们一起,有兴趣的同学加入我们翻译的QQ群:109764489 ,一起为 Elastic 的中文资料贡献力量。

最后,再次感谢以下本书的志愿者:
薛杰,骆朗,彭秋源,魏喆,饶琛琳, 风虎,路小磊,michealzh,nodexy,sdlyjzh,落英流离, sunyonggang,Singham,烧碱,龙翔,陈思,陈华, 追风侃侃,Geolem,卷发,kfypmqqw,袁伟强,yichao, 小彬,leo,tangmisi,Alex,baifan,Evan,fanyer, wwb,瑞星,刘碧琴,walker,songgl, 吕兵,东,杜宁,秦东亮,biyuhao,刘刚, yumo,王秀文,zcola,gitqh,blackoon,David,韩炳辰, 韩陆,echolihao,Xargin,abel-sun,卞顺强, bsll,冬狼,王琦。
 

Elastic Stack 5.0 正式发布

medcl 发表了文章 • 0 个评论 • 7473 次浏览 • 2016-10-27 16:28 • 来自相关话题

Snip20161027_6.png

作者:Shay Banon,原文:https://www.elastic.co/blog/el ... eased 

记得在 2016 年 2 月份,就在 Elastic{ON} 16 大会之后,我写了一篇标题为 [Heya, Elastic Stack and X-Pack] (https://www.elastic.co/blog/he ... -pack ) 的博客。经过了几乎整整一年的努力,中间发布了 5  个 Alpha,1 个 Beta 和一个 RC 版本,今天我们非常高兴的正式宣布发布 Elastic Stack 的 GA 正式版本。

并且,重要的是,于此同时,在我们的 [Elastic Cloud](https://www.elastic.co/cloud/as-a-service/signup ) 上面也同步进行了更新。所以如果你需要托管的 Elasticsearch 和 Kibana ,那么没有其它地方比这里更及时了。我们致力于让 Elastic Cloud 成为一个托管 Elasticsearch 的最佳场所。事实上,在正式版发布之前,我们也提供了 RC 版本方便你用于测试。

我们的团队今天正在庆祝这一时刻,我希望你能加入我们。

GA 版本今天已经可以下载了,如果要加入 Elastic 团队 11 月 3 号的线上活动,了解更多有关于本次发布和向工程师提问,请点击这里 [注册!](https://www.elastic.co/live/v5 )
 

在开始探索发布详情之前,我想借此机会来回顾一下有哪些背后的事情让我们走到今天。

## 我们的社区

最近的 Elastic{ON} Tour,在每场活动的开场我会讨论我们公司过去几年的简短历史。最近一次活动的高潮是当我宣布我们的累计下载总数达到了七千五百万。当我第一次开始这个项目的时候,我希望她能够被能够被广泛使用,但是我们的社区的热情和激情总是不断的给我快乐和惊喜。

## 先驱者计划

考虑到这一点,我想分享一下 [先驱者计划](https://www.elastic.co/blog/el ... ogram ) 的一些结果。该计划开始于一个简单的前提,你如何使用 Elastic Stack 对我们来说非常重要,不管是产品研发还是确保发布高质量的可用版本。我非常高兴的告诉大家自四月份发布的第一个Alpha版本,我们的社区一共提交了146个issue。

我们的社区是Elastic其中一个最宝贵的财产。事实上,在这次发布中讨论的最多的就是为什么命名为 "Elastic Stack"。

## Elastic Stack

过去一年,我们收购了Packetbeat 团队,然后Beats 就诞生了。这是一个开源的用于构建轻量级数据收集的平台,可用于日志、基础设施监控指标、网络流量等数据的收集,并且以前所未有的简单方式来将数据发送至Logstash或Elasticsearch。同时我们热爱那些已经习惯于将 ELK 作为代表我们软件栈的你们,只不过加上Beats,我们不知道如何将“B”和E-L-K组合在一起。(NOTE:过去用过ELKB)

但Elastic Stack 远不只是一个名字。当我们开始发布一个周期,我们开发提交、构建、测试和发布的是一整个软件栈。这个很重要,从内部来保证兼容性。并且,对你来说,它可以帮助你提升部署速度,减少版本冲突,让开发者轻松的处理整个 Elastic Stack的兼容性问题。

## 一场特性之旅

在我开始这篇博客之前,我打算列举每个产品的一些主要特性,但是发现好像很难确定从哪里开始和结束。我们每个产品和技术的leader 已经创建了单独的博客来讨论各自产品的特性,没人比他们更适合介绍其中的故事。 我个人,更是对其中的一些特性感到非常兴奋,相较于简单的罗列,我会提供一些简短概要并且鼓励你去阅读每个产品详细的博客。


Ingest Node

Ingest Node 是Elasticsearch 的一个节点类型,允许你对数据做一些加工,比如:grok、geoip、date和其它索引(或重建)过程中的基本数据操作。 通过访问REST API的时候指定一个参数“?pipeline=x”来使用由一系列处理器(processors)构造的管道,它可用帮你对文档进行预处理,原生的在Elasticsearch内部,在索引之前做灵活的 ingest部署。这不代表要替换掉Logstash,也不会移除对Beats的需要,只为你设计数据采集架构时提供一种更加灵活的可能性。

Elasticsearch 性能

性能报告倾向于提供一个大纲,尤其是比较性的性能测试报告,基于此,我们花了很大力气来比较5.0.0 与之前发布的版本。数据现在已经可用了,这个数据也是我们用来检查和确保我们正在做正确的事情来保证性能,我们是如此的公开来避免由性能测试数字引起的所谓秘密和怀疑。事实上,不止测试结果,我们还公布了我们的硬件和配置,我们还开源了我们的工具链(叫做 [Rally](https://github.com/elastic/rally )) 和测试记录本身([Rally-Tracks](https://github.com/elastic/rally-tracks ))。

Metricbeat

Metricbeat 替换 Topbeat 成为Elastic Stack里主要的收集度量指标的工具。和Topbeat一样,Metricbeat 收集和“top” 类似的诸如机器及进程的资源(CPU, memory, disk, network)统计信息。和Topbeat不同的是,Metricbeat 同时也收集其它系统的指标信息,如:Apache、HAProxy、MongoDB、MySQL、Nginx、PostgreSQL、 Redis和 Zookeeper,并且在不久的将来还会支持更多应用和系统。

Logstash 监控 API** - 这是一个新的监控特性提供Logstash 管道及其插件在运行时的可视状态。这个组件收集Logstash处理你数据的各种操作性统计指标信息,所有的这些信息都可通过简单的API来进行查询。

Timelion

以前以re{Search} 项目介绍过,现在Timelion 作为Kibana原生的核心组件可直接可用。Timelion 提供一个查询表达式和可视化类型让你探索基于时间的数据。

再列举几个,诸如BKD 树、scaled_float 和 half_float ,我们投入了大量的精力到 [Elasticsearch 可靠性](https://www.elastic.co/guide/e ... .html ) 中,另外Kibana惊艳的重新设计(我从来不知道我们以前有这么讨厌这些边框直到移除), Beats 支持的Kafaka输出,等等,还有很多很多。

这是一个非常大的版本发布,非常有必要阅读相关独立的博客来了解更多范围内的改进。






## X-Pack

在Elastic 我们热爱扩展。太多我们构建的东西我们给他们起了非常有趣的名字,如:Shield、Marvel和Watcher,作为提供给我们客户的额外的插件,独立闭源但没限制开源部分的能力的特性,随着后面又增加了Graph 和Reporting,安装流程也变得困难和困惑。

来和X-Pack 打个招呼吧!

一个包含了security、alerting、monitoring & management、reporting和graph 能力的Elastic Stack的插件。我们对5.0的工程不仅限于Elastic Stack,同时也包括给X-Pack 添加如下:
  1. Kibana里的管理和监控的UI界面
  2. Kibana里创建用户和角色的UI界面
  3. 非常简化的安装流程


X-Pack 可以试用,同时提供商业和免费(基本)授权证书选项。我们尤其兴奋的将X-Pack的某些特性开放出来免费使用,详细请见 [Subscriptions](https://www.elastic.co/subscriptions ) 页。

## 放在最后

我敬畏发布此次版本所做的所有努力,来自我们社区和客户的共同参与,以及为了将来发布所做的一系列背地里的工作。一如既往,理解一个版本的最好方式就是去体验它。







   
 

Elastic{ON} Dev China 2016 开始报名了!

medcl 发表了文章 • 8 个评论 • 5564 次浏览 • 2016-09-20 22:23 • 来自相关话题

大会网站:https://info.elastic.co/elasticon-dev-china.html 
大会网站:​[url=http://conf.elasticsearch.cn]http://conf.elasticsearch.cn​[/url]
大会介绍:
Elastic 中国开发者大会 2016(Elastic{ON} Dev China 2016)是由 Elastic 官方在中国举办的第一次开发者大会,前身 ESCC (Elasticsearch China Conference) 是由 Elastic 中文社区每年定期举办的线下交流活动,主要围绕 Elastic 的开源产品: Elasticsearch、Logstash、Kibana 和 Beats,探讨在搜索、数据实时分析、日志分析、安全等领域的实践与应用。 

大会时间:
2016-12-10 08:00 至 2016-12-10 18:00 周六
 
如何参与:
提供赞助:http://elasticsearch.mikecrm.com/nECSP4
提交演讲:http://elasticsearch.mikecrm.com/x0y56G
当志愿者:http://elasticsearch.mikecrm.com/n5BVwP
购买门票:http://event.3188.la/460820612/
 
大会具体场地和日程不断更新中,敬请关注!

Elastic 为 Elastic Stack 带来新的 Graph 实时图分析功能

medcl 发表了文章 • 1 个评论 • 14331 次浏览 • 2016-03-31 09:36 • 来自相关话题

Mountain View, Calif. and Amsterdam, The Netherlands – March 30, 2016,英文原文

BestBuy2-768x414.jpg


Elastic 今天宣布发布一个新的用于 Elasticsearch 和 Kibana 的插件,通过它们您可以很方便的发现、理解和探索您现有数据之间的关系。通过结合速度与相关度的搜索与图分析,Graph 已开启一页新的篇章同时为 Elastic Stack 带来更多的使用场景。
 
“我们构建 Graph 来帮助您以更多的方式来分析您存储在 Elasticsearch 中的数据” -- Steve Kearns,Elastic 高级产品总监提到, “通过把相关度作为切入点来查看数据间的关系,以前需要涉及到多个系统、批量作业甚至机器学习才能做到的事情,现在变成容易解决的问题。”

Graph 为 Elastic Stack 开启新的使用场景

当您往 Elasticsearch 存储数据时 -- 产品信息、用户资料、文档、日志 -- 这些数据通常会包含对象(实体、人员、角色或者机器等)之间的引用关系。最好的探索这些关系的方法就是以可视化的方式去查看,Graph 通过以 Kibana 插件的方式提供了这样的能力。和 Elastic 的所有产品一样,它的 UI 界面设计简单易用,API 接口丰富强大,借助于 Elastic 在相关性评分的丰富经验,挖掘出您数据中最有价值的关系信息。这种独特的图形探索方式,并且无需引入新的索引格式,允许用户直接查询现有的数据,为 Elastic Stack 打开了一个新的更广泛的使用场景。

Graph 让一些复杂问题和场景(如行为分析、反欺诈、网络安全、药物发现、个性化医疗,或者基于持续的实时数据构建个性化推荐)的处理变得简单。Graph 通过相关性评分计算分离噪音和有用信息,自动识别最重要的这些关系。由于构建于 Elasticsearch 之上,Graph 天然具备高可用和近实时的能力。

Graph 为关系性探索带来相关度

当数据添加到 Elasticsearch 后,索引进程会跟踪和记录该文档每个字段每个值,更新全局词频信息,并准备相关数据用于大的范围查询。这些统计信息还被用来计算搜索的相关度以及有效的用于 Aggregation 中。通过 Graph,Elastic Stack 将以一种新的方式来使用这些统计信息 -- 首先是识别文档间的关系,然后再为指定查询按最相关的关系进行优先级排序处理。

相比之下,传统的图分析技术仅基于给定关系的简单的频次统计。这种方法的缺点是关系连接最多的元素 -- 如《肖申克的救赎》的电影推荐指数或在星巴克的信用卡购买数据 -- 被认为是最重要的而返回但不一定最有价值。Elasticsearch 中的 Graph,相关度会根据与每个关系的重要程度来进行计算而不是简单的平均处理,返回的是重要的结果,避免出现频繁或平常的连接关系

“Graph 是一个极好的例子,让大家看到我们的产品所带来的无限可能性以及我们如何努力让我们的用户尽可能容易的得益于 Elastic Stack。” -- Shay Banon,Elastic CTO 与联合创始人说 -- “我很自豪地看到我们的公司在持续创新,然后也迫不及待的想要看到我们的客户采用 Graph 这种新方法来解决真正具有挑战性的问题和案例.”

了解更多:
Graph 产品首页
观看 Graph 在线研讨会
 
关于 Elastic
Elastic 是世界领先的软件提供商,致力于结构化和非结构化数据的实时可用性,用户场景包括搜索、日志和数据分析等领域。公司由 Elasticsearch、Kibana、Logstash 和 Beats 这些开源项目背后的开发人员于2012年创立,Elastic Stack、X-Pack 和 Elastic Cloud 这些产品迄今累计已超过5千万次下载。
Elastic 由 Benchmark Capital、Index Ventures 及 NEA 投资,总部位于阿姆斯特丹和加州山景城,公司员工及办事处遍布全球各地。欲了解更多,请访问 http://elastic.co

Elastic线下交流活动走起来!

medcl 发表了文章 • 2 个评论 • 4091 次浏览 • 2016-03-24 10:50 • 来自相关话题

线上交流不过瘾?那就参加线下交流活动吧!
这里是搜罗的最新的线下交流活动预告:

 
大家分别找到组织报名参加吧,貌似有些还需要场地支持,大家一起出谋划策,把活动办起来吧。

Elastic{ON}16的资料已经放出

medcl 发表了文章 • 1 个评论 • 4249 次浏览 • 2016-03-01 11:59 • 来自相关话题

elasticsearch-analysis-ik和elasticsearch-analysis-mmseg更新至1.7.0

medcl 发表了文章 • 3 个评论 • 5013 次浏览 • 2016-01-13 11:20 • 来自相关话题

elasticsearch-analysis-ik:
https://github.com/medcl/elasticsearch-analysis-ik
 
elasticsearch-analysis-mmseg: 
https://github.com/medcl/elast ... -mseg
 
主要更新配置文件存放路径,之前版本的配置文件存放在elasticsearch的config目录,现在都修改为插件的相对目录了,主要是简化部署,现在可在Found(https://found.elastic.co)部署了。

简繁体转换插件更新:elasticsearch-analysis-stconvert 升级支持2.0

medcl 发表了文章 • 4 个评论 • 11654 次浏览 • 2015-12-24 11:45 • 来自相关话题

版本1.5.0 支持es2.0.0
 
项目地址:https://github.com/medcl/elast ... nvert 
 
mvn 编译打包,拷贝release下面的zip并解压到你的es plugins目录即可,需要重启es

这个插件帮你处理简繁体,简繁体全部统一成简体或繁体,不管输入的简体还是繁体,都能得到搜索结果
 
比如:
不管输入的是『北京国际电视台』的还是『北京國際電視臺』都能命中。
 
详细配置和使用请参照上面的地址。
 
版本1.5.0 支持es2.0.0
 
项目地址:https://github.com/medcl/elast ... nvert 
 
mvn 编译打包,拷贝release下面的zip并解压到你的es plugins目录即可,需要重启es

这个插件帮你处理简繁体,简繁体全部统一成简体或繁体,不管输入的简体还是繁体,都能得到搜索结果
 
比如:
不管输入的是『北京国际电视台』的还是『北京國際電視臺』都能命中。
 
详细配置和使用请参照上面的地址。
 

11.22 ESCC#4成都站马上开始了

medcl 发表了文章 • 1 个评论 • 4164 次浏览 • 2015-11-18 08:48 • 来自相关话题

时间:

2015年11月22日 周日 下午1点开始

地点:

四川成都市高新区天府大道中段1366号天府软件园E3-1-11层   (感谢货车帮提供场地支持)

会议日程:

Snip20151118_26.png



请您提前到场,安排好时间,如因故不能参加,请提前发邮件告知: medcl*elastic.co ,谢谢合作.