このトピックでは、企業がコンテナ化されたアプリケーションをより適切に管理および保守できるように、Docker コンテナを監視する方法について説明します。
前提条件
Managed Service for Prometheus がアクティブ化されています。詳細については、請求の概要を参照してください。
ECSインスタンスが作成されています。詳細については、ECSコンソール(簡易版)を使用したECSインスタンスの作成と管理を参照してください。
Alibaba Cloudリソースセンターがアクティブ化されています。詳細については、リソースセンターのアクティブ化を参照してください。
ステップ1:Dockerコンテナの統合
Managed Service for Prometheusコンソールにログインします。左側のナビゲーションペインで、統合センターをクリックします。
Dockerコンテナをクリックします。表示されるパネルで、プロンプトに従ってパラメータを設定します。以下に、主要なパラメータについて説明します。
パラメータ
説明
Cadvisorインストールモード
Container Advisor (cAdvisor) は、Google によって開発されたオープンソースのコンテナ監視ツールです。コンテナの CPU、メモリ、ネットワーク、ディスク使用率などのリソース使用状況メトリックを収集します。
自動インストール:指定したフィルタ条件に基づいて自動サービス検出が実行され、ECS インスタンスが識別され、検出されたインスタンスに cAdvisor サービスがインストールされます。
手動インストール:コンテナを統合する前に、ECS インスタンスに cAdvisor サービスを手動でインストールし、仮想プライベートクラウド (VPC) 内でアクセスできるように対応するポートを開く必要があります。
説明ECS インスタンスのホワイトリストは、VPC の指定されたポートを開く必要があります。
ホストサービス検出モード
以下のオプションを指定して ECS インスタンスを選択します。
ステインラベル選択
ECSステインラベル:テイントを使用して ECS インスタンスを除外します。
無条件(現在の VPC 内のすべての Windows インスタンスを選択)
-
タグラベル選択
ECSインスタンスタグ:タグを使用して ECS インスタンスを照合します。
IP CIDR
ECS IP CIDR:指定された IP プレフィックスまたは特定のビットを共有する ECS インスタンスを照合します。VPC の CIDR ブロックを指定すると、VPC 内のすべての ECS インスタンスが選択されます。
インスタンス ID
ECS インスタンス ID:ECS インスタンスの ID。複数のインスタンス ID はコンマ (,) で区切ります。
Cadvisor サービスポート
デフォルト値:8080。
メトリックスクレイピング間隔(単位/秒)
デフォルト値:15。
セキュリティグループは自動的に構成されます
セキュリティグループチェックが失敗した場合にセキュリティグループルールを自動的に追加するかどうかを指定します。
カスタム ECS タグの挿入
ECS インスタンスのタグキーを指定します。その後、キーと値のペア全体がメトリックに追加されます。
ステップ2:ダッシュボードの表示
Managed Service for Prometheus は、コンテナの概要、コアコンポーネント、ノード、ポッドなどの監視の詳細を表示するための複数の組み込みダッシュボードを提供します。これらのダッシュボードは、Container Service for Kubernetes、Application Real-Time Monitoring Service、または Managed Service for Prometheus コンソールで表示できます。ダッシュボードを表示するには、次の手順を実行します。
Managed Service for Prometheusコンソールにログインします。左側のナビゲーションペインで、統合管理をクリックします。
統合管理ページで、ダッシュボードのクエリタブをクリックします。ダッシュボードを表示するコンテナを選択します。


ステップ3:アラートの構成
Managed Service for Prometheusコンソールにログインします。左側のナビゲーションペインで、統合管理をクリックします。
統合管理ページで、統合環境タブをクリックします。ECSインスタンスタブで、VPC の名前をクリックします。
コンポーネント管理タブで、アラートルールセクションの組み込みアラートルールを表示します。

組み込みアラートルールは、アラート通知を送信せずにアラートイベントを生成します。アラートルールの通知方法を構成する場合は、[アクション] 列の編集をクリックします。
Prometheusアラートルールの編集ページで、カスタムアラートしきい値、期間、アラートコンテンツを構成できます。詳細については、Prometheusインスタンスのアラートルールの作成を参照してください。

