使用Grafana 作為 Prometheus 的操作介面(一) 安裝篇
環境
- Ubuntu 16.04
- Kubernetes 1.6
- Prometheus 1.6
- Grafana 4.2.0
接續上篇,裝完Prometheus後,發現介面沒有這麼好使用,官方也推薦Grafana作為視覺化的介面,並且使用Grafana的alert/notification機制,所以繼續來安裝Grafana,一樣是透過Kubernetes做安裝,所以一樣會有一堆的yaml檔
首先建立一個Grafana的deployment
再來建立一個service
這個例子,透過Grafana的notification機制發送郵件,所以需要先設定SMTP server資訊,以下的yaml我只截取我要的部分,詳細的設定可以參考這裡
<SMTP_IP> 設定smtp server 的 ip
最後,依序將yaml檔啟動,即可
- Ubuntu 16.04
- Kubernetes 1.6
- Prometheus 1.6
- Grafana 4.2.0
接續上篇,裝完Prometheus後,發現介面沒有這麼好使用,官方也推薦Grafana作為視覺化的介面,並且使用Grafana的alert/notification機制,所以繼續來安裝Grafana,一樣是透過Kubernetes做安裝,所以一樣會有一堆的yaml檔
首先建立一個Grafana的deployment
grafana-deployment.yaml
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: grafana
spec:
replicas: 1
template:
metadata:
labels:
name: grafana
grafana: "true"
role: db
spec:
containers:
- image: grafana/grafana:4.2.0
name: grafana
resources:
# keep request = limit to keep this container in guaranteed class
limits:
cpu: 100m
memory: 200Mi
requests:
cpu: 100m
memory: 200Mi
ports:
- containerPort: 3000
volumeMounts:
- name: config-volume-grafana
mountPath: /etc/grafana
volumes:
- name: config-volume-grafana
configMap:
name: grafana-config-ini
再來建立一個service
grafana-service.yaml
apiVersion: v1
kind: Service
metadata:
labels:
name: node
role: service
name: grafana
spec:
type: "NodePort"
ports:
- port: 3000
targetPort: 3000
nodePort: 30603
selector:
grafana: "true"
這個例子,透過Grafana的notification機制發送郵件,所以需要先設定SMTP server資訊,以下的yaml我只截取我要的部分,詳細的設定可以參考這裡
grafana-configmap.yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: grafana-config-ini
data:
grafana.ini: |-
#################################### SMTP / Emailing ##########################
[smtp]
enabled = true
host = <SMTP_IP>:25
;user =
# If the password contains # or ;you have to wrap it with trippel quotes. Ex """#password;"""
;password =
;cert_file =
;key_file =
skip_verify = true
;from_address = admin@grafana.localhost
from_name =ServiceAdmin
最後,依序將yaml檔啟動,即可
kubectl create -f grafana-service.yaml
kubectl create -f grafana-configmap.yaml
kubectl create -f grafana-deployment.yaml
kubectl create -f grafana-configmap.yaml
kubectl create -f grafana-deployment.yaml
接著,參考下一篇:操作篇
留言
張貼留言