中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
鲲鹏小智

多节点模式部署

多节点模式是指在多个节点上部署KubeSphere,是最常见的部署形态。多节点集群由至少一个主节点和一个工作节点组成。

  1. 在所有节点安装依赖。
    yum install -y curl socat conntrack openssl ipset ipvsadm
  2. 下载安装工具KubeKey。
  3. 预下载容器镜像包。

    默认拉取的defaultbackend容器镜像不支持Arm架构,为了确保容器能够在Arm架构上正常运行,需要拉取支持Arm架构的容器镜像包到本地,并替换为默认的镜像tag。操作如下:

    docker pull mirrorgooglecontainers/defaultbackend-arm64:1.4
    docker tag mirrorgooglecontainers/defaultbackend-arm64:1.4 mirrorgooglecontainers/defaultbackend-amd64:1.4
    • 如果在其他场景中遇到类似拉取的镜像不支持Arm架构的情况,都可以参考本步骤拉取支持Arm架构的容器镜像包到本地,并替换为默认的镜像tag,解决镜像的兼容性问题。
      容器镜像tag修改命令参考如下:
      docker tag SOURCE_IMAGE:TAG1 TARGET_IMAGE:TAG2

      SOURCE_IMAGE:TAG1为修改前tag,TARGET_IMAGE:TAG2为修改后tag。

    • 如果您无法从dockerhub.io成功拉取镜像,强烈推荐您预先配置Docker镜像加速器,并尝试使用其他镜像源来下载所需版本的Docker镜像。更换镜像源的详细操作步骤请参见如何更换镜像源
  4. 使用KubeKey创建配置文件。

    本文中以指定Kubernetes v1.23.10和KubeSphere v3.4.1版本为例进行说明。

    cd /home 
    ./kk create config --with-kubernetes v1.23.10 --with-kubesphere v3.4.1
    • 默认生成的配置文件名为config-sample.yaml。
    • “--with-kubesphere version”参数用于指定安装的KubeSphere版本。如果不添加“--with-kubesphere”则不安装KubeSphere,如果不指定“version”的版本号则默认安装最新版本的KubeSphere。
  5. 修改配置文件。
    1. 打开配置文件。
      vi config-sample.yaml
    2. 按“i”进入编辑模式,在配置文件中添加节点信息。本示例包括以下三个节点,主节点充当任务机。

      主机IP地址

      主机名

      角色

      192.168.1.102

      master

      control plane, etcd

      192.168.1.100

      node1

      worker

      192.168.1.103

      node2

      worker

      将spec字段后面的信息配置为如下内容:

      spec:
        hosts:
        - {name: master, address: 192.168.1.102, internalAddress: 192.168.1.102, user: root, password: "kubesphere123", arch: arm64}
        - {name: node1, address: 192.168.1.100, internalAddress: 192.168.1.100, user: root, password: "kubesphere123", arch: arm64}
        - {name: node2, address: 192.168.1.103, internalAddress: 192.168.1.103, user: root, password: "kubesphere123", arch: arm64}
        roleGroups:
          etcd:
          - master
          control-plane:
          - master
          worker:
          - node1
          - node2

      修改完成后如下图所示:

      参照上述配置内容在hosts中列出所有服务器的详细信息:

      • name:节点的主机名。注意不支持大写的主机名,否则将导致安装过程无法正常结束。
      • address:该节点与其他节点之间ssh相互连接所使用的IP地址。根据实际环境填写,可以是公有IP地址或者私有IP地址。
      • internalAddress:节点的私有IP地址。
      • user:用户名。
      • password:密码。注意密码中不要带#
      • arch:硬件架构。

      在roleGroups中针对每个角色分配对应的节点:

      • etcd:etcd节点。
      • control-plane:主节点。通常托管控制平面,控制和管理整个系统。
      • worker:工作节点。运行部署在工作节点上的实际应用程序。

      将etcd字段后面的信息修改为如下内容,开启etcd监控。

      monitoring: true

      修改完成后如下图所示:

    3. 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存并退出文件。
  6. 部署Kubernetes集群。

    在管理节点执行如下命令创建一个Kubernetes集群。

    ./kk create cluster -f config-sample.yaml

    执行本步骤命令后,KubeKey将检查您的安装环境,结果显示为一张表格,并提示“Continue this installation? [yes/no]:”。请检查依赖项是否都满足,然后输入“yes”,再按回车继续。

    安装过程中会联网下载相关组件包。

    安装完成后输出信息中会显示Web控制台的IP地址和端口号,默认的端口号是“30880”。现在,您可以使用默认用户(admin)和密码(P@88w0rd)并通过<NodeIP>:30880(本例中为“http://192.168.1.102:30880”)访问KubeSphere的Web控制台。