经验分享k8s中怎么部署prometheus监控pod。

Kubernetes(k8s)中部署Prometheus监控Pod,可以按照以下步骤进行:

经验分享k8s中怎么部署prometheus监控pod。

(图片来源网络,侵删)

1、创建Prometheus配置文件

创建一个名为prometheusconfigmap.yaml的配置文件,内容如下:

apiVersion: v1
kind: ConfigMap
metadata:
  name: prometheusconfig
data:
  prometheus.yml: |
    global:
      scrape_interval: 15s
      evaluation_interval: 15s
    scrape_configs:
      job_name: \'kubernetesapiservers\'
        kubernetes_sd_configs:
        role: endpoints
        scheme: https
        tls_config:
          ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
        bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
        relabel_configs:
        source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name]
          action: keep
          regex: default;kubernetes;https
      job_name: \'kubernetesnodes\'
        kubernetes_sd_configs:
        role: node
        scheme: https
        tls_config:
          ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt
        bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token
        relabel_configs:
        action: labelmap
          regex: __meta_kubernetes_node_label_(.+)

2、创建Prometheus部署文件

接下来,创建一个名为prometheusdeployment.yaml的部署文件,内容如下:

apiVersion: apps/v1
kind: Deployment
metadata:
  name: prometheus
spec:
  replicas: 1
  selector:
    matchLabels:
      app: prometheus
  template:
    metadata:
      labels:
        app: prometheus
    spec:
      containers:
      name: prometheus
        image: prom/prometheus:v2.30.3
        args:
          "config.file=/etc/prometheus/prometheus.yml"
          "storage.tsdb.path=/prometheus"
        ports:
        containerPort: 9090
        volumeMounts:
        name: prometheusconfigvolume
          mountPath: /etc/prometheus
        name: prometheusstoragevolume
          mountPath: /prometheus
      volumes:
      name: prometheusconfigvolume
        configMap:
          name: prometheusconfig
      name: prometheusstoragevolume
        emptyDir: {}

3、创建Prometheus服务文件

创建一个名为prometheusservice.yaml的服务文件,内容如下:

apiVersion: v1
kind: Service
metadata:
  name: prometheus
spec:
  type: NodePort
  selector:
    app: prometheus
  ports:
    protocol: TCP
      port: 9090
      targetPort: 9090
      nodePort: 30000

4、应用配置文件到Kubernetes集群

使用kubectl命令将上述配置文件应用到Kubernetes集群:

kubectl apply f prometheusconfigmap.yaml f prometheusdeployment.yaml f prometheusservice.yaml

5、查看Prometheus运行状态和访问地址

使用以下命令查看Prometheus的运行状态和访问地址:

kubectl get pods l app=prometheus o wide n default # 查看Prometheus运行状态和IP地址等信息
kubectl describe service prometheus # 查看Prometheus服务的详细信息,包括NodePort等访问地址信息

本文来自投稿,不代表科技代码立场,如若转载,请注明出处https://www.cwhello.com/461959.html

如有侵犯您的合法权益请发邮件951076433@qq.com联系删除

(0)
硬件大师硬件大师订阅用户
上一篇 1小时前
下一篇 1小时前

相关推荐

联系我们

QQ:951076433

在线咨询:点击这里给我发消息邮件:951076433@qq.com工作时间:周一至周五,9:30-18:30,节假日休息