X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=scripts%2Fsrc%2Fkubeedge_setup.sh;h=86f6bbcd80989d632f7e50d9bac49da58c03d2c4;hb=5dcb17b3a8749b3153468062da5b1cf3271e48ae;hp=cc9c6381b22d07f81a0acfdc75dad0f9f560a422;hpb=aa2c161a6bb63fb9c2a2b1f8e553f6220919dcf7;p=eliot.git diff --git a/scripts/src/kubeedge_setup.sh b/scripts/src/kubeedge_setup.sh index cc9c638..86f6bbc 100755 --- a/scripts/src/kubeedge_setup.sh +++ b/scripts/src/kubeedge_setup.sh @@ -8,61 +8,93 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +#Constants +KUBEEDGE_SRC="$GOPATH/src/github.com/kubeedge/kubeedge" +KUBEEDGE_BIN="$GOPATH/src/github.com/kubeedge/kubeedge/keadm" +VERIFY_K8S="$PATH_OF_ELIOTFOLDER/scripts/verifyk8s.sh" + +{ set +x; } > /dev/null 2>&1 + +if [ -n "$1" ]; then + +if [ "$1" != "--help" ]; then + echo "" + echo "Usage of the command is wrong.. Please type ./kubeedge_setup.sh --help for more details" + echo "" + exit 0 +fi + +fi + +if [ "$1" == "--help" ]; then + echo "" + echo "This script will setup the kubeedge installation on Eliot master and Eliot edge" + echo "Before Executing this, add Eliot master and Eliot edge details in config_kubeedge file" + echo "" + exit 0; set -x; +fi + +# take_keedge will download the source code of kubeedge in master and in edge + take_keedge(){ - git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge - source ~/.profile - cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm - make + source ~/.profile + git clone https://github.com/kubeedge/kubeedge.git \ + $KUBEEDGE_SRC + cd $KUBEEDGE_BIN + make } source config_kubeedge > /dev/null 2>&1 common_steps="echo $GOPATH && \ -echo $HOME && \ -echo $(whoami) && \ -sudo git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge && \ +git clone https://github.com/kubeedge/kubeedge.git $KUBEEDGE_SRC && \ source ~/.profile && \ cd $GOPATH/src && \ sudo chmod -R 777 github.com && \ -cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \ +cd $KUBEEDGE_BIN && \ make" -edge_start="cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \ -sudo chmod +x kubeedge && \ -sudo ./kubeedge join --edgecontrollerip=$MASTERNODEIP --edgenodeid=$EDGENODEID --k8sserverip=$MASTERNODEIP:8080" +edge_start="cd $KUBEEDGE_BIN && \ +sudo chmod +x keadm && \ +sudo ./keadm join --edgecontrollerip=$MASTERNODEIP --edgenodeid=$EDGENODEID \ +--k8sserverip=$MASTERNODEIP:8080" + +# Initialisation of ELIOT master with kubeedge execute_keedge_controller(){ - cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm - sudo chmod +x kubeedge - ./kubeedge init + cd $KUBEEDGE_BIN + sudo chmod +x keadm + sudo ./keadm init } +# Initialisation of Eliot edge with kubeedge + exec_edge(){ - cd $PATH_OF_ELIOTFOLDER/scripts/src + cd $PATH_OF_ELIOTFOLDER/scripts/src - sshpass -p ${EDGENODEPASSWORD} \ - scp $PATH_OF_ELIOTFOLDER/scripts/src/config_kubeedge \ - ${EDGENODEUSR}@${EDGENODEIP}:$HOME_EDGENODE + sshpass -p ${EDGENODEPASSWORD} \ + scp $PATH_OF_ELIOTFOLDER/scripts/src/config_kubeedge \ + ${EDGENODEUSR}@${EDGENODEIP}:$HOME_EDGENODE - sshpass -p ${EDGENODEPASSWORD} ssh ${EDGENODEUSR}@${EDGENODEIP} \ - source config_kubeedge + sshpass -p ${EDGENODEPASSWORD} ssh ${EDGENODEUSR}@${EDGENODEIP} \ + source config_kubeedge - source config_kubeedge > /dev/null 2>&1 - sshpass -p ${EDGENODEPASSWORD} \ - ssh ${EDGENODEUSR}@${EDGENODEIP} ${common_steps} + source config_kubeedge > /dev/null 2>&1 + sshpass -p ${EDGENODEPASSWORD} \ + ssh ${EDGENODEUSR}@${EDGENODEIP} ${common_steps} - echo "After cloning the code in ELIOT edge node" - sshpass -p ${EDGENODEPASSWORD} \ - scp /etc/kubeedge/certs.tgz ${EDGENODEUSR}@${EDGENODEIP}:/etc/kubeedge + echo "After cloning the code in ELIOT edge node" + sshpass -p ${EDGENODEPASSWORD} \ + scp /etc/kubeedge/certs.tgz ${EDGENODEUSR}@${EDGENODEIP}:$HOME_EDGENODE - sshpass -p ${EDGENODEPASSWORD} \ - ssh ${EDGENODEUSR}@${EDGENODEIP} \ - tar -xvzf /etc/kubeedge/certs.tgz --directory /etc/kubeedge + sshpass -p ${EDGENODEPASSWORD} \ + ssh ${EDGENODEUSR}@${EDGENODEIP} \ + sudo tar -xvzf $HOME/certs.tgz --directory /etc/kubeedge - sshpass -p ${EDGENODEPASSWORD} \ - ssh ${EDGENODEUSR}@${EDGENODEIP} ${edge_start} + sshpass -p ${EDGENODEPASSWORD} \ + ssh ${EDGENODEUSR}@${EDGENODEIP} ${edge_start} } # start @@ -78,6 +110,16 @@ exec_edge > /dev/null 2>&1 sleep 10 sudo kubectl get nodes -chmod +x $PATH_OF_ELIOTFOLDER/scripts/verifyk8s.sh -source $PATH_OF_ELIOTFOLDER/scripts/verifyk8s.sh +if [ "$(id -u)" = 0 ]; then + echo "export KUBECONFIG=/etc/kubernetes/admin.conf" | \ +tee -a "${HOME}/.profile" + source "${HOME}/.profile" +else + mkdir -p "${HOME}/.kube" + sudo cp -i /etc/kubernetes/admin.conf "${HOME}/.kube/config" + sudo chown "$(id -u)":"$(id -g)" "${HOME}/.kube/config" +fi + +chmod +x $VERIFY_K8S +source $VERIFY_K8S