Grafana で EKS の CloudWatch を表示する (AWS – EKS ダッシュボードのセットアップ)

はじめに

Grafana で EKS の CloudWatch を可視化したいなと思い Grafana dashboards を眺めていたところ、「AWS – EKS」というよさげなダッシュボードを見つけました。
試しにインポートしてみたところ、自分の環境ではうまく表示されない…。
ということで、こちらを編集してセットアップしたいと思います。

JSON Model を追ってみる

Dashboard settings (歯車ボタン) を押し、「JSON Model」タブからどのような設定になっているか見てみましょう。すると以下のことがわかりました。

  • datasource.uid に指定されている「DS_CLOUDWATCH-AUTO-DEV」がなさそう
  • 各所の「ClusterName」が自分の EKS クラスター名と合っていない

編集してみる

まずは、EKS クラスター名を変数で入れられるようにしたいですね。
「Variables」タブから「New variable」を押します。

Select variable type で「Text box」を選び、Name をここでは「clustername」とします。
お好みで Default value にデフォルトで入れたい EKS クラスター名を入れて「Apply」を押します。

また、既存の変数「datasource」の設定を見ておきましょう。
Instance name filter が設定されていますが、これは自分のデータソースとマッチしないので消して「Apply」を押します。

次に JSON Model で紐づけましょう。
「JSON Model」タブを押しエディタの中をクリックした状態で Ctrl+F を押して「>」の部分を押すことで置換モードにできるので、そこで 2 つの置換を行います。

  • 「”${DS_CLOUDWATCH-AUTO-DEV}”」を「”$datasource”」に
  • 「”ooad-eks-dev-main-ue1-all”」を「”$clustername”」に

それぞれ置換したら「Save changes」を押して JSON Model を保存します。

最後に「Save dashboard」でサイドパネルを開き「Save」を押してダッシュボードを保存します。

その後は「Close」を押して編集を終了しましょう。

確認

そうしたら、Data Source と clustername の欄が入力できるようになっていると思うので、自分の環境の値を入力すると…無事、表示することができました!

おわりに

ということで、一見うまく動作しないように見えるダッシュボードも多少のコツを掴めれば活用させてもらうこともできるという例でした。
このダッシュボード、GitHub などに公開されていないかなと探してみたのですが見つからず、Fork したりプルリクエストを飛ばすことは難しそうです。
ひとまずこのセットアップでありがたく使わせていただくことにします。

コメント

タイトルとURLをコピーしました