云原生丨Prometheus+Grafana监控 OpenGauss 数据库

news2025/6/8 18:08:09

文章目录

  • 前言
  • 一、Prometheus的介绍及安装
    • 1、Prometheus 介绍
    • 2、Prometheus 安装
  • 二、Grafana的介绍及安装
    • 1.Grafana 介绍
    • 2、Grafana 安装
  • 三、安装探针
    • 1、安装Node Exporter探针
    • 2.安装opengauss_exporter探针
  • 四、 访问Prometheus与Grafana
    • 1、 访问Prometheus
    • 2、 访问 Grafana
  • 五、监测OpenGauss数据库
  • 总结


前言

随着科技发展,企业业务多样化带来的架构庞大而复杂,致使监控越来越重要。通过监控,我们可以对所研发的服务运行状态进行收集、告警、查看趋势等。

相较于之前,对于硬件监控较多,会选择zabbix,但近几年随着云原生的快速发展,各种应用容器化、微服务流行起来,新一代的监控如Prometheus等应运而生。

俗话说,没有监控的系统就是在裸奔,好的监控就是运维人员的第三只手,第三只眼。本期我们将使用Prometheus及Grafana搭建一套监控系统来监控OpenGauss 数据库(高斯数据库)。


一、Prometheus的介绍及安装

1、Prometheus 介绍

Prometheus是一个开源监控解决方案,用于收集和聚合指标作为时间序列数据。

在Kubernetes容器管理系统中,通常会搭配Prometheus进行监控,同时也支持多种exporter采集数据,还支持pushgateway进行数据上报。Prometheus性能足够支撑上万台规模的集群。

2、Prometheus 安装

  • Step 1:下载、解压、创建软链接
wget https://github.com/prometheus/prometheus/releases/download/v2.13.0/prometheus-2.13.0.linux-amd64.tar.gz
tar -xf prometheus-2.13.0.linux-amd64.tar.gz
mv prometheus-2.13.0.linux-amd64 /usr/local/
ln -s /usr/local/prometheus-2.13.0.linux-amd64/ /usr/local/prometheus
  • Step 2:创建Prometheus的用户及数据存储目录
useradd  -s /sbin/nologin -M prometheus
mkdir  /data/prometheus -p
  • Step 3:启动Prometheus
nohup ./usr/local/prometheus/prometheus --config.file=/usr/local/prometheus/prometheus.yml --storage.tsdb.path=/data/prometheus &
  • Step 4:开放端口
iptables -I INPUT -p tcp --dport 9090 -j ACCEPT

Prometheus 配置文件 promethes.yml 需要更改该配置文件:

# my global config
global:
  scrape_interval:     15s # Set the scrape interval to every 15 seconds. Default is every 1 minute.
  evaluation_interval: 15s # Evaluate rules every 15 seconds. The default is every 1 minute.
  # scrape_timeout is set to the global default (10s).
 
# Alertmanager configuration
alerting:
  alertmanagers:
  - static_configs:
    - targets:
      # - alertmanager:9093
 
# Load rules once and periodically evaluate them according to the global 'evaluation_interval'.
rule_files:
  # - "first_rules.yml"
  # - "second_rules.yml"
 
# A scrape configuration containing exactly one endpoint to scrape:
# Here it's Prometheus itself.
scrape_configs:
  # The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
  - job_name: 'prometheus'
 
    # metrics_path defaults to '/metrics'
    # scheme defaults to 'http'.
 
    static_configs:
    - targets: ['localhost:9090']
 
 
  #示例:定时pull node探针的数据
  - job_name: 'node'
    static_configs:
    - targets: ['localhost:9100']
 
 
  - job_name: 'opengauss'
    static_configs:
    - targets: ['localhost:9187']

二、Grafana的介绍及安装

1.Grafana 介绍

Grafana 是一款开源的数据可视化工具,使用 Grafana 可以非常轻松的将数据转成图表(如下图)的展现形式来做到数据监控以及数据统计。

2、Grafana 安装

  • Step 1:下载、解压、创建软链接
