X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=scripts%2Fsrc%2Fkubeedge_setup.sh;h=86f6bbcd80989d632f7e50d9bac49da58c03d2c4;hb=5dcb17b3a8749b3153468062da5b1cf3271e48ae;hp=c4f72dc7ea9581d03022bc5ae925ff9e717c87b7;hpb=191d4f5375a27ab4f6ecfb88b90bc42f8323e785;p=eliot.git diff --git a/scripts/src/kubeedge_setup.sh b/scripts/src/kubeedge_setup.sh index c4f72dc..86f6bbc 100755 --- a/scripts/src/kubeedge_setup.sh +++ b/scripts/src/kubeedge_setup.sh @@ -8,98 +8,118 @@ # 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 +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" -certif_copy="cd /etc/kubeedge &&\ -scp certs.tar.gz" +edge_start="cd $KUBEEDGE_BIN && \ +sudo chmod +x keadm && \ +sudo ./keadm join --edgecontrollerip=$MASTERNODEIP --edgenodeid=$EDGENODEID \ +--k8sserverip=$MASTERNODEIP:8080" -edge_start="cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \ -sudo chmod +x kubeedge && \ -sudo ./kubeedge join --edgecontrollerip=$masternodeip --edgenodeid=eliotedge02 --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(){ -echo $(whoami) -echo ========= -echo $(pwd) -echo ======== -echo $GOPATH -echo ======== -echo $HOME - -user_check="jenkins" -home_path="/home/jenkins" - #if [ $HOME == $home_path ];then - cd /home/jenkins/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/src - #else - # cd $HOME/eliot/scripts/src - #fi - - #if [ $HOME == $home_path ];then - sshpass -p ${edgenodepassword} scp /home/jenkins/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/src/config_kubeedge ${edgenodeusr}@${edgenodeip}:/root - #else - # sshpass -p ${edgenodepassword} scp $HOME/eliot/scripts/src/config_kubeedge ${edgenodeusr}@${edgenodeip}:/root - #fi - - sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} \ - source config_kubeedge - - source config_kubeedge - sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} ${common_steps} < /dev/null - - echo "After cloning the code in ELIOT edge node" - sshpass -p ${edgenodepassword} scp /etc/kubeedge/certs.tgz ${edgenodeusr}@${edgenodeip}:/etc/kubeedge - - sshpass -p ${edgenodepassword} \ - ssh ${edgenodeusr}@${edgenodeip} \ - tar -xvzf /etc/kubeedge/certs.tgz --directory /etc/kubeedge - - sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} ${edge_start} < /dev/null + + cd $PATH_OF_ELIOTFOLDER/scripts/src + + sshpass -p ${EDGENODEPASSWORD} \ + scp $PATH_OF_ELIOTFOLDER/scripts/src/config_kubeedge \ + ${EDGENODEUSR}@${EDGENODEIP}:$HOME_EDGENODE + + sshpass -p ${EDGENODEPASSWORD} ssh ${EDGENODEUSR}@${EDGENODEIP} \ + source config_kubeedge + + 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}:$HOME_EDGENODE + + sshpass -p ${EDGENODEPASSWORD} \ + ssh ${EDGENODEUSR}@${EDGENODEIP} \ + sudo tar -xvzf $HOME/certs.tgz --directory /etc/kubeedge + + sshpass -p ${EDGENODEPASSWORD} \ + ssh ${EDGENODEUSR}@${EDGENODEIP} ${edge_start} } # start -source config_kubeedge +source config_kubeedge > /dev/null 2>&1 take_keedge execute_keedge_controller -exec_edge -sudo kubectl get nodes - -#user_chec="jenkins" +exec_edge > /dev/null 2>&1 -#if [ $(whoami) == $user_chec ];then - -chmod +x /home/jenkins/work/workspace/eliot-deploy-kubeedge-virtual-daily-master/scripts/verifyk8s.sh -source /home/jenkins/work/workpsace/eliot-deploy-kubeedge-virtual-daily-master/scripts/verifyk8s.sh +sleep 10 +sudo kubectl get nodes -#else +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 $HOME/eliot/scripts/verifyk8s.sh -# source $HOME/eliot/scripts/verifyk8s.sh +chmod +x $VERIFY_K8S +source $VERIFY_K8S -#fi