Skip to main content

Monitor Kubernetes with Nightingale

Scrapes the native /metrics of the apiserver, kubelet, controller-manager, scheduler, kube-proxy, CoreDNS, kube-state-metrics and node-exporter; templates cover every layer from control plane to Pod.

Last reviewed

Every Kubernetes component exposes Prometheus-format /metrics. The recommended path is to scrape them directly with the Categraf prometheus input and deploy kube-state-metrics (workload state) and node-exporter (node resources). The old Categraf kubernetes input is deprecated, but the dashboards and rules in this template keep working.

SourceTypical endpointTemplates it feeds
kube-apiserverhttps://<api-server>:6443/metricsAPI Server
kubelethttps://<node>:10250/metrics, /metrics/cadvisor, /metrics/resourceKubelet, Node, Pod, Container
kube-controller-managerhttps://<control-plane>:10257/metricsController Manager
kube-schedulerhttps://<control-plane>:10259/metricsScheduler
kube-proxyhttp://<node>:10249/metricsProxy
kube-state-metricshttp://<service>:8080/metricsDeployment, StatefulSet, DaemonSet, Pod state
CoreDNShttp://<coredns>:9153/metricsCoreDNS
node-exporterhttp://<node>:9100/metricsNode resources

This is the largest template in the catalog. Dashboards cover each control-plane component, nodes, Deployments, StatefulSets, DaemonSets, Pods, containers and CoreDNS. Rules cover crash-looping and Pending Pods, missing replicas, NotReady nodes and resource pressure, apiserver latency and error rate, etcd and scheduling failures, and expiring certificates. The metric reference explains the metrics component by component.

What's in the template​

  • 17 dashboards, 470 panels in total
  • 154 alert rules, each with runbook steps
  • 305 metric descriptions

How to connect​

These components expose Prometheus-format /metrics themselves, so the Categraf prometheus input scrapes them without a dedicated plugin. If a Prometheus or VictoriaMetrics instance is already scraping them, add it as a Nightingale data source and the templates work as they are.

Control-plane endpoints need a ServiceAccount token or client certificate; when Categraf runs as a DaemonSet inside the cluster, use bearer_token_file to read the mounted token. On distributions such as K3s, the scheduler, controller-manager and kube-proxy may listen on loopback only, so collect them on the control-plane node itself. Do not expose these unauthenticated endpoints to the internet for convenience.

  1. Open the integration center in Nightingale, find Kubernetes, and import the dashboards and alert rules into a business group.
  2. Imported rules start disabled. Check that the metrics are arriving first, then enable the rules one by one with thresholds that fit your environment.

Bundled dashboards​

DashboardPanels
Kubernetes / API Server13
Kubernetes / Controller Manager22
Kubernetes / Deployment / Container44
Kubernetes / Kube State Metrics21
Kubernetes / Kubelet Metrics13
Kubernetes / Pod48
Kubernetes / Scheduler20
Kubernetes / Statefulset / Container44
Kubernetes / CoreDNS11
Kubernetes / Daemonset10
Kubernetes / Deployment33
Kubernetes / Etcd20
Kubernetes / Container by categraf5
Kubernetes / Node93
Kubernetes / Cluster Overview35
Kubernetes / Proxy11
Kubernetes / StatefulSet27

Bundled alert rules​

154 rules, disabled on import so you can enable them one by one with your own thresholds. The PromQL condition and runbook steps for every rule are in the alert rule library: Kubernetes alert rules, Prometheus alert rules, Linux alert rules.

