基礎編:「k8s basic monitoring」by nnao45
LivenessProbe
replicaSet: 起動するPODの数
initialDisplayPort: 起動を遅らせる設定値
kubectl logsのpods のstdout/in
Nodeレベルでみたい場合、DaemonSet使ってForwerder
Clousterレベルでみたい場合、ノードロギングイベント方式
Sidecarコンテナ、ストリーミングサイドカー方式
ポッドインエージェント方式
metrics-serverによるリソース監視になった
発展編 1:「Datadogを使ってメトリクス監視とログ監視を一元管理」by @amsy810
- Pluggable Architecture
- Sophisticated Tag
- Dashboard
- k8sのダッシュボードが用意されている
- Alert 未来を予知してアラート * いつもとの違いを検知してアラート * グループの違いを検知してアラート * monitoringを自動化機能が追加された模様 * * k8sのdeployment Podを複数束ねたもの * k8sのService * 特定のPodに対してデータを流すもの * Datadogのタグはk8sのラベルと相性が良い
- ライブコンテナモニタリング
- コンテナの監視 on Docker
- コンテナホスト上でdatadog-agentプロセスを起動する
- コンテナホスト上にdatadog/docker-dd-agentコンテナを起動する
- Daemonsetで起動 オススメ。
- agentはhelmで入れるのが楽。
- auto_confを使ったServiceDiscovery
- %%host%% とか %%port%%みたいなやつ
- モニタリング
- ReadinessProbe
- LivenessProbe
- Datadog側ではコンテナのステータスだけを確認している
- k8sのメトリクス
- kubernetes.*
- kubernetes_state.*
- LogMoniteringも付いた。
発展編 2:「『Prometheus+Grafana』でのk8s監視」by yosshi_
Prometeusはk8sを意識した作り
APIServerの監視に、k8s内にPrometeusプロセスを起動させて、外部NodeにあるPrometeusに送信している
kubernetes-apiserver
kubernetes-nodes
kubernetes-service-endpoints
kubernetes-pods
やっぱりnode-exporterは欲しい
DeamonSetで配置
kubernetes-podsがannotateみて自動で監視してくれる
Blackbox-Exporter
LT 1:「Prometheus Operator」
https://github.com/coreos/prometheus-operator
https://github.com/giantswarm/kubernetes-prometheus