Kubernetes - kube-apiserver

Last Updated: 2024-02-06

K8s API Server provides REST API.

The kubernetes service (in default namespace) is configured with a virtual IP address that is redirected (via kube-proxy) to the HTTPS endpoint on the API server.

Check audit logging: /var/log/apiserver/*

Explore Kubernetes APIs

Use kubectl proxy to create a proxy:

$ kubectl proxy --port=8081 &

From another terminal

curl http://localhost:8081/api
  "kind": "APIVersions",
  "versions": [
  "serverAddressByClientCIDRs": [
      "clientCIDR": "",
      "serverAddress": ""

Get the full list of APIs

$ curl http://localhost:8081/apis

# OpenAPI:
$ curl http://localhost:8081/openapi/v2 | jq | less
$ curl http://localhost:8081/openapi/v3 | jq | less

OpenAPI support is in a separate repo: k8s.io/kube-openapi. The api server (k8s.io/apiserver) depends on kube-openapi