SAM と cAdvisor による Docker コンテナの監視
cAdvisor(Container Advisor)は、実行中のコンテナのリソースの使用率とパフォーマンスデータを分析して公開します。 cAdvisor は初期設定のままで Prometheus メトリクスを公開します。
https://prometheus.io/docs/guides/cadvisor/
Prometheus は SAM に統合されています。 このため、cAdvisor メトリクスと利用して Prometheus と Grafana で公開することが可能です。
cAdvisor はポート 8080 でリッスンしますが、これは Nginx のポートと競合するため、それに対応するように Nginx ポートを変更することができます。
構成手順:
- nginx ポートを変更します。
nghix.conf を変更します。
server {
listen 9991;
これにより、http://server:8080/ 経由で多数のサンプルダッシュボードが含まれる cAdvisor UI にアクセスできるようになります。
- cAdvisor コンテナを追加するように docker-compose を構成します。
docker-compose.yml に以下を追加します。
cadvisor:
image: google/cadvisor:latest
ports:
- 8080:8080
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- cAdvisor のジョブを追加するように prometheus を構成します。
isc_prometheus.yml を変更して以下を追加します。
- job_name: cadvisor
scrape_interval: 5s
static_configs:
- labels:
cluster: "1"
group: node
targets:
- cadvisor:8080
これで完了です! prometheus が cAdvisor のメトリクスを取得していることを確認するには、http://server:9090/ で prometheus UI に移動し、[Status]->[Targets]で cAdvisor のエンドポイントとステータスを確認してください。
cAdvisor メトリクスを含めるように事前にビルドされた優れたダッシュボードをダウンロードできます。各クエリに、クラスタパラメーターのみを追加してください。
.png)
.png)