Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Když povolíte shromažďování metrik Prometheus ve službě Azure Monitor z clusteru Kubernetes, použije výchozí konfiguraci pro cíle, řídicí panely a pravidla záznamu. Tento článek popisuje výchozí konfiguraci a scénáře, ve kterých se můžete rozhodnout ho přizpůsobit pro vaše konkrétní požadavky.
Minimální profil příjmu dat
Minimální profil příjmu dat je nastavení, které je ve výchozím nastavení povolené, když jsou metriky Prometheus povolené ve službě Azure Monitor pro cluster. Toto nastavení snižuje objem přijatých metrik tím, že je omezí jenom na metriky používané ve výchozím řídicím panelu, výchozích pravidlech nahrávání a výchozích upozorněních. Tyto cíle a metriky jsou uvedeny v tomto článku. Pokud je toto nastavení zakázané, shromažďují se všechny dostupné metriky pro výchozí cíle, což může výrazně zvýšit objem příjmu dat.
Nastavení minimálního profilu příjmu dat můžete změnit úpravou nastavení metrik ConfigMap, jak je popsáno v tématu Přizpůsobení výstřižků metrik Prometheus ve službě Azure Monitor pomocí ConfigMap.
Scénáře přizpůsobení
Můžete se rozhodnout použít výchozí konfiguraci nebo přizpůsobit kolekci pro vaše konkrétní požadavky. Následující tabulka uvádí čtyři potenciální scénáře shromažďování a doporučenou metodu pro dosažení každého z nich.
| Scenario | Metoda |
|---|---|
| Zpracování pouze minimálních metrik pro každý výchozí cíl. | Není potřeba žádná změna. Použijte výchozí chování beze změny. Pro každý z výchozích cílů se ingestují jenom metriky uvedené v tomto článku. |
| Ingestování několika dalších metrik pro jeden nebo více výchozích cílů kromě minimálních metrik. | Zachovejte minimální příjem dat a určete odpovídající seznamy uchování specifické pro cíl. Viz Přizpůsobení metrik shromažďovaných výchozími cíli. |
| Přijmout pouze specifickou sadu metrik pro výchozí cíl. | Zakažte minimální příjem dat a v vlastní úloze výstřižku zadejte odpovídající seznam uchování specifický pro cíl. Viz Vytvoření vlastní Prometheus scrape job z Kubernetes clusteru pomocí ConfigMap. |
| Shromáždit všechny metriky shromážděné pro výchozí cílový systém. | Zakažte minimální ingestování a nezadávejte pro tento cíl žádný seznam uchovávání. Viz přizpůsobení shromážděných metrik podle výchozích cílů |
Cíle se ve výchozím nastavení střižují
Následují cíle, které doplněk metrik služby Azure Monitor může ve výchozím nastavení sešrotovat a podmínky, za kterých jsou povolené. Viz Povolení a zakázání výchozích cílů pro povolení nebo zakázání výchozích cílů.
Ve výchozím nastavení jsou povoleny následující cíle.
cadvisornodeexporterkubeletkube-state-metricsnetworkobservabilityRetina
Pokud jsou povoleny metriky řídicí roviny (Preview), jsou povoleny následující cíle.
controlplane-apiservercontrolplane-etcd
Následující cíle jsou povoleny, pokud je povolená pozorovatelnost sítě kontejnerů .
networkobservabilityHubblenetworkobservabilityCilium
Pokud je služba Azure Container Storage povolená, jsou povoleny následující cíle.
acstor-capacity-provisioneracstor-metrics-exporter
Následující cíle jsou ve výchozím nastavení zakázané.
corednskubeproxyapiserver
Následující cíle jsou ve výchozím nastavení zakázané a vyžadují, aby byla povolená kolekce metrik Windows (Preview ).
windows-exporterkube-proxy-windows
Metriky shromážděné z výchozích cílů
Následující metriky se ve výchozím nastavení shromažďují z každého výchozího cíle. Všechny ostatní metriky jsou vyřazeny prostřednictvím pravidel opětovného označování. Aby se metriky shromáždily, musí být cíl povolený.
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_total-
kubelet_runtime_operations_duration_secondskubelet_runtime_operations_duration_seconds_bucketkubelet_runtime_operations_duration_seconds_sumkubelet_runtime_operations_duration_seconds_count -
kubelet_pod_start_duration_secondskubelet_pod_start_duration_seconds_bucketkubelet_pod_start_duration_seconds_sumkubelet_pod_start_duration_seconds_count -
kubelet_pod_worker_duration_secondskubelet_pod_worker_duration_seconds_bucketkubelet_pod_worker_duration_seconds_sumkubelet_pod_worker_duration_seconds_count -
storage_operation_duration_secondsstorage_operation_duration_seconds_bucketstorage_operation_duration_seconds_sumstorage_operation_duration_seconds_count storage_operation_errors_total-
kubelet_cgroup_manager_duration_secondskubelet_cgroup_manager_duration_seconds_bucketkubelet_cgroup_manager_duration_seconds_sumkubelet_cgroup_manager_duration_seconds_count -
kubelet_pleg_relist_duration_secondskubelet_pleg_relist_duration_seconds_bucketkubelet_pleg_relist_duration_sumkubelet_pleg_relist_duration_seconds_count -
kubelet_pleg_relist_interval_secondskubelet_pleg_relist_interval_seconds_bucketkubelet_pleg_relist_interval_seconds_sumkubelet_pleg_relist_interval_seconds_count rest_client_requests_total-
rest_client_request_duration_secondsrest_client_request_duration_seconds_bucketrest_client_request_duration_seconds_sumrest_client_request_duration_seconds_count process_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_total-
coredns_dns_request_duration_secondscoredns_dns_request_duration_seconds_bucketcoredns_dns_request_duration_seconds_sumcoredns_dns_request_duration_seconds_count -
coredns_forward_request_duration_secondscoredns_forward_request_duration_seconds_bucketcoredns_forward_request_duration_seconds_sumcoredns_forward_request_duration_seconds_count coredns_dns_requests_totalcoredns_forward_requests_totalcoredns_cache_hits_totalcoredns_cache_misses_totalcoredns_cache_entriescoredns_plugin_enabled-
coredns_dns_request_size_bytescoredns_dns_request_size_bytes_bucketcoredns_dns_request_size_bytes_sumcoredns_dns_request_size_bytes_count -
coredns_dns_response_size_bytescoredns_dns_response_size_bytes_bucketcoredns_dns_response_size_bytes_sumcoredns_dns_response_size_bytes_count -
coredns_dns_response_size_bytescoredns_dns_response_size_bytes_bucketcoredns_dns_response_size_bytes_sumcoredns_dns_response_size_bytes_count process_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
-
kubeproxy_sync_proxy_rules_duration_secondskubeproxy_sync_proxy_rules_duration_seconds_bucketkubeproxy_sync_proxy_rules_duration_seconds_sumkubeproxy_sync_proxy_rules_duration_seconds_countkubeproxy_network_programming_duration_seconds -
kubeproxy_network_programming_duration_secondskubeproxy_network_programming_duration_seconds_bucketkubeproxy_network_programming_duration_seconds_sumkubeproxy_network_programming_duration_seconds_countrest_client_requests_total -
rest_client_request_duration_secondsrest_client_request_duration_seconds_bucketrest_client_request_duration_seconds_sumrest_client_request_duration_seconds_count process_resident_memory_bytesprocess_cpu_seconds_totalgo_goroutineskubernetes_build_info"
apiserver
-
apiserver_request_duration_secondsapiserver_request_duration_seconds_bucketapiserver_request_duration_seconds_sumapiserver_request_duration_seconds_count apiserver_request_totalworkqueue_adds_total``workqueue_depth-
workqueue_queue_duration_secondsworkqueue_queue_duration_seconds_bucketworkqueue_queue_duration_seconds_sumworkqueue_queue_duration_seconds_count process_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-
kube_resource_labels(např. kube_pod_labels, kube_deployment_labels) -
kube_resource_annotations(např. 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
sledování sítě Hubble
networkobservabilityCilium
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
Poznámka:
apiserver_request_duration_seconds a apiserver_request_sli_duration_seconds jsou metriky histogramu s vysokou kardinalitou a všechny řady se ve výchozím nastavení neshromažďují. Ke shromažďování průměrných latencí se používají pouze součet a počet.
řídicírovina-klastr-automatickýškálovač
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
řídicí rovina atd.
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)
acstor-metrics-exporter (job=acstor-metrics-exporter)
Přehledy
Následující výchozí řídicí panely se automaticky zřídí a nakonfigurují spravovanou službou Azure Monitor pro Prometheus, když propojíte pracovní prostor Azure Monitoru s instancí Azure Managed Grafana. Jsou zřízeny v zadané instanci Azure Grafana ve složce Managed Prometheus. Jedná se o standardní řídicí panely komunity open source pro monitorování clusterů Kubernetes pomocí prometheus a Grafany.
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)
Pravidla nahrávání
Následující výchozí pravidla záznamu se automaticky konfigurují spravovanou službou Azure Monitor pro Prometheus, když nakonfigurujete metriky Prometheus tak, aby se z clusteru Azure Kubernetes Service (AKS) odebraly. Zdrojový kód pro tato pravidla nahrávání najdete v tomto úložišti GitHubu. Toto jsou standardní pravidla pro nahrávání open source, která se používají na výše uvedených řídicích panelech.
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
Pravidla pro nahrávání vizualizací v Prometheu
Následující pravidla nahrávání se automaticky nasadí pro podporu vizualizací 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
Pro podporu Windows jsou vyžadována následující pravidla nahrávání. Nasazují se automaticky, ale ve výchozím nastavení nejsou povolené. Podívejte se na povolení a zakázání skupin pravidel , abyste je povolili.
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