• 安装部署
  • KubeSphere 3.4.1单主节点升级到3主节点,apiserver还是调用原单节点etcd?

创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。
发帖前请点击 发表主题 右边的 预览(👀) 按钮,确保帖子格式正确。

操作系统信息
虚拟机,Ubuntu22.04,4C/8G

Kubernetes版本信息
v1.22.12。原1master,2worker,新增后3master,2worker。

容器运行时
使用 docker:24.0.6 ,containerd:v1.7.3

KubeSphere版本信息
v3.4.1。根据官方文档进行安装,安装过程没有问题。 https://kubesphere.io/zh/docs/v3.4/installing-on-linux/on-premises/install-kubesphere-on-bare-metal/

问题是什么
1master,2worker安装完成后,进行master节点新增,按照官方文档:https://kubesphere.io/zh/docs/v3.4/installing-on-linux/cluster-operation/add-new-nodes/

config.yaml和官方示例一致,无其他参数特殊改变,新增完后问题如下:

1、原以为扩容主节点也会对ks环境也进行扩容至3节点,其实没有,手动扩容ks-apiserver会因为没有redis缓存造成登录token不一致失败,

2、扩容主节点后,原单节点209 /etc/etcd.env 下 “ETCD_INITIAL_CLUSTER=”依旧为单节点,而新增2台主节点/etc/etcd.env 配置已经变为三台集群配置,查看kube-apiserver的yaml,依旧调用为原始单节点209的etcd配置,这样有个问题,目前如果原始的单节点209宕机,将导致整个集群kube-apiserver调用etcd失败,原始单主节点扩容到3主节点,kube-system的kube-apiserver配置并不会变更为3主节点的etcd,有什么办法进行调整?

    mickjia
    kube-apiserver 中的 etcd endpoint是 kubeadm init 时生成的,后续 etcd 扩容至三节点,可以直接编辑 /etc/kuberetes/manifests/kube-apiserver.yaml 添加另外两个节点,同时 可以编辑 kubeadm-config 这个configmap 补充 external etcd 的endpoint。

      Cauchy 感谢解答,对于问题1kubesphere刚开始单主节点,没有redis,后续扩容为集群,在原主节点宕机后,此时ks服务会漂移到其他集群的一台服务器上,控制台登录后报“request to http://ks-apiserver/oauth/token failed, reason: getaddrinfo EAI_A”,因为token数据在宕机服务器上,此时有什么好的解决办法