溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何進行MYSQL PMM搭建及細節分析

發布時間:2021-12-10 16:19:06 來源:億速云 閱讀:144 作者:柒染 欄目:大數據
# 如何進行MySQL PMM搭建及細節分析

## 目錄
1. [PMM概述](#pmm概述)
2. [環境準備](#環境準備)
3. [安裝部署](#安裝部署)
   - [Docker方式安裝](#docker方式安裝)
   - [二進制包安裝](#二進制包安裝)
4. [配置詳解](#配置詳解)
   - [PMM Server配置](#pmm-server配置)
   - [PMM Client配置](#pmm-client配置)
5. [監控指標解析](#監控指標解析)
6. [常見問題排查](#常見問題排查)
7. [最佳實踐](#最佳實踐)
8. [總結](#總結)

---

## PMM概述
Percona Monitoring and Management (PMM) 是由Percona開發的開源數據庫監控解決方案,專為MySQL、MariaDB、PostgreSQL等關系型數據庫設計。其核心特點包括:
- **全棧監控**:覆蓋查詢性能、系統資源、復制狀態等
- **可視化儀表盤**:基于Grafana的300+預設面板
- **查詢分析器**:通過QAN工具捕獲慢查詢
- **開源免費**:AGPLv3許可協議

架構組成:

PMM Server(數據收集/存儲/展示) ↑ PMM Client(部署在被監控主機)


## 環境準備

### 硬件要求
| 組件        | 最低配置   | 生產推薦       |
|-------------|------------|----------------|
| PMM Server  | 2核4GB內存 | 4核8GB內存+100GB存儲 |
| PMM Client  | 1核1GB內存 | 與數據庫規格匹配 |

### 軟件依賴
- **Server端**:
  - Docker 20.10+ 或 CentOS 7+/Ubuntu 18.04+
  - 開放端口:80(Web)、443(HTTPS)、9000(PMM管理)

- **Client端**:
  - Perl 5.10+
  - `pt-summary`、`pt-mysql-summary`工具

## 安裝部署

### Docker方式安裝(推薦)

```bash
# 創建數據卷
docker volume create pmm-data

# 啟動容器
docker run -d \
  -p 80:80 -p 443:443 \
  -v pmm-data:/srv \
  --name pmm-server \
  --restart always \
  percona/pmm-server:2.38.0

二進制包安裝(CentOS示例)

# 添加Percona倉庫
sudo yum install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm
sudo percona-release enable pmm2-server

# 安裝服務端
sudo yum install -y pmm2-server

# 初始化配置
sudo pmm-server config --password admin123 --bind-address 0.0.0.0

配置詳解

PMM Server配置

關鍵配置文件路徑:

/etc/pmm-server/config.json
/var/lib/pmm-server/grafana/

重要參數示例:

{
  "listen_port": 443,
  "data_retention": "720h",
  "query_timeout": "30s",
  "disable_updates": false
}

PMM Client配置

注冊客戶端到Server:

pmm-admin config --server-url=https://<server-ip> --server-insecure-tls --server-username=admin --server-password=admin123

添加MySQL監控:

pmm-admin add mysql \
  --username=pmm-monitor \
  --password=SecurePass123 \
  --query-source=slowlog \
  --host=127.0.0.1 --port=3306

監控指標解析

核心監控維度

  1. 資源層

    • CPU使用率(user/system/iowait)
    • 內存消耗(buffers/cache)
    • 磁盤IOPS和延遲
  2. 數據庫層

    SHOW GLOBAL STATUS LIKE 'Innodb_buffer_pool_read%';
    SHOW ENGINE INNODB STATUS;
    
  3. 查詢分析

    • 執行頻率TOP 50查詢
    • 平均鎖定時間超過100ms的語句
    • 全表掃描比例

關鍵指標閾值參考

指標名稱 警告閾值 嚴重閾值
連接數利用率 70% 90%
InnoDB緩沖池命中率 < 98% < 95%
復制延遲(seconds_behind) > 30 > 300

常見問題排查

1. 客戶端無法連接Server

  • 現象pmm-admin check-network失敗
  • 排查
    
    telnet <server-ip> 443
    curl -k https://<server-ip>/ping
    
  • 解決方案:檢查防火墻/SELinux設置

2. 監控數據缺失

  • 可能原因
    • 客戶端進程崩潰(檢查pmm-agent.log
    • 權限不足(確保監控賬號有PROCESSREPLICATION CLIENT權限)

3. Grafana面板顯示”No Data”

  • 診斷步驟
    
    -- 在PMM Server上檢查數據收集
    SELECT * FROM metrics WHERE metric_name LIKE 'mysql_%' LIMIT 10;
    

最佳實踐

安全建議

  1. 使用TLS加密通信:

    pmm-admin config --server-url=https://<server-ip> --server-cert=/path/to/cert.pem
    
  2. 遵循最小權限原則:

    CREATE USER 'pmm-monitor'@'%' IDENTIFIED BY 'ComplexP@ssw0rd';
    GRANT SELECT, PROCESS, REPLICATION CLIENT ON *.* TO 'pmm-monitor'@'%';
    

性能優化

  • 調整數據保留策略(默認30天):

    docker exec pmm-server edit-config /srv/grafana/grafana.ini
    

    修改[database]段的retention

  • 啟用數據壓縮:

    storage:
    compress: true
    

總結

PMM作為開箱即用的MySQL監控方案,其核心價值在于: 1. 快速定位性能瓶頸:通過QAN分析慢查詢模式 2. 歷史數據追溯:基于VictoriaMetrics的時間序列存儲 3. 告警集成:可與Alertmanager無縫對接

后續優化方向: - 自定義Grafana儀表盤 - 配置閾值告警規則 - 集成Prometheus其他exporter

注意事項:生產環境建議部署高可用架構,可通過部署多個PMM Server+負載均衡實現。 “`

該文檔共計約2150字,采用Markdown格式編寫,包含代碼塊、表格、列表等結構化元素,便于技術團隊直接用于內部知識庫建設。實際部署時需根據具體環境調整參數。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女