首页> 中国专利> Elasticsearch集群保护装置、方法、存储介质及计算机设备

Elasticsearch集群保护装置、方法、存储介质及计算机设备

摘要

本发明实施例提供一种Elasticsearch集群保护装置、方法、存储介质及计算机设备,涉及Elasticsearch集群保护领域。该装置包括:配置管理单元,用于获取慢查询日志的记录阈值发送给Elasticsearch集群,以便所述集群根据所述记录阈值记录慢查询日志;数据采集单元,用于从所述集群采集其记录的慢查询日志,对所述慢查询日志进行解析形成结构化的慢查询数据;数据分析单元,用于从所述结构化的慢查询数据中获取设定指标的指标数据;报警处置单元,用于将所述设定指标的指标数据和与所述设定指标对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向所述Elasticsearch集群发送取消所述慢查询对应的查询任务的控制指令。本发明实施例可以对Elasticsearch集群提供保护,保障Elasticsearch集群的稳定运行。

著录项

  • 公开/公告号CN112463825A

    专利类型发明专利

  • 公开/公告日2021-03-09

    原文格式PDF

  • 申请/专利权人 中国建设银行股份有限公司;

    申请/专利号CN202011204062.6

  • 发明设计人 王士强;刘伟;赵子健;杨晓勤;

    申请日2020-11-02

  • 分类号G06F16/2453(20190101);G06F16/27(20190101);

  • 代理机构44202 广州三环专利商标代理有限公司;

  • 代理人郝传鑫

  • 地址 100032 北京市西城区金融大街25号

  • 入库时间 2023-06-19 10:08:35

说明书

技术领域

本发明涉及Elasticsearch集群保护领域,特别涉及一种Elasticsearch集群保护装置、方法、存储介质及计算机设备。

背景技术

传统企业选择使用关系型数据库(典型的如Mysql、Oracle等)来存储业务数据。但是面对大量数据写入处理、字段不固定以及对于简单查询要快速反馈结果的场景,传统的关系型数据库的表现不尽如人意。近年来,以Elasticsearch(一种分布式全文搜索引擎)等为代表的非关系型数据库快速崛起,满足了企业对于海量文档型数据的存储和查询需求,得到了广泛的应用。

在实际应用过程中,Elasticsearch集群在海量数据存储和检索方面表现卓越。但是,Elasticsearch集群在处理写入请求和查询请求时,两种类型的请求往往会相互影响。当查询请求的数量较多,查询请求的数据量较大时,Elasticsearch集群会用主要的CPU和内存资源来完成用户的查询请求,此时Elasticsearch集群对写入请求的处理速度可能会降低或无法处理写入请求,无法稳定运行。

发明内容

本发明实施例提供了一种Elasticsearch集群保护装置、方法、存储介质及计算机设备,以解决现有技术中Elasticsearch集群在处理大数据量的查询请求时无法稳定运行的问题。

一方面,本发明实施例提供一种Elasticsearch集群保护装置,所述集群保护装置包括:

配置管理单元,用于执行以下处理:获取配置的慢查询日志的记录阈值,并将所述记录阈值发送给Elasticsearch集群,以便所述Elasticsearch集群根据所述记录阈值记录慢查询日志;

数据采集单元,用于执行以下处理:从所述Elasticsearch集群采集其记录的慢查询日志,对所述慢查询日志进行解析形成结构化的慢查询数据;

数据分析单元,用于执行以下处理:从所述结构化的慢查询数据中获取慢查询的设定指标的指标数据,所述设定指标包括:所述慢查询的命中数占索引总数量的比例以及所述慢查询涉及的查询分片数;

报警处置单元,用于执行以下处理:将所述设定指标的指标数据和与所述设定指标对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向所述Elasticsearch集群发送取消所述慢查询对应的查询任务的控制指令。

在本实施例的一种实现方式中,

所述设定指标还包括:查询等待队列中的等待任务数;

所述报警处置单元还用于执行以下处理:将所述等待任务数与等待任务数阈值进行比较,并在所述等待任务数超过所述等待任务数阈值时,向Nginx(一种高性能的HTTP和反向代理web服务器)访问代理服务器发送屏蔽后续查询请求的控制指令。

