Zabbix对接Elasticsearch(ES)数据库(未成功)

news2024/10/6 10:32:18

0.需求分析

不管zabbix的后端数据库是oracle还是mysql,当zabbix监控的量级达到了一定程度后,那么对数据库的性能是一个非常严峻的挑战。特别是对历史数据的查询,将会变得非常非常的慢,别告诉我可以建索引优化,当量级达到一定的程度的时候,索引真的没啥效果了。如果再不继续寻找合适的解决方案,那么就一定会引发数据库层面的问题,最终导致服务不可用。当监控数据越来越大的时候,存储不足的时候,怎么办?那就删历史数据呗,但如果要求至少要保存半年甚至1年以上的历史数据,且又高端存储磁阵紧缺面临扩容难题的时候怎么办?而且又同时面临着单个历史表非常庞大的时候怎么办?分库、分表、分区?做读写分离?不!一切都是浮云,还有一个更值得推荐的解决方案,那就是利用Zabbix本身对ES支持的机制来将历史数据存储到ES集群。目前,官方虽然表示Zabbix对Elasticsearch的支持仍处于试验阶段,但笔者认为还是值得一试,且在测试阶段未发现有啥不妥。“生产环境”上也改造了几套对接ES的架构,目前运行均一切正常,ES可快速横向扩展的能力是人尽皆知啊!谁用谁知道。

1.架构图

在这里插入图片描述

2.环境搭建

这里只演示zabbix server对接ES的过程,其他集群将省略。
zabbix server :192.168.99.180
ES集群node1:192.168.99.111:9200

3.配置zabbix:

配置插件以便它可以连接到你的Elasticsearch实例。打开Zabbix服务器的配置文件zabbix_server.conf并添加以下行:

vim /etc/zabbix/zabbix_server.conf
HistoryStorageURL=http://192.168.99.111:9200
HistoryStorageTypes=uint,dbl,str,log,text

配置es前端页面

vim /etc/zabbix/web/zabbix.conf.php

添加

global $DB,$HISTORY;
…… 
// Elasticsearch url (can be string if same url is used for all types).
 
$HISTORY['url'] = 'http://192.168.99.111:9200';
 
// Value types stored in Elasticsearch.
 
$HISTORY['types'] = ['uint', 'text', 'log', 'str', 'dbl'];

4.配置Elasticsearch模板:

设置sysctl.conf

vim /etc/sysctl.conf

vm.max_map_count=655360

sysctl -p
 

设置limits.conf

#vim /etc/security/limits.conf

elasticsearch soft memlock unlimited
 
elasticsearch hard memlock unlimited
 
elasticsearch soft nofile 65536
 
elasticsearch hard nofile 131072
 
elasticsearch soft nproc 65536
 
elasticsearch hard nproc 65536
 
/etc/elasticsearch/jvm.option

禁用swap

#vi /etc/fstab

#/dev/mapper/cryptswap1 none swap sw 0 0 注释

添加Elasticsearch mapping
Zabbix监控项数据类型
在这里插入图片描述

curl -H "Content-Type:application/json" -XPUT http://192.168.99.111:9200/uint -d ' { "settings" : { "index" : { "number_of_replicas" : 1, "number_of_shards" : 5 } }, "mappings" : { "values" : { "properties" : { "itemid" : { "type" : "long" }, "clock" : { "format" : "epoch_second", "type" : "date" }, "value" : { "type" : "long" } } } } } '


curl -H "Content-Type:application/json" -XPUT http://192.168.99.111:9200/dbl -d ' { "settings" : { "index" : { "number_of_replicas" : 1, "number_of_shards" : 5 } }, "mappings" : { "values" : { "properties" : { "itemid" : { "type" : "long" }, "clock" : { "format" : "epoch_second", "type" : "date" }, "value" : { "type" : "double" } } } } } '
 

curl -H "Content-Type:application/json" -XPUT http://192.168.99.111:9200/log -d ' { "settings" : { "index" : { "number_of_replicas" : 1, "number_of_shards" : 5 } }, "mappings" : { "values" : { "properties" : { "itemid" : { "type" : "long" }, "clock" : { "format" : "epoch_second", "type" : "date" }, "value" : { "fields" : { "analyzed" : { "index" : true, "type" : "text", "analyzer" : "standard" } }, "index" : false, "type" : "text" } } } } } '
 

