暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

[ACDU翻译] MySQL PMM pmm-admin - PMM 管理工具

原创 由迪 2021-12-03
1550

简介

pmm-admin - 管理 PMM

概要

pmm-admin [FLAGS]

pmm-admin config [FLAGS] --server-url=server-url

pmm-admin add DATABASE [FLAGS] [NAME] [ADDRESS]

数据库:= [ MongoDB | MySQL | PostgreSQL | 代理SQL ]

pmm-admin add external [FLAGS] [NAME] [ADDRESS] (注意:技术预览功能)

pmm-admin add haproxy [FLAGS] [NAME]

pmm-admin add external [FLAGS] [NAME] [ADDRESS]

pmm-admin add external-serverless [FLAGS] [NAME] [ADDRESS]

pmm-admin remove [FLAGS] service-type [service-name]

pmm-admin register [FLAGS] [node-address] [node-type] [node-name]

pmm-admin list [FLAGS] [node-address]

pmm-admin status [FLAGS] [node-address]

pmm-admin summary [FLAGS] [node-address]

pmm-admin annotate [--node|--service] [--tags <tags>] [node-name|service-name]

pmm-admin help [COMMAND]

描述

pmm-admin 是一个命令行工具,用于使用一组 COMMAND 关键字和相关联的 FLAGS 来管理 PMM。

PMM 通过 PMM 代理进程与 PMM 服务器通信。

通用标志

-h--help
显示帮助并退出。
--help-long
显示扩展帮助并退出。
--help-man
生成man页面。(pmm-admin --help-man | man -l -用于查看。)
--debug
启用调试日志记录。
--trace
启用跟踪日志记录(意味着调试)。
--json
启用 JSON 输出。
--version
显示应用程序版本并退出。
--server-url=server-url
PMM 服务器 URLhttps://username:password@pmm-server-host/格式。
--server-insecure-tls
跳过 PMM 服务器 TLS 证书验证。
--group=<group-name>
外部服务的组名。默认:external

命令

一般命令

pmm-admin help [COMMAND]
显示帮助COMMAND

信息命令

pmm-admin list --server-url=server-url [FLAGS]
显示在此节点上运行的服务和代理,以及代理模式(推/拉)。
pmm-admin status --server-url=server-url [FLAGS]

显示有关本地 pmm-agent 及其连接的服务器和客户端的以下信息:

  • 代理:代理 ID、节点 ID。
  • PMM 服务器:URL 和版本。
  • PMM 客户端:连接状态、时间漂移、延迟、vmagent状态、pmm-admin版本。
  • 代理:代理 ID 路径和客户端名称。

旗帜:

--wait=<period><unit>
等待 pmm-agent 成功响应的时间。周期是一个整数。单位ms毫秒,s秒,m分钟,h小时之一。
pmm-admin summary --server-url=server-url [FLAGS]

在当前目录中使用默认文件名创建存档文件summary_<hostname>_<year>_<month>_<date>_<hour>_<minute>_<second>.zip。内容是两个目录,clientserver包含诊断文本文件。

旗帜:

--filename="filename"
摘要存档文件名。
--skip-server
跳过logs.zip从 PMM 服务器获取。
--pprof
在摘要中包含性能分析数据。

配置命令

pmm-admin config

pmm-admin config [FLAGS] [node-address] [node-type] [node-name]

配置本地pmm-agent.

旗帜:

--node-id=node-id
节点 ID(默认为自动检测)。
--node-model=node-model
节点模型。
--region=region
节点区域。
--az=availability-zone
节点可用区。
--metrics-mode=mode
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。

pmm-admin register

pmm-admin register [FLAGS] [node-address] [node-type] [node-name]

向 PMM 服务器注册当前节点。

--server-url=server-url
PMM 服务器 URLhttps://username:password@pmm-server-host/格式。
--machine-id="/machine_id/9812826a1c45454a98ba45c56cc4f5b0"
节点机器 ID(默认为自动检测)。
--distro="linux"
节点操作系统分发(默认为自动检测)。
--container-id=container-id
容器标识。
--container-name=container-name
容器名称。
--node-model=node-model
节点模型。
--region=region
节点区域。
--az=availability-zone
节点可用区。
--custom-labels=labels
自定义用户分配的标签。

pmm-admin remove

pmm-admin remove [FLAGS] service-type [service-name]

从监控中删除服务。

--service-id=service-id
服务标识。
--force
删除具有该名称或 ID 的服务以及所有相关服务和代理。

删除服务时,收集的数据会在 PMM 服务器上保留指定的保留期限

pmm-admin annotate

pmm-admin annotate [--node|--service] <annotation> [--tags <tags>] [--node-name=<node>] [--service-name=<service>]