メトリック
メトリック | 測定 | 説明 |
container_blkio_device_usage_total | COUNTER | ブロック I/O デバイスのバイト使用量。 |
container_cpu_cfs_periods_total | COUNTER | 経過した適用期間の間隔の数。 |
container_cpu_cfs_throttled_periods_total | COUNTER | 調整された期間の間隔の数。 |
container_cpu_cfs_throttled_seconds_total | COUNTER | コンテナが調整された合計時間。 |
container_cpu_load_average_10s | GAUGE | 過去 10 秒間のコンテナ CPU 負荷平均の値。 |
container_cpu_schedstat_run_periods_total | COUNTER | コントロールグループ (cgroup) プロセスが CPU 上で実行された回数。 |
container_cpu_schedstat_runqueue_seconds_total | COUNTER | コンテナプロセスが実行キューで待機していた時間。 |
container_cpu_schedstat_run_seconds_total | COUNTER | コンテナプロセスが CPU 上で実行されていた時間。 |
container_cpu_system_seconds_total | COUNTER | システム CPU によって消費された累積時間。 |
container_cpu_usage_seconds_total | COUNTER | 消費された累積 CPU 時間。 |
container_cpu_user_seconds_total | COUNTER | ユーザー CPU によって消費された累積時間。 |
container_file_descriptors | GAUGE | コンテナの開いているファイル記述子の数。 |
container_fs_inodes_free | GAUGE | 利用可能な Inode の数。 |
container_fs_inodes_total | GAUGE | Inode の総数。 |
container_fs_io_current | GAUGE | 進行中の I/O の数。 |
container_fs_io_time_seconds_total | COUNTER | I/O によって消費された秒数の累積カウント。 |
container_fs_io_time_weighted_seconds_total | COUNTER | 重み付けされた I/O 時間の累積。 |
container_fs_limit_bytes | GAUGE | ファイルシステム上でコンテナによって消費できるバイト数。 |
container_fs_read_seconds_total | COUNTER | 読み取りに費やされた秒数の累積カウント。 |
container_fs_reads_bytes_total | COUNTER | 読み取りバイト数の累積カウント。 |
container_fs_reads_merged_total | COUNTER | マージされた読み取りの累積カウント。 |
container_fs_reads_total | COUNTER | 完了した読み取りの累積カウント。 |
container_fs_sector_reads_total | COUNTER | 完了したセクター読み取りの累積カウント。 |
container_fs_sector_writes_total | COUNTER | 完了したセクター書き込みの累積カウント。 |
container_fs_usage_bytes | GAUGE | ファイルシステム上でコンテナによって消費されたバイト数。 |
container_fs_write_seconds_total | COUNTER | 書き込みに費やされた秒数の累積カウント。 |
container_fs_writes_bytes_total | COUNTER | 書き込まれたバイト数の累積カウント。 |
container_fs_writes_merged_total | COUNTER | マージされた書き込みの累積カウント。 |
container_fs_writes_total | COUNTER | 完了した書き込みの累積カウント。 |
container_enormoustlb_failcnt | COUNTER | enormouspage の使用量が制限に達した回数。 |
container_enormoustlb_max_usage_bytes | GAUGE | 記録された enormouspage の最大使用量。 |
container_enormoustlb_usage_bytes | GAUGE | 現在の enormouspage の使用量。 |
container_last_seen | GAUGE | コンテナが最後に確認された時刻。 |
container_llc_occupancy_bytes | GAUGE | Resource Director Technology (RDT) Memory Bandwidth Monitoring (MBM) でカウントされたコンテナの最終レベルキャッシュ使用量。 |
container_memory_bandwidth_bytes | GAUGE | RDT MBM でカウントされたコンテナの合計メモリ帯域幅使用量。 |
container_memory_bandwidth_local_bytes | GAUGE | RDT MBM でカウントされたコンテナのローカルメモリ帯域幅使用量。 |
container_memory_cache | GAUGE | 合計ページキャッシュメモリ。 |
container_memory_failcnt | COUNTER | メモリ使用量が制限を超えた回数。 |
container_memory_failures_total | COUNTER | メモリ割り当てエラーの累積カウント。 |
container_memory_mapped_file | GAUGE | メモリマップファイルのサイズ。 |
container_memory_max_usage_bytes | GAUGE | 最大メモリ使用量。 |
container_memory_migrate | GAUGE | メモリ移行ステータス。 |
container_memory_numa_pages | GAUGE | Non-Uniform Memory Access (NUMA) ノードごとに使用されたページ数。 |
container_memory_rss | GAUGE | 常駐セットサイズ (RSS) サイズ。 |
container_memory_swap | GAUGE | コンテナのスワップ使用量。 |
container_memory_usage_bytes | GAUGE | 現在のメモリ使用量。 |
container_memory_working_set_bytes | GAUGE | 現在のワーキングセット。 |
container_network_advance_tcp_stats_total | GAUGE | コンテナの高度な TCP 接続の総数。 |
container_network_receive_bytes_total | COUNTER | 受信したバイト数の累積数。 |
container_network_receive_errors_total | COUNTER | 受信中に発生したエラーの累積カウント。 |
container_network_receive_packets_dropped_total | COUNTER | 受信中にドロップされたパケットの累積カウント。 |
container_network_receive_packets_total | COUNTER | 受信したパケットの累積カウント。 |
container_network_tcp6_usage_total | GAUGE | コンテナの TCP6 接続の数。 |
container_network_tcp_usage_total | GAUGE | コンテナの TCP 接続の数。 |
container_network_transmit_bytes_total | COUNTER | 送信されたバイト数の累積カウント。 |
container_network_transmit_errors_total | COUNTER | 送信中に発生したエラーの累積カウント。 |
container_network_transmit_packets_dropped_total | COUNTER | 送信中にドロップされたパケットの累積カウント。 |
container_network_transmit_packets_total | COUNTER | 送信されたパケットの累積カウント。 |
container_network_udp6_usage_total | GAUGE | コンテナの UDP6 接続の数。 |
container_network_udp_usage_total | GAUGE | コンテナの UDP 接続の数。 |
container_oom_events_total | COUNTER | コンテナで観測されたメモリ不足イベントの数。 |
container_perf_events_scaling_ratio | GAUGE | perf イベントカウンターのスケーリング比率。 |
container_perf_events_total | COUNTER | perf コアイベントのスケーリングされたカウンター。 |
container_perf_uncore_events_scaling_ratio | GAUGE | perf アンコアイベントカウンターのスケーリング比率。イベントはイベントラベルで識別できます。「PMU」ラベルと「socket」ラベルは、イベントが測定された Performance Monitoring Unit (PMU) と CPU ソケットを示します。 |
container_perf_uncore_events_total | COUNTER | perf アンコアイベントのスケーリングされたカウンター。イベントはイベントラベルで識別できます。「PMU」ラベルと「socket」ラベルは、イベントが測定された PMU と CPU ソケットを示します。 |
container_processes | GAUGE | コンテナで実行されているプロセスの数。 |
container_referenced_bytes | GAUGE | /proc/smaps ファイルの Referenced フィールドに基づく、最後の測定サイクル中のコンテナ参照バイト数。 |
container_sockets | GAUGE | コンテナの開いているソケットの数。 |
container_spec_cpu_period | GAUGE | コンテナの CPU 期間。 |
container_spec_cpu_quota | GAUGE | コンテナの CPU クォータ。 |
container_spec_cpu_shares | GAUGE | コンテナの CPU シェア。 |
container_spec_memory_limit_bytes | GAUGE | コンテナのメモリ制限。 |
container_spec_memory_reservation_limit_bytes | GAUGE | コンテナのメモリ予約制限。 |
container_spec_memory_swap_limit_bytes | GAUGE | コンテナのメモリ スワップ制限。 |
container_start_time_seconds | GAUGE | コンテナの開始時刻。形式:Unix タイムスタンプ。 |
container_tasks_state | GAUGE | 指定された状態 (スリープ、実行中、停止、中断不可、iowait) のタスクの数。 |
container_threads | GAUGE | コンテナで実行されているスレッドの数。 |
container_threads_max | GAUGE | コンテナで許可されるスレッドの最大数。 |
container_ulimits_soft | GAUGE | コンテナのルートプロセスのソフト ulimit 値。 |
machine_cpu_cache_capacity_bytes | GAUGE | NUMA ノードと CPU コアに割り当てられたキャッシュサイズ(バイト単位)。 |
machine_cpu_cores | GAUGE | 論理 CPU コアの数。 |
machine_cpu_physical_cores | GAUGE | 物理 CPU コアの数。 |
machine_cpu_sockets | GAUGE | CPU ソケットの数。 |
machine_dimm_capacity_bytes | GAUGE | すべてのメモリモジュールの合計 RAM DIMM 容量。 |
machine_dimm_count | GAUGE | RAM DIMM の数。 |
machine_memory_bytes | GAUGE | マシンにインストールされているメモリ量。 |
machine_swap_bytes | GAUGE | マシンで使用可能なスワップメモリの量。 |
machine_node_distance | GAUGE | NUMA ノードとターゲット NUMA ノード間の距離。 |
machine_node_enormouspages_count | GAUGE | NUMA ノードに割り当てられた enormouspage の数。 |
machine_node_memory_capacity_bytes | GAUGE | NUMA ノードに割り当てられたメモリ量。 |
machine_nvm_avg_power_budget_watts | GAUGE | 不揮発性メモリ (NVM) の電力バジェット。 |
machine_nvm_capacity | GAUGE | NVM 容量値。 |
machine_thread_siblings_count | GAUGE | CPU スレッドシブリングの数。 |