Skip to content

Commit 5f100f8

Browse files
committed
improve pod failover test
1 parent f6ac19c commit 5f100f8

File tree

2 files changed

+8
-26
lines changed

2 files changed

+8
-26
lines changed

test/pod_failover_test_aws.sh

+5-13
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# use sh pod_failover_test_aws.sh 100 file.txt to test 1 pod 3 pvc pod failover test on aws for 100 times and write results in file.txt.
22
kubectl create ns ebs-pod-failover-1pod3pvc
3+
deletion_due_time=$(date -u -d "+3 hour" +'%Y-%m-%dT%H:%M:%SZ')
34
cat <<EOF | kubectl apply -f -
45
apiVersion: storage.k8s.io/v1
56
kind: StorageClass
67
metadata:
78
name: ebs-pod-failover-1pod3pvc-sc
89
parameters:
10+
tagSpecification_1: "deletion_due_time=${deletion_due_time}"
911
csi.storage.k8s.io/fstype: xfs
1012
type: gp2
1113
provisioner: ebs.csi.aws.com
@@ -135,26 +137,16 @@ status:
135137
updateRevision: pod-failover-statefulset-8565df4b89
136138
updatedReplicas: 1
137139
EOF
138-
readynum=$(kubectl get pod -n ebs-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
139-
while [ $readynum -le 1 ]
140-
do
141-
sleep 1
142-
readynum=$(kubectl get pod -n ebs-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
143-
done
140+
kubectl wait --for=condition=Ready pod/pod-failover-statefulset-0 -n ebs-pod-failover-1pod3pvc --timeout=600s
144141
for i in $(seq $1)
145142
do
146143
nodename=$(kubectl get po pod-failover-statefulset-0 -n ebs-pod-failover-1pod3pvc -o custom-columns=NODE:.spec.nodeName --no-headers)
147144
kubectl cordon $nodename
148145
kubectl delete pod pod-failover-statefulset-0 -n ebs-pod-failover-1pod3pvc
149146
predate=$(date +"%Y-%m-%d %H:%M:%S")
150-
readynum=$(kubectl get pod -n ebs-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
151-
while [ $readynum -le 1 ]
152-
do
153-
sleep 1
147+
kubectl wait --for=condition=Ready pod/pod-failover-statefulset-0 -n ebs-pod-failover-1pod3pvc --timeout=600s
154148
date=$(date +"%Y-%m-%d %H:%M:%S")
155-
readynum=$(kubectl get pod -n ebs-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
156-
done
157-
echo "`date` test $i: $(( $(date -d "$date" "+%s") - $(date -d "$predate" "+%s") ))" >> $2
149+
echo "`echo $(date -u +"%Y-%m-%dT%H:%M:%SZ")` test $i: $(( $(date -d "$date" "+%s") - $(date -d "$predate" "+%s") ))" >> $2
158150
kubectl uncordon $nodename
159151
done
160152
kubectl delete ns ebs-pod-failover-1pod3pvc

test/pod_failover_test_azure.sh

+3-13
Original file line numberDiff line numberDiff line change
@@ -136,26 +136,16 @@ status:
136136
updateRevision: pod-failover-statefulset-8565df4b89
137137
updatedReplicas: 1
138138
EOF
139-
readynum=$(kubectl get pod -n azdisk-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
140-
while [ $readynum -le 1 ]
141-
do
142-
sleep 1
143-
readynum=$(kubectl get pod -n azdisk-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
144-
done
139+
kubectl wait --for=condition=Ready pod/pod-failover-statefulset-0 -n azdisk-pod-failover-1pod3pvc --timeout=600s
145140
for i in $(seq $1)
146141
do
147142
nodename=$(kubectl get po pod-failover-statefulset-0 -n azdisk-pod-failover-1pod3pvc -o custom-columns=NODE:.spec.nodeName --no-headers)
148143
kubectl cordon $nodename
149144
kubectl delete pod pod-failover-statefulset-0 -n azdisk-pod-failover-1pod3pvc
150145
predate=$(date +"%Y-%m-%d %H:%M:%S")
151-
readynum=$(kubectl get pod -n azdisk-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
152-
while [ $readynum -le 1 ]
153-
do
154-
sleep 1
146+
kubectl wait --for=condition=Ready pod/pod-failover-statefulset-0 -n azdisk-pod-failover-1pod3pvc --timeout=600s
155147
date=$(date +"%Y-%m-%d %H:%M:%S")
156-
readynum=$(kubectl get pod -n azdisk-pod-failover-1pod3pvc --field-selector=status.phase==Running | awk 'END{print NR}')
157-
done
158-
echo "`date` test $i: $(( $(date -d "$date" "+%s") - $(date -d "$predate" "+%s") ))" >> $2
148+
echo "`echo $(date -u +"%Y-%m-%dT%H:%M:%SZ")` test $i: $(( $(date -d "$date" "+%s") - $(date -d "$predate" "+%s") ))" >> $2
159149
kubectl uncordon $nodename
160150
done
161151
kubectl delete ns azdisk-pod-failover-1pod3pvc

0 commit comments

Comments
 (0)