kubernetes Prometheus Mysql exporter 的部署文件

参考地址
https://github.com/prometheus/mysqld_exporter

创建账号

CREATE USER 'exporter'@'localhost' IDENTIFIED BY 'mysqlexporter' WITH MAX_USER_CONNECTIONS 3;
GRANT PROCESS, REPLICATION CLIENT, SELECT ON *.* TO 'exporter'@'localhost';

vi mysql-exporter.yaml


apiVersion: v1
kind: Service
metadata:
  name: mysql-exporter
  namespace: hjmos
  labels:
    k8s-app: mysql-exporter
spec:
  selector:
    k8s-app: mysql-exporter
  ports:
  - name: mysql-exporter
    port: 9104
    protocol: TCP
  type: ClusterIP
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: mysql-exporter
  namespace: hjmos
  labels:
    k8s-app: mysql-exporter
spec:
  replicas: 1
  selector:
    matchLabels:
      k8s-app: mysql-exporter
  template:
    metadata:
      labels:
        k8s-app: mysql-exporter
    spec:
      containers:
      - name: mysql-exporter
        image: prom/mysqld-exporter
        imagePullPolicy: IfNotPresent
        args: ["--collect.info_schema.processlist",
              "--collect.info_schema.innodb_metrics",
              "--collect.info_schema.tablestats",
              "--collect.info_schema.userstats",
              "--collect.engine_innodb_status",
              "--collect.slave_hosts"
              ]
        env:
        - name: DATA_SOURCE_NAME
          value: 'exporter:mysqlexporter@(mysql:3306)/mysql' # user:password@(hostname:3306)/
        resources:
          limits:
            cpu: 500m
            memory: 1Gi
          requests:
            cpu: 100m
            memory: 512Mi

kubectl apply -f mysql-exporter.yaml

注意:需要暴露到Prometheus的采集器中

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Kubernetes Prometheus是一种监控和警报工具,用于收集和分析Kubernetes集群中的度量数据。它可以帮助管理员和开发人员监控集群的健康状况,识别性能问题,并在必要时发出警报。Kubernetes Prometheus还提供了可视化仪表板,以便用户可以轻松地查看和分析集群的度量数据。 ### 回答2: Kubernetes是一个开源的容器编排平台,用于部署、扩展和管理容器化应用程序。而Prometheus则是一个用于监控和警报的开源系统。KubernetesPrometheus的结合可以提供强大的应用程序监控和调试能力。 通过将Prometheus集成到Kubernetes中,系统管理员能够在Kubernetes集群中获取有关应用程序和基础结构的详细信息。它提供了集中监控和警报、动态发现、数据可视化、灵活的查询、警报和自动修复等功能。这些功能可以帮助系统管理员在发生问题时迅速定位问题并进行故障排除。 KubernetesPrometheus之间的集成主要基于两个组件:kube-state-metrics和node-exporter。kube-state-metrics负责监控Kubernetes中的对象状态,包括节点、副本集、控制器管理器、API服务器等。node-exporter则负责监控节点和底层系统资源,包括CPU利用率、内存利用率、磁盘IO等。这两个组件收集的数据可用于生成各种监控指标和警报。 集成KubernetesPrometheus还可以帮助用户实现自动扩展和自动修复。当应用程序发生故障或过载时,Kubernetes可以根据Prometheus提供的监控指标自动扩展容器实例。这可以大大提高应用程序的可靠性和可用性。 总的来说,KubernetesPrometheus是一个完美的组合,提供了无缝集成的容器编排和监控系统。通过其丰富的功能和灵活的架构,可以大大提高应用程序的可靠性、可用性和性能。 ### 回答3: Kubernetes是一个开源平台,用于管理容器化应用程序的部署、扩展和操作,而Prometheus则是一个用于监控和警报的开源系统,它可以不间断地收集度量指标并提供可视化。因此,KubernetesPrometheus间存在着很强的关联。 对于Kubernetes来说,Prometheus是一个优秀的性能监测系统。Prometheus已经被Apache软件基金会评定为最受欢迎的云原生监测方案。而Kubernetes中的所有组件,例如kube-state-metrics,ingress-controller以及etcd等等,都可以与Prometheus进行集成,提供最全面的性能监控,帮助管理员及时了解Kubernetes世界的健康状态。 在Kubernetes中,Prometheus可以通过kube-prometheus项目来进行部署。kube-prometheus是一个包含标准化配置以及对Kubernetes自身进行监控的Prometheus Operator包装器,它可以快速部署一整套Prometheus监测系统以及grafana仪表盘,方便地实现对Kubernetes集群的监控和警报。 一旦部署成功,Prometheus可以通过查询Kubernetes API来收集所有组件的度量指标,并提供以下方面的性能监测: 1. CPU、内存、网络以及磁盘等的使用情况 2. Pod和容器的度量 3. API Server、Control Plane以及节点的健康状况 如果应用程序存在性能问题,Prometheus还可以提供警报信息。如果Kubernetes集群中某些组件的度量指标超过了阈值,则可以通过警报通知管理员及时采取行动,从而保证应用程序的可靠性和持续性。 更重要的是,Prometheus可以提供对Kubernetes集群的扩展性监控,允许管理员在需要时根据实际性能需求进行集群扩缩容,保证用户的服务能够持续可靠地运行。 总之,KubernetesPrometheus的关联是紧密的,PrometheusKubernetes集群提供了重要的性能监测解决方案,为管理员提供了可以快速集成和部署的监控系统,帮助管理员及时了解其Kubernetes集群的健康状态,为用户提供更加可靠,稳健性能的应用程序服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值