Understanding scaling in EKS
When we consider scaling in any system or cluster, we tend to think in terms of two dimensions:
- Increasing the size of a system or instance, known as vertical scaling
- Increasing the number of systems or instances, known as horizontal scaling
The following diagram illustrates these options.
Figure 18.1 – General scaling strategies
The scaling strategy is closely linked with the resilience model, where you have a traditional master/standby or N+1 resilience architecture, such as a relational database. Then, when you increase capacity, you normally need to scale up (i.e., vertically) by increasing the size of your database instances. This is due to the limitations of the system architecture.
In K8s, the resilience model is based on multiple worker nodes hosting multiple pods with an ingress/load balancer providing a consistent entry point. This means that a node failure should have little impact. The...