OceanBase4.0:使用grafana监控oceanbase

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
可观测监控 Prometheus 版,每月50GB免费额度
云防火墙,500元 1000GB
简介: 使用obd安装配置grafana监控现有的ob数据库

     下载oceanbase4.0 all in one并安装之后,grafana、prometheus及obagent都已经安装了,可以使用obd工具部署并启动grafana对现有的oceanbase进行监控,部署的步骤十分简单,只需要编辑一个配置文件,然后使用obd cluster命令部署并启动即可。配置文件可以使用obd的示例文件里的all-components-min.yaml,在这个文件的基础上根据ob数据库和服务器的实际情况稍微更改一下即可。

1 拷贝并修改配置文件

[root@my_ob example]# pwd      /usr/local/oceanbase-all-in-one/obd/usr/obd/example

      obd的配置文件示例在上面的目录下,拷贝这个目录下面的all-components-min.yaml至当前用户的home目录下,编辑一下这个文件,删除里面除obagent、grafana、prometheus之外的部分,根据实际情况调整文件里内容,这次部署使用的配置文件如下:

     

[root@localhost ~]# cat all-components-min.yaml
## Only need to configure when remote login is required# user:#   username: your username#   password: your password if need#   key_file: your ssh-key file path if need#   port: your ssh port, default 22#   timeout: ssh connection timeout (second), default 30obagent:  depends:    - oceanbase-ce
  servers:    - name: server1
# Please don't use hostname, only IP can be supported      ip: 127.0.0.1  global:    home_path: /root/obagent
    ob_monitor_status: active
prometheus:  depends:    - obagent
  servers:    - 192.168.56.101
  global:    home_path: /root/prometheus
grafana:  depends:    - prometheus
  servers:    - 192.168.56.101
  global:    home_path: /root/grafana
    login_password: oceanbase

        由于是本地安装,不需要填入用户名和密码,数据库用的是本地loopback ip地址,Prometheus和grafana由于要从服务器外边访问,不能使用loopback地址,使用服务器的本地ip地址。

2 部署grafana

     有了配置文件,就可以使用这个文件进行部署了。

[root@localhost ~]# obd cluster deploy gra -c all-components-min.yaml      Package obagent-1.2.0-4.el7 is available.
      Package prometheus-2.37.1-10000102022110211.el7 is available.
      Package grafana-7.5.17-1 is available.
      install obagent-1.2.0 for local ok
      install prometheus-2.37.1 for local ok
      install grafana-7.5.17 for local ok
+-----------------------------------------------------------------------------------------+      |                                         Packages                                        |
+------------+---------+-----------------------+------------------------------------------+      | Repository | Version | Release               | Md5                                      |
+------------+---------+-----------------------+------------------------------------------+      | obagent    | 1.2.0   | 4.el7                 | 0e8f5ee68c337ea28514c9f3f820ea546227fa7e |
      | prometheus | 2.37.1  | 10000102022110211.el7 | 58913c7606f05feb01bc1c6410346e5fc31cf263 |
      | grafana    | 7.5.17  | 1                     | 1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 |
+------------+---------+-----------------------+------------------------------------------+      Repository integrity check ok
      Parameter check ok
      Open ssh connection x
      [ERROR] root@192.168.56.101 connect failed: No authentication methods available

      部署过程中报错了,检查报错信息,是在ssh连接192.168.56.101地址时出现错误,没有验证方法可用,这里需要设置一下至192.168.56.101的免ssh登录,ob的官方文档里与设置方法,十分简单,直接拿来使用。

     先创建一个密钥

[root@localhost ~]# ssh-keygen -t rsa      Generating public/private rsa key pair.
      Enter file in which to save the key (/root/.ssh/id_rsa):
      Created directory '/root/.ssh'.
      Enter passphrase (empty for no passphrase):
      Enter same passphrase again:
      Your identification has been saved in /root/.ssh/id_rsa.
      Your public key has been saved in /root/.ssh/id_rsa.pub.
      The key fingerprint is:
      SHA256:OEcvGW+vAdQfJMC0gYVAm1N6dBL1ATGNEJS0Kd3PAMc root@localhost.localdomain
      The key's randomart image is:      +---[RSA 2048]----+      |   .o+@&%*o .    |      |     B+OE*.+     |      |    * = B o .    |      |     + + O . .   |      |      o S * .    |      |       o + .     |      |          . .    |      |           o     |      |          .      |      +----[SHA256]-----+

上面的passphrase直接回车即可。创建完密钥后将密钥拷贝至目标服务器

