Dev/DevOps
Grafana와 EFS 연동
newtype
2022. 8. 29. 17:44
목적
Helm으로 설치한 Grafana가 Storage를 안잡았더니, pod가 생성될때마다 Datasource와 Dashboard 설정을 해줘야했다. 이를 위해 PVC 설정을 하려고 한다.
방법
- grafana-pvc.yaml 생성
- efs는 기존에 만들어진 efs-sc를 사용했다.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-prom-grafana
namespace: prometheus
annotations:
volume.beta.kubernetes.io/storage-class: efs-sc
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 10Gi
- pvc 생성 및 확인
$ kubectl apply -f grafana-pvc.yaml
$ kubectl get sc -n prometheus
NAME STAUTS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
pvc-prom-grafana Bound pvc-a3294852-67db-4e03-9ca4-d816daf2bac0 10Gi RWO efs-sc 5m
- Helm chart의 initChownData 수정
- initChownData를 찾아 enabled를 false로 수정한다. 이걸 해주지 않으면, Storage의 owner 변경을 실패해서 pod init에 실패한다.
initChownData:
enabled: false
- Helm chart의 pvc 수정
- enabled를 true로 바꾸고, existingClaim에 pvc 이름을 넣는다.
persistence:
type: pvc
enabled: true
accessModes:
- ReadWriteOnce
size: 10Gi
finalizers:
- kubenetes.io/pvc-protection
existingClaim: pvc-prom-grafana
- 수정된 Helm chart를 적용한다.
$ helm upgrade grafana --namespace prometheus .
반응형