在本实施例的一种实现方式中,

所述报警处置单元还用于执行以下处理:检测所述等待任务数是否恢复正常,并在恢复正常时,向Nginx访问代理服务器发送取消屏蔽后续查询请求的控制指令,其中,所述等待任务数恢复正常包括:等待任务数恢复到未超过等待任务阈值。

在本实施例的一种实现方式中,

所述配置管理单元还用于执行以下处理:获取配置的Nginx屏蔽阈值;

所述数据采集单元还用于执行以下处理:从Nginx访问代理服务器采集用户访问日志,对所述用户访问日志进行解析形成结构化的用户访问数据;

所述数据分析单元还用于执行以下处理:从所述结构化的用户访问数据中获取各个IP地址每秒钟发出请求的次数,并将各个IP地址每秒钟发出请求的次数与所述屏蔽阈值进行比较,如果有IP地址每秒钟发出请求的次数超过屏蔽阈值,则向所述Nginx访问代理服务器发送屏蔽每秒钟发出请求的次数超过屏蔽阈值的IP地址后续的请求的控制指令。

在本实施例的一种实现方式中,所述配置管理单元还用于执行以下处理:

获取用户输入的Elasticsearch服务器的IP地址、安装路径,

根据所述IP地址、安装路径展示所述IP地址、安装路径对应的Elasticsearch集群的运行状态。

另一方面,本发明实施例提供一种Elasticsearch集群保护方法,其所述方法包括:

获取配置的慢查询日志的记录阈值,并将所述记录阈值发送给Elasticsearch集群,以便所述Elasticsearch集群根据所述记录阈值记录慢查询日志;

从所述Elasticsearch集群采集其记录的慢查询日志,对所述慢查询日志进行解析形成结构化的慢查询数据;

从所述结构化的慢查询数据中获取慢查询的设定指标的指标数据,所述设定指标包括:所述慢查询的命中数占索引总数量的比例以及所述慢查询涉及的查询分片数;

将所述设定指标的指标数据和与所述设定指标对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向所述Elasticsearch集群发送取消所述慢查询对应的查询任务的控制指令。

在本实施例的一种实现方式中,所述设定指标还包括:查询等待队列中的等待任务数;

所述方法还包括:

将所述等待任务数与等待任务数阈值进行比较,并在所述等待任务数超过所述等待任务数阈值时,向Nginx访问代理服务器发送屏蔽后续查询请求的控制指令。

在本实施例的一种实现方式中,所述方法还包括:

检测所述等待任务数是否恢复正常,并在恢复正常时,向Nginx访问代理服务器发送取消屏蔽后续查询请求的控制指令,其中,所述等待任务数恢复正常包括:等待任务数恢复到未超过等待任务阈值。

在本实施例的一种实现方式中,所述方法还包括:

获取配置的Nginx屏蔽阈值;

从Nginx访问代理服务器采集用户访问日志,对所述用户访问日志进行解析形成结构化的用户访问数据;

从所述结构化的用户访问数据中获取各个IP地址每秒钟发出请求的次数,并将各个IP地址每秒钟发出请求的次数与所述屏蔽阈值进行比较,如果有IP地址每秒钟发出请求的次数超过屏蔽阈值,则向所述Nginx访问代理服务器发送屏蔽每秒钟发出请求的次数超过屏蔽阈值的IP地址后续的请求的控制指令。

在本实施例的一种实现方式中,所述方法还包括:

获取用户输入的Elasticsearch服务器的IP地址、安装路径,

根据所述IP地址、安装路径展示所述IP地址、安装路径对应的Elasticsearch集群的运行状态。

再一方面,本发明实施例提供一种计算机存储介质,其上存储有计算机指令,该计算机指令可以被处理器执行以实现上述实施例的任意一种实现方式所述的Elasticsearch集群保护方法。

又一方面,本发明实施例提供一种计算机设备,包括:

存储器,其上存储有计算机程序;

处理器,用于执行所述计算机程序以实现上述实施例的任意一种实现方式所述的Elasticsearch集群保护方法。

相比于现有技术而言,本发明实施例提供的Elasticsearch集群保护装置、方法、存储介质及计算机设备具有如下有益技术效果:

