2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

【Kubernetes】手軽にPodの状態を監視してTeamsに通知したい

Posted at

背景

Kubernetesを用いる場合にはPodは割とカジュアルに再作成されるため、Podの死活を監視したくなる場合がある。
特に開発の途上や小さいチームにおいては、きっちりとした監視を運用していくハードルの観点や、技術習得観点を考慮し、簡素な監視が必要になるタイミングがある。
そうした場合に、Prometheusなどのデファクトな監視基盤ではなく、一時的なつなぎとして使用できる簡易的な監視ツールが欲しくなった。
それと、純粋にGoでプログラムを書いたことがなかったため、簡素なツールを作る目的でPodの監視ツールを作成した。

PodMonitoringToolの概要

PodMonitoringToolは正常でないPodを見つけたときにTeamsにアラートメッセージを送ってくれるツールである。
Teamsに通知されたメッセージを確認することで、休日でも夜中でも運用者がすぐにKubernetesの元に駆けつけることができる。

Screen Shot 2020-08-22 at 17.20.14.png

Podの正常性については、例えば下記のようにPod内コンテナがReadyになっていない場合や、PodのステータスがRunningでない場合などが想定される。
carbon-4.png

こうした場合に、Teamsにて異常のあるPodについて通知を受け取ることができる。

image.png

上記にまとめていないが、監視間隔の設定やPod正常時にも一報をくれるHeartbeat設定なども実装した。
詳細は、Githubリポジトリ側に記載した。

まとめ

  • Prometheusなどのデファクトなツールがある一方で、簡素なツールが役立つケースがあることについて説明した。
  • Kubernetes上のPodの正常性を簡易的に監視するツールを作成し、Podの障害時にTeamsにてアラートを受け取れることを確認した。
2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?