CoreDNS Ready API

Readiness check endpoints that indicate whether CoreDNS plugins have finished initializing and are ready to serve DNS queries.

OpenAPI Specification

coredns-ready-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: CoreDNS Health Ready API
  description: The CoreDNS health plugin exposes an HTTP health check endpoint at /health on port 8080 by default. It reports the overall health of the CoreDNS process and is used by Kubernetes liveness and readiness probes to determine if the DNS server is operational. When lameduck mode is enabled, the health endpoint returns HTTP 503 for a configurable duration before shutdown to allow graceful traffic draining.
  version: 2.x
  contact:
    name: CoreDNS Community
    url: https://coredns.io/community/
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
- url: http://localhost:8080
  description: CoreDNS Health HTTP server (default port, configurable)
tags:
- name: Ready
  description: Readiness check endpoints that indicate whether CoreDNS plugins have finished initializing and are ready to serve DNS queries.
paths:
  /ready:
    get:
      operationId: getReadiness
      summary: CoreDNS readiness check
      description: Returns the readiness status of all CoreDNS plugins. Returns HTTP 200 with body "OK" when all plugins that implement the Readiness interface report they are ready to serve traffic. Returns HTTP 503 if any plugin is not yet ready. This endpoint is typically used as the Kubernetes readiness probe target and requires the ready plugin to be enabled in the Corefile.
      tags:
      - Ready
      responses:
        '200':
          description: All CoreDNS plugins are ready to serve traffic.
          content:
            text/plain:
              schema:
                type: string
                example: OK
        '503':
          description: One or more CoreDNS plugins are not yet ready. The server is still initializing.
          content:
            text/plain:
              schema:
                type: string
                example: not ready
externalDocs:
  description: CoreDNS Health Plugin Documentation
  url: https://coredns.io/plugins/health/