注释一个事件。(阅读更多

<annotation>
注释字符串。如果它包含空格,它应该被引用。
--node
注释当前节点或由 指定的节点--node-name
--service
注释当前节点上运行的所有服务,或由 指定的服务--service-name
--tags
一个带引号的字符串,用于为注释定义一个或多个逗号分隔的标签。例子:"tag 1,tag 2"
--node-name
被注释的节点名称。
--service-name
被注释的服务名称。

组合标志

可以按以下示例所示组合标志。

--node
当前节点。
--node-name
带名称的节点。
--node --node-name=NODE_NAME
带名称的节点。
--node --service-name
带有名称的当前节点和服务。
--node --node-name --service-name
具有名称的节点和具有名称的服务。
--node --service
当前节点和当前节点的所有服务。
-node --node-name --service --service-name
带有名称的服务和带有名称的节点。
--service
当前节点的所有服务。
--service-name
有名字的服务。
--service --service-name
有名字的服务。
--service --node-name
当前节点和具有名称的节点的所有服务。
--service-name --node-name
带有名称的服务和带有名称的节点。
--service --service-name -node-name
带有名称的服务和带有名称的节点。

提示

如果指定了节点或服务名称,则使用它们代替其他参数。

数据库命令

MongoDB

pmm-admin add mongodb [FLAGS] [node-name] [node-address]

将 MongoDB 添加到监控中。

旗帜:

--node-id=node-id
节点 ID(默认为自动检测)。
--pmm-agent-id=pmm-agent-id
运行此实例的 pmm-agent 标识符(默认为自动检测)。
--username=username
MongoDB 用户名。
--password=password
MongoDB 密码。
--agent-password=password

覆盖访问/metrics端点的默认密码。(用户名是pmm,默认密码是代理 ID。)

避免使用特殊字符,如''、';' 和自定义密码中的“$”。

--query-source=profiler
查询来源,以下之一:profilernone(默认值:)profiler
--environment=environment
环境名称。
--cluster=cluster
集群名称。
--replication-set=replication-set
复制集名称。
--custom-labels=custom-labels
自定义用户分配的标签。
--skip-connection-check
跳过连接检查。
--tls
使用 TLS 连接到数据库。
--tls-skip-verify
跳过 TLS 证书验证。
--tls-certificate-key-file=PATHTOCERT
TLS 证书文件的路径。
--tls-certificate-key-file-password=IFPASSWORDTOCERTISSET
TLS 证书文件的密码。
--tls-ca-file=PATHTOCACERT
证书颁发机构文件的路径。
--metrics-mode=mode
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。

MySQL

pmm-admin add mysql [FLAGS] node-name node-address | [--name=service-name] --address=address[:port] | --socket

将 MySQL 添加到监控中。

旗帜:

--address
MySQL 地址和端口(默认值:127.0.0.1:3306)。
--socket=socket
MySQL 套接字的路径。(使用mysql -u root -p -e "select @@socket".找到套接字路径。)
--node-id=node-id
节点 ID(默认为自动检测)。
--pmm-agent-id=pmm-agent-id
运行此实例的 pmm-agent 标识符(默认为自动检测)。
--username=username
MySQL用户名。
--password=password
MySQL 密码。
--agent-password=password

覆盖访问/metrics端点的默认密码。(用户名是pmm,默认密码是代理 ID。)

避免使用特殊字符,如''、';' 和自定义密码中的“$”。

--query-source=slowlog
:SQL查询的一个来源slowlogperfschemanone(默认:slowlog)。对于slowlog查询源,您需要更改特定文件的权限。为此需要root权限。
--size-slow-logs=N

以此大小旋转慢速日志文件。如果0,则使用服务器定义的默认值。负值禁用日志轮换。单位后缀必须附加到数字,并且可以是以下之一:

  • KiBMiBGiB,TiB用于基数为 2 的单位(1024、1048576 等)。
--disable-queryexamples
禁用查询示例的收集。
--disable-tablestats

禁用表统计信息收集。

排除低分辨率时间间隔的收集器:

  • --collect.auto_increment.columns
  • --collect.info_schema.tables
  • --collect.info_schema.tablestats
  • --collect.perf_schema.indexiowaits
  • --collect.perf_schema.tableiowaits
  • --collect.perf_schema.file_instances

排除中等分辨率时间间隔的收集器:

  • --collect.perf_schema.tablelocks
--disable-tablestats-limit=disable-tablestats-limit
如果表的数量超过指定数量(默认值:服务器定义),将禁用表统计信息收集。0=无限制。负值禁用收集。
--environment=environment
环境名称。
--cluster=cluster
集群名称。
--replication-set=replication-set
复制集名称。
--custom-labels=custom-labels
自定义用户分配的标签。
--skip-connection-check
跳过连接检查。
--tls
使用 TLS 连接到数据库。
--tls-skip-verify
跳过 TLS 证书验证。
--tls-cert-file=PATHTOCERT
TLS 客户端证书文件的路径。
--tls-key=PATHTOCERTKEY
TLS 客户端证书文件的密钥。
--tls-ca-file=PATHTOCACERT
证书颁发机构文件的路径。
--ssl-ca=PATHTOCACERT
证书颁发机构 (CA) 证书文件的路径名。如果使用,必须指定服务器使用的相同证书。(-ssl-capath 类似,但指定了 CA 证书文件目录的路径名。)
--ssl-cert=PATHTOCERTKEY
客户端公钥证书文件的路径名。
--ssl-key
客户端私钥文件的路径名。
--ssl-skip-verify
跳过 SSL 证书验证。
--metrics-mode=mode
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。

PostgreSQL

pmm-admin add postgresql [FLAGS] [node-name] [node-address]

将 PostgreSQL 添加到监控中。

旗帜:

--node-id=<node id>
节点 ID(默认为自动检测)。
--pmm-agent-id=<pmm agent id>
运行此实例的 pmm-agent 标识符(默认为自动检测)。
--username=<username>
PostgreSQL 用户名。
--password=<password>
PostgreSQL 密码。
--agent-password=password

覆盖访问/metrics端点的默认密码。(用户名是pmm,默认密码是代理 ID。)

避免使用特殊字符,如''、';' 和自定义密码中的“$”。

--query-source=<query source>
:SQL查询的一个来源pgstatementspgstatmonitornone(默认:pgstatements)。
--environment=<environment>
环境名称。
--cluster=<cluster>
集群名称。
--replication-set=<replication set>
复制集名称。
--custom-labels=<custom labels>
自定义用户分配的标签。
--skip-connection-check
跳过连接检查。
--tls
使用 TLS 连接到数据库。
--tls-skip-verify
跳过 TLS 证书验证。
--tls-ca-file
TLS CA 证书文件。
--tls-cert-file
TLS 证书文件。
--tls-key-file
TLS 证书密钥文件。
--metrics-mode=mode
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。

代理SQL

pmm-admin add proxysql [FLAGS] [node-name] [node-address]

将 ProxySQL 添加到监控中。

旗帜:

--node-id=node-id
节点 ID(默认为自动检测)。
--pmm-agent-id=pmm-agent-id
运行此实例的 pmm-agent 标识符(默认为自动检测)。
--username=username
ProxySQL 用户名。
--password=password
代理SQL 密码。
--agent-password=password

覆盖访问/metrics端点的默认密码。(用户名是pmm,默认密码是代理 ID。)

避免使用特殊字符,如''、';' 和自定义密码中的“$”。

--environment=environment
环境名称。
--cluster=cluster
集群名称。
--replication-set=replication-set
复制集名称。
--custom-labels=custom-labels
自定义用户分配的标签。
--skip-connection-check
跳过连接检查。
--tls
使用 TLS 连接到数据库。
--tls-skip-verify
跳过 TLS 证书验证。
--metrics-mode=mode
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。
--disable-collectors
要从导出器中排除的以逗号分隔的收集器名称列表。

代理

pmm-admin add haproxy [FLAGS] [NAME]

将 HAProxy 添加到监控中。

旗帜:

--server-url=SERVER-URL
PMM 服务器 URLhttps://username:password@pmm-server-host/格式。
--server-insecure-tls
跳过 PMM 服务器 TLS 证书验证。
--username=USERNAME
HAProxy 用户名。
--password=PASSWORD
HAProxy 密码。
--scheme=SCHEME
生成导出器指标端点(http 或 https)的 URI 的方案。
--metrics-path=METRICS-PATH
公开指标的路径,用于生成 URI(默认:/metrics)。
--listen-port=LISTEN-PORT
haproxy 的侦听端口,公开用于抓取指标的指标(必需)。
--service-node-id=SERVICE-NODE-ID
服务运行的节点 ID(默认为自动检测)。
--environment=ENVIRONMENT
环境名称,如“生产”或“qa”。
--cluster=CLUSTER
集群名称。
--replication-set=REPLICATION-SET
复制集名称。
--custom-labels=CUSTOM-LABELS
自定义用户分配的标签。示例:region=east,app=app1。
--metrics-mode=MODE
代理节点导出器的指标流模式。允许值: - auto:由服务器选择(默认)。- push:代理将推送指标。- pull:服务器从代理中抓取指标。
--skip-connection-check
跳过连接检查。

其他命令

pmm-admin add external [FLAGS]

添加要监控的外部数据源(如在端口上运行的自定义导出器)。

旗帜:

--service-name="current-hostname"
服务名称(自动检测到的默认为pmm-admin正在运行的主机名)。
--agent-node-id=AGENT-NODE-ID
代理运行的节点 ID(默认为自动检测)。
--username=USERNAME
外部用户名。
--password=PASSWORD
外部密码。
--scheme=http or https
生成导出器指标端点的 URI 的方案。
--metrics-path=/metrics
公开指标的路径,用于生成 URI。
--listen-port=LISTEN-PORT
用于抓取指标的外部导出器的侦听端口。(必需的。)
--service-node-id=SERVICE-NODE-ID
服务运行的节点 ID(默认为自动检测)。
--environment=prod
环境名称,如“生产”或“qa”。
--cluster=east-cluster
集群名称。
--replication-set=rs1
复制集名称。
--custom-labels=CUSTOM-LABELS
自定义用户分配的标签。例子:region=east,app=app1
--metrics-mode=auto
指标流模式,可以是push:代理将推送指标,pull:服务器从代理中抓取指标或auto:由服务器选择。
--group="external"
外部服务的组名。(默认:external.)
pmm-admin add external-serverless [FLAGS]

将远程节点上的外部服务添加到监控中。

用法示例:pmm-admin add external-serverless --url=http://1.2.3.4:9093/metrics

此外,可以设置单个参数而不是--url像:pmm-admin add external-serverless --scheme=http --host=1.2.3.4 --listen-port=9093 --metrics-path=/metrics --container-name=ddd --external-name=e125

请注意,某些参数是强制性的,具体取决于上下文。例如,如果指定--url,则--schema其他相关参数不是必需的。但是,如果您指定,--host您必须提供构建目标 URL 所需的所有其他参数,或者您可以将--address主机和端口指定为单独的参数。

旗帜:

--url=URL
导出器指标端点的完整 URL。
--scheme=https
生成导出器指标端点的 URL 的方案。
--username=USERNAME
外部用户名。
--password=PASSWORD
外部密码。
--address=1.2.3.4:9000
外部出口商地址和端口。
--host=1.2.3.4
外部出口商主机名或 IP 地址。
--listen-port=9999
用于抓取指标的外部导出器的侦听端口。
--metrics-path=/metrics
公开指标的路径,用于生成 URL。
--environment=testing
环境名称。
--cluster=CLUSTER
集群名称。
--replication-set=rs1
复制集名称。
--custom-labels='app=myapp,region=s1'
自定义用户分配的标签。
--group="external"
外部服务的组名。(默认:external.)
--machine-id=MACHINE-ID
节点机器 ID。
--distro=DISTRO
节点操作系统分发。
--container-id=CONTAINER-ID
容器标识。
--container-name=CONTAINER-NAME
容器名称。
--node-model=NODE-MODEL
节点模型。
--region=REGION
节点区域。
--az=AZ
节点可用区。

例子

pmm-admin add mysql --query-source=slowlog --username=pmm --password=pmm sl-mysql 127.0.0.1:3306
复制
MySQL Service added.
Service ID  : /service_id/a89191d4-7d75-44a9-b37f-a528e2c4550f
Service name: sl-mysql
复制
pmm-admin add mysql --username=pmm --password=pmm --service-name=ps-mysql --host=127.0.0.1 --port=3306
复制
pmm-admin status
pmm-admin status --wait=30s
复制
Agent ID: /agent_id/c2a55ac6-a12f-4172-8850-4101237a4236
Node ID : /node_id/29b2cc24-3b90-4892-8d7e-4b44258d9309
PMM Server:
 URL : https://x.x.x.x:443/
 Version: 2.5.0
PMM Client:
 Connected : true
 Time drift: 2.152715ms
 Latency : 465.658µs
 pmm-admin version: 2.5.0
 pmm-agent version: 2.5.0
Agents:
 /agent_id/aeb42475-486c-4f48-a906-9546fc7859e8 mysql_slowlog_agent Running
复制

禁用收集器

pmm-admin add mysql --disable-collectors='heartbeat,global_status,info_schema.innodb_cmp' --username=pmm --password=pmm --service-name=db1-mysql --host=127.0.0.1 --port=3306
复制

对于您可以使用该--disable-collectors选项禁用的其他收集器,请访问每个导出器的官方存储库:

  •  页面更新 2021-08-27
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

墨天轮福利君
暂无图片
3年前
评论
暂无图片 0
您好,您的文章已入选合格奖,10墨值奖励已经到账请查收! ❤️我们还会实时派发您的流量收益。
3年前
暂无图片 点赞
评论