[root@localhost ~]# ssh-copy-id  root@192.168.56.101      /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"      The authenticity of host '192.168.56.101 (192.168.56.101)' can't be established.      ECDSA key fingerprint is SHA256:JEQIKavuwHdQrHfuS+xMNdMjZxAms6UQypFH83dD4yk.      ECDSA key fingerprint is MD5:8e:2d:c4:1f:66:2f:9c:e6:16:fb:b6:35:76:c3:1d:b2.      Are you sure you want to continue connecting (yes/no)? yes      /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed      /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys      root@192.168.56.101's password:
      Number of key(s) added: 1      Now try logging into the machine, with:   "ssh 'root@192.168.56.101'"      and check to make sure that only the key(s) you wanted were added.

再进行部署,

[root@localhost ~]# obd cluster deploy gra -c all-components-min.yaml      install obagent-1.2.0 for local ok
      install prometheus-2.37.1 for local ok
      install grafana-7.5.17 for local ok
+-----------------------------------------------------------------------------------------+      |                                         Packages                                        |
+------------+---------+-----------------------+------------------------------------------+      | Repository | Version | Release               | Md5                                      |
+------------+---------+-----------------------+------------------------------------------+      | obagent    | 1.2.0   | 4.el7                 | 0e8f5ee68c337ea28514c9f3f820ea546227fa7e |
      | prometheus | 2.37.1  | 10000102022110211.el7 | 58913c7606f05feb01bc1c6410346e5fc31cf263 |
      | grafana    | 7.5.17  | 1                     | 1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 |
+------------+---------+-----------------------+------------------------------------------+      Repository integrity check ok
      Parameter check ok
      Open ssh connection ok
      Cluster status check ok
      Initializes obagent work home ok
      Initializes prometheus work home ok
      Initializes grafana work home ok
      Remote obagent-1.2.0-4.el7-0e8f5ee68c337ea28514c9f3f820ea546227fa7e repository install ok
      Remote obagent-1.2.0-4.el7-0e8f5ee68c337ea28514c9f3f820ea546227fa7e repository lib check ok
      Remote prometheus-2.37.1-10000102022110211.el7-58913c7606f05feb01bc1c6410346e5fc31cf263 repository install ok
      Remote prometheus-2.37.1-10000102022110211.el7-58913c7606f05feb01bc1c6410346e5fc31cf263 repository lib check ok
      Remote grafana-7.5.17-1-1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 repository install ok
      Remote grafana-7.5.17-1-1bf1f338d3a3445d8599dc6902e7aeed4de4e0d6 repository lib check ok
      gra deployed

gra是部署的名字,可以看到部署成功了。

3 启动grafana

   部署完之后,需要启动该部署

[root@localhost ~]# obd cluster start gra      Get local repositories ok
      Search plugins ok
      Open ssh connection ok
      Load cluster param plugin ok
      Check before start obagent ok
      Check before start prometheus ok
      Check before start grafana ok
      Start obagent ok
      obagent program health check ok
      Start promethues ok
      prometheus program health check ok
      Connect to Prometheus ok
      Initialize cluster ok
      Start grafana ok
      grafana program health check ok
      Connect to grafana ok
      Initialize cluster ok
+-----------------------------------------------+      |                    obagent                    |
+-----------+-------------+------------+--------+      | ip        | server_port | pprof_port | status |
+-----------+-------------+------------+--------+      | 127.0.0.1 | 8088        | 8089       | active |
+-----------+-------------+------------+--------++-------------------------------------------------------+      |                       prometheus                      |
+----------------------------+------+----------+--------+      | url                        | user | password | status |
+----------------------------+------+----------+--------+      | http://192.168.56.101:9090 |      |          | active |
+----------------------------+------+----------+--------++---------------------------------------------------------------------+      |                               grafana                               |
+----------------------------------------+-------+-----------+--------+      | url                                    | user  | password  | status |
+----------------------------------------+-------+-----------+--------+      | http://192.168.56.101:3000/d/oceanbase | admin | oceanbase | active |
+----------------------------------------+-------+-----------+--------+      gra running

      可以看到启动成功了,命令最后给出了prometheus和grafana的访问信息。这个数据库和granfana是部署再虚拟机上的,从虚拟机外访问却遇到了地址不能访问错误,原因是centos安装时默认打开防火墙服务,检查一下防火墙服务是否打开

[root@localhost ~]# systemctl status firewalld.service      ● firewalld.service - firewalld - dynamic firewall daemon
         Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
         Active: active (running) since Mon 2022-12-2620:27:33 EST; 28min ago
           Docs: man:firewalld(1)
       Main PID: 695 (firewalld)
         CGroup: /system.slice/firewalld.service
                 └─695 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork--nopid      Dec 2620:27:30 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
      Dec 2620:27:33 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
      Dec 2620:27:34 localhost.localdomain firewalld[695]: WARNING: AllowZoneDrifting is enabled. This is considered a...now.
      Hint: Some lines were ellipsized, use -l to show in full.

