From ce0153d05dc6b4092b3325ee2396f5d2b521e31d Mon Sep 17 00:00:00 2001 From: Simon Ehrenstein <simon.ehrenstein@gmail.com> Date: Sun, 29 Nov 2020 18:56:22 +0100 Subject: [PATCH] Prototype of random scheduling --- execution/random-scheduler/schedule.sh | 18 ++---------------- 1 file changed, 2 insertions(+), 16 deletions(-) diff --git a/execution/random-scheduler/schedule.sh b/execution/random-scheduler/schedule.sh index 0cec94ef6..51be5c839 100755 --- a/execution/random-scheduler/schedule.sh +++ b/execution/random-scheduler/schedule.sh @@ -1,29 +1,15 @@ #!/bin/bash -SERVER=($(kubectl config view -o json | jq '.clusters[0].cluster.server')) - +KUBE_API_KUBE_API_SERVER=($(kubectl config view -o json | jq '.clusters[0].cluster.server')) while true; - do - - echo "$(kubectl get pods -n default)" for PODNAME in $(kubectl get pods -n default -o json | jq '.items[] | select(.spec.schedulerName == "random-scheduler") | select(.spec.nodeName == null) | .metadata.name' | tr -d '"'); - do - NODES=($(kubectl get nodes -o json | jq '.items[].metadata.name' | tr -d '"')) - - NUMNODES=${#NODES[@]} - CHOSEN=${NODES[$[$RANDOM % $NUMNODES]]} - - curl --header "Content-Type:application/json" --request POST --data '{"apiVersion":"v1", "kind": "Binding", "metadata": {"name": "'$PODNAME'"}, "target": {"apiVersion": "v1", "kind": "Node", "name": "'$CHOSEN'"}}' $SERVER/api/v1/namespaces/default/pods/$PODNAME/binding/ - + curl --header "Content-Type:application/json" --request POST --data '{"apiVersion":"v1", "kind": "Binding", "metadata": {"name": "'$PODNAME'"}, "target": {"apiVersion": "v1", "kind": "Node", "name": "'$CHOSEN'"}}' $KUBE_API_SERVER/api/v1/namespaces/default/pods/$PODNAME/binding/ echo "Assigned $PODNAME to $CHOSEN" - done - sleep 1 - done \ No newline at end of file -- GitLab