zabbix的历史数据存储到elasticsearch中

基本配置项
https://www.jianshu.com/p/bffca8128e8f
官方说这个实验性的功能支持es的版本是5.0.x - > 6.1.x,如果使用早期或更高版本的Elasticsearch,某些功能可能无法按预期工作。
测试环境的es版本是6.2.4,zabbix为4.0,也能完成zabbix的历史数据对接。
在zabbix server端配置historystorageurl为es数据库的url,同时在zabbix.conf.php中配值es的相关配置,zabbix历史数据的五个表,映射到es中的5个索引

官方提示 :必须创建映射。 如果未按照要求创建映射,则某些功能将无法正常使用。
在我完成配置项重启zabbix服务后,历史数据交给了es处理,同时在es中自动创建出有数据的索引项,

此处有个问题,当监控项中没有text类型或者log类型的数据时,es是不会创建出这些索引的,此时如果get的话会有404 not found的报错
而且,在log类型的数据接入到es中后,timestamp字段的值不会像mysql中一样是一个时间戳,es将其设置为0
监控项的历史数据的存在时间,在es中变为一个ttl字段,单位为秒。(zabbix中历史数据的有效期最小值为3600s,1个小时,比这个值小的话就会报错。)

备注:
在原来的mysql数据库中,历史数据可以交给housekeeper来管理删除,在es中,数据是不会删除的,只是在每个文档中增加了一个ttl字段来记录这条记录的历史有效时长。单位s

zabbix_server配置文件中对hosekeeper的解释配置,就是清理数据库里过期的历史数据

查看housekeeper的执行情况 /var/log/zabbix/zabbix_server.log

大意就是说首先删除 历史表,趋势表中使用clock, 删除监控项从时间表,确认时间,提示表中。

hosekeeper当量大了挺鸡肋的,删除的速度赶不上增加的速度
优化参考:
先配置独立数据库,使用独立表空间
http://junqili.com/zabbix/zabbix-performance-tunning/
然后按照官网的这个文档对mysql 做分区
https://www.zabbix.org/wiki/Docs/howto/mysql_partition

参考资料:https://www.zabbix.com/forum/showthread.php?t=43311
https://www.zabbix.com/forum/showthread.php?t=43311&page=2

原文地址:https://www.cnblogs.com/0916m/p/11481818.html

时间: 2024-10-16 00:03:42

zabbix的历史数据存储到elasticsearch中的相关文章

java调用Linux执行Python爬虫,并将数据存储到elasticsearch中--(java后台代码)

该篇博客主要是java代码,如需相应脚本及java连接elasticsearch工具类代码,请移步到上一篇博客 一.创建连接执行Linux脚本工具类 package com.yjlc.platform.utils.Elasticsearch; import ch.ethz.ssh2.Connection; import ch.ethz.ssh2.StreamGobbler; import java.io.*; /** * -------------------------------------

ElasticSearch中的一些概念

索引词(term) 在elasticsearch中索引词(term)是一个能够被索引的精确值.foo,Foo Foo几个单词是不相同的索引词.索引词(term)是可以通过term查询进行准确的搜索. 文本(text) 文本是一段普通的非结构化文字,通常,文本会被分析称一个个的索引词,存储在elasticsearch的索引库中,为了让文本能够进行搜索,文本字段需要事先进行分析:当对文本中的关键词进行查询的时候,搜索引擎应该根据搜索条件搜索出原文本. 分析(analysis) 分析是将文本转换为索引

使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作

使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作 Hive Impala HBase HiveQL 大数据 使用Hive或Impala执行SQL语句,对存储在HBase中的数据操作 〇.摘要 一.基础环境 二.数据存储在HBase中,使用Hive执行SQL语句 Ⅰ.创建Hive外部表 Ⅱ.从HBase读 Ⅲ.向HBase写 三.数据存储在HBase中,使用Impala执行SQL语句 Ⅰ.从HBase读 Ⅱ.向HBase写 四.综上所述 〇.摘要 Hive是基于Hadoop

Elasticsearch中的CRUD

在<玩玩儿Elasticsearch>中简介了一下elasticsearch.这篇文章.我们还是做些基础的学习.在Elasticsearch怎样进行CRUD? 如果我们正在创建的一个类似微博的应用.我们就姑且先叫它"kiwi"吧.kiwi这个应用就是一条条消息组成的. 在kiwi中,消息称为ksay.有两个部分组成.一是作者(author),而是消息本身(message). Create curl -X POST http://localhost:9200/kiwi/ksa

ElasticSearch 中 _source 字段

有很多人会有这样的一个疑问: _source字段存储的是索引的原始内容,那 store 属性的设置是为何呢?elasticsearch 为什么要把 store 的默认取值设置为 no?设置为 yes 是否是重复的存储呢? 我们将一个 field 的值写入 elasticsearch 中,是想在这个 field 上执行 search 操作.但是,如果不显式的将该 field 的 store 属性设置为yes,同时 _source 字段 enabled 的情况下,你仍然可以获取到这个 field 的

图解Elasticsearch中的_source、_all、store和index属性

Elasticsearch中有几个关键属性容易混淆,很多人搞不清楚_source字段里存储的是什么?store属性的true或false和_source字段有什么关系?store属性设置为true和_all有什么关系?index属性又起到什么作用?什么时候设置store属性为true?什么时候应该开启_all字段?本文通过图解的方式,深入理解Elasticsearch中的_source._all.store和index属性. 图1 Elasticsearch中的_source._all.stor

如何把数据快速批量添加到Elasticsearch中

问题来源 最近新做一个项目,有部分搜索比较频繁的数据,而且量级比较大,预计一两年时间很可能达到100G,项目要求不要存在数据库中,最终出来有两个方案,一个是使用Protocol Buffers存储在文件上,另外就是存在Elasticsearch中,也方便搜索,但这两个方案需要验证,到底哪个方案好,从存储速度,搜索响应,占用空间方面做对比,而我负责给出Elasticsearch的部分技术建议! 验证需求 1.数据量:初步只算52亿条 2.写数据速度:需要超过1W条每秒 遇到问题以及解决办法 而在验

elasticsearch中的mapping映射配置与查询典型案例

elasticsearch中的mapping映射配置示例比如要搭建个中文新闻信息的搜索引擎,新闻有"标题"."内容"."作者"."类型"."发布时间"这五个字段:我们要提供"标题和内容的检索"."排序"."高亮"."统计"."过滤"等一些基本功能.ES提供了smartcn的中文分词插件,测试的话建议使用IK分

Spring Boot 揭秘与实战(二) 数据存储篇 - ElasticSearch

文章目录 1. 版本须知 2. 环境依赖 3. 数据源 3.1. 方案一 使用 Spring Boot 默认配置 3.2. 方案二 手动创建 4. 业务操作5. 总结 4.1. 实体对象 4.2. DAO相关 4.3. Service相关 4.4. Controller相关 6. 源代码 本文讲解Spring Boot基础下,如何使用 ElasticSearch,实现全文搜索. 版本须知 spring data elasticSearch 的版本与Spring boot.Elasticsearc