本发明实施例可以不断的监控并采集Elasticsearch集群记录的当前慢查询的慢查询日志,然后不断的从当前慢查询的慢查询日志获取当前慢查询的设定指标的指标数据,根据当前慢查询的设定指标的指标数据和对应的指标阈值来判断是否取消当前慢查询的查询任务。通过这种方法,本实施例可以对慢查询进行实时分析,及时取消耗费资源过高的慢查询,避免Elasticsearch集群将资源耗费在不必要的慢查询请求中,从而节省资源开销,保证集群稳定运行。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简要的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例的附图,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是根据本发明实施例1的Elasticsearch集群保护装置的模块示意图;

图2是根据本发明实施例2的Elasticsearch集群保护方法的方法流程图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施例作进一步的详细描述。应当理解,下述的各种实施例只用于举例说明,而非用于限制本发明的保护范围。

【实施例1】

图1是根据本发明实施例1的集群保护装置的模块示意图。如图1所示,本实施例的Elasticsearch集群保护装置可以包括配置管理单元11、数据采集单元12、数据分析单元13、报警处置单元14。

其中,配置管理单元11用于执行以下处理:获取配置的慢查询日志的记录阈值,并将所述记录阈值发送给Elasticsearch集群20,以便Elasticsearch集群20根据所述记录阈值记录慢查询日志;

数据采集单元12用于执行以下处理:从Elasticsearch集群20采集其记录的慢查询日志,对所述慢查询日志进行解析形成结构化的慢查询数据;

数据分析单元13用于执行以下处理:从所述结构化的慢查询数据中获取慢查询的设定指标的指标数据,所述设定指标包括:所述慢查询的命中数占索引总数量的比例以及所述慢查询涉及的查询分片数;

报警处置单元14用于执行以下处理:将所述设定指标的指标数据和与所述设定指标对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向所述Elasticsearch集群发送取消所述慢查询对应的查询任务的控制指令。

其中,配置管理单元11可以包括后端应用和前端页面,该后端应用可以为基于SpringBoot(一种Spring应用的开发框架)开发的微服务应用,该前端页面可以为基于Vue(一种用于构建用户界面的渐进式JavaScript框架)实现的用户页面。用户可以通过配置管理单元11的前端页面配置慢查询日志的记录阈值,该记录阈值可以为查询耗时阈值。配置之后,配置管理单元11可以获取用户配置的慢查询日志的记录阈值,并将该记录阈值通过记录指令发送给Elasticsearch集群20,以指令Elasticsearch集群20记录查询耗时超过该记录阈值的查询的查询日志,该查询即为慢查询,该查询日志即为慢查询日志。例如,如果配置的慢查询日志的记录阈值为5秒,则配置管理单元11可以通过记录指令该记录阈值发送给Elasticsearch集群,以指令Elasticsearch集群将查询耗时超过5秒的查询作为慢查询并记录该查询的查询日志。在收到配置管理单元11发送的记录指令后,Elasticsearch集群中的每个数据节点就可以根据该记录指令中携带的记录阈值记录慢查询日志。

本实施例的配置管理单元11提供可视化的前端页面供用户配置记录阈值,通过记录指令将用户配置的记录阈值发送给Elasticsearch集群,进而指令Elasticsearch集群根据用户配置的记录阈值记录慢查询日志。相比于传统的通过登陆服务器修改elasticsearch.yml(Elasticsearch集群的配置文件)文件并重启服务的方式来配置Elasticsearch集群的慢查询日志的记录阈值而言,本实施例无需登录服务器,可以方便运维管理过程中运维人员进行配置管理,降低配置管理的工作量。

在本实施例的一种实现方式中,配置管理单元11还可以提供是否记录慢查询日志的选项供用户选择,在用户选择记录慢查询日志时,获取用户配置的记录阈值,进而将该记录阈值发送给Elasticsearch集群以指令Elasticsearch集群根据该记录阈值记录慢查询日志。