curl -H "Content-Type:application/json" -XPUT http://192.168.99.111:9200/text -d ' { "settings" : { "index" : { "number_of_replicas" : 1, "number_of_shards" : 5 } }, "mappings" : { "values" : { "properties" : { "itemid" : { "type" : "long" }, "clock" : { "format" : "epoch_second", "type" : "date" }, "value" : { "fields" : { "analyzed" : { "index" : true, "type" : "text", "analyzer" : "standard" } }, "index" : false, "type" : "text" } } } } } '
 

curl -H "Content-Type:application/json" -XPUT http://192.168.99.111:9200/str -d ' { "settings" : { "index" : { "number_of_replicas" : 1, "number_of_shards" : 5 } }, "mappings" : { "values" : { "properties" : { "itemid" : { "type" : "long" }, "clock" : { "format" : "epoch_second", "type" : "date" }, "value" : { "fields" : { "analyzed" : { "index" : true, "type" : "text", "analyzer" : "standard" } }, "index" : false, "type" : "text" } } } } } '

5. 重启Zabbix服务器:

最后,重启Zabbix服务器以使更改生效。

 systemctl restart zabbix-server zabbix-agent httpd rh-php72-php-fpm

多台elasticsearch集群可按以下格式配置

$HISTORY['url'] = [ 'uint' => 'http://192.168.1.230:9200 ', 'text' => 'http://192.168.1.234:9200 '

'log' => 'http://192.168.1.235:9200 ' ];

$HISTORY['types'] = ['uint', 'text','log'];

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1869473.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

信创数据库沙龙(上海站 | 报名中)

信创数据库沙龙: 是一个致力于推动数据库技术创新和发展的高端交流平台,旨在增强国内数据库产业的自主可控性和高质量发展。这个平台汇集了学术界和产业界的顶尖专家、学者以及技术爱好者,通过专题演讲、案例分享和技术研讨等丰富多样的活动形式&#x…

常见Web认证方式对比

认证是一个在用户或者设备在访问一个受限的系统时,鉴定用户凭据的过程,即确认“你是谁”的问题。最常见的认证用户的方式是通过用户名和密码的形式进行校验,目前存在多种校验方式,本文将对其进行一个简单的对比,使得大…

“数字政协”平台如何提高政协工作效率?正宇软件助力建设!

随着信息技术的飞速发展,数字化已成为推动各行各业转型升级的重要力量。在政协工作中,数字政协平台的建设与运用,正成为提高政协工作效率、促进民主协商的重要手段。本文将从数字政协平台的功能特点、优势分析以及实践应用等方面,…

6.26.7 两阶段卷积神经网络在乳腺癌组织学图像分类中的应用

本文探讨了乳腺组织显微图像的分类问题。根据主要的癌症类型,目标是将图像分为四类:正常、良性、原位癌和浸润性癌。给定合适的训练数据集,利用深度学习技术来解决分类问题。由于训练数据集中每个图像的大小很大,提出了一种基于patch的技术&a…

美团校招机试 - 小美的平衡矩阵(20240309-T1)

题目来源 美团校招笔试真题_小美的平衡矩阵 题目描述 小美拿到了一个 n * n 的矩阵,其中每个元素是 0 或者 1。 小美认为一个矩形区域是完美的,当且仅当该区域内 0 的数量恰好等于 1 的数量。 现在,小美希望你回答有多少个 i * i 的完美…

软件测试面试题:Web View如何测试?

Web View介绍 Web View(网页视图)是一种用于在应用程序中显示网页内容的组件或控件。提供了一种将网页内容嵌入到应用程序中的方式,使用户能够在应用程序中浏览和交互网页。 Web View通常用于开发移动应用程序,特别是混合应用程…

SOBEL图像边缘检测器的设计

本项目使用FPGA设计出SOBEL图像边缘检测器,通过分析项目在使用过程中的工作原理和相关软硬件设计进行分析详细介绍SOBEL图像边缘检测器的设计。 资料获取可联系wechat 号:comprehensivable 边缘可定义为图像中灰度发生急剧变化的区域边界,它是图像最基本…

2024年G1工业锅炉司炉证考试题库及G1工业锅炉司炉试题解析

题库来源:安全生产模拟考试一点通公众号小程序 2024年G1工业锅炉司炉证考试题库及G1工业锅炉司炉试题解析是安全生产模拟考试一点通结合(安监局)特种作业人员操作证考试大纲和(质检局)特种设备作业人员上岗证考试大纲…

