Kubernetes Resources
Kubernetes provides a rich set of abstractions over containers to define cloud-native applications. All these abstractions are designed as resources in the Kubernetes API and are managed by the control plane. In other words, the applications are defined as a set of resources in the control plane. At the same time, node components try to achieve the state specified in the resources. If a Kubernetes resource is assigned to a node, the node components focus on attaching the required volumes and network interfaces to keep the application up and running.
Let's assume you will deploy the backend of the InstantPizza reservation system on Kubernetes. The backend consists of a database and a web server for handling REST operations. You will need to define a couple of resources in Kubernetes:
- A StatefulSet resource for the database
- A Service resource to connect to the database from other components such as the web server
- A Deployment resource to deploy...