问题已解决
补充一下,问题解决了,依靠wireguard组网完成了节点之间的通信
创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。操作系统信息
master: Centos8 4C/8G
node1: Centos8 2C/2G
Kubernetes版本信息
Client Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.13-rc1+k3s1", GitCommit:"efc5f1e9ee5a3e7f2d3f9accbfb4fe45d17bcfdd", GitTreeState:"clean", BuildDate:"2022-05-25T19:38:01Z", GoVersion:"go1.16.10", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"21", GitVersion:"v1.21.13-rc1+k3s1", GitCommit:"efc5f1e9ee5a3e7f2d3f9accbfb4fe45d17bcfdd", GitTreeState:"clean", BuildDate:"2022-05-25T19:38:01Z", GoVersion:"go1.16.10", Compiler:"gc", Platform:"linux/amd64"}
容器运行时
将docker version
/crictl version
/nerdctl version
结果贴在下方KubeSphere版本信息
v3.3.1 在线安装,在已有k3s上安装。
问题是什么
无法获取node节点资源信息,但是通过
是能获取的。
感觉越整错越多了,node的DNS抛出了错误
node节点是可以ping通集群APIserviesd的,但是通过telnet去测试端口却始终无法访问。是不是通过ALL-IN-ONE这种方式安装的节点然后再新增节点这种方式不行?打算下午去实验室重装一下
启动成功后,node节点的cni container依旧无法启动,并抛出
经测试,
10.233.0.1
在node接单可以直接ping通加入新节点时,
internalAddress
不能为公网Ip,否则创建出的节点无IP,且node-export pod启动异常,抛出Error from server: no preferred addresses found; known addresses: []
此处解决方案建议使用iptables将node节点的内网ip重定向在公网ip上
你们脚本的坑太多了,我看到论坛里2.0.0的时候都在讨论这个了,结果3.3.1都还没解决,麻了
创建部署问题时,请参考下面模板,你提供的信息越多,越容易及时获得解答。如果未按模板创建问题,管理员有权关闭问题。
确保帖子格式清晰易读,用 markdown code block 语法格式化代码块。
你只花一分钟创建的问题,不能指望别人花上半个小时给你解答。操作系统信息
master节点为Centos7.6 腾讯云服务器 裸机。node节点为Centos 7.6 阿里云服务器 裸机。
Kubernetes版本信息
将kubectl version
命令执行结果贴在下方问题已解决,发现问题时没截图
容器运行时
将docker version
/crictl version
/nerdctl version
结果贴在下方问题已解决,发现问题时没截图
KubeSphere版本信息
版本为V3.3.1 ,通过KK脚本安装,问题是什么
由于我的两台服务器均处于外网且内网互不相通,故节点配置中的
address,internalAddress
均相同。
首先,我尝试了KubeSphere 的多节点安装方案,具体配置如下:apiVersion: kubekey.kubesphere.io/v1alpha2 kind: Cluster metadata: name: sample spec: hosts: - {name: master, address: ******, internalAddress: ******, user: root, password: "******"} - {name: node1, address: ******, internalAddress: ******, user: root, password: "******"} roleGroups: etcd: - master control-plane: - master worker: - master - node1 controlPlaneEndpoint: ## Internal loadbalancer for apiservers # internalLoadbalancer: haproxy domain: lb.kubesphere.local address: "" port: 6443 kubernetes: version: v1.23.10 clusterName: cluster.local autoRenewCerts: true containerManager: docker etcd: type: kubekey network: plugin: calico kubePodsCIDR: 10.233.64.0/18 kubeServiceCIDR: 10.233.0.0/18 ## multus support. https://github.com/k8snetworkplumbingwg/multus-cni multusCNI: enabled: false registry: privateRegistry: "" namespaceOverride: "" registryMirrors: [] insecureRegistries: [] addons: []
执行了以下命令
./kk create cluster -f config-sample.yaml
得到了etcd启动报错的提示,具体是
internalAddress:2379 conction refuse!
,无法得到具体原因,于是更换internalAddress
为master节点的内网IP[此内网IP为xshell提供的,并不是通过ip addr
获取] ,得到同样的结果。通过
ip addr
获取到了eth0网卡的IP,于是internalAddress
修改成eth0的IP,得到以下的错误。问题无法解决,我在master节点执行了该命令
./kk create cluster --with-kubernetes v1.22.12 --with-kubesphere v3.3.1
发现启动成功,而且其使用的
internalAddress
为eth0的IP。于是我对启动成功的集群进行扩容。成功构建集群。