wget https://dl.grafana.com/oss/release/grafana-6.4.2.linux-amd64.tar.gz
tar -zxvf grafana-6.4.2.linux-amd64.tar.gz
mv grafana-6.4.2  /usr/local/
ln -s /usr/local/grafana-6.4.2/ /usr/local/grafana
  • Step 2:创建grafana用户及数据存放目录
useradd -s /sbin/nologin -M grafana
mkdir /data/grafana
chown -R grafana:grafana /usr/local/grafana/
chown -R grafana:grafana  /data/grafana/
  • Step 3:修改配置文件

修改配置文件 /usr/local/grafana/conf/defaults.ini 文件

将文件内容梗概为以下内容:

data = /data/grafana/data
logs = /data/grafana/log
plugins = /data/grafana/plugins
provisioning = /data/grafana/conf/provisioning
  • Step 4:启动Grafana
nohup ./usr/local/grafana/bin/grafana-server -homepath /usr/local/grafana &

三、安装探针

1、安装Node Exporter探针

  • Step 1:下载、解压
wget https://github.com/prometheus/node_exporter/releases/download/v0.18.1/node_exporter-0.18.1.linux-amd64.tar.gz
tar -xf node_exporter-0.18.1.linux-amd64.tar.gz
  • Step 2:新建一个目录专门安装各种exporter
mkdir -p /usr/local/prometheus_exporter
mv node_exporter-0.18.1.linux-amd64 /usr/local/prometheus_exporter/
cd /usr/local/prometheus_exporter/
ln -s node_exporter-0.18.1.linux-amd64/ node_exporter
  • Step 3:启动探针Node Exporter服务
cd /usr/local/prometheus_exporter/node_exporter/
nohup ./node_exporter >/dev/null 2>&1 &

Node 探针监控端口为 9100,需要更改promethes.yml文件后重启Prometheus才会生效

2.安装opengauss_exporter探针

  • Step 1:下载、解压

下载:opengauss_exporter_0.0.9_linux_amd64.zip

官方地址为:https://gitee.com/opengauss/openGauss-prometheus-exporter

  • Step 2:解压
unzip opengauss_exporter_0.0.9_linux_amd64.zip
mv opengauss_exporter_0.0.9_linux_amd64 /usr/local/prometheus_exporter/
cd /usr/local/prometheus_exporter/
ln -s opengauss_exporter_0.0.9_linux_amd64/ opengauss_exporter
cd opengauss_exporter

Step 3:设置环境变量

export DATA_SOURCE_NAME="host=数据库Ip地址 user=用户名 password=用户密码 port=数据库端口 dbname=数据库名 sslmode=disable"

Step 4:启动opengauss_exporter探针服务

nohup ./opengauss_exporter &

opengauss_exporter 与 postgres_exporter 探针一样,监听的都是9187端口,需要更改promethes.yml文件重启后才会生效


四、 访问Prometheus与Grafana

1、 访问Prometheus

访问Prometheus 服务,localhost:9090 ,可以看到三个监听的服务,其中9090为默认的。

在这里插入图片描述

2、 访问 Grafana

访问 Grafana ,localhost:3000;

  • Step 1:添加数据源

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
点击保存并测试后,选择 Dashboards Tab 页,导入 Prometheus 2.0。

在这里插入图片描述

  • Step 2:导入 Node Dashboard

在这里插入图片描述

选择数据源

在这里插入图片描述
成功监控主机状态

在这里插入图片描述


五、监测OpenGauss数据库

完成以上内容,至此,一套完整的监控系统就搭建好了。一起来看看效果吧~ ⬇

在这里插入图片描述

在这里插入图片描述


总结

监控是在业务开发中必不可少的一部分。

有了监控,就相当于给开发人员装上了眼睛和耳朵,实时的可以对服务运行状况进行监测,以及在系统出现异常时第一时间通知到相关人员以快速处理。

本期我们重点围绕Prometheus与Grafana搭建了一套监控系统,实现监测OpenGauss 数据库。

当然,若在生产环境下实际应用,大家还需借助云平台现有的服务以便降低自己搭建的复杂度。

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

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

相关文章

React 组件性能优化

