diff --git a/roles/reset/tasks/main.yml b/roles/reset/tasks/main.yml
index c17b096acd6ea8dd9131cc04e97654b1d49d14cf..dcc7649cb7ac7a6c58a6e537599c3b27e787d92d 100644
--- a/roles/reset/tasks/main.yml
+++ b/roles/reset/tasks/main.yml
@@ -132,16 +132,21 @@
     - container_manager == "containerd"
   ignore_errors: true
 
-- name: reset | force remove all cri pods
-  command: "{{ bin_dir }}/crictl rmp -a -f"
-  register: remove_all_cri_containers
-  retries: 5
-  until: remove_all_cri_containers.rc == 0
-  delay: 5
-  tags: [ containerd ]
-  when:
-    - crictl.stat.exists
-    - container_manager == "containerd"
+- block:
+    - name: reset | force remove all cri pods
+      command: "{{ bin_dir }}/crictl rmp -a -f"
+      register: remove_all_cri_containers
+      retries: 5
+      until: remove_all_cri_containers.rc == 0
+      delay: 5
+      tags: [ containerd ]
+      when:
+        - crictl.stat.exists
+        - container_manager == "containerd"
+
+  rescue:
+    - name: reset | force remove all cri pods (rescue)
+      shell: "ip netns list | cut -d' ' -f 1 | xargs -n1 ip netns delete && {{ bin_dir }}/crictl rmp -a -f"
 
 - name: reset | stop etcd services
   service: