kubectl taint nodes pedana-01 edgenode=true:NoExecute kubectl label node pedana-01 edgeproject=resilki Cloudside: wget https://github.com/kubeedge/kubeedge/releases/download/v1.17.0/keadm-v1.17.0-linux-amd64.tar.gz tar -zxvf keadm-v1.17.0-linux-amd64.tar.gz cp keadm-v1.17.0-linux-amd64/keadm/keadm /usr/local/bin/keadm keadm init --advertise-address="89.105.78.161" --kubeedge-version=v1.22.0 --kube-config=/root/.kube/config keadm manifest generate --advertise-address="89.105.78.161" --kube-config=/root/.kube/config > kubeedge-cloudcore.yaml patch: cloudcore.yaml: | apiVersion: cloudcore.config.kubeedge.io/v1alpha2 commonConfig: monitorServer: bindAddress: 127.0.0.1:9091 tunnelPort: 10354 featureGates: requireAuthorization: false kind: CloudCore kubectl apply -f kubeedge-cloudcore.yaml -n kubeedge kubectl apply -f edgenodeport.yaml -n kubeedge ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- Edge Side: export KUBEEDGE_VERSION=v1.22.0 export CLOUD_MASTER_IP=34.132.113.155 export EDGE_NODE_NAME=edge-node-02 Step 1 : Download & unpack containerd package Containerd versions can be found in this location : https://github.com/containerd/containerd/releases Download : wget https://github.com/containerd/containerd/releases/download/v1.6.14/containerd-1.6.14-linux-amd64.tar.gz Unpack : sudo tar Cxzvf /usr/local containerd-1.6.14-linux-amd64.tar.gz Step 2 : Install runc Runc is a standardized runtime for spawning and running containers on Linux according to the OCI specification wget https://github.com/opencontainers/runc/releases/download/v1.1.3/runc.amd64 sudo install -m 755 runc.amd64 /usr/local/sbin/runc Step 3: Download and install CNI plugins : wget https://github.com/containernetworking/plugins/releases/download/v1.1.1/cni-plugins-linux-amd64-v1.1.1.tgz sudo mkdir -p /opt/cni/bin sudo tar Cxzvf /opt/cni/bin cni-plugins-linux-amd64-v1.1.1.tgz Step 4: Configure containerd Create a containerd directory for the configuration file config.toml is the default configuration file for containerd Enable systemd group . Use sed command to change the parameter in config.toml instead of using vi editor Convert containerd into service sudo mkdir /etc/containerd containerd config default | sudo tee /etc/containerd/config.toml sudo sed -i 's/SystemdCgroup \= false/SystemdCgroup \= true/g' /etc/containerd/config.toml sudo curl -L https://raw.githubusercontent.com/containerd/containerd/main/containerd.service -o /etc/systemd/system/containerd.service Step 4.1 remove SystemdCgroup = true line from /etc/containerd/config.toml. Step 4.2 mkdir -p /etc/cni/net.d/ $ cat >/etc/cni/net.d/10-containerd-net.conflist </dev/null || true fi done # ------------------------------- # 2. Cleanup containerd (safe) # ------------------------------- echo "[2] Cleaning containerd..." if command -v crictl &> /dev/null; then echo "Using crictl..." # rimuove solo container stopped crictl ps -a --state Exited -q | xargs -r crictl rm || true # rimuove pod sandbox non più validi crictl pods --state NotReady -q | xargs -r crictl rmp || true # pulizia immagini dangling (SAFE) crictl rmi --prune || true else echo "crictl not found, skipping..." fi # ------------------------------- # 3. Restart containerd # ------------------------------- echo "[3] Restarting containerd..." systemctl restart containerd # ------------------------------- # 4. Cleanup kubelet (soft) # ------------------------------- echo "[4] Cleaning kubelet state (soft)..." # Rimuove solo pod non più esistenti find /var/lib/kubelet/pods -mindepth 1 -maxdepth 1 -type d -mtime +1 -exec rm -rf {} + || true # ------------------------------- # 5. Restart kube services # ------------------------------- echo "[5] Restarting kubelet + edgecore..." systemctl restart kubelet || true systemctl restart edgecore || true # ------------------------------- # 6. Verifica connessione CloudCore # ------------------------------- echo "[6] Checking connectivity to CloudCore..." CLOUD_IP="89.105.78.161" PORT="10002" if timeout 5 bash -c "