React 组件性能优化1. 组件卸载前进行清理操作2. PureComponent3. shouldComponentUpdate4. React.memo5. 使用组件懒加载6. 使用 Fragment 避免额外标记7. 不要使用内联函数定义8. 在构造函数中进行函数this绑定9. 类组件中的箭头函数10. 避免使用内联样式属性11. 优化条件渲染…

记录复现一下第一次awd

前言 之前没打过awd&#xff0c;这次学长组织了一场awd娱乐赛&#xff0c;两个web一个pwn&#xff0c;还有一个黑盒&#xff0c;只会web&#xff0c;第一次啥也不会瞎打&#xff0c;被打烂了&#xff0c;不会写脚本&#xff0c;手交flag的感觉真“不错”&#xff0c;感觉awd还…

NetIQ 高级认证框架

NetIQ 高级认证框架 NetIQ Advanced Authentication 提供无密码身份验证并提升安全访问&#xff0c;以满足这个可扩展的基于标准的身份验证框架的合规要求。 优点 1、灵活性不仅仅在于方法。平台和应用程序支持至关重要。将安全范围扩展到您的所有系统。 2、通过一套适合…

大数据技术之Hadoop(生产调优手册)

第1章 HDFS—核心参数 1.1 NameNode内存生产配置 1&#xff09;NameNode内存计算 每个文件块大概占用150byte&#xff0c;一台服务器128G内存为例&#xff0c;能存储多少文件块呢&#xff1f; 128 * 1024 * 1024 * 1024 / 150Byte ≈ 9.1亿 G MB KB Byte 2&#xff09;Hadoop…

百度笔记聚合怎么写

百度笔记聚合怎么写&#xff0c;#百度笔记聚合&#xff0c;#百度笔记优化&#xff0c;#百度笔记排名 小红书笔记收录大揭秘什么是笔记被收录&#xff1f; 你将你的笔记的标题复制&#xff0c;去搜索框搜索&#xff0c;如果能搜索到你的笔记出来&#xff0c;那就是被收录了。什…

C语言学习笔记-文件读写

C 文件读写 什么是文件&#xff1f; 文件是以计算机硬盘为载体存储在计算机上的信息集合。是数据源的一种&#xff0c;最主要的作用是保存数据。在程序设计中&#xff0c;我们可将文件分为两大类&#xff1a;程序文件和数据文件 &#xff08;1&#xff09;程序文件 包括源程…

浅谈前端安全和浏览器安全策略

前端安全 XSS(跨站脚本攻击) Cross-Site Scripting&#xff08;跨站脚本攻击&#xff09;简称 XSS&#xff0c;是一种代码注入攻击。攻击者通过在目标网站上注入恶意脚本&#xff0c;使之在用户的浏览器上运行。利用这些恶意脚本&#xff0c;攻击者可获取用户的敏感信息如 Co…

208:vue+openlayers 监听瓦片地图加载情况,200、403及其他状态码的处理示例

第208个 点击查看专栏目录 本示例的目的是介绍如何在vue+openlayer中加载XYZ地图,在load瓦片时,通过XMLHttpRequest进行捕捉,监听瓦片地址的loadend事件,针对不同的状态码,给出不同的处理结果。具体的方法参看源代码。 直接复制下面的 vue+openlayers源代码,操作2分钟即…

Conda安装到虚拟环境中的包在pycharm中不显示--pip下载的包都到了base环境中-Ubuntu20.04

问题 今天刚装了一个Ubuntu20.04系统&#xff0c;安装完Anaconda&#xff0c;虚拟环境的包也都下载好了&#xff0c;结果在pycharm中配置完解释器后&#xff0c;只有几个基础的包&#xff0c;切换到base环境后发现&#xff0c;这些包都被下载到了base环境中。 在网上查了各种…

《小猫猫大课堂》三轮5——动态内存管理(通讯录动态内存化)

宝子&#xff0c;你不点个赞吗&#xff1f;不评个论吗&#xff1f;不收个藏吗&#xff1f; 最后的最后&#xff0c;关注我&#xff0c;关注我&#xff0c;关注我&#xff0c;你会看到更多有趣的博客哦&#xff01;&#xff01;&#xff01; 喵喵喵&#xff0c;你对我真的很重…

