Elasticsearch

Elasticsearch 是一款基于Apache Lucene框架构建的开源的、分布式的、可扩展的、(准)实时的文档存储和搜索引擎。在提供搜索服务以及日志分析方面已经日趋成熟,尤其是在Elasticsearch 5.x发布之后,在规范性、功能、性能等方面都有了极大的改进,并且进入了迅速迭代的过程,版本发布之快令人乍舌。

360Hulk云平台,作为业界首屈一指的私有云平台,绝不甘落寞,也在Elasticsearch上做了很多尝试,推出了面向搜索的Elasticsearch服务和面向日志分析的ELK服务。目前已经在公司内部大范围应用,承载数据量200+TB,日访问量超1000亿次。今天小编就为大家带来Elasticsearch在360私有云平台的实践。

Elasticsearch服务架构

Master节点独立

因为master承担着集群元数据管理的职责,例如indices、sharding等信息的维护,如果master节点和data节点混用的话,master相关功能的性能没法保证,而且一旦发生故障,集群恢复时间将被大大拉长。因此我们的Elasticsearch集群采用3个独立的master方案(有且只有唯一的一个节点真正承担着master的角色),一方面保证master相关功能的稳定,另一方面通过配置discovery.zen.minimum_master_nodes: 2降低了master选举时出现脑裂的几率。

负载均衡

我们使用data节点承接访问,但是为了业务使用的便捷性,集群使用了LVS将请求均衡的分担到各个data节点;同时提供了RS的动态监测机制,当data节点失联的时候,LVS会自动过滤掉该节点的请求。

业务独享集群

结合360业务的特点,为了尽量适配不同业务的需求场景,同时尽量降低各个业务线之间的相互影响,每个业务线可以申请自己独享的集群。同时,这种方案还大大降低了Elasticsearch集群不可用(当然这种情况出现几率极低,但不能保证不发生)的时候影响业务的范围。

用户认证和权限隔离

集群集成了SearchGuard(不要问我为啥不用X-Pack,因为穷,且懒),实现了用户认证和访问权限控制,做到了集群内部更细粒度的隔离,实现了各个子业务线内部应用之间的访问隔离。

分词支持

集群默认集成了ik分词(小编在这给各位看官一点提示:因为Elasticsearch 5.x之后关闭了Site Plugins的支持,所以需要自己编译然后拷贝相应文件到Elasticsearch Plugin目录),并且支持扩展分词词典和stopword扩展词典的动态更新。

用户端功能

基于Hulk私有云平台的自助功能

集群申请

状态查看

常用性能监控图表

indices展示

权限申请等自助服务

新建集群

提供多种类型配置的套餐

提供多种类型配置的套餐可供业务选择,兼顾空间、成本和性能的考量。

界面化展示

默认提供配置好的Kibana服务,用户可以开箱即用,不用自己搭建和维护。

管理员功能

基于Hulk私有云平台的管理功能

群集的配置

集群初始化

节点启停管理

资源回收等功能

Zabbix监控

基于FromDual框架的自定义监控指标,全面监控集群运行状态,及时告警;并且实现了简单场景的故障自动恢复(例如由节点存活报警自动触发的进程自启动等)

WebAdmin管理功能扩展

Elasticsearch 5.x之后关闭了对Site Plugins的支持,直接导致了诸如head、kopf等一批插件死翘翘。不过作者对kopf功能进行了彻底的重构(using Scala, Play Framework, AngularJS and Bootstrap),推出和Elasticsearch完全解耦的Cerebro,不仅外观看起来更加高大上,支持独立部署,而且在易用性以及对Elasticsearch更高版本特性的支持上都有了很大提升。

总结

怎么样,看了上面的介绍,各位看官是不是都想跃跃欲试了呢。欢迎大家积极留言探讨。

我们后续也会持续推出Elasticsearch服务在360私有云平台实践过程中的诸多技术点来跟大家分享,敬请期待吧。

扩展阅读:

《谨慎前行-浅谈Elasticsearch安全策略》

《Elasticsearch认证及安全》

《AIOps时代下的利器:ELK》

扫描下方
二维码
了解更多内容