RuleSeverityFor
Deployment Pod availability below 70% (replicas above 9 pods)S1 Critical1m
Job failedS3 Info1m
Pod startup timeoutS2 Warning1m
Pod state abnormalS1 Critical1m
Pod restarting frequentlyS2 Warning1m
Container CPU usage exceeds 80%S3 Info1m
Container memory usage exceeds 80%S3 Info1m
Node CPU usage exceeds 90%S3 Info1m
Node memory usage exceeds 90%S2 Warning1m
Node not readyS1 Critical1m
Node disk usage exceeds 90%S3 Info1m
KubeClientCertificateExpiration-S2S2 Warning—
KubeClientCertificateExpiration-S1S1 Critical—
AggregatedAPIErrorsS2 Warning—
AggregatedAPIDownS2 Warning5m
KubeAPIDownS1 Critical15m
KubeAPIErrorBudgetBurn-S1-120sS1 Critical2m
KubeAPIErrorBudgetBurn-S1-900sS1 Critical15m
KubeAPIErrorBudgetBurn-S2-3600sS2 Warning60m
KubeAPIErrorBudgetBurn-S2-10800sS2 Warning180m
Deployment replicas mismatchS2 Warning10m
StatefulSet replicas mismatchS2 Warning10m
DaemonSet has unready PodsS2 Warning10m
HPA scaling failedS2 Warning5m
Pod in Failed stateS2 Warning5m
Job failedS2 Warning5m
CPUThrottlingHighS3 Info15m
KubeAggregatedAPIDownS2 Warning5m
KubeAggregatedAPIErrorsS2 Warning—
KubeAPIDownS1 Critical15m
KubeAPIErrorBudgetBurnS1 Critical2m
KubeAPITerminatedRequestsS2 Warning5m
KubeClientCertificateExpirationS2 Warning5m
KubeClientErrorsS2 Warning15m
KubeContainerWaitingS2 Warning60m
KubeControllerManagerDownS1 Critical15m
KubeCPUOvercommitS2 Warning10m
KubeCPUQuotaOvercommitS2 Warning5m
KubeDaemonSetMisScheduledS2 Warning15m
KubeDaemonSetNotScheduledS2 Warning10m
KubeDaemonSetRolloutStuckS2 Warning15m
KubeDeploymentGenerationMismatchS2 Warning15m
KubeDeploymentReplicasMismatchS2 Warning15m
KubeDeploymentRolloutStuckS2 Warning15m
KubeHpaMaxedOutS2 Warning15m
KubeHpaReplicasMismatchS2 Warning15m
KubeJobFailedS2 Warning15m
KubeJobNotCompletedS2 Warning—
KubeletClientCertificateExpirationS2 Warning—
KubeletClientCertificateRenewalErrorsS2 Warning15m
KubeletDownS1 Critical15m
KubeletPlegDurationHighS2 Warning5m
KubeletPodStartUpLatencyHighS2 Warning15m
KubeletServerCertificateExpirationS2 Warning—
KubeletServerCertificateRenewalErrorsS2 Warning15m
KubeletTooManyPodsS3 Info15m
KubeMemoryOvercommitS2 Warning10m
KubeMemoryQuotaOvercommitS2 Warning5m
KubeNodeNotReadyS2 Warning15m
KubeNodeReadinessFlappingS2 Warning15m
KubeNodeUnreachableS2 Warning15m
KubePersistentVolumeErrorsS1 Critical5m
KubePersistentVolumeFillingUpS1 Critical1m
KubePersistentVolumeInodesFillingUpS1 Critical1m
KubePodCrashLoopingS2 Warning15m
KubePodNotReadyS2 Warning15m
KubeQuotaAlmostFullS3 Info15m
KubeQuotaExceededS2 Warning15m
KubeQuotaFullyUsedS3 Info15m
KubeSchedulerDownS1 Critical15m
KubeStatefulSetGenerationMismatchS2 Warning15m
KubeStatefulSetReplicasMismatchS2 Warning15m
KubeStatefulSetUpdateNotRolledOutS2 Warning15m
KubeVersionMismatchS2 Warning15m
Node not readyS2 Warning15m
Node unreachableS2 Warning15m
Node running too many PodsS2 Warning15m
Node readiness flappingS2 Warning15m
PLEG relisting duration highS2 Warning5m
Pod startup duration highS2 Warning15m
Client certificate expiring - S2S2 Warning—
Client certificate expiring - S1S1 Critical—
Server certificate expiring - S2S2 Warning—
Server certificate expiring - S1S1 Critical—
Client certificate renewal errorsS2 Warning15m
Server certificate renewal errorsS2 Warning15m
Kubelet downS1 Critical15m
Host out of memoryS2 Warning2m
Host under memory pressureS2 Warning2m
Host inbound network throughput abnormalS2 Warning5m
Host outbound network throughput abnormalS2 Warning5m
Host disk read rate abnormalS2 Warning5m
Host disk write rate abnormalS2 Warning2m
Host out of disk spaceS2 Warning2m
Host disk will fill up within 24 hoursS2 Warning2m
Filesystem inode usage highS2 Warning2m
Filesystem inodes will fill up within 24 hoursS2 Warning2m
Host disk read latency abnormalS2 Warning2m
Host disk write latency abnormalS2 Warning2m
Node CPU load highS2 Warning—
CPU stolen by other cloud guestsS2 Warning—
Host context switching abnormalS2 Warning—
Host swap almost fullS2 Warning2m
Host system service crashedS2 Warning—
Host kernel version deviationS2 Warning360m
HostOomKill detectedS2 Warning—
Host network receive errorsS2 Warning2m
Host network transmit errorsS2 Warning2m
Host network interface saturatedS2 Warning1m
Conntrack entries approaching the limitS2 Warning5m
Host clock skewS2 Warning2m
Host clock not synchronisingS2 Warning2m
Node filesystem filling up - S2S2 Warning60m
Node filesystem filling up - S1S1 Critical60m
Node disk almost full - S2 - space - 5S2 Warning60m
Node disk almost full - S1 - space - 3S1 Critical60m
Node disk almost full - S2 - inodes - 40S2 Warning60m
Node disk almost full - S1 - inodes - 20S1 Critical60m
Node disk almost full - S2 - inodes - 5S2 Warning60m
Node disk almost full - S1 - inodes - 3S1 Critical60m
Node conntrack entries usage highS2 Warning5m
Node textfile collector scrape errorsS2 Warning—
Node network interface flappingS2 Warning2m
ConfigReloaderSidecarErrorsS2 Warning10m
PrometheusOperatorListErrorsS2 Warning15m
PrometheusOperatorNodeLookupErrorsS2 Warning10m
PrometheusOperatorNotReadyS2 Warning5m
PrometheusOperatorReconcileErrorsS2 Warning10m
PrometheusOperatorRejectedResourcesS2 Warning5m
PrometheusOperatorSyncFailedS2 Warning10m
PrometheusOperatorWatchErrorsS2 Warning15m
ConfigReloaderSidecarErrorsS2 Warning10m
PrometheusBadConfigS1 Critical10m
PrometheusDuplicateTimestampsS2 Warning10m
PrometheusErrorSendingAlertsToAnyAlertmanagerS1 Critical15m
PrometheusErrorSendingAlertsToSomeAlertmanagersS2 Warning15m
PrometheusHighQueryLoadS2 Warning15m
PrometheusLabelLimitHitS2 Warning15m
PrometheusMissingRuleEvaluationsS2 Warning15m
PrometheusNotConnectedToAlertmanagersS2 Warning10m
PrometheusNotificationQueueRunningFullS2 Warning15m
PrometheusNotIngestingSamplesS2 Warning10m
PrometheusOutOfOrderTimestampsS2 Warning10m
PrometheusRemoteStorageFailuresS1 Critical15m
PrometheusRemoteWriteBehindS1 Critical15m
PrometheusRemoteWriteDesiredShardsS2 Warning15m
PrometheusRuleFailuresS1 Critical15m
PrometheusScrapeBodySizeLimitHitS2 Warning15m
PrometheusScrapeSampleLimitHitS2 Warning15m
PrometheusSDRefreshFailureS2 Warning20m
PrometheusTargetLimitHitS2 Warning15m
PrometheusTargetSyncFailureS1 Critical5m
PrometheusTSDBCompactionsFailingS2 Warning240m
PrometheusTSDBReloadsFailingS2 Warning240m

Metric reference​

305 metrics, the ones the dashboards and rules above are built on.

