...
As we have already done, we entrust the php-apache application to HPA and create a replica of infinite-calls
. In this case we limit ourselves to creating only 2 replicas, because we want to test the reactivity of the cluster at a medium-low intensity load. As mentioned in the introductory part of this chapter, the data are the result of tests carried out on 3 different flavors, shown in descending order.
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
$ kubectl autoscale deployment php-apache --cpu-percent=50 --min=1 --max=20 $ 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 20 1 11m # Starting the workload php-apache Deployment/php-apache 119%/50% 1 20 1 11m php-apache Deployment/php-apache 119%/50% 1 20 3 11m php-apache Deployment/php-apache 180%/50% 1 20 3 12m php-apache Deployment/php-apache 180%/50% 1 20 6 12m php-apache Deployment/php-apache 180%/50% 1 20 11 13m php-apache Deployment/php-apache 51%/50% 1 20 11 13m # Beginning of the plateau php-apache Deployment/php-apache 49%/50% 1 20 11 14m php-apache Deployment/php-apache 52%/50% 1 20 11 15m php-apache Deployment/php-apache 50%/50% 1 20 11 16m php-apache Deployment/php-apache 51%/50% 1 20 11 17m php-apache Deployment/php-apache 50%/50% 1 20 11 18m php-apache Deployment/php-apache 48%/50% 1 20 11 19m php-apache Deployment/php-apache 50%/50% 1 20 11 20m php-apache Deployment/php-apache 49%/50% 1 20 11 21m php-apache Deployment/php-apache 49%/50% 1 20 11 23m # End of the plateau php-apache Deployment/php-apache 24%/50% 1 20 11 24m php-apache Deployment/php-apache 0%/50% 1 20 11 25m php-apache Deployment/php-apache 0%/50% 1 20 11 29m php-apache Deployment/php-apache 0%/50% 1 20 6 29m php-apache Deployment/php-apache 0%/50% 1 20 6 30m php-apache Deployment/php-apache 0%/50% 1 20 1 30m # End of workload |
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
$ k autoscale deployment php-apache --cpu-percent=50 --min=1 --max=20
$ k 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 20 1 35m # Starting the workload
php-apache Deployment/php-apache 251%/50% 1 20 1 36m
php-apache Deployment/php-apache 251%/50% 1 20 4 36m
php-apache Deployment/php-apache 251%/50% 1 20 6 36m
php-apache Deployment/php-apache 89%/50% 1 20 6 37m
php-apache Deployment/php-apache 89%/50% 1 20 9 37m
php-apache Deployment/php-apache 62%/50% 1 20 9 38m
php-apache Deployment/php-apache 62%/50% 1 20 12 38m
php-apache Deployment/php-apache 47%/50% 1 20 12 39m # Beginning of the plateau
php-apache Deployment/php-apache 45%/50% 1 20 12 40m
php-apache Deployment/php-apache 47%/50% 1 20 12 41m
php-apache Deployment/php-apache 45%/50% 1 20 12 42m
php-apache Deployment/php-apache 46%/50% 1 20 12 43m
php-apache Deployment/php-apache 45%/50% 1 20 12 44m
php-apache Deployment/php-apache 46%/50% 1 20 12 45m
php-apache Deployment/php-apache 47%/50% 1 20 12 46m
php-apache Deployment/php-apache 45%/50% 1 20 12 47m
php-apache Deployment/php-apache 45%/50% 1 20 12 48m
php-apache Deployment/php-apache 45%/50% 1 20 12 49m
php-apache Deployment/php-apache 45%/50% 1 20 12 50m # End of the plateau
php-apache Deployment/php-apache 0%/50% 1 20 12 51m
php-apache Deployment/php-apache 0%/50% 1 20 12 56m
php-apache Deployment/php-apache 0%/50% 1 20 1 56m # End of workload |
We note that the reaction time of the cluster, from the rest position to the plateau and vice versa, is about 4-5 minutes. Of , regardless of the flavor used. Of course, the same behavior can also be seen by analyzing the metrics obtained by Grafana (the stress
namespace is the one used for our tests).