Percona Monitoring and Management架构

Percona Monitoring and Management架构

PMM基于简单的client-server模型,可实现高效的扩展性,它包含以下模块:

  • PMM Client,安装在任何你希望被监控的数据库服务器上.它会手机服务器指标和查询分析数据以提供一份完整的性能概览.数据被收集并发送到PMM Server
  • PMM Server是PMM的核心部分,它聚合手机的数据,并以Web界面的表格,仪表盘和图形的形式展现

这些模块被封装以提供简单的安装和使用给用户,无需关心它的内部实现方法.但是,如果要利用PMM的全部潜力,内部结构就很重要.

PMM是旨在无缝协同工作的工具集合。 一些是由Percona开发的,一些是第三方开源工具。

Note

整个客户端 - 服务器模型不太可能发生变化,但组合每个组件的工具集可能随产品而变化。

下图说明了PMM当前的结构:

img

PMM Client

PMM客户端软件包适用于大多数流行的Linux发行版:

  • DEB用于基于Debian的发行版(包括Ubuntu等)
  • Red Hat Enterprise Linux衍生产品的RPM(包括CentOS,Oracle Linux,Amazon Linux等)

还有可以在任何Linux系统上使用的通用tarball二进制文件。

有关详细信息,请参阅安装PMM客户端。

PMM客户端软件包包含以下内容:

  • pmm-admin是一个用于管理PMM Client的命令行工具,例如:添加删除数你想要监控的数据库实例

  • percona-qan-agent是一个用于管理 Query Analytics (QAN) agent的服务

    is a service that manages the Query Analytics (QAN) agent as it collects query performance data. It also connects with QAN API in PMM Server and sends over collected data.

  • node-exporter是一个Prometheus exporter用于收集系统指标For more information, see https://github.com/percona/node_exporter.

  • mysqld_exporter是一个Prometheus exporter用于收集MySQL server指标.For more information, see https://github.com/percona/mysqld_exporter.

  • mongodb_exporter是一个Prometheus exporter用于收集MongoDB server指标.For more information, see https://github.com/percona/mongodb_exporter.

  • proxysql_exporter是一个Prometheus exporter用于收集ProxySQL性能指标. For more information, see https://github.com/percona/proxysql_exporter.

PMM Server

PMM服务器将作为您的中央监控主机的机器运行。 它通过以下方式作为设备分发:

  • Docker image that you can use to run a container
  • Open Virtual Appliance(OVA),您可以在VirtualBox或其他管理程序中运行
  • Amazon Machine Image (AMI) that you can run via Amazon Web Services (AWS)

有关更多信息,请参阅Running PMM Server.

PMM服务器由以下工具组成:

  • Query Analytics (QAN)使你能够分析MySQL查询性能. 除客户端QAN代理外,还包括以下内容:

    • QAN API是用于存储和访问在PMM客户端上运行的percona-qan-agent收集的查询数据的后端。
    • QAN Web App是一个web程序用于可视化收集的Query Analytics数据
  • Metrics Monitor (MM)提供对MySQL或MongoDB服务器实例至关重要的指标的历史视图。 它包括以下内容:

    • Prometheus是一个第三方的时间序列数据库,连接到PMM Client上运行的exporters并聚合收集到的指标.更多信息请参阅Prometheus Docs [1].

      • Consulprovides an API that a PMM Client can use to remotely list,add, and remove hosts for Prometheus. It also stores monitoring metadata. For more information, see Consul Docs [2].

        Warning

        Although the Consul web UI is accessible, do not make any changes to the configuration.

    • Grafana是第三方仪表板和图形构建器,用于在直观的Web界面中可视化由Prometheus汇总的数据。 有关更多信息,请参阅Grafana Docs[3].

      • Percona Dashboards是由Percona开发的Grafana仪表板.
  • Orchestrator是一个MySQL的复制拓扑管理和可视化工具。 有关详细信息,请参阅Orchestrator Manual [4].

所有工具都可以通过PMM Server web界面(登录页面)访问.For more information, see Using the Percona Monitoring and Management Platform.

部署方案

PMM旨在针对各种环境进行扩展。 根据您的基础架构的大小和复杂性,您可以通过多种方式进行部署。

简单场景

如果您只有一个MySQL或MongoDB服务器,则可以在此数据库主机上安装和运行两个模块(PMM客户端和PMM服务器)。

典型场景

将典型的MySQL和MongoDB服务器实例分布在不同的主机上。 在这种情况下,您可以在专用监控主机上运行PMM Server,并在要监视的每个数据库主机上安装PMM Client。 来自主机的数据将聚合在PMM服务器上。

Powered by Hexo and Hexo-theme-hiker

Copyright © 2013 - 2022 Fan() All Rights Reserved.

访客数 : | 访问量 :