Abu*_*ifa 6 grafana kubernetes
环境:
kubernetes provider: gke
kubernetes version: v1.13.12-gke.25
grafana version: 6.6.2 (official image)
Run Code Online (Sandbox Code Playgroud)
grafana 部署清单:
apiVersion: apps/v1
kind: Deployment
metadata:
name: grafana
namespace: monitoring
spec:
replicas: 1
selector:
matchLabels:
app: grafana
template:
metadata:
name: grafana
labels:
app: grafana
spec:
containers:
- name: grafana
image: grafana/grafana:6.6.2
ports:
- name: grafana
containerPort: 3000
# securityContext:
# runAsUser: 104
# allowPrivilegeEscalation: true
resources:
limits:
memory: "1Gi"
cpu: "500m"
requests:
memory: "500Mi"
cpu: "100m"
volumeMounts:
- mountPath: /var/lib/grafana
name: grafana-storage
volumes:
- name: grafana-storage
persistentVolumeClaim:
claimName: grafana-pvc
Run Code Online (Sandbox Code Playgroud)
问题
当我第一次部署这个 grafana 仪表板时,它工作正常。一段时间后,我重新启动了 pod 以检查卷挂载是否正常工作。重新启动后,我收到以下错误。
mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
GF_PATHS_DATA='/var/lib/grafana' is not writable.
You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migration-from-a-previous-version-of-the-docker-container-to-5-1-or-later
Run Code Online (Sandbox Code Playgroud)
我从这个错误中了解到,用户可以创建这些文件。如何授予此用户适当的权限以成功启动 grafana?
我使用适当的 PVC 重新创建了您的部署,并注意到grafana
pod 出现故障。
命令的输出: $ kubectl get pods -n monitoring
NAME READY STATUS RESTARTS AGE
grafana-6466cd95b5-4g95f 0/1 Error 2 65s
Run Code Online (Sandbox Code Playgroud)
进一步的调查指出了与您相同的错误:
mkdir: can't create directory '/var/lib/grafana/plugins': Permission denied
GF_PATHS_DATA='/var/lib/grafana' is not writable.
You may have issues with file permissions, more information here: http://docs.grafana.org/installation/docker/#migration-from-a-previous-version-of-the-docker-container-to-5-1-or-later
Run Code Online (Sandbox Code Playgroud)
此错误在首次创建 pod 和部署时显示。无需重新创建任何 Pod。
我所做的工作是编辑您的部署:
apiVersion: apps/v1
kind: Deployment
metadata:
name: grafana
namespace: monitoring
spec:
replicas: 1
selector:
matchLabels:
app: grafana
template:
metadata:
name: grafana
labels:
app: grafana
spec:
securityContext:
runAsUser: 472
fsGroup: 472
containers:
- name: grafana
image: grafana/grafana:6.6.2
ports:
- name: grafana
containerPort: 3000
resources:
limits:
memory: "1Gi"
cpu: "500m"
requests:
memory: "500Mi"
cpu: "100m"
volumeMounts:
- mountPath: /var/lib/grafana
name: grafana-storage
volumes:
- name: grafana-storage
persistentVolumeClaim:
claimName: grafana-pvc
Run Code Online (Sandbox Code Playgroud)
请具体看一下:
securityContext:
runAsUser: 472
fsGroup: 472
Run Code Online (Sandbox Code Playgroud)
这是官方文档中描述的设置:Kubernetes.io: set the security context for a pod
请查看这个 Github 问题,该问题与您的问题类似,并向我指出了允许 pod 正确生成的解决方案:
Grafana 从 5.1 版开始有一些重大更新。请查看:Grafana.com:文档:迁移到 v5.1 或更高版本
请让我知道这可不可以帮你。
归档时间: |
|
查看次数: |
5365 次 |
最近记录: |