K8S中安裝grafana7.4.5


K8S中安裝grafana7.4.5

1.1.1 准備鏡像並推送到Harbor倉庫

docker pull grafana/grafana:7.4.5

docker tag  286028304712 harbor.st.com/infra/grafana:v7.4.5

docker push harbor.st.com/infra/grafana:v7.4.5

 

准備目錄

mkdir /data/k8s-yaml/grafana

cd    /data/k8s-yaml/grafana

 

名稱空間

kubectl create ns test

 

 

1.1.2 准備rbac資源清單

cat >rbac7.4.5.yaml <<'EOF'

apiVersion: rbac.authorization.k8s.io/v1

kind: ClusterRole

metadata:

  labels:

    addonmanager.kubernetes.io/mode: Reconcile

    kubernetes.io/cluster-service: "true"

  name: grafana

rules:

- apiGroups:

  - "*"

  resources:

  - namespaces

  - deployments

  - pods

  verbs:

  - get

  - list

  - watch

---

apiVersion: rbac.authorization.k8s.io/v1

kind: ClusterRoleBinding

metadata:

  labels:

    addonmanager.kubernetes.io/mode: Reconcile

    kubernetes.io/cluster-service: "true"

  name: grafana

roleRef:

  apiGroup: rbac.authorization.k8s.io

  kind: ClusterRole

  name: grafana

subjects:

- kind: User

  name: k8s-node

EOF

 

 

1.1.3 准備dp資源清單

cat >dp7.4.5.yaml <<'EOF'

apiVersion: apps/v1

kind: Deployment

metadata:

  labels:

    app: grafana

    name: grafana

  name: grafana

  namespace: test

spec:

  progressDeadlineSeconds: 600

  replicas: 1

  revisionHistoryLimit: 7

  selector:

    matchLabels:

      name: grafana

  strategy:

    rollingUpdate:

      maxSurge: 1

      maxUnavailable: 1

    type: RollingUpdate

  template:

    metadata:

      labels:

        app: grafana

        name: grafana

    spec:

      containers:

      - name: grafana

        image: harbor.st.com/infra/grafana:v7.4.5

        imagePullPolicy: IfNotPresent

        ports:

        - containerPort: 3000

          protocol: TCP

        volumeMounts:

        - mountPath: /var/lib/grafana

          name: data

      imagePullSecrets:

      - name: harbor

      securityContext:

        runAsUser: 0

      volumes:

      - nfs:

          server: hdss7-200

          path: /data/nfs-volume/grafana7.4.5

        name: data

EOF

 

創建grafana數據目錄

mkdir /data/nfs-volume/grafana7.4.5

 

 

1.1.4 准備svc資源清單

cat >svc7.4.5.yaml <<'EOF'

apiVersion: v1

kind: Service

metadata:

  name: grafana

  namespace: test

spec:

  ports:

  - port: 3000

    protocol: TCP

    targetPort: 3000

  selector:

    app: grafana

EOF

 

 

1.1.5 准備ingress資源清單

cat >ingress7.4.5.yaml <<'EOF'

apiVersion: extensions/v1beta1

kind: Ingress

metadata:

  name: grafana

  namespace: test

spec:

  rules:

  - host: grafana7.st.com

    http:

      paths:

      - path: /

        backend:

          serviceName: grafana

          servicePort: 3000

EOF

 

1.1.6 域名解析

vi /var/named/st.com.zone

grafana            A    192.168.x.x

systemctl restart named

 

1.1.7 應用資源配置清單

kubectl apply -f http://k8s-yaml.st.com/grafana/rbac7.4.5.yaml

kubectl apply -f http://k8s-yaml.st.com/grafana/dp7.4.5.yaml

kubectl apply -f http://k8s-yaml.st.com/grafana/svc7.4.5.yaml

kubectl apply -f http://k8s-yaml.st.com/grafana/ingress7.4.5.yaml

 

 

 

1.2 瀏覽器訪問驗證

訪問http://grafana.st.com,默認用戶名密碼admin/admin

進入后立即要求修改管理員密碼

 

 

 

添加普羅米修斯數據源后,即可圖形化監控K8S的數據了

 

 

 

Grafana Dashboard推薦使用編號315這個,非常專業。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM