我正在尝试删除为CI/CD管道R&D创建的整个kubernetes。因此,为了删除集群和所有内容,我运行以下命令:
kubectl config delete-cluster <cluster-name>
kubectl config delete-context <Cluster-context> 为了确保clustee被删除,我再次构建了jenkins管道作业。因此,我发现它正在使用更新的更改进行部署。
当我运行"kubectl config view“命令时,我发现了以下结果:
docker@mildevdcr01:~$ kubectl config view
apiVersion: v1
clusters: []
contexts: []
current-context: kubernetes-admin@cluster.local
kind: Config
preferences: {}
users: []
docker@mildevdcr01:~$尽管如此,我的Spring Boot微服务仍在集群中部署,并进行了更新。
我使用从Github获得的参考工具kubespray创建了Kubernetes集群:
https://github.com/kubernetes-incubator/kubespray.git
为了删除我为这个Kubernetes集群创建的所有内容,我需要做什么?我需要删除所有内容,包括主节点。
发布于 2019-08-28 20:05:28
如果你的集群是使用Kubespray设置的,那么你是用ansible来运行整个安装的,所以要删除集群,你也必须使用它。
但您也可以将整个集群重置为全新安装:
$ ansible-playbook -i inventory/mycluster/hosts.ini reset.yml记住保持“hosts.ini”的正确更新。
您可以从集群中逐个删除节点,只需添加特定节点,在inventory/mycluster/hosts.ini文件(您的主机文件)中执行kube-node部分,然后运行命令:
$ ansible-playbook -i inventory/mycluster/hosts.ini remove-node.ymlKubeSpray文档:kubespray。
有用的文章:kubespray-steps,kubespray-ansible。
发布于 2019-08-28 00:54:14
好的,所以对于一个kubespray CI/CD pipeline来说,这比删除集群上下文要复杂一点。您必须主动删除每个节点上的其他项,并对ETCD执行reset.yml。
有时,仅仅运行reset.yml就足够了,所以它会将集群重置为初始状态,但如果这还不够,那么您必须删除节点上的docker、kubelet、repositories、/etc/kubernetes和许多其他目录,以获得干净的部署。在这种情况下,使用terraform和vsphere(vra) API在管道中配置新节点几乎总是更容易。
https://stackoverflow.com/questions/57671556
复制相似问题