mysql监控

1 安装mysqld-exporter

1.1 下载安装包

cd /usr/local/src
wget https://github.com/prometheus/mysqld_exporter/releases/download/v0.15.1/mysqld_exporter-0.15.1.linux-amd64.tar.gz
tar -xzvf mysqld_exporter-0.15.1.linux-amd64.tar.gz
mv mysqld_exporter-0.15.1.linux-amd64 /opt/soft/mysqld_exporter

1.2 创建mysql监控用户及授权

CREATE USER 'exporter'@'mysqld_exporter-ip' IDENTIFIED BY '123456' WITH MAX_USER_CONNECTIONS 2;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'mysqld_exporter-ip';
FLUSH PRIVILEGES;
 
注:mysqld_exporter-ip为安装mysqld_exporter服务器ip

1.3 创建配置文件

# cd /opt/soft/mysqld_exporter
# vim .my.cnf
 
[client]
host=MySQL服务器ip
user=exporter
password=123456
port=3306

1.4 创建启动文件

cat > /lib/systemd/system/mysqld_exporter.service <<EOF
[Unit]
Description=mysqld_exporter
After=network.target
 
[Service]
Type=simple
User=root
ExecStart=/opt/soft/mysqld_exporter/mysqld_exporter --config.my-cnf=/opt/soft/mysqld_exporter/.my.cnf
Restart=on-failure
 
[Install]
WantedBy=multi-user.target
EOF

1.5 启动脚本

systemctl daemon-reload
systemctl start mysqld_exporter
systemctl status mysqld_exporter
systemctl enable mysqld_exporter
netstat -nltp | grep 9104

1.6 配置Prometheus配置文件

- job_name: 'mysqld_exporter'
    static_configs:
      - targets: ['监控的服务器ip:9104']
        labels:
          instance: 项目名mysql
 
#添加完成重启Prometheus

1.7 配置grafana可视化仪表盘

导入仪表盘

在Grafana中添加Prometheus数据源,然后从Grafana官网导入MySQL监控仪表盘(ID:7362)。

2 使用prometheus-operator监控RabbitMQ集群

2.1 创建Endpoints、Service和ServiceMonitor

apiVersion: v1
kind: Endpoints
metadata:
  name: mysqld-exporter
  namespace: monitoring
  labels:
    k8s-app: mysqld-exporter
subsets:
- addresses:
  - ip: 192.168.2.58
  ports:
  - port: 9104 
    name: metrics
---
apiVersion: v1
kind: Service
metadata:
  name: mysqld-exporter
  namespace: monitoring
  labels:
    k8s-app: mysqld-exporter
spec:
  ports:
  - port: 9104
    targetPort: 9104
    name: metrics

---
apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor
metadata:
  labels:
    k8s-app: mysqld-exporter
  name: mysqld-exporter
  namespace: monitoring
spec:
  jobLabel: mysqld-exporter
  endpoints:
  - port: metrics
    interval: 15s
    scheme: http
  namespaceSelector:
    matchNames:
    - monitoring
  selector:
    matchLabels:
      k8s-app: mysqld-exporter
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容