Overview

CoreDNS provides internal DNS resolution for services and pods inside the Kubernetes cluster

Why it’s Useful

  • Tracks DNS query performance and failures.
  • Ensures service discovery works as expected.
  • Helps troubleshoot DNS latency that may affect workloads

What Users Can Do

  • Monitor DNS resolution times.
  • Verify query load across DNS pods.
  • Detect failed lookups early.

Steps to Modify Configuration

  1. Get the existing ConfigMap.
    kubectl get cm opsramp-k8s-infra-metric-user-config -n <agent-installed-namespace> -o yaml
  2. Edit the ConfigMap:
    kubectl edit cm opsramp-k8s-infra-metric-user-config -n <agent-installed-namespace>
  3. Locate the coredns section in ConfigMap.
    k8s_cluster:
      enabled: true
      config:
        scrape_interval: "2m"
  4. Update the required parameters.
  5. Save and apply the changes.

Supported Metrics

Metric NameDisplay Name
coredns_build_infocoredns build info
coredns_cache_missescoredns cache misses
coredns_cache_requestscoredns cache requests
coredns_dns_request_duration_secondscoredns dns request duration seconds
coredns_dns_request_duration_secondscoredns dns request duration seconds
coredns_dns_request_duration_secondscoredns dns request duration seconds
coredns_dns_request_size_bytescoredns dns request size bytes
coredns_dns_request_size_bytescoredns dns request size bytes
coredns_dns_request_size_bytescoredns dns request size bytes
coredns_dns_response_size_bytescoredns dns response size bytes
coredns_dns_response_size_bytescoredns dns response size bytes
coredns_dns_response_size_bytescoredns dns response size bytes
coredns_dns_responsescoredns dns responses
coredns_forward_healthcheck_brokencoredns forward healthcheck broken
coredns_forward_max_concurrent_rejectscoredns forward max concurrent rejects
coredns_health_request_duration_secondscoredns health request duration seconds
coredns_health_request_duration_secondscoredns health request duration seconds
coredns_health_request_duration_secondscoredns health request duration seconds
coredns_health_request_failurescoredns health request failures
coredns_hosts_reload_timestamp_secondscoredns hosts reload timestamp seconds
coredns_kubernetes_dns_programming_duration_secondscoredns kubernetes dns programming duration seconds
coredns_kubernetes_dns_programming_duration_secondscoredns kubernetes dns programming duration seconds
coredns_kubernetes_dns_programming_duration_secondscoredns kubernetes dns programming duration seconds
coredns_kubernetes_rest_client_rate_limiter_duration_secondscoredns kubernetes rest client rate limiter duration seconds
coredns_kubernetes_rest_client_rate_limiter_duration_secondscoredns kubernetes rest client rate limiter duration seconds
coredns_kubernetes_rest_client_rate_limiter_duration_secondscoredns kubernetes rest client rate limiter duration seconds
coredns_kubernetes_rest_client_request_duration_secondscoredns kubernetes rest client request duration seconds
coredns_kubernetes_rest_client_request_duration_secondscoredns kubernetes rest client request duration seconds
coredns_kubernetes_rest_client_request_duration_secondscoredns kubernetes rest client request duration seconds
coredns_kubernetes_rest_client_requestscoredns kubernetes rest client requests
coredns_local_localhost_requestscoredns local localhost requests
coredns_panicscoredns panics
coredns_plugin_enabledcoredns plugin enabled
coredns_proxy_conn_cache_hitscoredns proxy conn cache hits
coredns_proxy_conn_cache_missescoredns proxy conn cache misses
coredns_proxy_request_duration_secondscoredns proxy request duration seconds
coredns_proxy_request_duration_secondscoredns proxy request duration seconds
coredns_proxy_request_duration_secondscoredns proxy request duration seconds
coredns_reload_failedcoredns reload failed