seata分布式事务之AT模式实践代码

seata框架 AT模式&#xff1a; 先添加seata需要的数据库相关表&#xff0c;AT模式需要在每个业务所属库下建undo_log表&#xff0c;用来回滚的&#xff0c;出错seata就会从这个表生成反向sql回退数据 建表语句&#xff1a; SET NAMES utf8mb4; SET FOREIGN_KEY_CHECKS 0; -…

持续集成Jenkins (四)Jenkins+git+maven项目构建、自动化部署

GIT配置1.1 前言&#xff1a;需要安装 git 客户端.yum install git1.2 Jenkins 配置插件 Git 在仪表盘选择Manage Jenkins>>Plugin Manager>>进入如下页面&#xff0c;可以选择可选的插件&#xff0c;安装完成后的插件在installed里面可以看到&#xff0c;我这里已…

DataFrame与Spark SQL的由来

文章目录DataFrame与Spark SQL的由来RDD 之殇&#xff1a;优化空间受限DataFrame 横空出世幕后英雄&#xff1a;Spark SQL基于 DataFrame&#xff0c;Spark SQL 是如何进行优化的Catalyst 优化器TungstenDataFrame与Spark SQL的由来 Spark 已经有了 RDD 这个开发入口&#xff…

市场最快图表:LightningChart .NET v.10.4.1 Crack

LightningChart .NET v.10.4.1 已经发布&#xff01; 新功能、新自定义控件和性能改进 DataCursor&#xff1a;图表中自动数据跟踪的新功能。 在以前的版本中&#xff0c;LightningChart .NET 提供了不同的工具来实现数据跟踪功能&#xff0c;但是这些需要用户进行一些额外的编…

Python-第一天 安装Python和PyCharm

Python-第一天 安装Python和PyCharm一、安装Python1. 下载2. 安装3.验证是否安装成功二、安装和配置PyCharm工具1.下载2.安装3.创建工程4.配置4.1 修改主题4.2 修改默认字体和大小4.3 通过快捷键快速设置字体大小4.4 汉化软件4.5 其它插件4.6 常用快捷建一、安装Python 1. 下载…

计算机图形学02:中点BH算法绘制直线

作者&#xff1a;非妃是公主 专栏&#xff1a;《计算机图形学》 博客地址&#xff1a;https://blog.csdn.net/myf_666 个性签&#xff1a;顺境不惰&#xff0c;逆境不馁&#xff0c;以心制境&#xff0c;万事可成。——曾国藩 文章目录专栏推荐专栏系列文章序一、算法原理二、缺…

计算机科学基础知识第二节讲义

课程链接 运行环境&#xff1a;WSL Ubuntu OMZ终端 PS&#xff1a;看到老师终端具有高亮和自动补全功能&#xff0c;我连夜肝出oh-my-zsh安装教程&#xff0c;实现了此功能。 这节课主要讲变量的语法、控制流程、shell功能等内容。 修改终端用户名&#xff0c;输入密码后重启…

全国青少年编程等级考试scratch三级真题2022年9月(含题库答题软件账号)

青少年编程等级考试scratch真题答题考试系统请点击电子学会-全国青少年编程等级考试真题Scratch一级&#xff08;2019年3月&#xff09;在线答题_程序猿下山的博客-CSDN博客_小航答题助手1运行下列程序后&#xff0c;结果为120的是&#xff1f;&#xff08; &#xff09;A.B.C…

英语学习:每日翻译

World in a dish盘中知世界 1 How to eat to 100 如何吃到100岁 2 Dan Buettner’s book explores America’s healthiest cuisines 丹比特纳的书探索了美国最健康的美食 注意&#xff1a; 1 cuisines 美食3 Nearly 70% of American adults are overweight; over a thir…

python接口自动化(十)--post请求四种传送正文方式(详解)

简介 post请求我在python接口自动化&#xff08;八&#xff09;--发送post请求的接口&#xff08;详解&#xff09;已经讲过一部分了&#xff0c;主要是发送一些较长的数据&#xff0c;还有就是数据比较安全等。我们要知道post请求四种传送正文方式首先需要先了解一下常见的四种…