本章节汇总了使用阿里云Prometheus监控的常见问题。

本页目录

接入ARMS Prometheus监控后,为什么会产生额外的费用?

这可能是由于ARMS Prometheus监控内置的服务发现功能采集到了您的数据指标,因而产生相关费用。您可以通过关闭相应的服务发现功能来避免产生费用。

ARMS Prometheus监控提供的服务发现功能包含默认服务发现和自定义ServiceMonitor两部分。默认服务发现在接入后自动开启并进行指标采集。ServiceMonitor需进行手动添加,并根据配置进行指标采集。

有关服务发现功能的更多详细信息以及如何关闭服务发现,请参考管理Kubernetes集群服务发现

为什么在创建Grafana大盘时,没有Kubelet和API Server的监控指标?

目前只采集了部分免费基础指标,采集指标列表如下:

	  kube_pod_container_status_last_terminated_reason
	  rest_client_requests_total
	  scheduler_pod_scheduling_attempts_bucket
	  scheduler_pending_pods
	  scheduler_scheduler_cache_size
	  kube_node_spec_taint
	  kube_node_status_capacity_pods
	  kubelet_pleg_relist_duration_seconds_bucket
	  kubelet_node_name
	  kubelet_pod_worker_duration_seconds_bucket
	  kubelet_certificate_manager_client_ttl_seconds
	  kubelet_certificate_manager_server_ttl_seconds
	  kubelet_certificate_manager_client_expiration_renew_errors
	  kubelet_server_expiration_renew_errors
	  apiserver_client_certificate_expiration_seconds_count
	  apiserver_client_certificate_expiration_seconds_bucket
	  aggregator_unavailable_apiservice_count
	  aggregator_unavailable_apiservice
	  kubernetes_build_info
	  node_filesystem_readonly
	  node_network_receive_errs_total
	  node_network_transmit_errs_total
	  node_timex_offset_seconds
	  node_timex_sync_status
	  node_network_up
	  kube_resourcequota
	  kube_daemonset_status_current_number_scheduled
	  kube_daemonset_status_desired_number_scheduled
	  kube_daemonset_status_number_misscheduled
	  kube_daemonset_updated_number_scheduled
	  kube_daemonset_status_number_available
	  kube_job_spec_completions
	  kube_job_status_succeeded
	  kube_job_failed
	  kube_persistentvolume_status_phase
	  apiserver_dropped_requests_total
	  container_fs_inodes_total
	  container_fs_inodes_free
	  nvidia_gpu_num_devices
	  etcd_request_duration_seconds_count
	  etcd_request_duration_seconds_sum
	  etcd_object_counts
	  etcd_debugging_mvcc_keys_total
	  etcd_disk_backend_commit_duration_seconds_bucket
	  etcd_server_leader_changes_seen_total
	  etcd_server_has_leader
	  etcd_debugging_mvcc_db_total_size_in_bytes
	  nvidia_gpu_temperature_celsius
	  nvidia_gpu_memory_used_bytes
	  nvidia_gpu_memory_total_bytes
	  nvidia_gpu_power_usage_milliwatts
	  nvidia_gpu_duty_cycle
	  apiserver_request_latencies_summary
	  kube_hpa_status_condition
	  kube_hpa_labels
	  kube_hpa_metadata_generation
	  kube_resourcequota
	  kube_pod_container_status_waiting_reason
	  container_cpu_load_average_10s
	  container_network_receive_errors_total
	  container_network_receive_packets_dropped_total
	  container_network_transmit_errors_total
	  container_network_transmit_packets_dropped_total
	  container_memory_max_usage_bytes
	  container_memory_cache
	  container_memory_swap
	  container_memory_failcnt
	  kube_pod_labels
	  kube_deployment_labels
	  kube_node_labels
	  kube_pod_status_ready
	  kube_node_status_capacity
	  kube_node_status_condition
	  kube_pod_container_resource_limits
	  kubelet_volume_stats_used_bytes
	  kubelet_volume_stats_inodes_used
	  kubelet_volume_stats_inodes_free
	  kubelet_volume_stats_inodes
	  kubelet_volume_stats_capacity_bytes
	  kubelet_volume_stats_available_bytes
	  kube_pod_container_resource_limits
	  node_filesystem_usage
	  container_fs_writes_bytes_total
	  container_fs_reads_bytes_total
	  container_memory_usage_bytes
	  kube_node_labels
	  kube_deployment_status_replicas_unavailable
	  kube_job_status_failed
	  kube_job_status_active
	  kube_job_status_succeeded
	  kube_pod_container_status_restarts
	  kube_pod_container_status_terminated
	  kube_pod_container_status_waiting
	  kube_pod_container_status_running
	  kube_node_spec_unschedulable
	  kube_node_status_condition
	  kube_node_info
	  kube_node_status_allocatable_pods
	  node_filesystem_size
	  kube_deployment_status_replicas_unavailable
	  node_filesystem_free
	  node_uname_info
	  go_gc_duration_seconds
	  go_goroutines
	  container_network_transmit_bytes_total
	  container_network_receive_bytes_total
	  process_resident_memory_bytes
	  process_cpu_seconds_total
	  apiserver_current_inflight_requests
	  apiserver_longrunning_gauge
	  container_memory_rss
	  container_spec_memory_limit_bytes
	  container_network_transmit_bytes_total
	  apiserver_request_total
	  apiserver_request_count
	  apiserver_request_duration_seconds_bucket
	  kube_pod_container_resource_limits_memory_bytes
	  kube_pod_container_resource_limits_cpu_cores
	  container_accelerator_memory_total_bytes
	  container_accelerator_memory_used_bytes
	  container_accelerator_duty_cycle
	  kube_service_info
	  kube_pod_status_phase
	  node_cpu_seconds_total
	  kube_pod_labels
	  kube_deployment_spec_strategy_rollingupdate_max_unavailable
	  kube_deployment_metadata_generation
	  kube_deployment_status_observed_generation
	  kube_deployment_spec_replicas
	  kube_deployment_status_replicas_available
	  kube_deployment_spec_replicas
	  kube_deployment_status_replicas_updated
	  kube_deployment_created
	  kube_node_status_allocatable_memory_bytes
	  kube_node_status_allocatable_cpu_cores
	  kube_node_status_capacity_memory_bytes
	  kube_node_status_capacity_cpu_cores
	  kube_node_status_condition
	  container_cpu_cfs_throttled_periods_total
	  container_cpu_cfs_periods_total
	  container_cpu_cfs_throttled_seconds_total
	  kube_pod_container_resource_requests_memory_bytes
	  kube_pod_container_resource_requests_cpu_cores
	  kube_hpa_spec_max_replicas
	  kube_hpa_spec_min_replicas
	  kube_hpa_status_desired_replicas
	  kube_hpa_status_current_replicas
	  kube_pod_container_status_restarts_total
	  container_network_receive_bytes_total
	  container_memory_working_set_bytes
	  machine_memory_bytes
	  container_cpu_usage_seconds_total
	  machine_cpu_cores
	  kube_pod_info
	  kube_pod_container_info
	  container_fs_usage_bytes
	  container_fs_limit_bytes
	  kube_daemonset_created
	  kube_statefulset_created
	  kube_deployment_created
	  kube_deployment_status_replicas
	  kube_statefulset_replicas
	  kube_daemonset_status_desired_number_scheduled
	  kube_deployment_status_replicas_available
	  kube_statefulset_status_replicas
	  kube_daemonset_status_number_ready
	  kube_pod_container_resource_requests_cpu_cores
	  kube_pod_container_resource_requests_memory_bytes
	  node_boot_time_seconds
	  node_memory_MemAvailable_bytes
	  node_memory_MemTotal_bytes
	  node_memory_MemFree_bytes
	  node_memory_Buffers_bytes
	  node_memory_Cached_bytes
	  node_filefd_allocated
	  node_filesystem_avail_bytes
	  node_filesystem_size_bytes
	  node_filesystem_free_bytes
	  node_load15
	  node_load1
	  node_load5
	  node_disk_io_time_seconds_total
	  node_disk_read_time_seconds_total
	  node_disk_write_time_seconds_total
	  node_disk_reads_completed_total
	  node_disk_writes_completed_total
	  node_disk_io_now
	  node_disk_read_bytes_total
	  node_disk_written_bytes_total
	  node_disk_io_time_weighted_seconds_total
	  node_network_receive_bytes_total
	  node_network_transmit_bytes_total
	  node_netstat_Tcp_CurrEstab
	  node_sockstat_TCP_tw
	  node_netstat_Tcp_ActiveOpens
	  node_netstat_Tcp_PassiveOpens
	  node_sockstat_TCP_alloc
	  node_sockstat_TCP_inuse
	  node_exporter_build_info
	  http_request_duration_microseconds
	  http_response_size_bytes
	  http_requests_total
	  http_request_size_bytes
	  rest_client_requests_total
	  container_spec_cpu_quota
	  container_network_transmit_packets_total
	  container_fs_write_seconds_total
	  container_fs_read_seconds_total
	  kube_pod_owner
	  kube_deployment_metadata_generation
	  kube_pod_deletion_timestamp

