我正在使用KOPS,并且我有一个包含3个主服务器的集群。我删除了一个主磁盘和磁盘(根磁盘和etcd磁盘(主磁盘和事件磁盘))。
现在,kops重新创建了该主服务器和磁盘,但是此新的主节点无法加入集群。 kube-apiserver上的错误消息是
controller.go:135] Unable to perform initial IP allocation check: unable to refresh the service IP block: client: etcd cluster is unavailable or misconfigured; error #0: dial tcp 127.0.0.1:4001: getsockopt: connection refused
有什么主意吗?
答案 0 :(得分:1)
您的etcd
服务器似乎已在该主机上关闭。它可能无法与其他主服务器上的etcd
服务器同步。
您可以像这样检查:
$ sudo docker ps | grep etcd
如果您没有看到任何内容,则说明已失败。然后,您可以检查“已退出” etcd容器的日志:
$ sudo docker ps -a | grep Exited | grep etcd
$ sudo docker logs <etcd-container-id>
还要检查etcd
下/etc/kuberbetes/manifests/kube-apiserver.yaml
的kube-apiserver选项是否正常
答案 1 :(得分:1)
问题已解决。
1-我使用etcdctl从de etcd集群中删除了旧的master。您需要在etcd-server容器上进行连接。
2-在新的主节点上,我停止了kubelet和protokube服务。
3-空Etcd数据目录。 (数据和数据事件)
4-编辑/etc/kubernetes/manifests/etcd.manifests和etcd-events.manifest,将ETCD_INITIAL_CLUSTER_STATE从新更改为现有。
5-从新的主服务器获取名称和PeerURLS,并使用etcdctl在群集上添加新的主服务器。 (etcdctl成员添加“名称”“ PeerULR”)您需要在etcd-server容器上进行连接。
6-在新的主服务器上启动kubelet和protokube服务。