无法在控制节点启动kubeadm,显示端口正在使用中

问题描述 投票:0回答:3

sudo kubeadm init I0609 02:20:26.963781 3600 version.go:252] 远程版本更新得多:v1.21.1;回落至: stable-1.18 W0609 02:20:27.069495 3600 configset.go:202]

WARNING: kubeadm cannot validate component configs `for API groups [kubelet.config.k8s.io kubeproxy.config.k8s.io]`
`[init] Using Kubernetes version: v1.18.19`
`[preflight] Running pre-flight checks`
`error execution phase preflight: [preflight] Some fatal errors occurred:`
`[ERROR Port-10259]: Port 10259 is in use`
`[ERROR Port-10257]: Port 10257 is in use`
`[ERROR FileAvailable--etc-kubernetes-manifests-kube-apiserver.yaml]: `/etc/kubernetes/manifests/kube-apiserver.yaml already exists`
`[ERROR FileAvailable--etc-kubernetes-manifests-kube-controller-manager.yaml]:` `/etc/kubernetes/manifests/kube-controller-manager.yaml already exists`
`[ERROR FileAvailable--etc-kubernetes-manifests-kube-scheduler.yaml]:` /etc/kubernetes/manifests/kube-scheduler.yaml already exists
`[ERROR FileAvailable--etc-kubernetes-manifests-etcd.yaml]: /etc/kubernetes/manifests/etcd.yaml already exists`
`[ERROR Port-10250]: Port 10250 is in use`
`[ERROR Port-2379]: Port 2379 is in use`
`[ERROR Port-2380]: Port 2380 is in use`
`[ERROR DirAvailable--var-lib-etcd]: /var/lib/etcd is not empty`
 [preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`
 To see the stack trace of this error execute with --v=5 or higher
kubernetes google-kubernetes-engine
3个回答
4
投票

您好,欢迎来到 Stack Overflow。

“端口正在使用” 表示正在运行一个正在使用该端口的进程。所以你需要停止这个过程。既然您已经运行过 kubeadm init 一次,它一定已经改变了很多事情。

首次运行 kubeadm reset 以撤消第一次运行后的所有更改。

然后运行 systemctl restart kubelet

最后,当您运行 kubeadm init 时,您应该不再收到错误。

即使执行了上述步骤,如果您收到此错误:

[ERROR DirAvailable--var-lib-etcd]: /var/lib/etcd is not empty
[preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...`

然后,在运行 kubeadm init 之前删除 etcd 文件夹 (/var/lib/etcd)。

注:

  1. 解决方案适用于其他用户。

  2. 警告本身不是问题,它只是警告 kubeadm 不再验证它提供给 kubelet、kube-proxy 组件的 KubeletConfiguration、KubeProxyConfiguration。


0
投票

我也遇到了这个问题,另外我必须手动杀死 kubelet ,使用

$ pkill kubelet

kubeadm init 此后工作正常,没有任何问题。


0
投票

似乎集群并未 100% 被删除。 一一运行以下命令。在集群的所有节点上。 (不要一起运行所有命令)。 之后尝试重新安装集群。

  1. $sudo kubeadm 重置
  2. sudo apt-get purge kubeadm kubectl kubelet kubernetes-cni kube*
  3. sudo apt-get 自动删除
  4. sudo rm -rf~/.kube
© www.soinside.com 2019 - 2024. All rights reserved.