Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Quando você habilita a coleção de métricas do Prometheus no Azure Monitor do cluster do Kubernetes, ele usa uma configuração padrão para destinos, dashboards e regras de gravação. Este artigo descreve a configuração padrão e os cenários em que você pode optar por personalizá-la para seus requisitos específicos.
Perfil mínimo de ingestão
Perfil de ingestãominimal é uma configuração habilitada por padrão quando as métricas do Prometheus são habilitadas no Monitor Azure para um cluster. Essa configuração reduz o volume de métricas ingeridas limitando-as apenas às métricas usadas por painéis padrão, regras de gravação padrão e alertas padrão. Esses destinos e métricas estão listados neste artigo. Se essa configuração estiver desabilitada, todas as métricas disponíveis para os destinos padrão serão coletadas, o que pode aumentar significativamente o volume de ingestão.
Você pode alterar a configuração mínima do perfil de ingestão modificando a configuração de métricas ConfigMap, conforme descrito em Conseque a extração de métricas do Prometheus no Azure Monitor usando ConfigMap.
Cenários de personalização
Você pode optar por usar a configuração padrão ou personalizar a coleção para seus requisitos específicos. A tabela a seguir lista os quatro cenários potenciais de coleção e o método recomendado para obter cada um.
| Scenario | Método |
|---|---|
| Ingerir apenas métricas mínimas para cada destino padrão. | Nenhuma alteração é necessária. Use o comportamento padrão sem modificação. Somente as métricas listadas neste artigo são ingeridas para cada um dos destinos padrão. |
| Ingerir algumas outras métricas para um ou mais destinos padrão, além de métricas mínimas. | Mantenha a ingestão mínima habilitada e especifique as listas de manutenção apropriadas específicas para o destino. Veja Configurar métricas coletadas por alvos padrão. |
| Ingerir apenas um conjunto específico de métricas para um alvo padrão. | Desabilite a ingestão mínima e especifique a lista de manutenção adequada e relativa ao alvo em uma tarefa de raspagem personalizada. Consulte Crie um job de scrape personalizado do Prometheus do seu cluster Kubernetes usando ConfigMap. |
| Ingerir todas as métricas extraídas para o destino padrão. | Desative a ingestão mínima e não especifique nenhuma lista de retenção para esse destino. Consulte Personalização das métricas coletadas por alvos padrão |
Destinos extraídas por padrão
A seguir estão os destinos que o complemento de métricas do Azure Monitor pode raspar por padrão e as condições nas quais eles estão habilitados. Veja Habilitar e desabilitar destinos padrão para habilitar/desabilitar destinos padrão.
Os destinos a seguir são habilitados por padrão.
cadvisornodeexporterkubeletkube-state-metricsnetworkobservabilityRetina
Os destinos a seguir são habilitados quando controlar as métricas do plano (versão prévia) estiver habilitado.
controlplane-apiservercontrolplane-etcd
Os destinos a seguir são habilitados quando Container Network Observability está habilitado.
networkobservabilityHubblenetworkobservabilityCilium
Os destinos a seguir são habilitados quando Azure container Storage está habilitado.
acstor-capacity-provisioneracstor-metrics-exporter
Os alvos a seguir são desabilitados por padrão.
corednskubeproxyapiserver
Os destinos a seguir são desabilitados por padrão e exigem que a coleção de métricas do Windows (versão prévia) seja habilitada.
windows-exporterkube-proxy-windows
Métricas coletadas de destinos padrão
As métricas a seguir são coletadas por padrão de cada destino padrão. Todas as outras métricas são removidas por meio de regras de nova rotulagem. O alvo deve ser habilitado para que as métricas sejam coletadas.
kubelet
kubelet_volume_stats_used_byteskubelet_node_namekubelet_running_podskubelet_running_pod_countkubelet_running_containerskubelet_running_container_countvolume_manager_total_volumeskubelet_node_config_errorkubelet_runtime_operations_totalkubelet_runtime_operations_errors_totalstorage_operation_errors_totalrest_client_requests_totalprocess_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutineskubelet_volume_stats_capacity_byteskubelet_volume_stats_available_byteskubelet_volume_stats_inodes_usedkubelet_volume_stats_inodeskubernetes_build_info"
coredns
coredns_build_infocoredns_panics_totalcoredns_dns_responses_totalcoredns_forward_responses_totalcoredns_dns_requests_totalcoredns_forward_requests_totalcoredns_cache_hits_totalcoredns_cache_misses_totalcoredns_cache_entriescoredns_plugin_enabledprocess_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutineskubernetes_build_info"
cadvisor
container_spec_cpu_periodcontainer_spec_cpu_quotacontainer_cpu_usage_seconds_totalcontainer_memory_rsscontainer_network_receive_bytes_totalcontainer_network_transmit_bytes_totalcontainer_network_receive_packets_totalcontainer_network_transmit_packets_totalcontainer_network_receive_packets_dropped_totalcontainer_network_transmit_packets_dropped_totalcontainer_fs_reads_totalcontainer_fs_writes_totalcontainer_fs_reads_bytes_totalcontainer_fs_writes_bytes_totalcontainer_memory_working_set_bytescontainer_memory_cachecontainer_memory_swapcontainer_cpu_cfs_throttled_periods_totalcontainer_cpu_cfs_periods_totalkubernetes_build_info"
kubeproxy
process_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutineskubernetes_build_info"
apiserver
apiserver_request_totalworkqueue_adds_total``workqueue_depthprocess_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutineskubernetes_build_info"
kube-state
kube_job_status_succeededkube_job_spec_completionskube_daemonset_status_desired_number_scheduledkube_daemonset_status_number_readykube_deployment_status_replicas_readykube_pod_container_status_last_terminated_reasonkube_pod_container_status_waiting_reasonkube_pod_container_status_restarts_totalkube_node_status_allocatablekube_pod_ownerkube_pod_container_resource_requestskube_pod_status_phasekube_pod_container_resource_limitskube_replicaset_ownerkube_resourcequotakube_namespace_status_phasekube_node_status_capacitykube_node_infokube_pod_infokube_deployment_spec_replicaskube_deployment_status_replicas_availablekube_deployment_status_replicas_updatedkube_statefulset_status_replicas_readykube_statefulset_status_replicaskube_statefulset_status_replicas_updatedkube_job_status_start_timekube_job_status_activekube_job_failedkube_horizontalpodautoscaler_status_desired_replicaskube_horizontalpodautoscaler_status_current_replicaskube_horizontalpodautoscaler_spec_min_replicaskube_horizontalpodautoscaler_spec_max_replicaskubernetes_build_infokube_node_status_conditionkube_node_spec_taintkube_pod_container_info- (ex: kube_pod_labels, kube_deployment_labels)
- (ex: kube_pod_annotations, kube_deployment_annotations)
nodeexporter
node_cpu_seconds_totalnode_memory_MemAvailable_bytesnode_memory_Buffers_bytesnode_memory_Cached_bytesnode_memory_MemFree_bytesnode_memory_Slab_bytesnode_memory_MemTotal_bytesnode_netstat_Tcp_RetransSegsnode_netstat_Tcp_OutSegsnode_netstat_TcpExt_TCPSynRetransnode_load1``node_load5node_load15node_disk_read_bytes_totalnode_disk_written_bytes_totalnode_disk_io_time_seconds_totalnode_filesystem_size_bytesnode_filesystem_avail_bytesnode_filesystem_readonlynode_network_receive_bytes_totalnode_network_transmit_bytes_totalnode_vmstat_pgmajfaultnode_network_receive_drop_totalnode_network_transmit_drop_totalnode_disk_io_time_weighted_seconds_totalnode_exporter_build_infonode_time_secondsnode_uname_info"
windowsexporter
windows_system_system_up_timewindows_cpu_time_totalwindows_memory_available_byteswindows_os_visible_memory_byteswindows_memory_cache_byteswindows_memory_modified_page_list_byteswindows_memory_standby_cache_core_byteswindows_memory_standby_cache_normal_priority_byteswindows_memory_standby_cache_reserve_byteswindows_memory_swap_page_operations_totalwindows_logical_disk_read_seconds_totalwindows_logical_disk_write_seconds_totalwindows_logical_disk_size_byteswindows_logical_disk_free_byteswindows_net_bytes_totalwindows_net_packets_received_discarded_totalwindows_net_packets_outbound_discarded_totalwindows_container_availablewindows_container_cpu_usage_seconds_totalwindows_container_memory_usage_commit_byteswindows_container_memory_usage_private_working_set_byteswindows_container_network_receive_bytes_totalwindows_container_network_transmit_bytes_total
windowskubeproxy
kubeproxy_sync_proxy_rules_duration_secondskubeproxy_sync_proxy_rules_duration_seconds_bucketkubeproxy_sync_proxy_rules_duration_seconds_sumkubeproxy_sync_proxy_rules_duration_seconds_countrest_client_requests_totalrest_client_request_duration_secondsrest_client_request_duration_seconds_bucketrest_client_request_duration_seconds_sumrest_client_request_duration_seconds_countprocess_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutines
observabilidade de rede Hubble
- Consulte Container Network Observability metrics.
networkobservabilityCilium
- Consulte Container Network Observability metrics.
controlplane-apiserver
apiserver_request_totalapiserver_cache_list_fetched_objects_totalapiserver_cache_list_returned_objects_totalapiserver_flowcontrol_demand_seats_averageapiserver_flowcontrol_current_limit_seatsapiserver_request_sli_duration_seconds_bucket{le=+inf}apiserver_request_sli_duration_seconds_countapiserver_request_sli_duration_seconds_sumprocess_start_time_secondsapiserver_request_duration_seconds_bucket{le=+inf}apiserver_request_duration_seconds_countapiserver_request_duration_seconds_sumapiserver_storage_list_fetched_objects_totalapiserver_storage_list_returned_objects_totalapiserver_current_inflight_requests
Observação
e são métricas de histograma, que têm alta cardinalidade e todas as séries não são coletadas por padrão. Somente a soma e a contagem são usadas para coletar as latências médias.
controlplane-cluster-autoscaler
rest_client_requests_totalcluster_autoscaler_last_activitycluster_autoscaler_cluster_safe_to_autoscalecluster_autoscaler_scale_down_in_cooldowncluster_autoscaler_scaled_up_nodes_totalcluster_autoscaler_unneeded_nodes_countcluster_autoscaler_unschedulable_pods_countcluster_autoscaler_nodes_countcloudprovider_azure_api_request_errorscloudprovider_azure_api_request_duration_seconds_bucketcloudprovider_azure_api_request_duration_seconds_count
controlplane-node-auto-provisioning
karpenter_pods_statekarpenter_nodes_created_totalkarpenter_nodes_terminated_totalkarpenter_nodeclaims_disrupted_totalkarpenter_voluntary_disruption_eligible_nodeskarpenter_voluntary_disruption_decisions_total
controlplane-kube-scheduler
scheduler_pending_podsscheduler_unschedulable_podsscheduler_pod_scheduling_attemptsscheduler_queue_incoming_pods_totalscheduler_preemption_attempts_totalscheduler_preemption_victimsscheduler_scheduling_attempt_duration_secondsscheduler_schedule_attempts_totalscheduler_pod_scheduling_duration_seconds
controlplane-kube-controller-manager
rest_client_request_duration_secondsrest_client_requests_totalworkqueue_depth
controlplane-etcd
etcd_server_has_leaderrest_client_requests_totaletcd_mvcc_db_total_size_in_bytesetcd_mvcc_db_total_size_in_use_in_bytesetcd_server_slow_read_indexes_totaletcd_server_slow_apply_totaletcd_network_client_grpc_sent_bytes_totaletcd_server_heartbeat_send_failures_total
acstor-capacity-provisioner (job=acstor-capacity-provisioner)
- Consulte Azure métricas de Storage de contêiner.
acstor-metrics-export (job=acstor-metrics-export)
- Consulte Azure métricas de Storage de contêiner.
Painéis
Os painéis padrão a seguir são provisionados e configurados automaticamente pelo serviço gerenciado Azure Monitor para Prometheus quando você link do workspace do monitor Azure para uma instância Azure Managed Grafana. Eles são provisionados na instância do Grafana Azure especificada na pasta Managed Prometheus. Esses dashboards são os painéis padrão da comunidade open source para monitorar clusters do Kubernetes com Prometheus e Grafana.
Kubernetes / Compute Resources / ClusterKubernetes / Compute Resources / Namespace (Pods)Kubernetes / Compute Resources / Node (Pods)Kubernetes / Compute Resources / PodKubernetes / Compute Resources / Namespace (Workloads)Kubernetes / Compute Resources / WorkloadKubernetes / KubeletNode Exporter / USE Method / NodeNode Exporter / NodesKubernetes / Compute Resources / Cluster (Windows)Kubernetes / Compute Resources / Namespace (Windows)Kubernetes / Compute Resources / Pod (Windows)Kubernetes / USE Method / Cluster (Windows)Kubernetes / USE Method / Node (Windows)
Regras de gravação
As seguintes regras de gravação padrão são configuradas automaticamente pelo serviço gerenciado do Azure Monitor para Prometheus quando você configure Prometheus métricas a serem raspadas de um cluster Azure Kubernetes Service (AKS). O código-fonte dessas regras de gravação pode ser encontrado em this GitHub repositório. Essas regras de gravação são as regras de gravação de open source padrão usadas nos painéis da seção anterior.
cluster:node_cpu:ratio_rate5mnamespace_cpu:kube_pod_container_resource_requests:sumnamespace_cpu:kube_pod_container_resource_limits:sum:node_memory_MemAvailable_bytes:sumnamespace_memory:kube_pod_container_resource_requests:sumnamespace_memory:kube_pod_container_resource_limits:sumnamespace_workload_pod:kube_pod_owner:relabelnode_namespace_pod_container:container_cpu_usage_seconds_total:sum_iratecluster:namespace:pod_cpu:active:kube_pod_container_resource_requestscluster:namespace:pod_cpu:active:kube_pod_container_resource_limitscluster:namespace:pod_memory:active:kube_pod_container_resource_requestscluster:namespace:pod_memory:active:kube_pod_container_resource_limitsnode_namespace_pod_container:container_memory_working_set_bytesnode_namespace_pod_container:container_memory_rssnode_namespace_pod_container:container_memory_cachenode_namespace_pod_container:container_memory_swapinstance:node_cpu_utilisation:rate5minstance:node_load1_per_cpu:ratioinstance:node_memory_utilisation:ratioinstance:node_vmstat_pgmajfault:rate5minstance:node_network_receive_bytes_excluding_lo:rate5minstance:node_network_transmit_bytes_excluding_lo:rate5minstance:node_network_receive_drop_excluding_lo:rate5minstance:node_network_transmit_drop_excluding_lo:rate5minstance_device:node_disk_io_time_seconds:rate5minstance_device:node_disk_io_time_weighted_seconds:rate5minstance:node_num_cpu:sumnode:windows_node:sumnode:windows_node_num_cpu:sum:windows_node_cpu_utilisation:avg5mnode:windows_node_cpu_utilisation:avg5m:windows_node_memory_utilisation::windows_node_memory_MemFreeCached_bytes:sumnode:windows_node_memory_totalCached_bytes:sum:windows_node_memory_MemTotal_bytes:sumnode:windows_node_memory_bytes_available:sumnode:windows_node_memory_bytes_total:sumnode:windows_node_memory_utilisation:rationode:windows_node_memory_utilisation:node:windows_node_memory_swap_io_pages:irate:windows_node_disk_utilisation:avg_iratenode:windows_node_disk_utilisation:avg_iratenode:windows_node_filesystem_usage:node:windows_node_filesystem_avail::windows_node_net_utilisation:sum_iratenode:windows_node_net_utilisation:sum_irate:windows_node_net_saturation:sum_iratenode:windows_node_net_saturation:sum_iratewindows_pod_container_availablewindows_container_total_runtimewindows_container_memory_usagewindows_container_private_working_set_usagewindows_container_network_received_bytes_totalwindows_container_network_transmitted_bytes_totalkube_pod_windows_container_resource_memory_requestkube_pod_windows_container_resource_memory_limitkube_pod_windows_container_resource_cpu_cores_requestkube_pod_windows_container_resource_cpu_cores_limitnamespace_pod_container:windows_container_cpu_usage_seconds_total:sum_rate
Regras de registro de visualização do Prometheus
As regras de gravação a seguir são implantadas automaticamente para dar suporte a visualizações do Prometheus.
ux:cluster_pod_phase_count:sumux:node_cpu_usage:sum_irateux:node_memory_usage:sumux:controller_pod_phase_count:sumux:controller_container_count:sumux:controller_workingset_memory:sumux:controller_cpu_usage:sum_irateux:controller_rss_memory:sumux:controller_resource_limit:sumux:controller_container_restarts:maxux:pod_container_count:sumux:pod_cpu_usage:sum_irateux:pod_workingset_memory:sumux:pod_rss_memory:sumux:pod_resource_limit:sumux:pod_container_restarts:maxux:node_network_receive_drop_total:sum_irateux:node_network_transmit_drop_total:sum_irate
As regras de gravação a seguir são necessárias para o suporte do Windows. Eles são implantados automaticamente, mas não estão habilitados por padrão. Veja como habilitar e desabilitar grupos de regras para habilitá-los.
ux:node_cpu_usage_windows:sum_irateux:node_memory_usage_windows:sumux:controller_cpu_usage_windows:sum_irateux:controller_workingset_memory_windows:sumux:pod_cpu_usage_windows:sum_irateux:pod_workingset_memory_windows:sum
Próximas etapas
Personalize a extração de métricas do Prometheus.