Devops's Blog

ELK в k8s

1. На сервере должен быть поднят nfs сервер и настроен на опеределенный каталог и нужно дать доступ(/etc/exports) до nfs нашему k8s
2. В k8s должен быть создан Storage Classes и добавлен наш nfs, я использовал этот helm chart nfs-subdir-external-provisioner-4.0.16
3. Storage Classes создан в namespace default, чтоб nfs был доступен всем


					    
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: grfn-pvc-1
  namespace: grafana
spec:
  accessModes:
    - ReadWriteOnce
  storageClassName: nfs
  resources:
    requests:
      storage: 3Gi

---
kind: Service
apiVersion: v1
metadata:
  name: grfn-svc
  namespace: grafana
spec:
  type: NodePort
  selector:
    app: grafana
  ports:
    - protocol: TCP
      nodePort: 30005
      port: 3000

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: grafana
  namespace: grafana
  labels:
    app: grafana
spec:
  selector:
    matchLabels:
      app: grafana
  template:
    metadata:
      labels:
        app: grafana
    spec:
      securityContext:
        fsGroup: 472
        supplementalGroups:
          - 0
      containers:
        - name: grafana
          image: grafana/grafana:7.5.16
          imagePullPolicy: IfNotPresent
          ports:
            - containerPort: 3000
              name: http-grafana
              protocol: TCP
          readinessProbe:
            failureThreshold: 3
            httpGet:
              path: /robots.txt
              port: 3000
              scheme: HTTP
            initialDelaySeconds: 10
            periodSeconds: 30
            successThreshold: 1
            timeoutSeconds: 2
          livenessProbe:
            failureThreshold: 3
            initialDelaySeconds: 30
            periodSeconds: 10
            successThreshold: 1
            tcpSocket:
              port: 3000
            timeoutSeconds: 1
          resources:
            requests:
              cpu: 250m
              memory: 750Mi
          volumeMounts:
            - mountPath: /var/lib/grafana
              name: grafana-pv
      volumes:
        - name: grafana-pv
          persistentVolumeClaim:
            claimName: grfn-pvc-1
					    

					    
				    

Grafana можно обратиться по порту 30005