在本实施例的一种实现方式中,配置管理单元11可以与多个Elasticsearch集群通信,对多个Elasticsearch集群进行配置管理。此时,用户可以通过配置管理单元11选择其中一个Elasticsearch集群来配置该集群的记录阈值。配置之后,配置管理单元11可以获取该集群的记录阈值,将该集群的记录阈值发送给该集群,以指令该集群根据该集群的记录阈值记录慢查询日志。在其他实现方式中,用户也可以通过配置管理单元11分别配置各个Elasticsearch集群的记录阈值,配置之后,配置管理单元11可以将各集群的记录阈值分别发送给对应的各集群,以指令各集群分别根据各自的记录阈值记录慢查询日志。

在Elasticsearch集群记录慢查询日志后,数据采集单元12可以通过Flume(一种日志收集系统)数据采集代理监控并采集Elasticsearch集群的各数据节点上当前慢查询的慢查询日志,然后通过Logstash(一种对日志进行集中、解析、转换的数据处理管道)对当前慢查询的慢查询日志进行解析形成当前慢查询的结构化的慢查询数据。

在本实施例中,Elasticsearch集群保护装置进一步的可以包括数据存储单元,该数据存储单元可以采用Elasticsearch集群提供数据存储服务,以便于使用。在形成结构化的慢查询数据后,数据采集单元11可以将当前慢查询的结构化的慢查询数据保存到数据存储单元。

数据分析单元13可以从数据存储单元获取当前慢查询的结构化慢查询数据,然后从该结构化慢查询数据中获取当前慢查询的命中数占索引总数量的比例以及涉及的查询分片数等设定指标的指标数据,然后将当前慢查询的这些设定指标的指标数据发送给报警处置单元14。

报警处置单元14在接收到当前慢查询的各指标数据后,可以将各指标数据分别与对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向Elasticsearch集群20发送取消当前慢查询对应的查询任务的控制指令。例如,如果当前慢查询为慢查询A,报警处置单元14可以获取慢查询A的命中数占索引总数量的比例以及涉及的查询分片数,然后将慢查询A命中数占索引总数量的比例与命中数占索引总数量的比例阈值进行比较,将慢查询A涉及的分片数与涉及的分片数阈值进行比较,如果慢查询A的这两个指标中有指标的指标数据超过该指标的指标阈值,即这两个指标中有任意一个或两个指标的指标数据超过其对应的指标阈值,则报警处理单元14可以向进行慢查询A的Elasticsearch集群20发送取消慢查询A对应的查询任务的控制指令。其中,命中数占索引总数量的比例阈值以及慢查询涉及的分片数阈值可以预先配置在本实施例所述的集群保护装置中,这两个指标阈值可以为经验值,也可以根据设定时间段内的指标数据动态生成。在接收到报警处理单元14发送的取消当前慢查询的查询任务的控制指令后,Elasticsearch集群20可以取消当前慢查询A的查询任务。

通常来说,在Elasticsearch集群中,一个查询的查询命中数以及查询涉及的分片数都应该在合理的范围内。如果Elasticsearch集群中的命中数占索引总数量的比例过大,或查询涉及的分片数过多,则意味着用户的查询可能会耗费过多的资源,该查询本身的设置可能出现了问题,会影响Elasticsearch集群的正常运行。例如,如果查询命中数过多,其与索引总数量的比例过大,则意味着用户的查询条件不够精确,会返回大量的结果从而可能引起Elasticsearch集群发生内存溢出或者响应缓慢。本实施例针对Elasticsearch集群的这种特性,在监测到此类请求时,向Elasticsearch集群发送取消该查询请求的查询任务的控制指令,从而取消耗费资源过高的查询,避免Elasticsearch集群将资源耗费在不必要的查询请求中。通过取消消耗资源过高的查询的查询任务,Elasticsearch集群可以节省资源开销,将资源用在如处理写入请求等必要的处理中,保证集群稳定运行。

本领域技术人员可以理解的是,本实施例提供的Elasticsearch集群保护装置可以为实时的流处理装置,数据采集单元可以不断的监控并采集Elasticsearch集群记录的当前慢查询的慢查询日志并将当前慢查询的慢查询日志解析为当前慢查询的结构化慢查询数据,数据分析单元可以不断的从当前慢查询的结构化的慢查询数据中获取当前慢查询的指定指标数据发送给报警处置单元,从而使报警处置单元不断的将当前慢查询的指标数据与对应的指标阈值进行比较来取消耗费资源过多的查询任务。通过这种方式,本实施例可以对Elasticsearch集群中的慢查询进行实时分析,及时取消耗费资源过多的慢查询的查询任务。

