PMM是由Percona开源的,用于管理和监视MySQL和MongoDB性能,是一个不错的性能监控工具。PMM主要由client和server构成,client部署在每个监控主机上,收集服务器指标、常规系统指标和查询分析数据;server用于聚合收集的数据,在web中以图表形式进行展现。
Docker环境安装
由于PMM提供了容器化的镜像包,我们需要先部署Docker环境。
检查内核(内核要求3.8或更高)
安装依赖包
1
|
$ yum install libcgroup* xz-* libsecc* libltdl* policycoreutils-python -y
|
RPM安装Docker-Engine
1
2
|
$ rpm -ivh docker-engine-selinux-1.13.1-1.el7.centos.noarch.rpm
$ rpm -ivh docker-engine-1.13.1-1.el7.centos.x86_64.rpm
|
修改docker配置
1
2
3
4
5
|
$ cat /etc/docker/daemon.json
{
"data-root" : "/serivce/docker",
"storage-driver": "devicemapper"
}
|
启动docker
配置PMM镜像
如果机器配置了公网,可以直接从公共镜像库拉去对应的镜像。
1
|
docker pull percona/pmm-server:latest
|
如果是内网环境,可以先找一个公网机器安装docker拉取镜像后dump下载该镜像到内网环境中
1
|
$ docker save -o pmm-server.tar percona/pmm-server
|
内网机器挂载镜像
1
2
3
4
5
|
$ docker load -i pmm-server.tar
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
percona/pmm-server latest 01363bda6e71 2 months ago 1.13 GB
10.0.139.161:5000/system/ubuntu 1 94de3811d1cc 11 months ago 64.2 MB
|
创建数据卷
1
|
$ docker create -v /service --name pmm-data percona/pmm-server /bin/true
|
创建PMM容器
1
|
$ docker run -d -p 80:80 -p 443:443 --volumes-from pmm-data --name pmm-server --restart always percona/pmm-server
|
修改管理员密码
1
2
3
4
5
|
$ docker exec -t pmm-server bash -c 'ln -s /srv/grafana /usr/share/grafana/data; grafana-cli --homepath /usr/share/grafana admin reset-admin-password Abcd123'
INFO[10-04|10:20:45] Connecting to DB logger=sqlstore dbtype=sqlite3
INFO[10-04|10:20:45] Starting DB migration logger=migrator
Admin password changed successfully ✔
|
访问控制面板