Part 2: Mengenal Heapster,cAdvisor,Influxdb dan Grafana ::: Cara install dan konfigurasi Grafana

Hai 😉 apa kabar. Pada part 1 (Disini) sebelumnya ayies sudah infokan mengenai apa itu dan fungsi dari Heapster,cAdvisor,Influxdb dan Grafana pada sistem clustering kubernetes. Kali ini ayies akan lanjut ke Part 2 mengenai Cara install dan konfigurasi Grafana.

Grafana digunakan (berkolaborasi dengan Heapster,cAdvisor,Influxdb) sebagai tool visualisasi monitoring dan kondisi pods di cluster kubernetes (monitoring pods,services,dll). Tampilannya kaya gini kira2:

Kali ini ayies akan fokus ke installasi dan konfigurasi. Untuk penjelasan makin mendetail mengenai Heapster,cAdvisor,Influxdb dan Grafana akan ayies jelaskan pada part2 selanjutnya (tenang akan lanjut terus kok!)

Yuk mulai. Pastikan kamu sudah memiliki kubernetes yang sudah terinstall. Kalau belum silahkan kunjungi tutorial ayies yah secara berurutan disini: https://www.ayies.com/cara-install-dan-setup-kubernetes-docker-di-linux-server

LOGIN KE SERVER MASTER

Pastikan kamu sudah install dan setup Heapster dan Influxdb pada langkah part 1. Untuk memastikan services heaspter-influxdb sudah running jalankan perintah berikut:

kubectl cluster-info

Buat file berikut:

nano grafana.yaml

Dan masukan pada file tersebut baris text ini:

---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
  name: monitoring-grafana
  namespace: kube-system
spec:
  replicas: 1
  template:
    metadata:
      labels:
        task: monitoring
        k8s-app: grafana
    spec:
      containers:
      - name: grafana
        image: gcr.io/google_containers/heapster-grafana-amd64:v4.0.2
        ports:
          - containerPort: 3000
            protocol: TCP
        volumeMounts:
        - mountPath: /var
          name: grafana-storage
        env:
        - name: INFLUXDB_HOST
          value: monitoring-influxdb
        - name: GRAFANA_PORT
          value: "3000"
        - name: GF_AUTH_BASIC_ENABLED
          value: "false"
        - name: GF_AUTH_ANONYMOUS_ENABLED
          value: "true"
        - name: GF_AUTH_ANONYMOUS_ORG_ROLE
          value: Admin
        - name: GF_SERVER_ROOT_URL
          value: /
      volumes:
      - name: grafana-storage
        emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
  labels:
    kubernetes.io/cluster-service: 'true'
    kubernetes.io/name: monitoring-grafana
  name: monitoring-grafana
  namespace: kube-system
spec:
  # Uncomment berikut jika ingin bs diakses dari Nodeport expose
  # type: NodePort
  ports:
  - port: 80
    targetPort: 3000
  selector:
    k8s-app: grafana

Simpan. Dan jalankan perintah berikut:

kubectl apply -f grafana.yaml

Sehingga outputnya:

Grafana sudah berhasil terdeploy. Oiyah seperti konsep pada clustering kubernetes bahwa kamu bisa akses pod kamu via VPN (karena secara default seluruh POD hanya bisa diakses via IP internal) atau kamu bisa expose pod grafana ini agar bisa diakses dari IP public kamu dengan cara di expose ke port node random (di production kurang aman yah ;))

Caranya jalankan perintah berikut:

sudo kubectl -n kube-system edit service monitoring-grafana

Ubah pada bagian bawah dari ClusterIP menjadi NodePort

Lalu simpan (ini modus vi/vim gunakan cara pencet escape lalu ketik :wq! lalu enter untuk simpan)

Jalankan perintah berikut untuk liat berapa portnya:

kubectl -n kube-system get service monitoring-grafana

Misalkan tertulis Port(s) : 80/31635 maka kamu bisa akses Grafana kamu dialamat:

http://IPPUBLIC:31635

Tampilan browser akan seperti ini:

Part 2: Mengenal Heapster,cAdvisor,Influxdb dan Grafana ::: Cara install dan konfigurasi Grafana

 

Tenang tampilannya masih kosong karena memang kita belum deploy aplikasi/pod di cluster ini kan 😉 sabar-sabar… ayies akan jelaskan secara kontinu pada tutorial selanjutnya. Tetap pantau dan kunjungi ayies.com yah…

Selamat kamu berhasil! 

 


0 Comments

Leave a Reply

Your email address will not be published. Required fields are marked *