Azure Monitor의 Prometheus 메트릭에 대한 최소 수집 프로필
Azure Monitor 메트릭 추가 기능은 기본적으로 Prometheus 메트릭 수를 수집합니다. Minimal ingestion profile
은 기본 대시보드, 기본 기록 규칙 및 기본 경고에서 사용되는 메트릭만 수집되므로 메트릭 수집 볼륨을 줄이는 데 도움이 되는 설정입니다. 이 문서에서는 이 설정을 구성하는 방법을 설명합니다. 이 문서에는 minimal ingestion profile
을 사용하는 경우 기본적으로 수집되는 메트릭도 나와 있습니다. 아래에 지정된 대로 더 많은 메트릭을 수집할 수 있도록 수집 기능을 수정할 수 있습니다.
참고 항목
추가 기능 기반 수집의 경우 Minimal ingestion profile
설정이 기본적으로 사용됩니다.
메트릭 추가 기능은 기본적으로 이러한 대상을 자동으로 스크랩하므로 다음 대상은 기본적으로 사용/ON으로 설정됩니다. 즉, 이러한 대상을 스크랩하기 위한 스크래핑 작업 구성을 제공할 필요가 없습니다.
cadvisor
, ,nodeexporter
, ,kubelet
, ,kube-state-metrics
, ,controlplane-apiserver
, ,controlplane-etcd
, ,
다음 대상은 스크래핑할 수 있지만 기본적으로 스크래핑은 사용되지 않습니다(사용 안 함/OFF). 즉, 이러한 대상을 스크랩하기 위한 스크랩 작업 구성을 제공할 필요는 없지만 기본적으로 사용 안 함/OFF 상태이므로 default-scrape-settings-enabled
섹션 아래의 ama-metrics-settings-configmap을 사용하여 이러한 대상에 대한 스크랩을 켜거나 사용하도록 설정해야 합니다.
core-dns
, ,kube-proxy
, ,api-server
, ,controlplane-cluster-autoscaler
, ,controlplane-kube-scheduler
, ,controlplane-kube-controller-manager
, ,
참고 항목
모든 기본 대상 및 스크랩에 대한 기본 스크랩 빈도는 30 seconds
입니다. default-targets-scrape-interval-settings
섹션에서 ama-metrics-settings-configmap을 사용하여 각 대상별로 빈도를 재정의할 수 있습니다.
컨트롤 플레인 대상은 고정된 스크래핑 간격 30 seconds
가 있으며 덮어쓸 수 없습니다.
메트릭 추가 기능에서 사용하는 4가지 구성맵에 대한 자세한 내용은 여기에서 읽을 수 있습니다.
구성 설정
메트릭 추가 기능에서 설정 default-targets-metrics-keep-list.minimalIngestionProfile="true"
가 기본적으로 사용하도록 설정됩니다. default-targets-metrics-keep-list
섹션 아래의 ama-metrics-settings-configmap에서 이 설정을 지정할 수 있습니다.
시나리오
이 동작은 다음 네 가지 시나리오에 따라 사용자 지정할 수 있습니다.
기본 대상당 최소 메트릭만 수집합니다.
이 동작은 설정이 default-targets-metrics-keep-list.minimalIngestionProfile="true"
인 기본 동작입니다. 각 기본 대상에 대해 아래에 나열된 메트릭만 수집됩니다.
최소 메트릭 외에도 하나 이상의 기본 대상에 대해 몇 가지 다른 메트릭을 수집합니다.
minimalIngestionProfile="true"
를 유지하고 대상과 관련된 적절한 keeplistRegexes.*
를 지정합니다(예: keeplistRegexes.coreDns="X``Y"
). X,Y는 대상에 대한 기본 메트릭 목록과 병합된 다음, 수집됩니다. ``
대상에 대한 특정 메트릭 집합만 수집하고 다른 메트릭은 수집하지 않습니다.
minimalIngestionProfile="false"
를 설정하고 ama-metrics-settings-configmap
에서 대상과 관련된 적절한 default-targets-metrics-keep-list.="X``Y"
를 지정합니다.
기본 대상에 대해 스크래핑된 모든 메트릭을 수집합니다.
minimalIngestionProfile="false"
를 설정하고 해당 대상에 대해 default-targets-metrics-keep-list.<targetname>
을 지정하지 않도록 합니다. false
로 변경하면 메트릭 수집 볼륨이 대상당 요소별로 증가할 수 있습니다.
참고 항목
up
메트릭은 지정한 keepLists
에 관계없이 대상당 스크래핑당 수집되므로 허용/유지 목록에 포함되지 않습니다. 이 메트릭은 실제로 스크래핑되지 않지만 메트릭 추가 기능에 의한 스크래핑 작업의 결과로 생성됩니다. 히스토그램 및 요약의 경우 각 계열을 목록에 명시적으로 포함해야 합니다(*bucket
, *sum
, *count
시리즈).
기본 ON 대상에 대한 최소 수집
다음 메트릭은 기본 ON 대상에 대해 minimalingestionprofile=true
가 지정된 허용 목록으로 표시됩니다. 아래 메트릭은 기본적으로 이러한 대상이 스크래핑되기 때문에 수집됩니다.
kubelet
kubelet_volume_stats_used_bytes
kubelet_node_name
kubelet_running_pods
kubelet_running_pod_count
kubelet_running_containers
kubelet_running_container_count
volume_manager_total_volumes
kubelet_node_config_error
kubelet_runtime_operations_total
kubelet_runtime_operations_errors_total
kubelet_runtime_operations_duration_seconds
kubelet_runtime_operations_duration_seconds_bucket
kubelet_runtime_operations_duration_seconds_sum
kubelet_runtime_operations_duration_seconds_count
kubelet_pod_start_duration_seconds
kubelet_pod_start_duration_seconds_bucket
kubelet_pod_start_duration_seconds_sum
kubelet_pod_start_duration_seconds_count
kubelet_pod_worker_duration_seconds
kubelet_pod_worker_duration_seconds_bucket
kubelet_pod_worker_duration_seconds_sum
kubelet_pod_worker_duration_seconds_count
storage_operation_duration_seconds
storage_operation_duration_seconds_bucket
storage_operation_duration_seconds_sum
storage_operation_duration_seconds_count
storage_operation_errors_total
kubelet_cgroup_manager_duration_seconds
kubelet_cgroup_manager_duration_seconds_bucket
kubelet_cgroup_manager_duration_seconds_sum
kubelet_cgroup_manager_duration_seconds_count
kubelet_pleg_relist_duration_seconds
kubelet_pleg_relist_duration_seconds_bucket
kubelet_pleg_relist_duration_sum
kubelet_pleg_relist_duration_seconds_count
kubelet_pleg_relist_interval_seconds
kubelet_pleg_relist_interval_seconds_bucket
kubelet_pleg_relist_interval_seconds_sum
kubelet_pleg_relist_interval_seconds_count
rest_client_requests_total
rest_client_request_duration_seconds
rest_client_request_duration_seconds_bucket
rest_client_request_duration_seconds_sum
rest_client_request_duration_seconds_count
process_resident_memory_bytes
process_cpu_seconds_total
go_goroutines
kubelet_volume_stats_capacity_bytes
kubelet_volume_stats_available_bytes
kubelet_volume_stats_inodes_used
kubelet_volume_stats_inodes
kubernetes_build_info"
cadvisor
container_spec_cpu_period
container_spec_cpu_quota
container_cpu_usage_seconds_total
container_memory_rss
container_network_receive_bytes_total
container_network_transmit_bytes_total
container_network_receive_packets_total
container_network_transmit_packets_total
container_network_receive_packets_dropped_total
container_network_transmit_packets_dropped_total
container_fs_reads_total
container_fs_writes_total
container_fs_reads_bytes_total
container_fs_writes_bytes_total
container_memory_working_set_bytes
container_memory_cache
container_memory_swap
container_cpu_cfs_throttled_periods_total
container_cpu_cfs_periods_total
container_memory_usage_bytes
kubernetes_build_info"
kube-state-metrics
kube_node_status_capacity
kube_job_status_succeeded
kube_job_spec_completions
kube_daemonset_status_desired_number_scheduled
kube_daemonset_status_number_ready
kube_deployment_spec_replicas
kube_deployment_status_replicas_ready
kube_pod_container_status_last_terminated_reason
kube_node_status_condition
kube_pod_container_status_restarts_total
kube_pod_container_resource_requests
kube_pod_status_phase
kube_pod_container_resource_limits
kube_node_status_allocatable
kube_pod_info
kube_pod_owner
kube_resourcequota
kube_statefulset_replicas
kube_statefulset_status_replicas
kube_statefulset_status_replicas_ready
kube_statefulset_status_replicas_current
kube_statefulset_status_replicas_updated
kube_namespace_status_phase
kube_node_info
kube_statefulset_metadata_generation
kube_pod_labels
kube_pod_annotations
kube_horizontalpodautoscaler_status_current_replicas
kube_horizontalpodautoscaler_status_desired_replicas
kube_horizontalpodautoscaler_spec_min_replicas
kube_horizontalpodautoscaler_spec_max_replicas
kube_node_status_condition
kube_node_spec_taint
kube_pod_container_status_waiting_reason
kube_job_failed
kube_job_status_start_time
kube_deployment_spec_replicas
kube_deployment_status_replicas_available
kube_deployment_status_replicas_updated
kube_job_status_active
kubernetes_build_info
kube_pod_container_info
kube_replicaset_owner
kube_resource_labels
(예 - kube_pod_labels, kube_deployment_labels)kube_resource_annotations
(예 - kube_pod_annotations, kube_deployment_annotations)
node-exporter(linux)
node_cpu_seconds_total
node_memory_MemAvailable_bytes
node_memory_Buffers_bytes
node_memory_Cached_bytes
node_memory_MemFree_bytes
node_memory_Slab_bytes
node_memory_MemTotal_bytes
node_netstat_Tcp_RetransSegs
node_netstat_Tcp_OutSegs
node_netstat_TcpExt_TCPSynRetrans
node_load1``node_load5
node_load15
node_disk_read_bytes_total
node_disk_written_bytes_total
node_disk_io_time_seconds_total
node_filesystem_size_bytes
node_filesystem_avail_bytes
node_filesystem_readonly
node_network_receive_bytes_total
node_network_transmit_bytes_total
node_vmstat_pgmajfault
node_network_receive_drop_total
node_network_transmit_drop_total
node_disk_io_time_weighted_seconds_total
node_exporter_build_info
node_time_seconds
node_uname_info"
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_count
apiserver_request_sli_duration_seconds_sum
process_start_time_seconds
apiserver_request_duration_seconds_bucket
apiserver_request_duration_seconds_count
apiserver_request_duration_seconds_sum
apiserver_storage_list_fetched_objects_total
apiserver_storage_list_returned_objects_total
apiserver_current_inflight_requests
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
가 지정된 허용 목록으로 표시됩니다. 이러한 대상은 기본적으로 스크래핑되지 않으므로(기본적으로 OFF로 인해) 이러한 메트릭은 기본적으로 수집되지 않습니다. default-scrape-settings-enabled
섹션 아래의 ama-metrics-settings-configmap을 통해 default-scrape-settings-enabled.<target-name>=true
를 사용하여 이러한 대상에 대해 ON 스크래핑을 설정할 수 있습니다.
core-dns
coredns_build_info
coredns_panics_total
coredns_dns_responses_total
coredns_forward_responses_total
coredns_dns_request_duration_seconds
coredns_dns_request_duration_seconds_bucket
coredns_dns_request_duration_seconds_sum
coredns_dns_request_duration_seconds_count
coredns_forward_request_duration_seconds
coredns_forward_request_duration_seconds_bucket
coredns_forward_request_duration_seconds_sum
coredns_forward_request_duration_seconds_count
coredns_dns_requests_total
coredns_forward_requests_total
coredns_cache_hits_total
coredns_cache_misses_total
coredns_cache_entries
coredns_plugin_enabled
coredns_dns_request_size_bytes
coredns_dns_request_size_bytes_bucket
coredns_dns_request_size_bytes_sum
coredns_dns_request_size_bytes_count
coredns_dns_response_size_bytes
coredns_dns_response_size_bytes_bucket
coredns_dns_response_size_bytes_sum
coredns_dns_response_size_bytes_count
coredns_dns_response_size_bytes
coredns_dns_response_size_bytes_bucket
coredns_dns_response_size_bytes_sum
coredns_dns_response_size_bytes_count
process_resident_memory_bytes
process_cpu_seconds_total
go_goroutines
kubernetes_build_info"
kube-proxy
kubeproxy_sync_proxy_rules_duration_seconds
kubeproxy_sync_proxy_rules_duration_seconds_bucket
kubeproxy_sync_proxy_rules_duration_seconds_sum
kubeproxy_sync_proxy_rules_duration_seconds_count
kubeproxy_network_programming_duration_seconds
kubeproxy_network_programming_duration_seconds
kubeproxy_network_programming_duration_seconds_bucket
kubeproxy_network_programming_duration_seconds_sum
kubeproxy_network_programming_duration_seconds_count
rest_client_requests_total
rest_client_request_duration_seconds
rest_client_request_duration_seconds_bucket
rest_client_request_duration_seconds_sum
rest_client_request_duration_seconds_count
process_resident_memory_bytes
process_cpu_seconds_total
go_goroutines
kubernetes_build_info"
api-server
apiserver_request_duration_seconds
apiserver_request_duration_seconds_bucket
apiserver_request_duration_seconds_sum
apiserver_request_duration_seconds_count
apiserver_request_total
workqueue_adds_total``workqueue_depth
workqueue_queue_duration_seconds
workqueue_queue_duration_seconds_bucket
workqueue_queue_duration_seconds_sum
workqueue_queue_duration_seconds_count
process_resident_memory_bytes
process_cpu_seconds_total
go_goroutines
kubernetes_build_info"
windows-exporter (job=windows-exporter)
windows_system_system_up_time
windows_cpu_time_total
windows_memory_available_bytes
windows_os_visible_memory_bytes
windows_memory_cache_bytes
windows_memory_modified_page_list_bytes
windows_memory_standby_cache_core_bytes
windows_memory_standby_cache_normal_priority_bytes
windows_memory_standby_cache_reserve_bytes
windows_memory_swap_page_operations_total
windows_logical_disk_read_seconds_total
windows_logical_disk_write_seconds_total
windows_logical_disk_size_bytes
windows_logical_disk_free_bytes
windows_net_bytes_total
windows_net_packets_received_discarded_total
windows_net_packets_outbound_discarded_total
windows_container_available
windows_container_cpu_usage_seconds_total
windows_container_memory_usage_commit_bytes
windows_container_memory_usage_private_working_set_bytes
windows_container_network_receive_bytes_total
windows_container_network_transmit_bytes_total
kube-proxy-windows (job=kube-proxy-windows)
kubeproxy_sync_proxy_rules_duration_seconds
kubeproxy_sync_proxy_rules_duration_seconds_bucket
kubeproxy_sync_proxy_rules_duration_seconds_sum
kubeproxy_sync_proxy_rules_duration_seconds_count
rest_client_requests_total
rest_client_request_duration_seconds
rest_client_request_duration_seconds_bucket
rest_client_request_duration_seconds_sum
rest_client_request_duration_seconds_count
process_resident_memory_bytes
process_cpu_seconds_total
go_goroutines
controlplane-cluster-autoscaler
rest_client_requests_total
cluster_autoscaler_last_activity
cluster_autoscaler_cluster_safe_to_autoscale
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
controlplane-kube-scheduler
scheduler_pending_pods
scheduler_unschedulable_pods
scheduler_pod_scheduling_attempts
scheduler_queue_incoming_pods_total
scheduler_preemption_attempts_total
scheduler_preemption_victims
scheduler_scheduling_attempt_duration_seconds
scheduler_schedule_attempts_total
scheduler_pod_scheduling_duration_seconds
controlplane-kube-controller-manager
rest_client_request_duration_seconds
rest_client_requests_total
workqueue_depth