diff --git a/cluster/vagrant/config-default.sh b/cluster/vagrant/config-default.sh index bd9b21378ad..6e8a96c8722 100755 --- a/cluster/vagrant/config-default.sh +++ b/cluster/vagrant/config-default.sh @@ -31,9 +31,13 @@ MINION_TAG="${INSTANCE_PREFIX}-minion" # IP LOCATIONS FOR INTERACTING WITH THE MINIONS MINION_IP_BASE="10.245.2." +declare -A VAGRANT_MINION_NAMES_BY_IP + for (( i=0; i <${NUM_MINIONS}; i++)) do KUBE_MINION_IP_ADDRESSES[$i]="${MINION_IP_BASE}$[$i+2]" MINION_IP[$i]="${MINION_IP_BASE}$[$i+2]" MINION_NAMES[$i]="${MINION_IP[$i]}" VAGRANT_MINION_NAMES[$i]="minion-$[$i+1]" + + VAGRANT_MINION_NAMES_BY_IP["${MINION_IP[$i]}"]="${VAGRANT_MINION_NAMES[$i]}" done diff --git a/cluster/vagrant/provision-config.sh b/cluster/vagrant/provision-config.sh index 98e986e6237..db470a4095a 100755 --- a/cluster/vagrant/provision-config.sh +++ b/cluster/vagrant/provision-config.sh @@ -33,3 +33,5 @@ MASTER_PASSWD=vagrant # Location to hold temp files for provision process KUBE_TEMP=/var/kube-temp + +PORTAL_NET=10.0.0.0/16 diff --git a/cluster/vagrant/provision-master.sh b/cluster/vagrant/provision-master.sh index fc093c6fae4..f0946d0906d 100755 --- a/cluster/vagrant/provision-master.sh +++ b/cluster/vagrant/provision-master.sh @@ -75,6 +75,11 @@ grains: - kubernetes-master EOF +mkdir -p /srv/salt-overlay/pillar +cat </srv/salt-overlay/pillar/cluster-params.sls + portal_net: $PORTAL_NET +EOF + # Configure the salt-master # Auto accept all keys from minions that try to join mkdir -p /etc/salt/master.d diff --git a/cluster/vagrant/util.sh b/cluster/vagrant/util.sh index a704d06140e..6e23d6ccf60 100644 --- a/cluster/vagrant/util.sh +++ b/cluster/vagrant/util.sh @@ -143,3 +143,16 @@ function get-password { export KUBE_PASSWORD=vagrant echo "Using credentials: $KUBE_USER:$KUBE_PASSWORD" } + +# SSH to a node by name ($1) and run a command ($2). +function ssh-to-node { + local node="$1" + local cmd="$2" + local machine="${VAGRANT_MINION_NAMES_BY_IP[${node}]}" + vagrant ssh "${machine}" -c "${cmd}" | grep -v "Connection to.*closed" +} + +# Restart the kube-proxy on a node ($1) +function restart-kube-proxy { + ssh-to-node "$1" "sudo systemctl restart kube-proxy" +}