在本实施例的其他实现方式中,除了查询命中数占索引总数量的比例以及查询涉及的分片数这两个指标外,本实施例还可以获取当前查询的其他查询指标来结合这两个指标来进行报警处置。例如,数据分析单元13除了从当前慢查询的结构化慢查询数据中获取当前慢查询的命中数占索引总数量的比例以及涉及的查询分片数这两个设定指标的指标数据外,数据分析单元还可以从当前慢查询的结构化慢查询数据中获取当前慢查询的查询耗时,然后将当前慢查询的命中数占索引总数量的比例、涉及的查询分片数以及查询耗时发送给报警处置单元14。报警处置单元14可以将当前慢查询的命中数占索引总数量的比例、涉及的查询分片数以及查询耗时这三个指标数据与对应的指标阈值进行比较,如果其中有两个指标的指标数据超过其对应的指标阈值,报警处置单元14则可以向Elasticsearch集群发送取消该慢查询对应的查询任务的请求。例如,如果当前慢查询的查询耗时超过查询耗时阈值且查询涉及的查询分片数超过查询分片数阈值,则向Elasticsearch集群发送取消该慢查询对应的查询任务的请求。

在本实施例的另一种实现方式中,除了取消耗费资源过高的慢查询对应的查询任务外,本实施例还可以联动Nginx访问代理服务器来屏蔽后续的查询请求,从而保证Elasticsearch集群稳定运行。

具体而言,数据分析单元13可以获取当前慢查询的结构化查询数据,然后从当前慢查询的结构化慢查询数据中获取当前查询队列中的等待任务数,然后将该等待任务数发送给报警处置单元14。报警处置单元14在接收到该等待任务数之后,可以将该等待任务数与等待任务数阈值进行比较,如果该等待任务数超过等待任务阈值,则可以向Nginx访问代理服务器发送屏蔽当前查询请求的后续查询请求的控制指令。响应于该屏蔽后续查询请求的控制指令,Nginx访问代理服务器可以屏蔽当前查询请求后续的所有请求,直到等待任务数恢复正常。

进一步地,数据分析单元13可以不断的获取当前查询队列中的等待任务数,将当前查询队列中的等待任务数发送给报警处置单元14。报警处置单元14可以不断的将当前查询队列中的等待任务数与等待任务数阈值进行比较,来检测等待任务数是否恢复正常。如果检测到当前查询队列中的等待任务数恢复到未超过等待任务数阈值,报警处置单元14可以向Nginx访问代理服务器发送取消屏蔽后续查询请求的控制指令。响应于该取消屏蔽后续查询请求的控制指令,Nginx访问代理服务器可以取消屏蔽后续的查询请求。其中,等待任务数阈值可以预先配置在本实施例的Elasticsearch集群保护装置中。

在Elasticsearch集群中,查询队列中的等待任务数这个指标通保持在0,一旦等待任务数快速增长并超过等待任务阈值,表示查询过多可能会对Elasticsearch集群的稳定运行产生影响。本实施例通过不断的检测当前查询队列中的等待任务数是否超过设定的等待任务数阈值,并在检测到当前查询队列中的等待任务数超过等待任务数阈值时联动Nginx访问代理服务器,向Nginx服务器发送屏蔽后续查询请求的控制指令。通过这种方法,本实施例可以在等待任务数超过设定阈值时通过Nginx访问代理服务器屏蔽掉后续的所有查询请求,从而保证Elasticsearch集群的稳定运行。

如果某一IP地址向Elasticsearch集群频繁发送查询请求,也会对Elasticsearch集群的稳定运行产生不良影响。在本实施例的一种实现方式中,Elasticsearch集群保护装置还可以联动Nginx访问代理服务器来屏蔽频繁发送查询请求的IP地址发送的后续查询请求,以保证Elasticsearch集群的稳定运行,从而对Elasticsearch集群起到保护作用。

具体而言,除了提供配置记录阈值的选项外,配置管理单元11还可以提供配置Nginx屏蔽阈值的选项,以供用户配置Nginx屏蔽阈值。在用户配置好Nginx屏蔽阈值后,配置管理单元可以获取用户配置的Nginx屏蔽阈值,然后将该Nginx屏蔽阈值发送给报警处置单元14。

数据采集单元12在监控并采集Elasticsearch集群的慢查询日志的同时,可以不断的监控并采集Nginx访问代理服务器当前的用户访问日志,将当前的用户访问日志解析为结构化的用户访问数据存储到数据存储单元。数据分析单元13可以不断的从数据存储单元获取当前各个IP地址的结构化用户访问数据,从当前各个IP地址的结构化用户访问数据中获取当前各个IP地址每秒钟发出请求的次数,发送给报警处置单元14。

报警处置单元14除了根据慢查询的上述设定指标数据进行报警处置外,还可以接收配置管理单元11发送的Nginx屏蔽阈值以及数据采集单元12发送的当前各个IP地址每秒钟发出请求的次数,然后将各个IP地址每秒钟发出请求的次数与Nginx屏蔽阈值进行比较,如果有IP地址每秒钟发出请求的次数超过Nginx屏蔽阈值,则向所述Nginx访问代理服务器发送屏蔽每秒钟发出请求的次数超过屏蔽阈值的IP地址发出的后续请求的控制指令。响应于该屏蔽指令,Nginx访问代理服务器可以屏蔽每秒钟发出请求的次数超过屏蔽阈值的IP地址发出的后续请求。例如,如果当前有两个IP地址通过Nginx访问代理服务器向Elasticsearch集群发送查询请求,IP地址1每秒钟发出请求的次数为5,IP地址2每秒钟发出请求的次数为8,Nginx屏蔽阈值为6,则报警处置单元14可以向Nginx访问代理服务器发送屏蔽IP地址2发送的后续查询请求的控制指令。响应于该控制指令,Nginx访问代理服务器可以屏蔽IP地址2发送的后续查询请求。

进一步地,数据分析单元13可以不断的获取当前被屏蔽的IP地址每秒钟发出请求的次数,并将该IP地址每秒钟发出请求的次数发送给报警处置单元14。报警处置单元14可以不断的将该IP地址每秒钟发出请求的次数与Nginx屏蔽阈值进行比较,来检测该IP地址每秒钟发出请求的次数是否恢复正常。如果该IP地址每秒钟发出请求的次数恢复到低于Nginx屏蔽阈值,则可以向Nginx访问代理服务器发送取消屏蔽该IP地址后续请求的控制指令,以使该IP地址能够正常通过Nginx访问代理服务器向Elasticsearch集群正常发送请求。例如,在通过Nginx访问代理服务器屏蔽了IP地址2发送的后续查询请求后,可以不断的检测IP地址2每秒钟发出请求的次数,如果每秒钟发出请求的次数恢复到低于Nginx屏蔽阈值,则可以向Nginx访问代理服务器发送取消屏蔽IP地址2发送的后续查询请求的控制指令。相应于该控制指令,Nginx访问代理服务器可以取消对IP地址2发送的后续查询请求的屏蔽,从而使IP地址2能够正常通过Nginx访问代理服务器向Elasticsearch集群发送查询请求。

通过联动Nginx访问代理服务器来屏蔽频繁发送请求的IP地址发送的后续查询请求,本实施例提供的Elasticsearch集群可以进一步保证Elasticsearch集群的稳定运行。

在本实施例的一种实现方式中,配置管理单元11除了可以供用户配置记录阈值和Nginx访问阈值之外,还可以供用户查看Elasticsearch集群的运行状态。

具体而言,配置管理单元11可以提供其管理的各个Elasticsearch集群的运行状态供用户选择查看。用户也可以在配置管理单元11输入其需要查看的Elasticsearch集群的Elasticsearch服务器的IP地址、安装路径。响应于用户输入的IP地址、安装路径,配置管理单元11可以根据该IP地址和安装路径向对应的Elasticsearch集群发送获取其运行状态的指令,获取用户需要查看的Elasticsearch集群的运行状态展示到用户前端页面。