LED裸眼3D显示屏:开启视觉新体验

随着科技的不断进步,LED显示屏作为一种新型的显示技术,已经被广泛应用于各个领域。而其中,LED裸眼3D显示屏更是因其独特的技术原理和令人震撼的视觉效果,成为了业界关注的焦点。 裸眼3D显示屏是一种前沿的显示技术,它…

超越规模的冒险之旅:引导人工智能价值对齐

在茫茫技术之林中,人工智能凭借大模型占据了重要地位。人们已经不再局限于人机对弈和AI识图,开始探索那些能够模仿人类思考的机器。无论是日常聊天、文本写作,还是[在完美的提示词引导下创作出惊艳的诗歌],我们不得不承认AI工具已…

计算机网络:如何隐藏真实的IP和MAC地址?

目录 一、什么是MAC地址二、什么是IP地址三、如何隐藏真实的MAC地址四、如何隐藏真实的IP地址 一、什么是MAC地址 MAC地址,全称为媒体访问控制地址(Media Access Control Address),是一种用于网络通信的唯一标识符。它是由IEEE 8…

Windows 计划任务 运行 Bat 的配置参考

打开Windows 计划任务- 创建任务 属性设置 - 常规 属性设置 - 触发器 属性设置 - 操作

今天不看文章,明天变垃圾(明天收费)-----字节数据分析发展过程中所遭遇的挑战

字节数据分析发展过程中所遭遇的挑战 三个核心议题: 海量数据分析性能:会议指出Spark分析性能不足成为了一个显著问题,尤其是在需要毫秒级响应的业务场景中。实时导入与查询能力:目前Kylin只能以T1的形式提供分析服务&#xff0…

MySQL内存使用率高且不释放问题排查与总结

背景 生产环境mysql 5.7内存占用超过90%以上,且一直下不来。截图如下: 原因分析 1、确定mysql具体的占用内存大小,通过命令:cat /proc/Mysql进程ID/status查看 命令执行后的结果比较多(其他参数的含义想了解可参考这…

Redis-实战篇-实现商铺缓存与数据库的双写一致(超时剔除和主动更新)

文章目录 1、给查询商铺的缓存添加超时剔除和主动更新的策略2、根据id查询店铺2.1、queryById2.2、RedisConstants.java 3、根据id修改店铺3.1、ShopController.java3.2、update 1、给查询商铺的缓存添加超时剔除和主动更新的策略 修改ShopController中的业务逻辑,满…

ONLYOFFICE 桌面编辑器 8.1华丽登场

简介:全新ONLYOFFICE 桌面编辑器 8.1解锁全新PDF编辑、幻灯片优化与本地化体验,立即下载! 前言:在数字化时代,高效的办公协作工具是企业和个人不可或缺的利器。ONLYOFFICE,作为一款功能强大的云端和桌面办公…

亚马逊风控策略揭秘:测评系统为何这么重要?

在亚马逊这个竞争激烈的电商平台上,许多卖家都渴望通过测评来提升产品销量和排名。然而,亚马逊对测评行为的监管之严格,可以说是业内首屈一指。即便你采用的是由真实客户购买并评价的“真人测评”模式,也难免存在一定的风险。 那么…

Psychtoolbox 脑电实验范式之mp4视频绘制

1. 读取 首先需要使用到Screen(‘OpenMovie’)函数,该函数可以读取mp4、gif格式的数据,具体方式如下: clear; clc; Screen(Preference, SkipSyncTests, 1); screens Screen(Screens); screenNum max(screens); [window, screenRect] Scr…

参加六西格玛绿带培训是投资未来,还是花冤枉钱?

是否值得花费资金参加六西格玛绿带培训,取决于多个因素。 从积极的方面来看,参加六西格玛绿带培训具有以下潜在价值: 1. 提升专业技能:使您掌握一套系统的问题解决方法和流程改进工具,有助于在工作中更高效地解决复杂…

甄美天使1+3退休模式创富模型,甄美天使商业模式特点

甄美天使13退休模式级差,每个人都有机会成为千万的受益人; 坐标:厦门,我是肖琳 深耕社交新零售行业10年,主要提供新零售系统工具及顶层商业模式设计、全案策划运营陪跑等。 甄美天使的创富模型采用了社交电商的传播理…