性能测试实战系列(13):监控搭建 - prometheus监控k8s外部mysql
本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/15475614.html
k8s外安装mysql
https://www.cnblogs.com/uncleyong/p/10739530.html
配置MySQL Exporter采集MySQL监控数据
创建yaml文件:vim mysql-exporter.yaml
apiVersion: apps/v1 kind: Deployment metadata: name: mysql-exporter namespace: monitoring spec: replicas: 1 selector: matchLabels: k8s-app: mysql-exporter template: metadata: labels: k8s-app: mysql-exporter spec: containers: - name: mysql-exporter image: registry.cn-chengdu.aliyuncs.com/qzcsbj/mysqld-exporter:v0.12.1 env: - name: DATA_SOURCE_NAME value: "root:123456@(192.168.117.160:3306)/" imagePullPolicy: IfNotPresent ports: - containerPort: 9104 --- apiVersion: v1 kind: Service metadata: name: mysql-exporter namespace: monitoring labels: k8s-app: mysql-exporter spec: type: ClusterIP selector: k8s-app: mysql-exporter ports: - name: mysql-exporter-api port: 9104 protocol: TCP
创建exporter:kubectl create -f mysql-exporter.yaml
查看资源:kubectl get -f mysql-exporter.yaml
查看pod:kubectl get po -n monitoring |grep mysql-exporter
查看svc:kubectl get svc -n monitoring |grep mysql-exporter
查看是否获取到监控数据:curl 10.109.182.129:9104/metrics | grep max_connections
创建sm
prometheus中查看数据
查看prometheus的svc:kubectl get svc -n monitoring | grep prometheus
请求:http://192.168.117.161:30576
target中,prometheus自动发现了mysql
config中,自动生成了配置文件
查询数据:max_connections(要手动输入,不能复制粘贴)
mysql_global_variables_max_connections
grafana中查看数据
查看grafana的svc:kubectl get svc -n monitoring | grep grafana
请求:http://192.168.117.161:31239/
导入模板:https://grafana.com/grafana/dashboards/7362
然后选择数据源
效果
开启慢查询及设置阈值
数据库查询不超过50ms
开启慢查询及设置阈值
vim my.cnf
开启慢查询
slow_query_log=1 slow_query_log_file=/mysql/logs/slow.log
long_query_time=0.05
__EOF__
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!