侧边栏壁纸
  • 累计撰写 35 篇文章
  • 累计创建 14 个标签
  • 累计收到 0 条评论

目 录CONTENT

文章目录

ubuntu系统安装pmm监控系统并添加监控项

子曰
2023-10-24 / 0 评论 / 0 点赞 / 626 阅读 / 1,048 字 / 正在检测是否收录...

1. pmm简介

PMM(Percona Monitoring and Management)是percona开源的一款监控MySQL、MongoDB的监控平台。

pmm架构图:

Percona Monitoring and Management 部署_服务器_02

PMM client 组件:
pmm-mysql-queries-0 用于收集MySQL查询性能,将其数据发送至 PMM Server 上 QAN API上

pmm-admin 客户端命令行工具,用于添加监控和删除监控

node_exporter 用于搜集系统性能的数据。

mysqld_exporter 用于搜集mysql 的性能数据

PMM Service 组件:
QAN API 获取 监控数据的接收接口

QAN App 对 数据查询并进行分析

PMM Landing Page 生成监控数据的页面,Grafana(第三方的图形展示界面)提供页面

Orchestrator 用于提供MySQL复制到拓扑关系图

Prometheus 普罗米修斯, 用于做存储

Grafana 用于生成比较好的显示效果, 仪表板 第三方的 图形展示界面

Consul API 注册中心API接口

Consul web ui 注册中心web 界面

PMM 原理:

PMM Client 通过 pmm-admin 将 mysql添加为监控项,当 用户在插入、删除、修改、查询数据时, 被 agent 代理收集到信息,将信息发送到 PMM server中 由QAN Api 接口接收数据信息,将其转发至 QAN App 进行数据分析,将分析好的数据 ,通过 PMMLanding page 发布,PMM Landing page 将数据交给 Grafana 来处理,最后形成炫酷的监控界面。

exporter 将收集的系统信息,交给 Promenade 进行存储,然后将其传输给 Grafana 形成炫酷的图形化界面,通过 PMM Landing page 发布为 web 页面

pmm-admin 用于添加、删除、启动、停止、维护监控项

2. 部署PMM-Server

拉取镜像:

docker pull percona/pmm-server:2.40.1

创建数据盘,用来存数据:

docker create \
-v /data2/docker/pmm/consul/data \
-v /data2/docker/pmm/prometheus/data \
-v /data2/docker/pmm/mysql \
-v /data2/docker/pmm/grafana \
--name pmm-data percona/pmm-server:2.40.1

注:docker更改国内镜像源

# 编辑 Docker 配置文件
$ sudo vim /etc/docker/daemon.json
# 加入以下配置项
{
    "registry-mirrors": [
        "https://dockerproxy.com",
        "https://hub-mirror.c.163.com",
        "https://mirror.baidubce.com",
        "https://ccr.ccs.tencentyun.com"
    ]
}

重启docker服务后
# 查看 Docker 信息
$ sudo docker info

# 出现以下字段代表配置成功
Registry Mirrors:
  https://dockerproxy.com/
  https://hub-mirror.c.163.com/
  https://mirror.baidubce.com/
  https://ccr.ccs.tencentyun.com/

启动docker:

docker run -d \
-p 8500:80 \
-p 8543:443 \
--volumes-from pmm-data \
-v /data2/docker/pmm:/data2/docker/pmm \
--name pmm-server \
--restart always \
-e SERVER_USER=admin \
-e SERVER_PASSWORD=123456 \
percona/pmm-server:2.40.1

3. PMM Client安装

直接安装即可:

apt install pmm-client

# 安装pt工具
apt-get install percona-toolkit

添加server uri:

通过80端口添加时总是报错:

pmm-admin config --server-url=https://admin:Pharm1234@127.0.0.1:8500/ --server-insecure-tls
Checking local pmm-agent status...
pmm-agent is running.
Registering pmm-agent on PMM Server...
Failed to register pmm-agent on PMM Server: Post "https://127.0.0.1:8500/v1/management/Node/Register": http: server gave HTTP response to HTTPS client.

通过443端口添加正常,

[root@star-SYS-741GE-TNRT 2023-10-24 15:26:21 /data2/docker/pmm]
# pmm-admin config --server-url=https://admin:admin@127.0.0.1:8543/ --server-insecure-tls
Checking local pmm-agent status...
pmm-agent is running.
Registering pmm-agent on PMM Server...
Registered.
Configuration file /usr/local/percona/pmm2/config/pmm-agent.yaml updated.
Reloading pmm-agent configuration...
Configuration reloaded.
Checking local pmm-agent status...
pmm-agent is running.
pmm-admin config --server-url=https://admin:admin@192.168.2.139:8543/ --server-insecure-tls

创建用户:


-- mysql 5.6
CREATE USER 'pmm'@'localhost' ;
GRANT SELECT, PROCESS, REPLICATION CLIENT,RELOAD  ON *.* TO 'pmm'@'localhost';

-- mysql 8.0
create user pmm@'localhost' identified by 'pmmadmin';
GRANT SELECT, PROCESS, REPLICATION CLIENT, RELOAD, BACKUP_ADMIN ON *.* TO 'pmm'@'localhost';

添加监控:

pmm-admin add mysql --socket /data/3305/mysql.sock --username=pmm --password=pmmadmin --service-name=mysql3305
pmm-admin add mysql --socket /data1/mysql6306/tmp/mysql.sock --username=pmm --password=pmmadmin --service-name=mysql6306

查看监控信息:

pmm-admin list

4. 忘记密码后重置

Change the password for the default admin user.

For PMM versions 2.27.0 and later:

docker exec -t pmm-server change-admin-password <new_password>

登录后复制
For PMM versions prior to 2.27.0:

docker exec -t pmm-server bash -c 'grafana-cli --homepath /usr/share/grafana --configOverrides cfg:default.paths.data=/srv/grafana admin reset-admin-password newpass'

参考文章:

0

评论区