Kuberenetes has given a 'Software view' for the 'hardware' world. That too all resources consumed via modern definitions using json/yaml and via API.
Kuberentes segments the compute resources into Worker nodes & Master Node(s) and contain persistent entities called 'Kubernetes Objects' including
- Containerised applications
- Cluster and Associated nodes
- Resources to these nodes
- The policies and tolerances on how the applications interact and behave
Below is a good diagram of the various components
Each component can be defined by software/code and scalable which makes kubernetes the de-facto building framework for modern micro-service applications.
In most of the scenarios the components can be tiered into
- Host/Virtual machines
- Kuberentes Platform
- Containers
- Microservices
It is hence very important to understand the difference between traditional 2 tier model and kuberentes 4 tier model for all your Operational, Security and Observability needs for a successful implementation.