X-Git-Url: https://gerrit.akraino.org/r/gitweb?a=blobdiff_plain;f=src%2Ffoundation%2Fscripts%2Fcni%2Fcalico%2Fk8s-new%2Frestore_bpf.sh;fp=src%2Ffoundation%2Fscripts%2Fcni%2Fcalico%2Fk8s-new%2Frestore_bpf.sh;h=7cfddef4f0ae17d1fafb7ff1a36417a8d5f4df10;hb=bf8c38a13036ac507b3a8f79add3d41902f4615a;hp=0000000000000000000000000000000000000000;hpb=6b74a888d0d965d8c7a4d1b762c81e42a0f9b418;p=iec.git diff --git a/src/foundation/scripts/cni/calico/k8s-new/restore_bpf.sh b/src/foundation/scripts/cni/calico/k8s-new/restore_bpf.sh new file mode 100755 index 0000000..7cfddef --- /dev/null +++ b/src/foundation/scripts/cni/calico/k8s-new/restore_bpf.sh @@ -0,0 +1,32 @@ +#!/bin/bash + +set -x + +WORKDIR=$(pwd) +TMP_DIR=$(mktemp -d) +CALICO_VERSION=${1:-3.23.1} + +MARCH=$(uname -m) + +if [ $MARCH == "aarch64" ]; then ARCH=arm64; +elif [ $MARCH == "x86_64" ]; then ARCH=amd64; +else ARCH="unknown"; +fi + +echo ARCH=$ARCH + +echo "Restore kube-proxy:" +kubectl patch ds -n kube-system kube-proxy --type merge -p '{"spec":{"template":{"spec":{"nodeSelector":{"non-calico": null}}}}}' + +if [ ! -f /usr/local/bin/calicoctl ]; then + curl -L https://github.com/projectcalico/calico/releases/download/v${CALICO_VERSION}/calicoctl-linux-${ARCH} -o ${WORKDIR}/calicoctl; + chmod +x ${WORKDIR}/calicoctl; + sudo cp ${WORKDIR}/calicoctl /usr/local/bin; +fi + +echo "Restore eBPF mode:" +calicoctl patch felixconfiguration default --patch='{"spec": {"bpfEnabled": false}}' + +echo "Disable Direct Server Return(DSR) mode: optional" +calicoctl patch felixconfiguration default --patch='{"spec": {"bpfExternalServiceMode": "Tunnel"}}' +