本期文章将为大家带来Zabbix原厂认证专家Dmitry Lambert的干货分享视频

上海Meetup将更加详细地讲解视频内容

文末报名!


全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_postgresql全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_elasticsearch_02

如何选择Zabbix的数据库



今日主题:

如何根据Zabbix实际使用情况选择更适合的数据库引擎?

数据库引擎是Zabbix监控解决方案正常运行所必须具备的。

Zabbix支持多种数据库引擎,你可以在MySQL,MySQL的分支,MariaDB,Oracle,PostgreSQL ,IBM DB2之中选择。以上是五大核心数据库引擎。但是此外,你也可以在历史数据存储方面利用Elasticsearch的功能。还有一个新的Timescale数据库,也是PostgreSQL类型,内置有分区的功能。



MySQL&MariaDB


1




首先,对于初次接触Zabbix或者没有任何数据库引擎的相关经验的使用人员,也许你甚至都没有关于Zabbix的任何经验,但你需要使用, 安装,配置和运维。


没有任何经验的情况下选择哪种数据库引擎呢?

我强烈推荐用MySQL或者MariaDB分支。因为更容易,尽管你还是需要配置调优,需要备份,要编辑配置文件,要通过操作多个查询和多个指令的配置来,看起来好像并不是那么简单。但是,如果使用MySQL或者MariaDB,你很容易在互联网上找到非常非常多有用的信息。如果需要分区,你需要开启housekeeper,对于内部历史数据或其他要保留的数据,你可以在zabbix.org和很多在线社区平台上找到脚本,直接调用即可。

如果你选择用IBM DB2或者Oracle,相关信息可就非常难找了。




PostgreSQL & Oracle


2


如果对性能有要求,我们可以比较下MySQL,   PostgreSQL和Oracle。

别认为MySQL不好或它不能进行大运行环境的数据处理。其实并不会遇到什么大问题,因为MySQL是后台的引擎。如果偶尔发生了问题,那可能是故障或者是数据库的配置以及调优没有完成。

但是如果你的预计数据量非常大,我指的是每秒采集超过2万个新数据,推荐你选择PostgreSQL

并不是说它更好或别的意思,只是它比较适合超大的安装量。

PS:如果你一点都不具备使用数据库的经验,请在正式开始使用Oracle和IBM DB2之前三思而后行。如果贵司并没有一个专门的数据库管理员负责日常数据库问题定位,调优和解决数据库问题,我强烈建议你们不要使用Oracle和IBM DB2。不是因为这些数据库引擎不好,而是因为它们确实相当复杂,并且在互联网上,Zabbix论坛上或任何其他社区资源上都没有太多相关信息。

如果你使用MySQL遇到了一些问题,你可以在Zabbix论坛中提问,总有人会来帮助你的。






ElasticSearch!


3


ElasticSearch不是Zabbix的主要核心数据库引擎。它只是一个历史数据存储数据库。所以你还是需要在MySQL, Oracle, IBM DB2, PostgreSQL和MySQL分支中做出选择,作为Zabbix后台数据库引擎。除此之外,你还可以选择下载ElasticSearch。


PS:你需要注意的是,Zabbix中对ElasticSearch的支持还在试验阶段。如果你准备用ES,可以在测试环境中做一些压力测试,评估一下它是否真的满足你的需求。如果可以满足,那未尝不可。你就可以在生产环境中开始实施。


如果你正在使用ElasticSearch, 趋势数据是不会在数据库中存储的。所以你将无法看到趋势数据数据。但是所有的历史数据,你可以选择其在数据库中的存储类型,可以是日志数据,整点或浮点数据。




Timescale。


4


最后一个是Timescale数据库。

它是SQL的一个扩展, 是Zabbix4.2版本中的全新功能,可以直接提供内部分区。

如果你想进行数据库分区,但是不擅长配置设置,只想简单获取一些数据,那Timescale就很适合你,因为它可以对历史数据表与实时数据表进行分区,不需要进行任何设置,定制脚本,定时任务或者其他类似的操作。

所有的东西都基本上是立即可用的,并且配置也十分简单。你只需要打开我们的​​Zabbix手册​​查找4.2版本中的Timescale,你会发现你只需要做两到三个操作就可以使它运行起来了。




建议


5


最后,给你一个重要的建议:选择你更熟悉的数据库引擎!


不要听一些论坛里面的意见,如果你并不熟悉Oracle也没有任何使用Oracle的经验和知识储备,就不要使用它。管理和维护对你来说将是一场噩梦。

如果你没有任何经验,可以选择MySQL或者MySQL的分支。

如果有专门的数据库管理员,或者你们公司要求必须使用Oracle,你就可以放心的使用它,因为发生问题时,你可以求助于数据库管理员,所以可以放心大胆的使用他。


THE


END




全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_elasticsearch_02全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_elasticsearch_02全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_db2_05全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_elasticsearch_02全面对比:选择Zabbix数据库需要考虑这几点,了解一下?_elasticsearch_02

拒绝纸上谈兵!


只看实操干货!



上海Meetup如期而至!



还有更多精彩主题:

  • Zabbix的使用技巧
  • 30分钟快速部署上万台Window服务器的Zabbix agent
  • 【HOT】圆桌讨论:如何选择Zabbix数据库
  • Zabbix的告警策略和CMDB的集成分享
  • Zabbix对中国用户的各项服务支持