Ingress Exposes multiple Services through a single cloud load-balancer.
Collects resource metrics from kubelets & exposes them in K8s API server through metrics API for use by HPA & VPA
HorizantolPodAutoScaler automatically updates workload resources to match demand.
Horizantol Scaling --> Deploy more Pods.
Vertical Scaling --> Assign more resources (CPU, memory, etc) to existing pods.
Adjusts the desired scale of the workloads to match observed metrics (average CPU utilization, etc)
desiredReplicas = ceil[currentReplicas * (currentMetricValue / desiredMetricValue)]