如何查看采集到的数据?

方法一:

  1. 打开Grafana大盘概览页
  2. 在左侧导航栏单击Explore图标。
  3. Explore页面顶部下拉框中选择集群,然后在Metrics输入框中输入PromQL语句,单击右上角的Run Query进行调试。
    Prometheus Data Debug

方法二:

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表
  3. Prometheus监控页面的顶部菜单栏,选择K8s集群所在的地域,单击目标K8s集群的名称。
  4. 在左侧导航栏,单击设置
  5. 在右侧页面,单击Target(beat)页签。
  6. 单击目标Target,并单击目标Endpoint链接,获取原始输出的Metric。
    Prometheus设置-target

为什么获取不到CSI组件的Metric?

请检查ACK CSI组件版本是否为V1.18.8.45或以上,如果不是,请更新相关组件。更多信息,请参考使用csi-plugin组件监控节点侧存储资源

为什么Exporter对应的大盘看不到具体的指标?

  1. 参考如何查看采集到的数据?排查Exporter数据输出是否正常。
    如果存在异常,请按以下步骤排查。
  2. 登录ARMS控制台
  3. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表
  4. Prometheus监控页面的顶部菜单栏,选择K8s集群所在的地域,单击目标K8s集群的名称。
  5. 在左侧导航栏,单击Exporter接入
  6. 在需要排查的Exporter右侧操作列,单击日志
    查看是否有报错日志:

Grafana、Istio和HPA等第三方系统如何集成Prometheus监控?

Grafana、Istio和HPA等第三方系统集成Prometheus监控时,需要获取Prometheus监控的API接口地址。可以按照以下操作步骤获取API接口地址:

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表
  3. Prometheus监控页面左上角选择Prometheus实例所在的地域,并在目标集群右侧的操作列单击设置
  4. 在右侧页面单击设置页签。
  5. 设置页签上,根据需求复制公网或私网的HTTP API地址。
    说明 如果是云服务类型的Prometheus实例,请根据接入云服务的产品类型选择对应的HTTP API地址。
    pg_pm_settings_tab_agent_settings
  6. 可选:如果您需要提高Grafana数据读取的安全性,可以单击生成token,获取Prometheus实例的鉴权Token。
    注意 生成Token后,在Grafana中添加数据源时必须配置Token,否则可能无法读取Prometheus监控数据。
    复制Token

获取到API接口地址后,将其添加到Grafana、Istio和HPA等第三方系统中,即可集成Prometheus监控。完整的Grafana集成Prometheus监控的操作请参见将阿里云Prometheus监控数据接入本地Grafana

为什么ACK集群已删除,Prometheus Agent没有同步删除?

背景

在同一地域下,删除ACK集群后出现以下情况:

  • Prometheus控制台集群列表页面出现若干置灰集群。
  • 重新创建同名集群失败。

解决方案

Prometheus控制台中卸载Prometheus监控插件,具体操作,请参见卸载Prometheus监控插件

如何关闭对云数据库MongoDB版的监控?

若您不再需要对阿里云云数据库MongoDB版进行监控,您可以按照以下步骤卸载云数据库MongoDB版。

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表
  3. Prometheus监控页面的顶部菜单栏,选择Prometheus实例所在的地域。
    Prometheus监控页面显示了所有Prometheus实例,其中实例类型Prometheus for 云服务对应的实例为Prometheus云服务实例。sh
  4. 单击Prometheus云服务实例名称。
  5. 在左侧导航栏单击云服务接入
    云服务采集列表页面显示当前已经接入的云服务。云服务接入
  6. 单击云监控实例操作列的编辑,或者单击右上角的添加云服务
    在展开的云服务页签,取消勾选Alibaba Cloud MongoDB,然后单击确定,可关闭对云数据库MongoDB版的监控。dg

如何关闭对实时计算Flink版的监控?

若您不再需要对实时计算Flink版进行监控,您可以按照以下步骤卸载实时计算Flink版。

  1. 登录ARMS控制台
  2. 在左侧导航栏选择Prometheus监控 > Prometheus实例列表
  3. Prometheus监控页面的顶部菜单栏,选择Prometheus实例所在的地域。
    Prometheus监控页面显示了所有Prometheus实例。
  4. 单击实例类型Prometheus for Flink Serverless的实例对应操作列的卸载,然后在弹出的对话框中单击确认