360私有云平台Elasticsearch服务初探相关推荐

  1. 360 私有云平台 MySQL 自动化实现剖析

      本文源自 7 月 13 日『高效开发运维』微信群的在线分享,转载请在文章开头注明来自『高效开发运维』公众号.加群学习请关注『高效开发运维』公众号,并点击菜单中的"加群学习"或直 ...

  2. 360私有云平台-HULK 5岁啦~

    HULK五周年 2017 12.25 祝大家圣诞节快乐哦- 今天也是HULK宝宝来到360的第1825天. 喏~~这是小HULK的自我介绍 HULK云平台是奇虎360WEB平台部于2012年底开始立项 ...

  3. 容器赋能AI-人工智能在360私有云容器服务上的实践

    女主宣言 360私有云容器服务团队和人工智能研究院团队一起配合,在云端提升机器学习的效能方面进行了深入的研究和实践,为业务提供了"人脸检测"."花屏检测".&q ...

  4. 360私有云发布Windows平台测试版

    游侠安全网在前一段曾经给大家介绍过360私有云的一些情况(原文).当时的系统基于CentOS,而今天游侠拿到的版本则是Windows版本. 当然,Windows下的360私有云部署是非常简单的,安装包 ...

  5. 云平台队列服务-Qbus实践

    女主宣言 小编这篇文章从Qbus服务介绍.架构.使用场景开展,不涉及到队列底层具体实现原理,只讲把Qbus服务上到私有云的过程,希望给有相同需求的各位带来一点有价值的东西.下来就跟随作者一同学习下吧. ...

  6. 视频私有云实战:基于Docker构建点播私有云平台

    私有云是为一个客户单独使用而构建的,因而提供对数据.安全性和服务质量的最有效控制.前置条件是客户拥有基础设施,并可以使用基础设施在其上部署应用程序.其核心属性是专有的资源.本篇文章将会结合网易云信的实 ...

  7. 小米基于OpenStack搭建私有云平台技术架构大揭秘!

    摘要: 小米公司OpenStack项目的技术负责人潘晓东分享在使用OpenStack建设小米私有云平台的一些经验和踩过的一些坑,重点探讨在目前OpenStack还不太稳定的情况下,如何建设一个具备企业 ...

  8. AWS云平台的服务概览

    当我们向别人解释AWS云平台所包含的那些服务的时候,许多人对AWS服务种类的丰富程度都表示惊讶.对于部分听说过AWS的人来说,他们知道AWS云平台的功能主要限于EC2(弹性计算云).S3(简单存储服务 ...

  9. 【方案阐述】如何实现私有云平台的统一管理与向上级联?

    一.背景分析 科技创新对社会发展的重要性不言而喻.对于安防行业来说,人工智能和5G等新技术的应用,已经成为推动智能安防发展的一块关键踏板.从技术维度来看,人工智能.云计算.大数据.物联网等技术在安防视 ...

最新文章

  1. 我的Oracle 9i学习日志(20)-- profile
  2. 数据结构源码笔记(C语言):Josephus问题之循环链接表
  3. 第四章第四个例题(LRJ)
  4. 自然语言处理NLP,如何使用AMBERT算法建立多粒度token预训练语言模型
  5. Mybatis学习总结二
  6. 系统无法在消息文件中为application_iOS 14 Filza 文件消息,M1 能用 win 系统
  7. layui选项卡嵌套选项卡_在ProtoPie中使用嵌套组件构建选项卡栏
  8. VS2017无法打开文件MSVCRTD.lib
  9. 天津市电子计算机职业学院,天津市电子计算机职业中等专业学校
  10. 【实操手册】如何把一场直播录制下来?
  11. 浅谈Scala 2.8的包对象(package object)
  12. 为项目编写Readme.MD文件
  13. 按键精灵注册大漠插件
  14. 智能人体感应灯,微波雷达存在感应,智能照明技术方案
  15. CodeFroces GYM 2016-2017 ACM-ICPC, Egyptian Collegiate Programming Contest (ECPC 16) B.street(最短路)
  16. 跟风“涨价”,品牌老化,为何“0糖”的奥利奥不被消费者买账?
  17. 播放器实战 10 像素格式与尺寸的转换
  18. Windows系统提示“telnet不是内部或外部命令,也不是可运行的程序或批处理文件”怎么办?
  19. Asp.net Core 6.0 使用EF DB First 连接mysql
  20. android BannerView实现自动轮播广告的用法(参考自github)

热门文章

  1. Oracle笔记 十一、PL/SQL函数和触发器
  2. 怎么取消XP粘滞键(StickyKeys)
  3. Mybatis出现文档根元素 mapper 必须匹配 DOCTYPE 根 configuration错误解决办法
  4. Linux查找class类所在jar包
  5. Java8新特性总结 -8.Nashorn , JavaScript引擎
  6. maven加载第三方jar不能加载
  7. ADMT3.2域迁移之Server2003至Server2012系列(五)添加域管理员权限
  8. Hibernate之关联映射
  9. PowerShell 扩展工具第四波!
  10. busybox订制小型linux(二)