For this type of test we have subjected the cluster to an average workload for a few hours, always making use of the applications seen in these pages. Let's see how it behaved based on the flavors of the VMs.
$ kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=40 # We started with 2 replicas, then increased to 4 $ kubectl scale deploy infinite-calls --replicas=2 $ kubectl get hpa --watch NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE php-apache Deployment/php-apache 0%/50% 1 40 1 38s php-apache Deployment/php-apache 250%/50% 1 40 1 76s php-apache Deployment/php-apache 250%/50% 1 40 4 92s php-apache Deployment/php-apache 250%/50% 1 40 5 107s php-apache Deployment/php-apache 107%/50% 1 40 5 2m17s php-apache Deployment/php-apache 107%/50% 1 40 7 2m33s php-apache Deployment/php-apache 80%/50% 1 40 7 3m19s php-apache Deployment/php-apache 80%/50% 1 40 10 3m35s php-apache Deployment/php-apache 56%/50% 1 40 10 4m5s php-apache Deployment/php-apache 55%/50% 1 40 10 5m7s php-apache Deployment/php-apache 55%/50% 1 40 11 5m22s php-apache Deployment/php-apache 49%/50% 1 40 11 6m8s php-apache Deployment/php-apache 51%/50% 1 40 11 8m11s php-apache Deployment/php-apache 50%/50% 1 40 11 10m # Replicas 2 --> 4 php-apache Deployment/php-apache 70%/50% 1 40 11 142m php-apache Deployment/php-apache 70%/50% 1 40 16 142m php-apache Deployment/php-apache 64%/50% 1 40 16 143m php-apache Deployment/php-apache 64%/50% 1 40 21 143m php-apache Deployment/php-apache 54%/50% 1 40 21 144m php-apache Deployment/php-apache 51%/50% 1 40 21 145m php-apache Deployment/php-apache 50%/50% 1 40 21 147m |
$ kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=40 # We started with 2 replicas, then increased to 4 $ kubectl scale deploy infinite-calls --replicas=2 $ kubectl get hpa --watch NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE php-apache Deployment/php-apache 0%/50% 1 40 1 38s php-apache Deployment/php-apache 250%/50% 1 40 1 76s php-apache Deployment/php-apache 250%/50% 1 40 4 92s php-apache Deployment/php-apache 250%/50% 1 40 5 107s php-apache Deployment/php-apache 107%/50% 1 40 5 2m17s php-apache Deployment/php-apache 107%/50% 1 40 7 2m33s php-apache Deployment/php-apache 80%/50% 1 40 7 3m19s php-apache Deployment/php-apache 80%/50% 1 40 10 3m35s php-apache Deployment/php-apache 56%/50% 1 40 10 4m5s php-apache Deployment/php-apache 55%/50% 1 40 10 5m7s php-apache Deployment/php-apache 55%/50% 1 40 11 5m22s php-apache Deployment/php-apache 49%/50% 1 40 11 6m8s php-apache Deployment/php-apache 51%/50% 1 40 11 8m11s php-apache Deployment/php-apache 50%/50% 1 40 11 10m # Replicas 2 --> 4 php-apache Deployment/php-apache 51%/50% 1 40 11 56m php-apache Deployment/php-apache 88%/50% 1 40 11 57m php-apache Deployment/php-apache 88%/50% 1 40 20 57m php-apache Deployment/php-apache 55%/50% 1 40 20 58m php-apache Deployment/php-apache 54%/50% 1 40 20 59m php-apache Deployment/php-apache 52%/50% 1 40 20 60m php-apache Deployment/php-apache 53%/50% 1 40 20 62m php-apache Deployment/php-apache 52%/50% 1 40 20 63m php-apache Deployment/php-apache 52%/50% 1 40 20 65m php-apache Deployment/php-apache 53%/50% 1 40 20 66m php-apache Deployment/php-apache 52%/50% 1 40 20 67m php-apache Deployment/php-apache 53%/50% 1 40 20 68m php-apache Deployment/php-apache 54%/50% 1 40 20 69m php-apache Deployment/php-apache 53%/50% 1 40 20 70m php-apache Deployment/php-apache 52%/50% 1 40 20 71m php-apache Deployment/php-apache 55%/50% 1 40 20 72m php-apache Deployment/php-apache 55%/50% 1 40 22 72m php-apache Deployment/php-apache 47%/50% 1 40 22 73m php-apache Deployment/php-apache 46%/50% 1 40 22 74m php-apache Deployment/php-apache 48%/50% 1 40 22 75m php-apache Deployment/php-apache 46%/50% 1 40 22 76m |
$ kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=40 # We started with 2 replicas, then increased to 4 $ kubectl scale deploy infinite-calls --replicas=2 $ kubectl get hpa --watch NAME REFERENCE TARGETS MINPODS MAXPODS REPLICAS AGE php-apache Deployment/php-apache 0%/50% 1 40 1 72m php-apache Deployment/php-apache 249%/50% 1 40 1 73m php-apache Deployment/php-apache 249%/50% 1 40 1 73m php-apache Deployment/php-apache 249%/50% 1 40 4 73m php-apache Deployment/php-apache 249%/50% 1 40 5 73m php-apache Deployment/php-apache 111%/50% 1 40 5 74m php-apache Deployment/php-apache 111%/50% 1 40 9 74m php-apache Deployment/php-apache 58%/50% 1 40 9 75m php-apache Deployment/php-apache 61%/50% 1 40 9 76m php-apache Deployment/php-apache 61%/50% 1 40 11 76m php-apache Deployment/php-apache 50%/50% 1 40 11 77m php-apache Deployment/php-apache 51%/50% 1 40 11 78m # Replicas 2 --> 4 php-apache Deployment/php-apache 51%/50% 1 40 11 128m php-apache Deployment/php-apache 84%/50% 1 40 11 129m php-apache Deployment/php-apache 84%/50% 1 40 19 129m php-apache Deployment/php-apache 55%/50% 1 40 19 130m php-apache Deployment/php-apache 55%/50% 1 40 21 130m php-apache Deployment/php-apache 50%/50% 1 40 21 131m php-apache Deployment/php-apache 50%/50% 1 40 21 132m |
In the images below, taken from Grafana, the "jump" in the use of the CPU in the stress namespace is evident, caused by the increase in requests to the web application.


