マネージド Prometheus のコントロール プレーン メトリックの最小インジェスト プロファイル

Azure Monitor メトリック アドオンでは、既定で多くの Prometheus メトリックが収集されます。 既定のダッシュボード、既定の記録ルール、既定のアラートで使われるメトリックのみが収集されるため、Minimal ingestion profile は、メトリックのインジェスト量を削減するのに役立つ設定です。 この記事では、この設定をコントロール プレーン メトリックに特化して構成する方法について説明します。 この記事では、minimal ingestion profile が有効になっている場合に既定で収集されるメトリックも一覧表示します。

Note

アドオン ベースのコレクションの場合、Minimal ingestion profile 設定は既定で有効になっています。 ここでは、コントロール プレーン メトリックに焦点を当てて説明します。 既定のターゲットとメトリックの現在のセットは、こちらで一覧表示されています。

次のターゲットは既定で有効/ON です。つまり、メトリック アドオンが既定でこれらのターゲットを自動的にスクレイピングするため、これらのターゲットをスクレイピングするためのスクレイピング ジョブ構成を指定する必要はありません。

  • controlplane-apiserver (job=controlplane-apiserver)
  • controlplane-etcd (job=controlplane-etcd)

次のターゲットはスクレイピングに使用できますが、既定ではスクレイピングは有効になっていません (無効/OFF)。 つまり、これらのターゲットをスクレイピングするためにスクレイピング ジョブ構成を指定する必要はありませんが、default-scrape-settings-enabled セクションの ama-metrics-settings-configmap を使って、これらのターゲットのスクレイピングを ON/有効にする必要があります。

  • controlplane-cluster-autoscaler
  • controlplane-kube-scheduler
  • controlplane-kube-controller-manager

Note

すべての既定のターゲットとスクレイピングで、既定のスクレイピング頻度は 30 seconds です。 default-targets-scrape-interval-settings セクションの ama-metrics-settings-configmap を使って、ターゲットごとにこれをオーバーライドできます。

既定の ON ターゲットの最小インジェスト

次のメトリックは、既定で ON のターゲットの許可リストに minimalingestionprofile=true で登録されています。 以下のターゲットは既定でスクレイピングされるため、これらのメトリックは既定で収集されます。

controlplane-apiserver

  • apiserver_request_total
  • apiserver_cache_list_fetched_objects_total
  • apiserver_cache_list_returned_objects_total
  • apiserver_flowcontrol_demand_seats_average
  • apiserver_flowcontrol_current_limit_seats
  • apiserver_request_sli_duration_seconds_bucket
  • apiserver_request_sli_duration_seconds_sum
  • apiserver_request_sli_duration_seconds_count
  • process_start_time_seconds
  • apiserver_request_duration_seconds_bucket
  • apiserver_request_duration_seconds_sum
  • apiserver_request_duration_seconds_count
  • apiserver_storage_list_fetched_objects_total
  • apiserver_storage_list_returned_objects_total
  • apiserver_current_inflight_requests

Note

apiserver_request_sli_duration_seconds_bucket および apiserver_request_duration_seconds_bucket は、最近のリリースでは収集されなくなりました。 これらは高カーディナリティ メトリックであり、クラスター内のカスタム リソースの数に基づいて保存されるメトリックの数が増加する可能性があります。 これらのバケット メトリックを収集する場合は、それを保持リストに追加できます。 コントロール プレーン コンポーネントの最小限のインジェスト プロファイルをオフにしないことを強くお勧めします。

controlplane-etcd

  • etcd_server_has_leader
  • rest_client_requests_total
  • etcd_mvcc_db_total_size_in_bytes
  • etcd_mvcc_db_total_size_in_use_in_bytes
  • etcd_server_slow_read_indexes_total
  • etcd_server_slow_apply_total
  • etcd_network_client_grpc_sent_bytes_total
  • etcd_server_heartbeat_send_failures_total

既定の OFF ターゲットの最小インジェスト

次は、既定で OFF のターゲットの許可リストに minimalingestionprofile=true で登録されているメトリックです。 既定では、これらのメトリックは収集されません。 default-scrape-settings-enabled セクションの ama-metrics-settings-configmapdefault-scrape-settings-enabled.<target-name>=true を使って、これらのターゲットのスクレイピングを ON に設定できます。

controlplane-kube-controller-manager

  • workqueue_depth
  • rest_client_requests_total
  • rest_client_request_duration_seconds

controlplane-kube-scheduler

  • scheduler_pending_pods
  • scheduler_unschedulable_pods
  • scheduler_queue_incoming_pods_total
  • scheduler_schedule_attempts_total
  • scheduler_preemption_attempts_total

controlplane-cluster-autoscaler

  • rest_client_requests_total
  • cluster_autoscaler_last_activity
  • cluster_autoscaler_cluster_safe_to_autoscale
  • cluster_autoscaler_failed_scale_ups_total
  • cluster_autoscaler_scale_down_in_cooldown
  • cluster_autoscaler_scaled_up_nodes_total
  • cluster_autoscaler_unneeded_nodes_count
  • cluster_autoscaler_unschedulable_pods_count
  • cluster_autoscaler_nodes_count
  • cloudprovider_azure_api_request_errors
  • cloudprovider_azure_api_request_duration_seconds_bucket
  • cloudprovider_azure_api_request_duration_seconds_count

Note

すべてのコントロール プレーン ターゲットの CPU およびメモリ使用量のメトリックは、プロファイルに関係なく公開されません。

リファレンス

次のステップ