sql server 2008安装_性能不够?基于时序数据库的Zabbix 5.2安装指南

我们往往在谈论zabbix的优缺点的时候,提到最多的依然还是数据库(默认采用关系型数据库),由于关系型数据库所有的读写都是采用sql语句解析,一但并发过大或者数据量过大,处理能力就显得捉襟见肘,这也是Zabbix让人诟病的地方,终于在4.2版本正式加入了Timescale时序性数据库,该数据库在基于PG的基础上加入时序插件,既保证了易用性,同时也解决了关系型数据库的弊端(弊端仅仅指在监控场景),具体细节可以去官网看看,今天来介绍如何基于PG的Timescale时序数据库来安装Zabbix。

正文

环境

  • Linux版本:CentOS 8.2
  • Zabbix版本:5.2
  • Web:Nginx
  • 数据库:PG+Timescale

Zabbix相关组件安装

1.导入5.2阿里云源

cat < /etc/yum.repos.d/zabbix.repo[zabbix]name=Zabbix Official Repository - $basearchbaseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.2/rhel/8/$basearch/enabled=1gpgcheck=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591[zabbix-non-supported]name=Zabbix Official Repository non-supported - $basearchbaseurl=https://mirrors.aliyun.com/zabbix/non-supported/rhel/8/$basearch/enabled=1gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIXgpgcheck=1EOF添加 gpgkeycurl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX-A14FE591 -o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX-A14FE591curl https://mirrors.aliyun.com/zabbix/RPM-GPG-KEY-ZABBIX -o /etc/pki/rpm-gpg/RPM-GPG-KEY-ZABBIX

安装zabbix相关组件

dnf install zabbix-server-pgsql zabbix-web-pgsql zabbix-nginx-conf zabbix-agent -y

PG数据库安装

由于Timescale的最低要求为PG11,所以本文所提到的PG版本为12

1.PG12的镜像源安装

dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
fea01427b10c4d23f3c64d3ce621a6d4.png

安装源

2.安装PG12

dnf -qy module disable postgresql ##此条不输入会出现下面图一报错dnf -y install postgresql12 postgresql12-server
0f7e2b10d0dd6e7c857954958908f7f7.png

未输入第一条命令安装报错

fd5b9bf5fbdd3104cd0d8630f7dffd15.png

安装成功

3.初始化数据库

/usr/pgsql-12/bin/postgresql-12-setup initdb
322aa725078ea845b0f24e158c704337.png

完成数据库初始化

4.启动PG并设置为开机启动

systemctl start postgresql-12&&systemctl enable postgresql-12
70684358f836c52427a3e6f2a6cfea5a.png

启动数据库并设置为开机启动

5.添加TimescaleDB源

tee /etc/yum.repos.d/timescale_timescaledb.repo <
0d330a9ff4930142dd65fbd2f74cb563.png

添加TimescaleDB源

6.安装TimescaleDB

dnf install -y timescaledb-postgresql-12
d0670e9d20f8038aa3495ef1a6f470fb.png

完成安装TimescaleDB

7.Timescale插件初始化PG

timescaledb-tune --pg-config=/usr/pgsql-12/bin/pg_config
f137d2ac5a600f6131dab7704d7bbec9.png

一直输入Y完成初始化

8.重启数据库

systemctl restart postgresql-12 

配置数据库

1.创建数据库实例及用户名密码

a8963968944c62806927b9b040a18800.png

创建数据库、用户名密码

2.开启TimescaleDB插件

echo "CREATE EXTENSION IF NOT EXISTS timescaledb CASCADE;" | sudo -u postgres psql zabbix
a708437bce28119515ac1d2ae518dab2.png

启用成功

3.导入zabbix架构文件

zcat /usr/share/doc/zabbix-server-pgsql*/create.sql.gz | sudo -u zabbix psql zabbix
c9f2716c5a02140939d712b8e62c0ec5.png

导入架构

4.导入Timescale架构文件

zcat /usr/share/doc/zabbix-server-pgsql*/timescaledb.sql.gz | sudo -u zabbix psql zabbix
f14cc85ea2919a0b90efc34d0729e69a.png

导入TimescaleDB架构文件

5.配置pg配置文件

vi /var/lib/pgsql/12/data/postgresql.conf
fd4fea86f31aa6d1ac0f42a951232779.png

开启远程访问,可以写*,也可以为指定IP,最大连接数建议写大一些

vi /var/lib/pgsql/12/data/pg_hba.conf  

两个注意点:如果all in one,则不需要在IPv4 connection改为0.0.0.0/0,第二点是认证方式全改为MD5,否则会验证失败

ace6d582d9ae5c51c9205ac19fcac2c5.png

修改过后

