0.前言
- 虽然PMM官网上安装指南上安装PMM有三种方式,但目前主流安装 还是以docker 的方式安装。
- PMM分两个版本:PMM1和PMM2,PMM1控制力度比较好一些,PMM2界面比较丰富友好一些。该工具分PMM Server和PMM Client。
- 本次安装的PMM 服务端和客户端均为 PMM2
- PMM客户端安装在你需要监控的主机里
1. 安装 PMM 服务端
称内网服务器 为A,可连接外网的服务器为B。
1.0 安装docker(A/B均要)
以docker的方式安装pmm的方式虽然简单,但是需要先安装docker。内网环境下我们用 tar包的方式安装docker。
https://download.docker.com/linux/static/stable/x86_64/docker-20.10.6.tgz
手动下载tar包后上传到Linux主机, 并将解压出来的docker文件内容移动到 /usr/bin/ 目录下
tar -xzvf docker-20.10.6.tgz
cp docker/* /usr/bin/
启动守护进程
dockerd &
1.1 拉取镜像至A
A由于内网里无法直接拉取镜像,只能先从B 拉取镜像后导出到本地,再将导出的tar包上传给A。
B先拉取
docker pull percona/pmm-server:2
再导出为tar(不带repo和tag话,会变成虚悬镜像。该问题需要docker tag <IMAGE ID> <repository>:<tag>
命令补救)
docker save percona/pmm-server:2 -o pmm.tar
之后下载tar包到本地,本地再上传给A,在A机器中load
docker load < pmm.tar
到此为止,我们A机器已经有了docker和镜像,按官方文档以docker的方式安装pmm走就行了:
创建容器
sudo docker create --volume /src
–name pmm-data
percona/pmm-server:2 /bin/true
运行镜像
sudo docker run --detach --restart always
–publish 443:443 --publish 80:80
–volumes-from pmm-data --name pmm-server
percona/pmm-server:2
web浏览器访问 服务器ip:80 即可打开 服务端webui。
访问默认用户密码:admin / admin,第一次进去要修改下密码。
2. Client 端安装
需要监控的主机也在内网中,有两中安装方法
- docker 导入tar安装(和server一样的操作 命令不一样)
- rpm 离线安装
2.1 docker 安装client
PMM 是C/S架构
和之前一样从B拉取并生成tar包
docker pull percona/pmm-client:2
sudo docker save percona/pmm-client:2 -o client.tar
上传给A,之后在A中load
docker load < client.tar
创建容器
sudo docker create --volume /srv --name pmm-client-data percona/pmm-client:2/bin/true
运行命令
P
MM_SERVER=10.109.205.207:443
docker run
–detach
–name pmm-client
-e PMM_AGENT_SERVER_ADDRESS=${PMM_SERVER}
-e PMM_AGENT_SERVER_USERNAME=admin
-e PMM_AGENT_SERVER_PASSWORD=admin
-e PMM_AGENT_SERVER_INSECURE_TLS=1
-e PMM_AGENT_SETUP=1
-e PMM_AGENT_CONFIG_FILE=pmm-agent.yml
–volumes-from pmm-client-data
percona/pmm-client:2
之后就可以添加监控服务了,只不过需要用docker exe pmm-client \ 进入容器内部才能使用 pmm-admin命令添加监控服务
2.2 rpm 安装
我觉得rpm包比较好一点,因为你需要监控的主机特别多的情况下还要保证安装docker很麻烦
从 https://repo.percona.com/pmm2-client/yum/release/7/RPMS/x86_64/?C=M&O=D
下载rpm包
安装:
rpm -ivh pmm2-clientXXXX.rpm
安装完pmm-admin 命令就可以使用了,可以用version命令验证
pmm-admin --version
注册到server
pmm-admin config --server-insecure-tls --server-url=https://admin:adminPassword@X.X.X.X:443
1)x.x.x.x is the address of your PMM Server.
2)443是默认端口,如果之前docker安装server改了端口请仔细修改保证对应
3)admin/adminPassword 是登录PMM Server页面的用户名密码
之前即可正常添加服务,如监控pg:
pmm-admin add postgresql --username=postgres --password=postgres --service-name=10.109.205.207 --host=10.109.205.207 --port=5432
也可以在weiui中添加监控服务实例
路径依赖:configuration> add instance to pmm
参考: 1. 监控利器PMM 2. 官网docker安装文档