Jho*_*n D 17 amazon-web-services google-cloud-platform kubernetes prometheus prometheus-operator
我们正在尝试使用Grafana和Prometheus Operator监视K8S,
大多数指标都按预期工作,并且我能够看到具有正确值的仪表板,我们的系统包含10个节点,总共500个Pod,现在当我重新启动Prometheus时,所有数据已被删除(我希望将其存储两周)我的问题是,如何定义Prometheus卷以将数据保留两周或100GB DB。我发现以下内容(我们使用Prometheus运算符)
https://github.com/coreos/prometheus-operator/blob/master/Documentation/user-guides/storage.md
这是Prometheus运算符的配置
apiVersion: apps/v1beta2
kind: Deployment
metadata:
labels:
k8s-app: prometheus-operator
name: prometheus-operator
namespace: monitoring
spec:
replicas: 1
selector:
matchLabels:
k8s-app: prometheus-operator
template:
metadata:
labels:
k8s-app: prometheus-operator
spec:
containers:
- args:
- --kubelet-service=kube-system/kubelet
- --logtostderr=true
- --config-reloader-image=quay.io/coreos/configmap-reload:v0.0.1
- --prometheus-config-reloader=quay.io/coreos/prometheus-config-reloader:v0.29.0
image: quay.io/coreos/prometheus-operator:v0.29.0
name: prometheus-operator
ports:
- containerPort: 8080
name: http
Run Code Online (Sandbox Code Playgroud)
这是Prometheus的配置
apiVersion: monitoring.coreos.com/v1
kind: Prometheus
metadata:
name: prometheus
namespace: monitoring
labels:
prometheus: prometheus
spec:
replica: 2
serviceAccountName: prometheus
serviceMonitorNamespaceSelector: {}
serviceMonitorSelector:
matchLabels:
role: observeable
tolerations:
- key: "WorkGroup"
operator: "Equal"
value: "operator"
effect: "NoSchedule"
- key: "WorkGroup"
operator: "Equal"
value: "operator"
effect: "NoExecute"
resources:
limits:
cpu: 8000m
memory: 24000Mi
requests:
cpu: 6000m
memory: 6000Mi
storage:
volumeClaimTemplate:
spec:
selector:
matchLabels:
app: prometheus
resources:
requests:
storage: 100Gi
Run Code Online (Sandbox Code Playgroud)
https://github.com/coreos/prometheus-operator/blob/master/Documentation/user-guides/storage.md
我们有文件系统(nfs),并且上面的存储配置不起作用,我的问题是:
- 我怀念这里是如何配置的
volume,server,path中下以下的nfs部分
我在哪里可以找到“ / path / to / prom / db”?我该如何参考呢?我应该以某种方式创建它,还是只提供路径。我们在系统中配置了nfs
- 如何结合到普罗米修斯
由于我没有足够的知识,pvc因此pv我创建了以下内容(不确定要考虑那些值,我的服务器是什么以及应该提供什么路径...
server: myServer
path: "/path/to/prom/db"
Run Code Online (Sandbox Code Playgroud)
我应该在那放什么以及如何使我的Prometheus(即我在问题中提供的配置)使用它
apiVersion: v1
kind: PersistentVolume
metadata:
name: prometheus
namespace: monitoring
labels:
app: prometheus
prometheus: prometheus
spec:
capacity:
storage: 100Gi
accessModes:
- ReadWriteOnce # required
nfs:
server: myServer
path: "/path/to/prom/db"
Run Code Online (Sandbox Code Playgroud)
如果nfs我的用例没有使用其他持久性卷,请咨询如何
您必须使用持久卷和卷声明(PV 和 PVC)来保存数据。您可以参考“ https://kubernetes.io/docs/concepts/storage/persistent-volumes/ ”仔细查看上面url中的配置、回收策略、访问模式、存储类型。
| 归档时间: |
|
| 查看次数: |
1499 次 |
| 最近记录: |