• API Server is a core of the Kubernetes control plane. 
  • The API Server exposes an HTTP API that lets end users, different parts of your cluster and external components communicate with one another. 
  • API Objects in Kubernetes:
    • Pods
    • Namespaces
    • ConfigMaps
    • Events
  • The Kubernetes API lets you query and manipulate the state of API objects in Kubernetes. 
  • Operations:
    • Most of the operations in Kubernetes is performed through kubectl or kubeadm. 
    • This in turn use the API. 
    • However, you can also access the API directly using REST calls. 
  • Clint Libraries:
    • If you want to use Kubernetes REST API (API Server), you do not need to implement the API calls and request/response by yourself. 
    • You can use the client library for the programming language you are using.
    • Client libraries often handle common tasks such as authentication for you. 
    • Most client libraries can discover and use the Kubernetes Service Account to authenticate if the API client is running inside the Kubernetes cluster
  • Persistence:
    • Kubernetes stores the serialized state of objects by writing them into etcd.