33 lines
703 B
Bash
Executable File
33 lines
703 B
Bash
Executable File
#! /usr/bin/env bash
|
|
|
|
PROJECT_ROOT=$GOPATH/src/mlog
|
|
|
|
|
|
# Function to display usage
|
|
usage() {
|
|
echo "Usage: $0 -n <host_name>"
|
|
exit 1
|
|
}
|
|
|
|
# Parse command-line arguments
|
|
while getopts "n:r:" opt; do
|
|
case $opt in
|
|
n) HOST_NAME="$OPTARG" ;;
|
|
r) ROLE="$OPTARG" ;;
|
|
*) usage ;;
|
|
esac
|
|
done
|
|
|
|
if [ -z $HOST_NAME ]; then
|
|
echo "Please provide a hostname with -n"
|
|
usage
|
|
exit
|
|
fi
|
|
|
|
SERVER_TOKEN=$(ssh ares "sudo kubeadm token create")
|
|
|
|
ssh ${HOST_NAME} "sudo kubeadm join 10.1.1.2:6443 --token ${SERVER_TOKEN} --discovery-token-ca-cert-hash sha256:63acb4dee8a6d0870f2a3312fd9091fabf443712cd2a9de74c3cf13ed33124b6"
|
|
|
|
if [ ! -z $ROLE ]; then
|
|
kubectl taint node ${HOST_NAME} ${ROLE}=:NoSchedule
|
|
fi |