はじめに
Amazon EKSで Grafana を利用する方法をまとめます。
Mac環境を想定しています。
実行環境の準備
-
AWS CLIの設定
AWS CloudFormationを動かすためのAWS CLIの設定を参考にしてください。 -
EKSクラスタの構築
Macでeksctlを利用してAmazon EKSのクラスターを構築するを参考にしてください。 -
EKSのコンテキストの設定
MacにてAmazon EKSの設定をするを参考にしてください。 -
Helmの設定
Amazon EKSでHelmを利用するを参考にしてください。 -
Prometheusの設定
Amazon EKSでPrometheusを利用するを参考にしてください。
環境設定
-
grafana.yaml
を作成するgrafana.yamldatasources: datasources.yaml: apiVersion: 1 datasources: - name: Prometheus type: prometheus url: http://prometheus-server.prometheus.svc.cluster.local access: proxy isDefault: true
-
Grafana のチャートをHelmでインストールする
※事前にKubernetesクラスターのコンテキストの設定をします。# Grafana チャートリポジトリを追加する helm repo add grafana https://grafana.github.io/helm-charts # Grafana のチャートをインストールする helm install grafana grafana/grafana \ --namespace grafana \ --set persistence.storageClassName="gp2" \ --set persistence.enabled=true \ --set adminPassword='${パスワード}' \ --values grafana.yaml \ --set service.type=LoadBalancer \ --create-namespace # Grafana がインストールされたことを確認する helm list -n grafana
-
Grafana パスワードを確認する
※デフォルトの username はadmin
になります。kubectl get secret --namespace grafana grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo
-
Grafana にアクセスする
※ELBが構築されるまで、数分アクセスできないことがあります。open "http://$(kubectl get svc -n grafana grafana -o jsonpath='{.status.loadBalancer.ingress[0].hostname}')"
クリーンアップ
-
GrafanaをHelmで削除する
helm delete grafana -n grafana
-
Namespaceを削除する
kubectl delete ns grafana