From 89a5d5cadd06612ceb466f2e514c4e9dd3e1aac5 Mon Sep 17 00:00:00 2001 From: Ruben Orduz Date: Fri, 9 Nov 2018 12:00:36 -0500 Subject: [PATCH] iptables reset text message Signed-off-by: Ruben Orduz --- cmd/kubeadm/app/cmd/reset.go | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/cmd/kubeadm/app/cmd/reset.go b/cmd/kubeadm/app/cmd/reset.go index 94def138059..e398e11f6c1 100644 --- a/cmd/kubeadm/app/cmd/reset.go +++ b/cmd/kubeadm/app/cmd/reset.go @@ -27,10 +27,9 @@ import ( "strings" "github.com/spf13/cobra" - "k8s.io/klog" - "k8s.io/apimachinery/pkg/util/sets" clientset "k8s.io/client-go/kubernetes" + "k8s.io/klog" kubeadmapiv1beta1 "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta1" "k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/validation" "k8s.io/kubernetes/cmd/kubeadm/app/cmd/options" @@ -166,6 +165,7 @@ func (r *Reset) Run(out io.Writer, client clientset.Interface) error { if err := removeContainers(utilsexec.New(), r.criSocketPath); err != nil { klog.Errorf("[reset] failed to remove containers: %+v", err) } + dirsToClean = append(dirsToClean, []string{kubeadmconstants.KubeletRunDirectory, "/etc/cni/net.d", "/var/lib/dockershim", "/var/run/kubernetes"}...) // Then clean contents from the stateful kubelet, etcd and cni directories @@ -182,6 +182,18 @@ func (r *Reset) Run(out io.Writer, client clientset.Interface) error { } resetConfigDir(kubeadmconstants.KubernetesDir, r.certsDir) + // Output help text instructing user how to remove iptables rules + msg := ` + The reset process does not reset or clean up iptables rules or IPVS tables. + If you wish to reset iptables, you must do so manually. + For example: + iptables -F && iptables -t nat -F && iptables -t mangle -F && iptables -X + + If your cluster was setup to utilize IPVS, run ipvsadm --clear (or similar) + to reset your system's IPVS tables. + ` + fmt.Print(msg) + return nil }