MetricMeaningUnit
sum(rate(coredns_dns_requests_total{}[5m])) by (proto,instance)CoreDNS Request Rate — Metric exposed by CoreDNS itself
sum(rate(coredns_dns_requests_total{}[5m])) by (type,instance)CoreDNS Request Rate (by record type) — Metric exposed by CoreDNS itself
sum(rate(coredns_dns_do_requests_total{}[5m])) by (instance)CoreDNS Request Rate (DO flag) — Metric exposed by CoreDNS itself
histogram_quantile(0.99,sum(rate(coredns_dns_request_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Request Packet Size P99 — Metric exposed by CoreDNS itself
histogram_quantile(0.90,sum(rate(coredns_dns_request_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Request Packet Size P90 — Metric exposed by CoreDNS itself
histogram_quantile(0.50,sum(rate(coredns_dns_request_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Request Packet Size P50 — Metric exposed by CoreDNS itself
histogram_quantile(0.99,sum(rate(coredns_dns_request_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Request Packet Size P99 — Metric exposed by CoreDNS itself
histogram_quantile(0.90,sum(rate(coredns_dns_request_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Request Packet Size P90 — Metric exposed by CoreDNS itself
histogram_quantile(0.50,sum(rate(coredns_dns_request_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Request Packet Size P50 — Metric exposed by CoreDNS itself
sum(rate(coredns_dns_responses_total{}[5m])) by(rcode,instance)CoreDNS Response Rate (by response code) — Metric exposed by CoreDNS itself
histogram_quantile(0.99,sum(rate(coredns_dns_request_duration_seconds_bucket{}[5m])) by(le,job,instance))CoreDNS Response Latency P99 — Metric exposed by CoreDNS itself
histogram_quantile(0.90,sum(rate(coredns_dns_request_duration_seconds_bucket{}[5m])) by(le,job,instance))CoreDNS Response Latency P90 — Metric exposed by CoreDNS itself
histogram_quantile(0.50,sum(rate(coredns_dns_request_duration_seconds_bucket{}[5m])) by(le,job,instance))CoreDNS Response Latency P50 — Metric exposed by CoreDNS itself
histogram_quantile(0.99,sum(rate(coredns_dns_response_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Response Packet Size P99 — Metric exposed by CoreDNS itself
histogram_quantile(0.90,sum(rate(coredns_dns_response_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Response Packet Size P90 — Metric exposed by CoreDNS itself
histogram_quantile(0.50,sum(rate(coredns_dns_response_size_bytes_bucket{proto="udp"}[5m])) by(le,proto,instance))CoreDNS UDP Response Packet Size P50 — Metric exposed by CoreDNS itself
histogram_quantile(0.99,sum(rate(coredns_dns_response_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Response Packet Size P99 — Metric exposed by CoreDNS itself
histogram_quantile(0.90,sum(rate(coredns_dns_response_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Response Packet Size P90 — Metric exposed by CoreDNS itself
histogram_quantile(0.50,sum(rate(coredns_dns_response_size_bytes_bucket{proto="tcp"}[5m])) by(le,proto,instance))CoreDNS TCP Response Packet Size P50 — Metric exposed by CoreDNS itself
sum (coredns_cache_entries{}) by(type,instance)CoreDNS Cached DNS Records — Metric exposed by CoreDNS itself
sum (rate(coredns_cache_hits_total{}[5m])) by (type,instance)CoreDNS Cache Hit Rate — Metric exposed by CoreDNS itself
sum (rate(coredns_cache_misses_total{}[5m])) by (type,instance)CoreDNS Cache Miss Rate — Metric exposed by CoreDNS itself
kube_cronjob_infoCronJob Information — CronJob metric from kube-state-metrics
kube_cronjob_labelsKubernetes Labels Converted to Prometheus Labels — CronJob metric from kube-state-metrics
kube_cronjob_createdCreation Unix Timestamp — CronJob metric from kube-state-metrics
kube_cronjob_next_schedule_timeNext Schedule Time — CronJob metric from kube-state-metrics
kube_cronjob_status_activeCurrently Active Jobs — CronJob metric from kube-state-metrics
kube_cronjob_status_last_schedule_timeLast Successful Schedule Time — CronJob metric from kube-state-metrics
kube_cronjob_spec_suspendSuspend Flag — CronJob metric from kube-state-metrics
kube_cronjob_spec_starting_deadline_secondsJob Starting Deadline (seconds) — CronJob metric from kube-state-metrics
apiserver_request_duration_secondsRequest Duration Distribution by URL and Verb — Metric exposed by the apiserver itself Type: histogram
apiserver_request_totalTotal API Server Requests — Metric exposed by the apiserver itself Type: counter
apiserver_current_inflight_requestsCurrent Inflight Requests — Metric exposed by the apiserver itself Type: gauge
apiserver_response_sizesResponse Size Distribution (bytes) — Metric exposed by the apiserver itself Type: histogram
watch_cache_capacityWatch Cache Capacity by Resource Type — Metric exposed by the apiserver itself Type: gauge
process_cpu_seconds_totalTotal Process CPU Time (seconds) — Metric exposed by the apiserver itself Type: counter
process_resident_memory_bytesResident Memory Usage (bytes) — Metric exposed by the apiserver itself Type: gauge
workqueue_adds_totalTotal Workqueue Additions — Metric exposed by the apiserver itself Type: counter
workqueue_depthWorkqueue Depth — Metric exposed by the apiserver itself Type: gauge
kube_configmap_infoConfigMap Information — ConfigMap metric from kube-state-metrics
kube_configmap_createdCreation Unix Timestamp — ConfigMap metric from kube-state-metrics
kube_configmap_metadata_resource_versionConfigMap Resource Version — ConfigMap metric from kube-state-metrics
container_cpu_cfs_periods_totalTotal CFS Scheduling Periods — Container metric exposed by cAdvisor Type: counter
container_cpu_cfs_throttled_periods_totalTotal Throttled CFS Periods — Container metric exposed by cAdvisor Type: counter
container_cpu_cfs_throttled_seconds_totalTotal CPU Throttled Time — Container metric exposed by cAdvisor Type: counter
container_file_descriptorsOpen File Descriptors — Container metric exposed by cAdvisor Type: gauge
container_memory_usage_bytesContainer Memory Usage (bytes) — Container metric exposed by cAdvisor Type: gauge
container_network_receive_bytes_totalTotal Network Receive Bytes — Container metric exposed by cAdvisor Type: counter
container_network_transmit_bytes_totalTotal Network Transmit Bytes — Container metric exposed by cAdvisor Type: counter
container_spec_cpu_periodContainer CPU Scheduling Period — Container metric exposed by cAdvisor Type: gauge
container_spec_cpu_quotaContainer CPU Quota — Container metric exposed by cAdvisor Type: gauge
container_spec_memory_limit_bytesContainer Memory Limit (bytes) — Container metric exposed by cAdvisor Type: gauge
container_threadsCurrent Thread Count — Container metric exposed by cAdvisor Type: gauge
container_threads_maxMaximum Thread Count — Container metric exposed by cAdvisor Type: gauge
rest_client_request_duration_secondsAPI Server Request Latency Distribution (by URL and Verb) — Metric of the controller-manager service itself. Type: histogram
cronjob_controller_cronjob_job_creation_skew_duration_secondsCronJob Creation-to-Run Time Distribution — Metric of the controller-manager service itself. Type: histogram
leader_election_master_statusController Leader Election Status (0: Backup, 1: Master) — Metric of the controller-manager service itself. Type: gauge
node_collector_zone_healthHealthy Node Ratio per Zone — Metric of the controller-manager service itself. Type: gauge
node_collector_zone_sizeNode Count per Zone — Metric of the controller-manager service itself. Type: gauge
process_cpu_seconds_totalCPU Usage (Can Be Used as CPU Utilization) — Metric of the controller-manager service itself. Type: counter
process_open_fdsOpen File Descriptors of Controller — Metric of the controller-manager service itself. Type: gauge
pv_collector_bound_pv_countCurrently Bound PV Count — Metric of the controller-manager service itself. Type: gauge
pv_collector_unbound_pvc_countCurrently Unbound PVC Count — Metric of the controller-manager service itself. Type: gauge
pv_collector_bound_pvc_countCurrently Bound PVC Count — Metric of the controller-manager service itself. Type: gauge
pv_collector_total_pv_countTotal PV Count — Metric of the controller-manager service itself. Type: gauge
workqueue_adds_totalTotal Tasks Accepted by Each Controller — Metric of the controller-manager service itself. Type: counter
workqueue_depthWorkqueue Depth per Controller (Number of Tasks in a Controller) — Metric of the controller-manager service itself. Type: gauge
workqueue_queue_duration_secondsTask Wait Time in Queue (by Controller) — Metric of the controller-manager service itself. Type: histogram
workqueue_work_duration_secondsTask Processing Time From Dequeue to Completion (by Controller) — Metric of the controller-manager service itself. Type: histogram
workqueue_retries_totalTotal Task Retries in Workqueue — Metric of the controller-manager service itself. Type: counter
workqueue_longest_running_processor_secondsLongest Running Task Processing Time — Metric of the controller-manager service itself. Type: gauge
endpoint_slice_controller_syncsEndpointSlice Sync Count (1.20+) — Metric of the controller-manager service itself. Type: counter
get_token_fail_countToken Fetch Failure Count — Metric of the controller-manager service itself. Type: counter
go_memstats_gc_cpu_fractionGC CPU Fraction of Controller — Metric of the controller-manager service itself. Type: gauge
kube_daemonset_createdCreation Unix Timestamp — DaemonSet metric from kube-state-metrics
kube_daemonset_status_current_number_scheduledNodes Running at Least One Daemon Pod — DaemonSet metric from kube-state-metrics
kube_daemonset_status_desired_number_scheduledNodes That Should Run Daemon Pods — DaemonSet metric from kube-state-metrics
kube_daemonset_status_number_availableNodes with Available Daemon Pods — DaemonSet metric from kube-state-metrics
kube_daemonset_status_number_misscheduledNodes Running Daemon Pods That Should Not — DaemonSet metric from kube-state-metrics
kube_daemonset_status_number_readyNodes with Ready Daemon Pods — DaemonSet metric from kube-state-metrics
kube_daemonset_status_number_unavailableNodes with No Available Daemon Pods — DaemonSet metric from kube-state-metrics
kube_daemonset_updated_number_scheduledNodes Running Updated Daemon Pods — DaemonSet metric from kube-state-metrics
kube_daemonset_metadata_generationDesired State Generation Sequence Number — DaemonSet metric from kube-state-metrics
kube_daemonset_labelsKubernetes Labels Converted to Prometheus Labels — DaemonSet metric from kube-state-metrics
kube_deployment_status_replicasReplicas per Deployment — Deployment metric from kube-state-metrics.
kube_deployment_status_replicas_availableAvailable Replicas per Deployment — Deployment metric from kube-state-metrics.
kube_deployment_status_replicas_unavailableUnavailable Replicas per Deployment — Deployment metric from kube-state-metrics.
kube_deployment_status_replicas_updatedUpdated Replicas per Deployment — Deployment metric from kube-state-metrics.
kube_deployment_status_observed_generationGeneration Observed by the Deployment Controller — Deployment metric from kube-state-metrics.
kube_deployment_status_conditionCurrent Status Condition of Deployment — Deployment metric from kube-state-metrics.
kube_deployment_spec_replicasDesired Pods for Deployment — Deployment metric from kube-state-metrics.
kube_deployment_spec_pausedDeployment Paused (Not Processed by the Deployment Controller) — Deployment metric from kube-state-metrics.
kube_deployment_spec_strategy_rollingupdate_max_unavailableMax Unavailable Replicas During Deployment Rolling Update — Deployment metric from kube-state-metrics.
kube_deployment_spec_strategy_rollingupdate_max_surgeMax Surge Replicas During Deployment Rolling Update — Deployment metric from kube-state-metrics.
kube_deployment_metadata_generationSequence Number Representing a Specific Generation of the Desired State — Deployment metric from kube-state-metrics.
kube_deployment_labelsKubernetes Labels Converted to Prometheus Labels — Deployment metric from kube-state-metrics.
kube_deployment_createdCreation Unix Timestamp — Deployment metric from kube-state-metrics.
kube_endpoint_address_not_readyNot Ready Addresses in Endpoint — Endpoint metric from kube-state-metrics
kube_endpoint_address_availableAvailable Addresses in Endpoint — Endpoint metric from kube-state-metrics
kube_endpoint_infoEndpoint Information — Endpoint metric from kube-state-metrics
kube_endpoint_labelsKubernetes Labels Converted to Prometheus Labels — Endpoint metric from kube-state-metrics
kube_endpoint_createdCreation Unix Timestamp — Endpoint metric from kube-state-metrics
etcd_server_is_leaderLeader Indicator (1: leader, 0: learner) — Metric exposed by the etcd service itself Type: gauge
etcd_server_health_successHealth Check Successes — Metric exposed by the etcd service itself Type: counter
etcd_server_health_failuresHealth Check Failures — Metric exposed by the etcd service itself Type: counter
etcd_disk_defrag_inflightDefragmentation In Progress (1: defragmenting, 0: not started) — Metric exposed by the etcd service itself Type: gauge
etcd_server_snapshot_apply_in_progress_totalSnapshot Apply In Progress (1: in progress, 0: not) — Metric exposed by the etcd service itself Type: gauge
etcd_server_leader_changes_seen_totalCluster Leader Changes — Metric exposed by the etcd service itself Type: counter
grpc_server_handled_totalgRPC Calls Total — Metric exposed by the etcd service itself Type: counter
etcd_disk_wal_fsync_duration_secondsWAL Fsync Duration — Metric exposed by the etcd service itself Type: histogram
etcd_server_proposals_failed_totalFailed Proposals Total (a proposal is one request going through the Raft protocol) — Metric exposed by the etcd service itself Type: counter
etcd_server_proposals_pendingPending Proposals (a proposal is one request going through the Raft protocol) — Metric exposed by the etcd service itself Type: gauge
etcd_server_read_indexes_failed_totalRead Index Failures Total (v3 indexes every key to speed up range operations) — Metric exposed by the etcd service itself Type: counter
etcd_server_slow_read_indexes_totalSlow Read Indexes Total (stale index reads or read timeouts) — Metric exposed by the etcd service itself Type: counter
etcd_server_quota_backend_bytesBackend Storage Quota (DB size limit, set via quota-backend-bytes; default 2G, officially recommended not to exceed 8G) — Metric exposed by the etcd service itself Type: gauge
etcd_mvcc_db_total_size_in_bytesAllocated DB Size (in-use size + free size) — Metric exposed by the etcd service itself Type: gauge
etcd_mvcc_db_total_size_in_use_in_bytesDB Size In Use — Metric exposed by the etcd service itself Type: gauge
etcd_mvcc_range_totalRange Operations Total — Metric exposed by the etcd service itself Type: counter
etcd_mvcc_put_totalPut Operations Total — Metric exposed by the etcd service itself Type: counter
etcd_mvcc_txn_totalTransactions Total — Metric exposed by the etcd service itself Type: counter
etcd_mvcc_delete_totalDelete Operations Total — Metric exposed by the etcd service itself Type: counter
process_cpu_seconds_totaletcd CPU Usage — Metric exposed by the etcd service itself Type: counter
process_resident_memory_bytesetcd Memory Usage — Metric exposed by the etcd service itself Type: gauge
process_open_fdsetcd Open File Descriptors — Metric exposed by the etcd service itself Type: gauge
kube_job_infoJob Information — Job metric from kube-state-metrics.
kube_job_labelsKubernetes Labels Converted to Prometheus Labels — Job metric from kube-state-metrics.
kube_job_ownerJob Owner Information — Job metric from kube-state-metrics.
kube_job_spec_parallelismMaximum Desired Pods Running at Any Given Time — Job metric from kube-state-metrics.
kube_job_spec_completionsDesired Successful Pod Completions — Job metric from kube-state-metrics.
kube_job_spec_active_deadline_secondsActive Deadline Relative to StartTime Before Termination (Seconds) — Job metric from kube-state-metrics.
kube_job_status_activeActively Running Pods — Job metric from kube-state-metrics.
kube_job_status_succeededPods That Reached Succeeded Phase — Job metric from kube-state-metrics.
kube_job_status_failedPods That Reached Failed Phase — Job metric from kube-state-metrics.
kube_job_status_start_timeJob Start Time (Acknowledged by the Job Manager) — Job metric from kube-state-metrics.
kube_job_status_completion_timeJob Completion Time — Job metric from kube-state-metrics.
kube_job_completeJob Completed — Job metric from kube-state-metrics.
kube_job_failedJob Failed — Job metric from kube-state-metrics.
kube_job_createdCreation Unix Timestamp — Job metric from kube-state-metrics.
node_netstat_Tcp_CurrEstab * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Current TCP Connections — Node indicators Type: *
node_filefd_allocated * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Number of file descriptors used — Node indicators Type: *
node_filefd_maximum * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}File Descriptor Maximum Limit — Node indicators Type: *
100 - (node_filesystem_files_free * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"} / node_filesystem_files * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"} * 100)File system inode usage — Node indicators Type:-
100 - ((node_filesystem_avail_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"} * 100) / node_filesystem_size_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})File system usage — Node indicators Type:-
sum(node_filesystem_device_error * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}) by (mountpoint)Number of file system errors — Node indicators Type: *
rate(node_disk_io_now[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Disk IO usage — Node indicators Type: *
rate(node_disk_writes_completed_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Disk Write IOPS — Node indicators Type: *
rate(node_disk_written_bytes_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Disk write rate — Node indicators Type: *
rate(node_disk_reads_completed_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Disk Read IOPS — Node indicators Type: *
rate(node_disk_read_bytes_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Disk read rate — Node indicators Type: *
rate(node_context_switches_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}System context switching rate — Node indicators Type: *
rate(node_intr_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}System interruption rate — Node indicators Type: *
sum(rate(node_network_transmit_drop_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network transmission packet loss rate — Node indicators Type: *
sum(rate(node_network_transmit_bytes_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network transmission bandwidth — Node indicators Type: *
sum(rate(node_network_transmit_errs_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network transmission error rate — Node indicators Type: *
sum(rate(node_network_receive_drop_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network reception packet loss rate — Node indicators Type: *
sum(rate(node_network_receive_bytes_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network reception bandwidth — Node indicators Type: *
sum(rate(node_network_receive_errs_total[5m]) * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Network reception error rate — Node indicators Type: *
node_nf_conntrack_entries * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Number of network connection tracking entries — Node indicators Type: *
node_nf_conntrack_entries_limit * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Network connection tracking restrictions — Node indicators Type: *
sum by (instance) (rate(node_cpu_seconds_total{mode!~"idle|iowait|steal"}[5m])) * on(instance) group_left(nodename) node_uname_info{nodename=~"$node_name"} *100Node CPU usage — Node indicators Type: by
node_load15 * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node 15-minute load — Node indicators Type: *
node_load1 * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node 1 minute load — Node indicators Type: *
node_load5 * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node 5-minute load — Node indicators Type: *
node_memory_SwapTotal_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"} - node_memory_SwapFree_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node Swap usage — Node indicators Type: *
node_memory_SwapTotal_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Total Node Swap — Node indicators Type: *
sum(kube_pod_info * on(node) group_left(nodename) node_uname_info{nodename=~"$node_name"})Number of Pods running on a node — Node indicators Type: *
sum(node_memory_MemTotal_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"} - node_memory_MemAvailable_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}) / sum(node_memory_MemTotal_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"})Node memory usage — Node indicators Type: *
node_memory_MemAvailable_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node memory details-Available — Node indicators Type: *
node_memory_MemTotal_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node Memory Details-Total — Node indicators Type: *
node_memory_MemFree_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node memory details-free — Node indicators Type: *
node_memory_Buffers_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node Memory Details-Buffer — Node indicators Type: *
node_memory_Cached_bytes * on(instance, cluster) group_left(nodename) node_uname_info{nodename=~"$node_name"}Node Memory Details-Cache — Node indicators Type: *
sum(container_fs_inodes_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)Number of Inodes — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(container_tasks_state{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*", state="uninterruptible"}) by (name)Number of uninterruptible tasks — Pod's own indicators Type: pod = ~ "$pod _ name",
(sum(container_memory_cache{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name))Container cache use — Pod's own indicators Type: pod = ~ "$pod _ name",
(sum(container_spec_cpu_quota{namespace="$namespace", pod=~"$pod_name"}/container_spec_cpu_period{namespace="$namespace", pod=~"$pod_name"}) by (name))Container CPU Limit — Pod's own indicators Type: pod = ~ "$pod _ name"}/container _ spec _ cpu _ period {namespace = "$namespace",
sum(container_cpu_load_average_10s{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)Container CPU load 10 — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_cpu_usage_seconds_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])*100) by(name)Container CPU usage — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_cpu_usage_seconds_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])*100) by(name)/((sum(container_spec_cpu_quota{namespace="$namespace", pod=~"$pod_name"}/container_spec_cpu_period{namespace="$namespace", pod=~"$pod_name"}) by (name)))Container CPU usage after normalization — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(container_fs_io_current{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)Container I/O — Pod's own indicators Type: pod = ~ "$pod _ name",
(sum(container_memory_rss{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name))Container RSS memory usage — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(container_spec_memory_limit_bytes{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)Container Memory Limit — Pod's own indicators Type: pod = ~ "$pod _ name",
(sum(container_memory_usage_bytes{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name))Container memory usage — Pod's own indicators Type: pod = ~ "$pod _ name",
((sum(container_memory_usage_bytes{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)) /(sum(container_spec_memory_limit_bytes{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)))*100Container memory usage — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_cpu_system_seconds_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])*100) by(name)Container kernel mode CPU usage — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_cpu_cfs_throttled_periods_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m]))by(name) *100The rate at which container CPU throttle occurs — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(container_oom_events_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)Number of OOM occurrences for container — Pod's own indicators Type: pod = ~ "$pod _ name",
sum((time()-container_start_time_seconds{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"})) by (name)Container startup time (hours) — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(container_fs_usage_bytes{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}) by (name)File system size used by the container — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_cpu_user_seconds_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])*100) by(name)Container user mode CPU usage — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_fs_writes_bytes_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])) by(name)File system write rate — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_fs_reads_bytes_total{namespace="$namespace", pod=~"$pod_name", image!~".*pause.*"}[1m])) by(name)File system read rate — Pod's own indicators Type: pod = ~ "$pod _ name",
sum(rate(container_network_transmit_packets_dropped_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Number of packets lost by network transmission — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_transmit_packets_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)The network sends packets — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_transmit_bytes_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Network transmission rate — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_transmit_errors_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Number of network transmission errors — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_receive_packets_dropped_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Number of packet losses received by network — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_receive_packets_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Number of packets received by network — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_receive_bytes_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Network reception rate — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
sum(rate(container_network_receive_errors_total{namespace="$namespace", pod=~"$pod_name"}[1m])) by(name, interface)Number of network reception errors — Pod's own indicators Type: pod = ~ "$pod _ name"} [1m]))
go_gc_duration_secondsGC Duration — Metric of the kube-proxy service itself. Type: summary
go_goroutinesGoroutine Count — Metric of the kube-proxy service itself. Type: gauge
go_threadsThread Count — Metric of the kube-proxy service itself. Type: gauge
kubeproxy_network_programming_duration_secondsTime From Service/Pod Change to kube-proxy Rule Sync Completion (See kubernetes/community network_programming_latency.md) — Metric of the kube-proxy service itself. Type: histogram
kubeproxy_sync_proxy_rules_duration_secondsProxy Rule Sync Duration — Metric of the kube-proxy service itself. Type: histogram
kubeproxy_sync_proxy_rules_endpoint_changes_pendingPending Rule Syncs From Endpoint Changes — Metric of the kube-proxy service itself. Type: gauge
kubeproxy_sync_proxy_rules_endpoint_changes_totalTotal Rule Syncs From Endpoint Changes — Metric of the kube-proxy service itself. Type: counter
kubeproxy_sync_proxy_rules_iptables_restore_failures_totalTotal iptables Restore Failures on Host — Metric of the kube-proxy service itself. Type: counter
kubeproxy_sync_proxy_rules_last_queued_timestamp_secondsLast Rule Sync Request Timestamp (Sync Is Hung if Much Larger Than kubeproxy_sync_proxy_rules_last_timestamp_seconds) — Metric of the kube-proxy service itself. Type: gauge
kubeproxy_sync_proxy_rules_last_timestamp_secondsLast Rule Sync Completion Timestamp — Metric of the kube-proxy service itself. Type: gauge
kubeproxy_sync_proxy_rules_service_changes_pendingPending Rule Syncs From Service Changes — Metric of the kube-proxy service itself. Type: gauge
kubeproxy_sync_proxy_rules_service_changes_totalTotal Rule Syncs From Service Changes — Metric of the kube-proxy service itself. Type: counter
process_cpu_seconds_totalTotal CPU Seconds (Used to Compute CPU Utilization) — Metric of the kube-proxy service itself. Type: counter
process_max_fdsMax Open File Descriptors of Process — Metric of the kube-proxy service itself. Type: gauge
process_open_fdsCurrent Open File Descriptors of Process — Metric of the kube-proxy service itself. Type: gauge
process_resident_memory_bytesResident Memory Usage — Metric of the kube-proxy service itself. Type: gauge
process_start_time_secondsProcess Start Timestamp — Metric of the kube-proxy service itself. Type: gauge
rest_client_request_duration_secondsAPI Server Request Latency (by URL and Verb) — Metric of the kube-proxy service itself. Type: histogram
rest_client_requests_totalTotal API Server Requests (by Code, Method, Host) — Metric of the kube-proxy service itself. Type: counter
go_gc_duration_secondsGC Duration (Summary Metric) — Metric exposed by the kubelet service itself Type: summary
go_goroutinesGoroutine Count — Metric exposed by the kubelet service itself Type: gauge
go_threadsThread Count — Metric exposed by the kubelet service itself Type: gauge
kubelet_cgroup_manager_duration_secondsCgroup Operation Duration (by operation type) — Metric exposed by the kubelet service itself Type: histogram
kubelet_containers_per_pod_countContainers per Pod (count of spec.containers) — Metric exposed by the kubelet service itself Type: histogram
kubelet_docker_operations_duration_secondsDocker Operation Duration (by operation type) — Metric exposed by the kubelet service itself Type: histogram
kubelet_docker_operations_errors_totalDocker Operation Errors Total (by operation type) — Metric exposed by the kubelet service itself Type: counter
kubelet_docker_operations_timeout_totalDocker Operation Timeouts Total (by operation type) — Metric exposed by the kubelet service itself Type: counter
kubelet_docker_operations_totalDocker Operations Total (by operation type) — Metric exposed by the kubelet service itself Type: counter
kubelet_eviction_stats_age_secondsEviction Stats Age (by eviction signal) — Metric exposed by the kubelet service itself Type: histogram
kubelet_evictionsEvictions Total (by eviction signal) — Metric exposed by the kubelet service itself Type: counter
kubelet_http_inflight_requestsKubelet Inflight HTTP Requests (by method/path/server_type, distinct from requests per second) — Metric exposed by the kubelet service itself Type: gauge
kubelet_http_requests_duration_secondsKubelet HTTP Request Duration (by method/path/server_type) — Metric exposed by the kubelet service itself Type: histogram
kubelet_http_requests_totalKubelet HTTP Requests Total (by method/path/server_type) — Metric exposed by the kubelet service itself Type: counter
kubelet_managed_ephemeral_containersCurrently Managed Ephemeral Containers — Metric exposed by the kubelet service itself Type: gauge
kubelet_network_plugin_operations_duration_secondsNetwork Plugin Operation Duration (by operation_type; always 0 when --feature-gates=EphemeralContainers=false) — Metric exposed by the kubelet service itself Type: histogram
kubelet_network_plugin_operations_errors_totalNetwork Plugin Operation Errors Total (by operation_type) — Metric exposed by the kubelet service itself Type: counter
kubelet_network_plugin_operations_totalNetwork Plugin Operations Total (by operation_type) — Metric exposed by the kubelet service itself Type: counter
kubelet_node_nameNode Name — Metric exposed by the kubelet service itself Type: gauge
kubelet_pleg_discard_eventsPLEG (Pod Lifecycle Event Generator) Discarded Events — Metric exposed by the kubelet service itself Type: counter
kubelet_pleg_last_seen_secondsPLEG Last Seen Timestamp — Metric exposed by the kubelet service itself Type: gauge
kubelet_pleg_relist_duration_secondsPLEG Relist Duration — Metric exposed by the kubelet service itself Type: histogram
kubelet_pleg_relist_interval_secondsPLEG Relist Interval — Metric exposed by the kubelet service itself Type: histogram
kubelet_pod_start_duration_secondsPod Start Duration (from pending to running, i.e. from when kubelet sees the pod until all its containers are running; pod changes are watched from various source channels) — Metric exposed by the kubelet service itself Type: histogram
kubelet_pod_worker_duration_secondsPod Worker Duration (by operation type: create/update/sync; a worker is kubelet's logical unit for handling a single pod) — Metric exposed by the kubelet service itself Type: histogram
kubelet_pod_worker_start_duration_secondsPod Worker Start Duration (from kubelet seeing the pod to worker start) — Metric exposed by the kubelet service itself Type: histogram
kubelet_run_podsandbox_duration_secondsPod Sandbox Start Duration — Metric exposed by the kubelet service itself Type: histogram
kubelet_run_podsandbox_errors_totalPod Sandbox Start Errors Total — Metric exposed by the kubelet service itself Type: counter
kubelet_running_containersRunning Containers (by container state: created/running/exited) — Metric exposed by the kubelet service itself Type: gauge
kubelet_running_podsCurrently Running Pods — Metric exposed by the kubelet service itself Type: gauge
kubelet_runtime_operations_duration_secondsContainer Runtime Operation Duration (container create/list/exec/remove/stop, etc.) — Metric exposed by the kubelet service itself Type: histogram
kubelet_runtime_operations_errors_totalContainer Runtime Operation Errors Total (by operation type) — Metric exposed by the kubelet service itself Type: counter
kubelet_runtime_operations_totalContainer Runtime Operations Total (by operation type) — Metric exposed by the kubelet service itself Type: counter
kubelet_started_containers_errors_totalKubelet Started Container Errors Total (by code and container_type) — Metric exposed by the kubelet service itself Type: counter
kubelet_started_containers_totalKubelet Started Containers Total — Metric exposed by the kubelet service itself Type: counter
kubelet_started_pods_errors_totalKubelet Started Pod Errors Total (counted only when sandbox creation fails) — Metric exposed by the kubelet service itself Type: counter
kubelet_started_pods_totalKubelet Started Pods Total — Metric exposed by the kubelet service itself Type: counter
process_cpu_seconds_totalCPU Usage — Metric exposed by the kubelet service itself Type: counter
process_max_fdsMax Allowed Open File Descriptors — Metric exposed by the kubelet service itself Type: gauge
process_open_fdsCurrently Open File Descriptors — Metric exposed by the kubelet service itself Type: gauge
process_resident_memory_bytesProcess Resident Memory Size — Metric exposed by the kubelet service itself Type: gauge
process_start_time_secondsProcess Start Time — Metric exposed by the kubelet service itself Type: gauge
rest_client_request_duration_secondsAPI Server Request Duration (by URL and request verb) — Metric exposed by the kubelet service itself Type: histogram
rest_client_requests_totalAPI Server Requests Total (by response code and request method) — Metric exposed by the kubelet service itself Type: counter
storage_operation_duration_secondsStorage Operation Duration (by storage plugin such as configmap/emptydir/hostpath and operation_name) — Metric exposed by the kubelet service itself Type: histogram
volume_manager_total_volumesVolumes Mounted on Node (by plugin_name and state; plugin_name includes "host-path", "empty-dir", "configmap", "projected"; state is desired_state_of_world or actual_state_of_world) — Metric exposed by the kubelet service itself Type: gauge
kube_namespace_createdCreation Unix Timestamp — Namespace metric from kube-state-metrics
kube_namespace_labelsKubernetes Labels Converted to Prometheus Labels — Namespace metric from kube-state-metrics
kube_namespace_status_conditionNamespace Condition — Namespace metric from kube-state-metrics
kube_namespace_status_phaseNamespace Status Phase — Namespace metric from kube-state-metrics
kube_node_infoCluster Node Information — Node metric from kube-state-metrics
kube_node_labelsKubernetes Labels Converted to Prometheus Labels — Node metric from kube-state-metrics
kube_node_roleCluster Node Role — Node metric from kube-state-metrics
kube_node_spec_unschedulableWhether Node Can Schedule New Pods — Node metric from kube-state-metrics
kube_node_spec_taintCluster Node Taints — Node metric from kube-state-metrics
kube_node_status_capacityNode Resource Capacity — Node metric from kube-state-metrics
kube_node_status_allocatableNode Allocatable Resources — Node metric from kube-state-metrics
kube_node_status_conditionCluster Node Condition — Node metric from kube-state-metrics
kube_node_createdCreation Unix Timestamp — Node metric from kube-state-metrics
rest_client_request_duration_secondsAPI Server Request Latency Distribution — Metric of the scheduler service itself. Type: histogram
rest_client_requests_totalTotal API Server Requests (by Host, Code, Method) — Metric of the scheduler service itself. Type: counter
leader_election_master_statusScheduler Leader Election Status (0: Backup, 1: Master) — Metric of the scheduler service itself. Type: gauge
scheduler_queue_incoming_pods_totalPods Entering Scheduling Queue — Metric of the scheduler service itself. Type: counter
scheduler_preemption_attempts_totalScheduler Preemption Attempts — Metric of the scheduler service itself. Type: counter
scheduler_scheduler_cache_sizeScheduler Cache Size (Nodes, Pods, Assumed Pods) — Metric of the scheduler service itself. Type: gauge
scheduler_pending_podsPending Pods (by Queue Type) — Metric of the scheduler service itself. Type: gauge
scheduler_plugin_execution_duration_secondsPlugin Execution Duration per Extension Point (by extension_point, plugin, status) — Metric of the scheduler service itself. Type: histogram
scheduler_e2e_scheduling_duration_secondsE2E Scheduling Latency Distribution (Replaced by scheduling_attempt_duration_seconds Since 1.23.0) — Metric of the scheduler service itself. Type: histogram
scheduler_framework_extension_point_duration_secondsFramework Extension Point Latency Distribution (by extension_point, profile, status) — Metric of the scheduler service itself. Type: histogram
scheduler_pod_scheduling_attemptsScheduling Attempts Distribution Before Pod Scheduled Successfully — Metric of the scheduler service itself. Type: histogram
scheduler_schedule_attempts_totalTotal Schedule Attempts by Result (unschedulable: Cannot Be Scheduled; error: Internal Scheduler Error) — Metric of the scheduler service itself. Type: counter
scheduler_scheduler_goroutinesGoroutine Count by Function (e.g. Binding, Filter) — Metric of the scheduler service itself. Type: gauge
scheduler_scheduling_algorithm_duration_secondsScheduling Algorithm Latency Distribution — Metric of the scheduler service itself. Type: histogram
scheduler_scheduling_attempt_duration_secondsScheduling Algorithm + Binding Latency Distribution — Metric of the scheduler service itself. Type: histogram
scheduler_scheduler_goroutinesScheduler Goroutine Count — Metric of the scheduler service itself. Type: gauge
kube_statefulset_status_replicasReplicas per StatefulSet — StatefulSet metric from kube-state-metrics
kube_statefulset_status_replicas_currentCurrent Replicas per StatefulSet — StatefulSet metric from kube-state-metrics
kube_statefulset_status_replicas_readyReady Replicas per StatefulSet — StatefulSet metric from kube-state-metrics
kube_statefulset_status_replicas_updatedUpdated Replicas per StatefulSet — StatefulSet metric from kube-state-metrics
kube_statefulset_status_observed_generationGeneration Observed by StatefulSet Controller — StatefulSet metric from kube-state-metrics
kube_statefulset_replicasDesired Pod Count of StatefulSet — StatefulSet metric from kube-state-metrics
kube_statefulset_metadata_generationDesired State Generation Sequence Number — StatefulSet metric from kube-state-metrics
kube_statefulset_createdCreation Unix Timestamp — StatefulSet metric from kube-state-metrics
kube_statefulset_labelsKubernetes Labels Converted to Prometheus Labels — StatefulSet metric from kube-state-metrics
kube_statefulset_status_current_revisionStatefulSet Current Revision — StatefulSet metric from kube-state-metrics
kube_statefulset_status_update_revisionStatefulSet Update Revision — StatefulSet metric from kube-state-metrics