X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=scripts%2Fsrc%2Fkubeedge_setup.sh;h=56c6db5fc51c08a6cbd139c5301af3cc775c0806;hb=2b096e12170e73fde4cfbde8324bcf59e3d26938;hp=6cfc2c388c37303ba5c0db6051a052e80ba4f84b;hpb=27e9f5fb9f12ba20b1b45e322d2bcfcae5b0da6f;p=eliot.git diff --git a/scripts/src/kubeedge_setup.sh b/scripts/src/kubeedge_setup.sh index 6cfc2c3..56c6db5 100755 --- a/scripts/src/kubeedge_setup.sh +++ b/scripts/src/kubeedge_setup.sh @@ -8,71 +8,115 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## +{ 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 - #kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml - #kubectl apply -f https://docs.projectcalico.org/v3.3/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml + source ~/.profile + git clone https://github.com/kubeedge/kubeedge.git \ +$GOPATH/src/github.com/kubeedge/kubeedge + cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm + make } -source config_kubeedge -common_steps="git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge && \ +source config_kubeedge > /dev/null 2>&1 + +common_steps="echo $GOPATH && \ +echo $HOME && \ +echo $(whoami) && \ +git clone https://github.com/kubeedge/kubeedge.git $GOPATH/src/github.com/kubeedge/kubeedge && \ source ~/.profile && \ +cd $GOPATH/src && \ +sudo chmod -R 777 github.com && \ cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \ -make && \ -chmod +x kubeedge" - -certif_copy="cd /etc/kubeedge &&\ -scp certs.tar.gz" +make" edge_start="cd $GOPATH/src/github.com/kubeedge/kubeedge/keadm && \ -chmod +x kubeedge && \ -./kubeedge join --edgecontrollerip=$masternodeip --edgenodeid=eliotedge02 --k8sserverip=$masternodeip:8080" +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 $GOPATH/src/github.com/kubeedge/kubeedge/keadm + sudo chmod +x keadm + sudo ./keadm init } +# Initialisation of Eliot edge with kubeedge exec_edge(){ - cd $HOME/eliot/scripts/src - sshpass -p ${edgenodepassword} scp $HOME/release/eliot/scripts/src/config_kubeedge ${edgenodeusr}@${edgenodeip}:/root - - sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} \ - source config_kubeedge - - source config_kubeedge - sshpass -p ${edgenodepassword} ssh ${edgenodeusr}@${edgenodeip} ${common_steps} < /dev/null -echo "after common_steps" - 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 -#sample -#return +source config_kubeedge > /dev/null 2>&1 + take_keedge execute_keedge_controller -#sample -#execute_edge -exec_edge -kubectl get nodes +exec_edge > /dev/null 2>&1 + +sleep 10 +sudo kubectl get nodes + +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 -kubectl create -f deployment.yaml +chmod +x $PATH_OF_ELIOTFOLDER/scripts/verifyk8s.sh +source $PATH_OF_ELIOTFOLDER/scripts/verifyk8s.sh -kubectl get pods