可以看到,防火墙服务时打开的,临时关闭防火墙服务使用下面命令

[root@localhost ~]# systemctl stop firewalld.service

如果需要永久关闭防火墙服务,还需要运行下面命令

[root@localhost ~]# systemctl disable firewalld.serviceRemoved symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

     关闭防火墙服务后,从外边就可以连接到prometheus和grafana了。prometheus的界面如下屏幕截图(1340).png

    grafana 默认的用户是admin,密码是oceanbase,登录后界面是这样的

屏幕截图(1342).png


相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
相关文章
|
16天前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第26天】Prometheus与Grafana是智能运维中的强大组合,前者是开源的系统监控和警报工具,后者是数据可视化平台。Prometheus具备时间序列数据库、多维数据模型、PromQL查询语言等特性,而Grafana支持多数据源、丰富的可视化选项和告警功能。两者结合可实现实时监控、灵活告警和高度定制化的仪表板,广泛应用于服务器、应用和数据库的监控。
90 3
|
3月前
|
运维 Prometheus 监控
OceanBase 的运维与监控最佳实践
【8月更文第31天】随着分布式数据库解决方案的需求日益增长,OceanBase 作为一种高性能的分布式数据库系统,在众多场景下得到了广泛应用。为了确保 OceanBase 集群的稳定运行,合理的运维与监控是必不可少的。本文将探讨 OceanBase 的日常运维管理与监控策略,并提供相应的代码示例。
186 2
|
14天前
|
SQL 监控 数据库
OceanBase社区版可以通过Zabbix监控
OceanBase社区版可以通过Zabbix监控
50 7
|
1月前
|
SQL 监控 数据库
OceanBase社区版可以通过Zabbix监控
【10月更文挑战第5天】随着OceanBase社区版的广泛应用,企业纷纷采用这一高性能、高可用的分布式数据库系统。为了确保系统的稳定运行,使用成熟的Zabbix监控工具进行全面监控至关重要。本文通过具体示例介绍了如何配置Zabbix监控OceanBase,包括安装配置、创建监控模板和监控项、编写脚本、设置触发器及图形展示等步骤,帮助读者快速上手,及时发现并解决问题,确保业务始终处于最佳状态。
47 2
|
15天前
|
Prometheus 运维 监控
智能运维实战:Prometheus与Grafana的监控与告警体系
【10月更文挑战第27天】在智能运维中,Prometheus和Grafana的组合已成为监控和告警体系的事实标准。Prometheus负责数据收集和存储,支持灵活的查询语言PromQL;Grafana提供数据的可视化展示和告警功能。本文介绍如何配置Prometheus监控目标、Grafana数据源及告警规则,帮助运维团队实时监控系统状态,确保稳定性和可靠性。
80 0
|
5月前
|
Prometheus 监控 Cloud Native
基于Prometheus和Grafana的监控平台 - 环境搭建
基于Prometheus和Grafana的监控平台 - 环境搭建
|
3月前
|
Prometheus 监控 数据可视化
Grafana 插件生态系统:扩展你的监控能力
【8月更文第29天】Grafana 是一个流行的开源平台,用于创建和共享统计数据的仪表板和可视化。除了内置的支持,Grafana 还有一个强大的插件生态系统,允许用户通过安装插件来扩展其功能。本文将介绍一些 Grafana 社区提供的插件,并探讨它们如何增强仪表盘的功能性。
244 1
|
3月前
|
存储 Prometheus 监控
Grafana 与 Prometheus 集成:打造高效监控系统
【8月更文第29天】在现代软件开发和运维领域,监控系统已成为不可或缺的一部分。Prometheus 和 Grafana 作为两个非常流行且互补的开源工具,可以协同工作来构建强大的实时监控解决方案。Prometheus 负责收集和存储时间序列数据,而 Grafana 则提供直观的数据可视化功能。本文将详细介绍如何集成这两个工具,构建一个高效、灵活的监控系统。
397 1
|
3月前
|
Prometheus 监控 Cloud Native
Grafana 入门指南:快速上手监控仪表盘
【8月更文第29天】Grafana 是一款开源的数据可视化和监控工具,它允许用户轻松地创建美观的仪表盘和图表,以便更好地理解和监控数据。无论您是需要监控系统性能指标、应用程序日志还是业务关键指标,Grafana 都能提供灵活而强大的解决方案。本指南将带领您快速上手 Grafana,包括安装、配置以及创建第一个监控面板。
547 1
|
3月前
|
Prometheus Kubernetes 监控
Kubernetes(K8S) 监控 Prometheus + Grafana
Kubernetes(K8S) 监控 Prometheus + Grafana
248 2