相比于传统的用户需要分别登陆各个Elasticsearch集群服务器查看各个Elasticsearch集群的运行状态而言,本实现方式可以对多个Elasticsearch集群进行集中管理,用户仅需通过本实现方式提供的集群保护装置,即可可视化查看该集群保护装置管理的任意一个Elasticsearch集群的运行状态,无需分别登陆各个集群查看运行状态,从而方便运维人员对多个Elasticsearch集群进行集中的运行维护。

【实施例2】

本实施例提供一种Elasticsearch集群保护方法。图2示出了根据本发明实施例2的Elasticsearch集群保护方法的方法流程图。如图2所示,本实施例提供的Elasticsearch集群保护方法可以包括如下处理:

S101:获取配置的慢查询日志的记录阈值,并将所述记录阈值发送给Elasticsearch集群,以便所述Elasticsearch集群根据所述记录阈值记录慢查询日志;

S102:从所述Elasticsearch集群采集其记录的慢查询日志,对所述慢查询日志进行解析形成结构化的慢查询数据;

S103:从所述结构化的慢查询数据中获取慢查询的设定指标的指标数据,所述设定指标包括:所述慢查询的命中数占索引总数量的比例以及所述慢查询涉及的查询分片数;

S104:将所述设定指标的指标数据和与所述设定指标对应的指标阈值进行比较,如果有指标数据超过对应的指标阈值,则向所述Elasticsearch集群发送取消所述慢查询对应的查询任务的控制指令。

在本实施例的一种实现方式中,所述设定指标还包括:查询等待队列中的等待任务数;

所述方法还包括:

将所述等待任务数与等待任务数阈值进行比较,并在所述等待任务数超过所述等待任务数阈值时,向Nginx访问代理服务器发送屏蔽后续查询请求的控制指令。

在本实施例的一种实现方式中,所述方法还包括:

检测所述等待任务数是否恢复正常,并在恢复正常时,向Nginx访问代理服务器发送取消屏蔽后续查询请求的控制指令,其中,所述等待任务数恢复正常包括:等待任务数恢复到未超过等待任务阈值。

在本实施例的一种实现方式中,所述方法还包括:

获取配置的Nginx屏蔽阈值;

从Nginx访问代理服务器采集用户访问日志,对所述用户访问日志进行解析形成结构化的用户访问数据;

从所述结构化的用户访问数据中获取各个IP地址每秒钟发出请求的次数,并将各个IP地址每秒钟发出请求的次数与所述屏蔽阈值进行比较,如果有IP地址每秒钟发出请求的次数超过屏蔽阈值,则向所述Nginx访问代理服务器发送屏蔽每秒钟发出请求的次数超过屏蔽阈值的IP地址后续的请求的控制指令。

在本实施例的一种实现方式中,所述方法还包括:

获取用户输入的Elasticsearch服务器的IP地址、安装路径,

根据所述IP地址、安装路径展示所述IP地址、安装路径对应的Elasticsearch集群的运行状态。

本领域技术人员可以理解的是,本实施例提供的Elasticsearch集群保护方法可以应用于实施例1提供的Elasticsearch集群保护装置中,各步骤的具体处理可以参见前述Elasticsearch集群保护装置实施例中的对应过程,在此不再赘述。

通过以上的实施例的描述,本领域的技术人员可以清楚地了解到本发明可借助软件结合硬件平台的方式来实现。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施方式的某些部分所述的方法。

【实施例3】

本实施例提供一种计算机可读存储介质,如硬盘、光盘、闪存、软盘、磁带等,其上存储有计算机可读指令,该计算机可读指令能够被处理器执行以实现实施例2所述的Elasticsearch集群保护方法的处理。

【实施例4】

本实施例提供一种计算机设备,包括:

存储器,其上存储有计算机程序,

处理器,其可以执行所述计算机程序以实现实施例2所述的Elasticsearch集群保护方法的处理。

本说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限定。本领域技术人员应当理解,在不脱离所公开的实施方式的基本原理的前提下,对上述实施方式中的各细节可进行各种变化。因此,本发明的保护范围只由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合理的意思进行理解。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号