ccfuncy

    • 2023年2月28日
    • 注册于 2022年11月6日
    • 0 次助人
    • 0 👍
    • 补充一下,问题解决了,依靠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这种方式安装的节点然后再新增节点这种方式不行?打算下午去实验室重装一下

    • 24sama 不好意思,最近几天忘了来看,目前我还是卡在这个地方,由于我calico无法启动,我无法再容器内部测试,目前我想的是通过iptables将10.233.0.1-> 443的请求转发到我的master节点的公网ip的6443端口上,您觉得这样可以作为一个解决方案么?

      • 启动成功后,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上

        • 24sama 对,都是配成外网的网址也不行。2376这个端口一直没有服务,但是却在一直访问。

        • 🤣 你们脚本的坑太多了,我看到论坛里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。于是我对启动成功的集群进行扩容。成功构建集群。