美文网首页
grafana在kubernetes(k8s)集群的安装使用总结

grafana在kubernetes(k8s)集群的安装使用总结

作者: yummy觉一 | 来源:发表于2021-06-23 11:06 被阅读0次

    参考grafana官网文档:https://grafana.com/docs/grafana/latest/installation/?pg=docs

    环境准备

    • k8s集群
    • k8s持久化存储卷1Gi(基于云存储)

    安装

    1. 编写yml文件:grafana.yaml
    ---
    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
      name: grafana-pvc
    spec:
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 1Gi
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        app: grafana
      name: grafana
    spec:
      selector:
        matchLabels:
          app: grafana
      template:
        metadata:
          labels:
            app: grafana
        spec:
          securityContext: #pod安全策略
            fsGroup: 472
            supplementalGroups:
            - 0    
          containers:
            - name: grafana
              image: grafana/grafana:7.5.2
              imagePullPolicy: IfNotPresent
              ports:
                - containerPort: 3000
                  name: http-grafana
                  protocol: TCP
              readinessProbe: #pod就绪探针
                failureThreshold: 3
                httpGet:
                  path: /robots.txt
                  port: 3000
                  scheme: HTTP
                initialDelaySeconds: 10
                periodSeconds: 30
                successThreshold: 1
                timeoutSeconds: 2
              livenessProbe: #pod存活探针
                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: grafana-pvc
    ---
    apiVersion: v1
    kind: Service
    metadata:
      name: grafana
    spec:
      ports:
        - port: 3000
          protocol: TCP
          targetPort: http-grafana
      selector:
        app: grafana
      sessionAffinity: None
      type: LoadBalancer
    

    grafana的数据目录:/var/lib/grafana,用于存储其数据库、用户、dashboard,所以创建了pvc挂载用于持久化。
    不做持久化,当容器重启时前面的数据丢失。

    1. k8s部署
      2.1 安装应用
    kubectl apply -f grafana.yaml
    

    2.2 本地端口映射

    kubectl port-forward service/grafana 3000:3000
    

    2.3 浏览器访问:localhost:3000
    2.4 使用默认账号admin登录,密码同账号名

    总结

    • 仅做记录,后续备查。来源于官网文档,里面配的登录账号都是默认的,安全性较弱。

    账号密码的配置,可使用k8s的secret,然后挂载到pod的环境变量。
    关于容器的配置参考:
    https://grafana.com/docs/grafana/latest/administration/configure-docker/

    • 关于granafa的配置、环境变量的配置,参考文档:
      https://grafana.com/docs/grafana/latest/administration/configuration/

    相关文章

      网友评论

          本文标题:grafana在kubernetes(k8s)集群的安装使用总结

          本文链接:https://www.haomeiwen.com/subject/ouxbyltx.html