5.重启数据库

systemctl restart postgresql-12

配置zabbix-server相关文件

vi /etc/zabbix/zabbix-server.conf
52845363a45608dbd915df5559d41165.png

只需要修改DBPassword部分,修改为自己创建的密码

Nginx配置

由于Nginx默认占用80端口,导致无法访问zabbix,需要进行调整

vi /etc/nginx/nginx.conf
c883ddeb3dc4c80dd6ea7b61efaa02f0.png

将Nginx的默认监听端口改为8080

vi /etc/nginx/conf.d/zabbix.conf
780e52bc16d0badfe6a6353ecd174fd7.png

这里默认即可

启动zabbix服务

systemctl restart zabbix-server zabbix-agent nginx php-fpmsystemctl enable zabbix-server zabbix-agent nginx php-fpm

前端关键页面

75bc0487d44b8e265807f9f0096a31bc.png

新增PG模式选择,填写public即可

3efac1ff2e64a966a2606b9d39f690cc.png

完工大吉

结语

基于Timescale的PG安装过程比较复杂,但是解决了mysql的瓶颈,所以值得一试,根据官方的测试,压缩比大概在25倍左右,读写速度远超mysql,这也是时序数据库的优势,如果大家在安装的时候有任何疑问可以留言私信我。

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

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

相关文章

对象并不一定都是在堆上分配内存的

转载自 对象并不一定都是在堆上分配内存的 JVM内存分配策略 关于JVM的内存结构及内存分配方式&#xff0c;不是本文的重点&#xff0c;这里只做简单回顾。以下是我们知道的一些常识&#xff1a; 1、根据Java虚拟机规范&#xff0c;Java虚拟机所管理的内存包括方法区、虚拟机栈、…

Bash on Windows 抢鲜测试 -- 介绍及安装

前言 微软在上周的Windows BUILD大会上宣布&#xff0c;WIN10将引入原生Bash&#xff0c;并将很快在技术预览版中推出。 如此一来&#xff0c;windows的命令行工具就不再只有cmd和powershell了&#xff0c;我们可以还可以使用bash。 今天&#xff08;2016/4/8&#xff09;收到了…

jvm的client与server工作模式

【README】 JVM Server模式与client模式启动&#xff0c;最主要的差别在于&#xff1a; -Server模式启动时&#xff0c;速度较慢&#xff0c;但是一旦运行起来后&#xff0c;性能将会有很大的提升. 原因是:当虚拟机运行在-client模式的时候,使用的是一个代号为C1的轻量级编译…

python重定向到socket_python套接字流重定向实例汇总

#!/usr/bin/env python3"""测试socket-stream 重定向模式"""import sys,os,timefrom multiprocessing import Processfrom socket import *def initListenerSocket(port50008,host):"""初始化在服务器模式下调用者用于监听连接的…

Spring Boot的自动化配置原理

转载自 Spring Boot的自动化配置原理 随着Ruby、Groovy等动态语言的流行&#xff0c;相比较之下Java的开发显得格外笨重。繁多的配置、低下的开发效率、复杂的部署流程以及第三方技术集成难度大等问题一直被人们所诟病。随着Spring家族中的新星Spring Boot的诞生&#xff0c;这…

复盘Build 2016:不要错过微软给.NET开发者的这些福利

本文作者陈计节&#xff0c;ThoughtWorks 高级咨询师。多年的跨平台 .NET 开发者&#xff0c;全栈工程师&#xff0c;技术布道师。擅长互联网应用程序的设计、开发和运维等工作。 近年来&#xff0c;微软坚持为社区提供更多灵活性&#xff0c;并以更开放的思路重构其已有平台&a…

java异步线程内存可见性实验

【README】 本文演示了内存可见性的场景&#xff0c;以及解决方法&#xff1b; 相关定义如下&#xff08;转自java并发编程实战&#xff0c;一本好书&#xff0c;强烈推荐&#xff09;&#xff1a; 内存可见性&#xff1a;一个线程修改了对象状态后&#xff0c; 其他线程可以…

springboot 单例_如何实现一个单例及优化

前言 社长,一个爱学习,爱分享的程序猿,始终相信,付出总会有回报的。 知识改变命运,学习成就未来。爱拼才会赢! 程序猿学社的GitHub,已整理成相关技术专刊,欢迎 Star:。 https:// github.com/ITfqyd/cxyxs 社长,4年api搬运工程师,之前做的都是一些框架的搬运工作,做的时间…

乐观锁的一种实现方式——CAS

转载自 乐观锁的一种实现方式——CAS在深入理解乐观锁与悲观锁一文中我们介绍过锁。本文在这篇文章的基础上&#xff0c;深入分析一下乐观锁的实现机制&#xff0c;介绍什么是CAS、CAS的应用以及CAS存在的问题等。线程安全 众所周知&#xff0c;Java是多线程的。但是&#xff0…

