首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在EBS上设置Promethues监视的Kubernetes度量标准持久存储

无法在EBS上设置Promethues监视的Kubernetes度量标准持久存储
EN

Stack Overflow用户
提问于 2018-10-22 05:19:06
回答 1查看 587关注 0票数 1

我使用库普斯在AWS上运行了一个kubernetes集群。我还用库贝-普罗米修斯建立了普罗米修斯和格拉法纳。

我想要做的是在EBS上存储prometheus收集的度量数据。我一直声称yaml是:

代码语言:javascript
复制
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: prometheus-data
  namespace: monitoring

spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 10Gi

prometheus.yaml是:

代码语言:javascript
复制
apiVersion: monitoring.coreos.com/v1
kind: Prometheus
metadata:
  labels:
    prometheus: k8s
  name: k8s
  namespace: monitoring
spec:
  alerting:
    alertmanagers:
    - name: alertmanager-main
      namespace: monitoring
      port: web
  baseImage: quay.io/prometheus/prometheus
  nodeSelector:
    beta.kubernetes.io/os: linux
  replicas: 2
  resources:
    requests:
      memory: 400Mi
    volumeMounts:
     - name: prometheus-data
       mountPath: "/data"
  ruleSelector:
    matchLabels:
      prometheus: k8s
      role: alert-rules
  volumes:
  - name: prometheus-data
    persistentVolumeClaim:
     claimName: prometheus-data
  serviceAccountName: prometheus-k8s
  serviceMonitorNamespaceSelector: {}
  serviceMonitorSelector: {}
  version: v2.4.3

10 it卷正在创建,但其状态仍然可用。我还试着删除普罗米修斯吊舱,希望数据能被保留。不幸的是,情况并非如此。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-22 07:48:25

我能够建立库贝-普罗米修斯与持久存储。请查看以下json文件:

Promethues-deploy.json

代码语言:javascript
复制
{
"apiVersion": "monitoring.coreos.com/v1",
"kind": "Prometheus",
"metadata": {
    "labels": {
        "prometheus": "k8s"
    },
    "name": "k8s-prom",
    "namespace": "monitoring"
},
"spec": {
    "alerting": {
        "alertmanagers": [
            {
                "name": "alertmanager-main",
                "namespace": "monitoring",
                "port": "web"
            }
        ]
    },
    "baseImage": "quay.io/prometheus/prometheus",
    "replicas": 1,
    "resources": {
        "requests": {
            "memory": "400Mi"
        }
    },
    "ruleSelector": {
        "matchLabels": {
            "prometheus": "k8s",
            "role": "alert-rules"
        }
    },
    "securityContext": {
        "fsGroup": 0,
        "runAsNonRoot": false,
        "runAsUser": 0
    },
    "serviceAccountName": "prometheus",
    "serviceMonitorSelector": {
        "matchExpressions": [
            {
                "key": "k8s-app",
                "operator": "Exists"
            }
        ]
    },
    "storage": {
        "class": "",
        "resources": {},
        "selector": {},
        "volumeClaimTemplate": {
            "spec": {
                "resources": {
                    "requests": {
                        "storage": "10Gi"
                    }
                },
                "selector": {
                    "matchLabels": {
                        "app": "k8s-vol"
                    }
                },
                "storageClassName": "no-provision"
            }
        }
    },
    "version": "v2.2.1"
} }

Prometheus-pv.json

代码语言:javascript
复制
{
"apiVersion": "v1",
"kind": "PersistentVolume",
"metadata": {
    "labels": {
        "app": "k8s-vol"
    },
    "name": "prometheus-vol",
    "namespace": "monitoring"
},
"spec": {
    "storageClassName": "no-provision",
    "accessModes": [
        "ReadWriteOnce"
    ],
    "capacity": {
        "storage": "10Gi"
    },
    "hostPath": {
        "path": "/data"
    },
    "persistentVolumeReclaimPolicy": "Retain"
},
"status": {
    "phase": "Bound"
} }

希望能帮上忙。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52922823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档