Skip to content

Commit ad7b7fa

Browse files
committed
Add verify step for control plane Paused status for cpu benchmark
1 parent c873d89 commit ad7b7fa

File tree

1 file changed

+29
-7
lines changed

1 file changed

+29
-7
lines changed

hack/benchmark/cpu_usage/auto_pause/benchmark_local_k8s.sh

Lines changed: 29 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -215,7 +215,8 @@ main() {
215215
if [[ $? == 0 ]]; then
216216
echo "Kubernetes is running in Docker for Desktop - adjusting tests"
217217
docker_k8s=1
218-
kubectl create deployment nginx --image=nginx:1.20.0 && measure docker_k8s $i
218+
kubectl create deployment nginx --image=nginx:1.20.0
219+
measure docker_k8s $i
219220
echo "end of measurement for Docker for Desktop"
220221
kubectl delete deployment nginx
221222
# measure Docker idle
@@ -234,14 +235,16 @@ main() {
234235
echo "-> k3d"
235236
time k3d cluster create
236237
echo "-> deploy nginx deployment"
237-
kubectl create deployment nginx --image=nginx:1.20.0 && measure k3d $i || fail k3d $i
238+
kubectl create deployment nginx --image=nginx:1.20.0
239+
measure k3d $i || fail k3d $i
238240
cleanup
239241

240242
echo ""
241243
echo "-> kind"
242244
time kind create cluster
243245
echo "-> deploy nginx deployment"
244-
kubectl create deployment nginx --image=nginx:1.20.0 && measure kind $i || fail kind $i
246+
kubectl create deployment nginx --image=nginx:1.20.0
247+
measure kind $i || fail kind $i
245248
cleanup
246249

247250
# test different drivers
@@ -257,13 +260,32 @@ main() {
257260
echo "-> out/minikube --driver=${driver}"
258261
time out/minikube start --driver "${driver}"
259262

260-
#2. deploy sample application(nginx deployment) and 3. wait 1 minute without anything and 4. measure No.3 idle CPU usage
263+
#2. deploy sample application(nginx deployment)
261264
echo "-> deploy nginx deployment"
262-
kubectl create deployment nginx --image=nginx:1.20.0 && measure "minikube.${driver}.nonautopause" $i "1m" || fail "minikube.${driver}.nonautopause" $i
265+
kubectl create deployment nginx --image=nginx:1.20.0
266+
267+
#3. wait 1 minute without anything and 4. measure No.3 idle CPU usage
268+
measure "minikube.${driver}.nonautopause" $i "1m" || fail "minikube.${driver}.nonautopause" $i
263269

264-
# 5. enable auto-pause addons and 6. wait 3 minute without anything and measure No.6 idle CPU usage
270+
# 5. enable auto-pause addons
265271
echo "-> enable auto-pause to control plane"
266-
out/minikube addons enable auto-pause && measure "minikube.${driver}.autopause" $i "3m" || fail "minikube.${driver}.autopause" $i
272+
out/minikube addons enable auto-pause
273+
274+
# 6. wait 1 minute so that control plane will become Paused status(It takes 1 minute)
275+
sleep 65
276+
# 7. verify if minikube control plane is paused
277+
PAUSE=$(out/minikube status)
278+
echo $PAUSE | grep "apiserver: Paused"
279+
# 8. wait 3 minute without anything
280+
# 9. measure No.6 idle CPU usage
281+
if [[ "$?" == 0 ]]; then
282+
echo "kube-apiserver is paused"
283+
measure "minikube.${driver}.autopause" $i "3m" || fail "minikube.${driver}.autopause" $i
284+
else
285+
echo "failed to auto pause"
286+
fail "minikube.${driver}.autopause" $i
287+
fi
288+
267289
cleanup
268290

269291
# We won't be needing docker for the remaining tests this iteration

0 commit comments

Comments
 (0)