熬夜并不值得程序员炫耀

许多程序嘴上经常挂着每天加班到凌晨三点的论调&#xff0c;但事实上这没什么值得炫耀的&#xff0c;加班通常都是效率低的代名词。 放弃睡眠就像是高利贷借款。没错&#xff0c;看上去你是得到了额外的时间&#xff0c;但你想得太乐观了&#xff0c;你知道代价是什么吗&#x…

前端wxml取后台js变量值_这些鲜为人知的前端冷知识,你都GET了吗?

背景最近公司项目不多&#xff0c;比较清闲&#xff0c;划水摸鱼混迹于各大技术博客平台&#xff0c;瞬间又GET了好多前端技能&#xff0c;一些属于技巧&#xff0c;一些则是闻所未闻的冷知识&#xff0c;一时间还消化不过来&#xff0c;不由的发出一声感叹&#xff01;前端可真…

(转-这篇文章非常棒) Thread的中断机制(interrupt)

转自&#xff1a; Thread的中断机制(interrupt)-这篇文章非常棒 Thread的中断机制(interrupt) - 寂静沙滩 - 博客园先看收集了别人的文章&#xff0c;全面的了解下java的中断&#xff1a;中断线程线程的thread.interrupt()方法是中断线程&#xff0c;将会设置该线程的中断状态…

深入理解乐观锁与悲观锁

转载自 [初级]深入理解乐观锁与悲观锁在数据库的锁机制中介绍过&#xff0c;数据库管理系统&#xff08;DBMS&#xff09;中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。 乐观并发控制(乐观锁)和悲观并发控制&a…

Z.ExtensionMethods 一个强大的开源扩展库

今天有意的在博客园里面搜索了一下 Z.ExtensionMethods 这个扩展类库&#xff0c;确发现只搜到跟这个真正相关的才两篇博文而已&#xff0c;我都点进去看了一下&#xff0c;也都只是提到而已&#xff0c;没有专门介绍&#xff0c;才引起我写这篇文档。 一&#xff0e; Z.E…

python isodd奇偶_Python这些位运算的妙用,绝对让你大开眼界

位运算的性能大家想必是清楚的&#xff0c;效率绝对高。相信爱好源码的同学&#xff0c;在学习阅读源码的过程中会发现不少源码使用了位运算。但是为啥在实际编程过程中应用少呢&#xff1f;想必最大的原因&#xff0c;是较为难懂。不过&#xff0c;在面试的过程中&#xff0c;…

java线程中断

【README】 本文po出了不同场景下线程中断的不同开发方式&#xff0c;包括阻塞&#xff0c;非阻塞&#xff0c;io阻塞线程等&#xff1b; 本文部分内容转自&#xff1a;这篇博文写的非常好 Thread的中断机制(interrupt) - 寂静沙滩 - 博客园先看收集了别人的文章&#xff0c…

WEB API系列(一):WEB API的适用场景、第一个实例

在我前一篇博客《WebAPI前置知识:HTTP与RestfulAPI》中已经给各位简单介绍了HTTP协议与RestFul API的关系&#xff0c;以及一些基本的HTTP协议知识&#xff0c;在这些知识的铺垫下&#xff0c;今天&#xff0c;我们一起来讨论一下WEB API的适用场景&#xff0c;然后写我们第一个…

rpa文件怎么提取内容_怎么编辑pdf文件内容?有什么软件可以编辑pdf文件吗?

怎么编辑pdf文件内容&#xff1f;我是2020年大学新生&#xff0c;选择学习的专业是财务管理。为了更快、更深入地了解更多专业知识&#xff0c;我上网查找、下载了很多相关资料。不过&#xff0c;从网上保存下来的资料文件大多是pdf格式的&#xff0c;想要编辑它还得先转word。…

Future取消线程执行

【README】 本文总结于 《java并发编程实战》 page121&#xff0c;非常棒的一本书&#xff1b; 【1】Future 1&#xff0c;介绍&#xff1a;future 用于管理任务的生命周期&#xff0c;处理异常&#xff0c;以及实现取消&#xff1b; 2&#xff0c;future.cancel() 取消方法…

Nancy之结合tinyfox给我们的应用提供简单的数据服务

说到提供数据服务给我们的一些应用&#xff0c;估计用的最多的也就是json和xml这两种数据格式 实现的方法也是多种多样&#xff0c;web api,mvc的jsonresult和contentresult...等等 本文是结合Nancy、TInyFox、Owin等来实现的 一、前提工作 新建一个空的web应用程序 添加相应的…