商城
简体中文
  • 云原生容器产品
    • QKCP 企业级容器平台
    • KSV 虚拟化管理平台
    • KubeSphere 混合架构容器云
    • QKCP 容器一体机
    • 数据库(即将上线)
  • 云原生服务
    • 云原生备份容灾服务
  • 公有云容器服务
    • KubeSphere on AWS
    • KubeSphere on QingCloud
    • KubeSphere on Azure
    • KubeSphere on DigitalOcean
  • 技术支持服务
    • 全方位支持工单
    • 平台 Logo 定制

多节点模式安装和升级

介绍如何在多节点模式下安装、升级、卸载 KSV 以及如何在集群中添加节点。

本节介绍如何在多节点模式下安装、升级、卸载 KubeSphere 虚拟化(KSV)以及如何在集群中添加节点。

KSV 目前支持以下安装模式:

  • 单节点模式:安装在单个服务器节点上,适用于测试环境。有关单节点模式,请参阅单节点模式安装和升级
  • 多节点模式:安装在多个服务器节点上,适用于生产环境。

前提条件

  • 多节点模式需要至少 3 个服务器节点。

  • 服务器节点的操作系统需要为 Linux 操作系统,Linux 内核版本必须在 4 以上。建议使用 Ubuntu 18.04、Ubuntu 20.04、CentOS 7.9、CentOS 8.5、统信 UOS、银河麒麟 V10 或华为 EulerOS。其他操作系统尚未充分测试,可能存在未知问题。未来将支持更多操作系统。

    检查操作系统版本:

    cat /etc/issue
  • 每个服务器节点的硬件配置都必须满足以下条件:

    硬件最低配置推荐配置
    CPU4 核8 核
    内存8 GB16 GB
    系统磁盘100 GB100 GB

    检查 CPU 核心数(两行命令回显结果相乘为服务器节点 CPU 核心总数):

    cat /proc/cpuinfo | grep "physical id" | sort | uniq | wc -l
    cat /proc/cpuinfo | grep "cpu cores" | uniq

    检查内存大小:

    cat /proc/meminfo | grep MemTotal

    检查可用磁盘大小:

    df -hl
  • 多节点模式下必须确保至少 3 个服务器节点用作工作节点(控制节点同时也可以为工作节点)。每个工作节点都必须至少具有 1 个未格式化且未分区的磁盘,或 1 个未格式化的分区。该磁盘或分区的最低配置为 100 GB,推荐配置为 200 GB。

    检查工作节点磁盘分区:

    lsblk -f

    例如,以下回显表明 vdb 磁盘为满足条件的设备:

    NAME FSTYPE LABEL UUID MOUNTPOINT vda └─vda1 LVM2_member >eSO50t-GkUV-YKTH-WsGq-hNJY-eKNf-3i07IB ├─ubuntu--vg-root ext4 c2366f76-6e21-4f10-a8f3-6776212e2fe4 / └─ubuntu--vg-swap_1 swap 9492a3dc-ad75-47cd-9596-678e8cf17ff9 [SWAP] vdb
  • 所有服务器节点都需要支持虚拟化。如果存在不支持虚拟化的服务器节点,KSV 将以模拟模式运行。该模式将占用更多资源,且可能影响性能。

    检查服务器节点是否支持虚拟化(若无回显则不支持虚拟化):

    grep -E '(svm|vmx)' /proc/cpuinfo
  • 所有服务器节点的时间必须同步。

安装 KSV

  1. root 用户登录任意服务器节点。

  2. 执行以下命令检查节点服务器的架构:

    uname -m
  3. 根据节点服务器的架构类型下载安装包。

    • x86 架构

      执行以下命令下载安装包(安装包大小约 4.5 GB):

      common:Cover Text

      执行以下命令解压安装包:

      tar -zxvf kubesphere-virtualization-x86_64-v1.5.0.tar.gz

      执行以下命令进入安装包解压后生成的目录:

      cd kubesphere-virtualization-x86_64
    • ARM64 架构

      执行以下命令下载安装包(安装包大小约 4.2 GB):

      common:Cover Text

      执行以下命令解压安装包:

      tar -zxvf kubesphere-virtualization-arm64-v1.5.0.tar.gz

      执行以下命令进入安装包解压后生成的目录:

      cd kubesphere-virtualization-arm64
  4. 执行以下命令编辑 config-sample.yaml 文件并在 hostsroleGroups 参数下配置节点信息:

    vi config-sample.yaml

    以下为示例配置:

    hosts: - {name: node1, address: 172.16.0.2, internalAddress: 172.16.0.2, port: 8022, user: ubuntu, password: Qcloud@123} - {name: node2, address: 172.16.0.3, internalAddress: 172.16.0.3, password: Qcloud@123} - {name: node3, address: 172.16.0.4, internalAddress: 172.16.0.4, privateKeyPath: "~/.ssh/id_rsa"} roleGroups: etcd: - node1 controlPlane: - node1 - node[2:3] worker: - node1 - node[2:3]

    相关参数描述如下:

    参数描述
    hosts
    name节点名称。
    address节点的 SSH 登录 IP 地址。
    internalAddress节点在子网内部的 IP 地址。
    port节点的 SSH 端口号。如果使用默认端口 22 可不设置此参数。
    user节点的 SSH 登录用户名,该用户必须为 root 用户或其他具有 sudo 命令执行权限的用户。如果使用 root 用户可不设置此参数。
    password节点的 SSH 登录密码。如果已经设置 privateKeyPath 可不设置此参数。
    privateKeyPath节点的 SSH 登录密钥的路径。如果已经设置 password 可不设置此参数。
    roleGroups
    etcd安装 etcd 数据库的节点,一般设置为集群控制节点。
    controlPlane集群控制节点。集群中可设置多个控制节点。
    worker集群工作节点。工作节点上可以创建虚拟机。多节点模式下集群中必须至少有 3 个工作节点,控制节点同时也可以是工作节点。
  5. 执行以下命令开始安装:

    ./install.sh -m --ratio <超卖比>

    common:NOTE

    • --ratio 参数为可选参数,用于指定 KSV 集群的超卖比,取值为 1 至 10 的整数。如果未设置 --ratio 参数,超卖比默认值为 2
    • 超卖比将决定 KSV 可创建虚拟机的总数。可创建虚拟机的总数 = 集群 CPU 核心总数 x 超卖比。
    • 只有新安装 KSV 时可以设置超卖比,升级 KSV 时不支持修改超卖比。
    • 安装可能需要较长时间,请等待安装完成。

    如果显示如下信息则安装成功:

    ##################################################### ### Welcome to KubeSphere Virtualization! ### ##################################################### Console: http://172.16.0.59:30880 Username: admin Password: P@88w0rd NOTE: Please change the default password of the admin user after login. ##################################################### https://kubesphere.cloud/ksv/ 2021-04-29 14:03:45 #####################################################
  6. 从安装成功回显中的 ConsoleUsernamePassword 参数分别获取 KSV Web 控制台的地址、系统管理员用户名和系统管理员密码。

    common:NOTE

    KSV Web 控制台提供以下默认用户:

    • 系统管理员:用户名 admin,密码 P@88w0rd
    • default 项目管理员:用户名 project-default-admin,密码 123456
    • default 项目操作员:用户名 project-default-operator,密码 123456
  7. (可选)安装结束后,执行以下命令查看安装日志:

    ksv logs

添加节点

  • 使用 KSV Web 控制台添加节点

    1. 以系统 admin 用户登录 KSV Web 控制台。

    2. 在页面顶部的菜单栏中点击节点以打开节点列表页。

    3. 在节点列表页面点击添加。在添加节点页面,为即将添加的节点设置以下参数:

      参数描述
      名称用户自定义的节点名称。名称只能包含小写字母、数字和连字符(-),必须以小写字母或数字开头和结尾,最长 16 个字符。如果同时添加多个节点,系统将自动在不同节点的名称后增加序列号。
      内部 IP 地址集群内各节点可访问的内部 IP 地址。您需要手动输入每个节点的 IP 地址。在内部 IP 地址右侧点击 / 可增加/减少待添加的节点的数量。
      数量需要添加的节点的数量。目前支持同时添加最多 50 个节点。
      SSH 认证方式节点的 SSH 认证方式。
      • 用户名和密码:使用用户名和密码登录服务器节点。
      • SSH 密钥:使用 SSH 密钥登录服务器节点。
      端口用于 SSH 登录节点的端口号。

      common:NOTE

      添加多个节点并选择使用 SSH 密钥登录时,您需要预先为所有待添加的节点设置相同的 SSH 密钥。

    4. 点击确定。节点添加完成后将显示在节点列表中。

      common:NOTE

      • 在页面右下角的 KSV 助手中,点击操作进度并选择节点可查看待添加的节点的进度。
      • 目前,KSV 只支持添加节点,不支持删除节点。
      • 您需要购买商业版许可证才能在 Web 控制台添加节点。有关更多信息,请参阅软件许可证
  • 使用终端添加节点

    1. root 用户登录服务器节点。

    2. 进入安装包解压后生成的目录。

    3. 执行以下命令编辑 config-sample.yaml 文件并在 hostsroleGroups 参数下配置新增的节点信息:

      vi config-sample.yaml

      common:NOTE

      有关参数配置请参阅安装 KSV

    4. 执行以下命令开始添加节点:

      ./add-nodes.sh

      如果显示如下信息则节点添加成功:

      Congratulations! Scaling cluster is successful.

升级 KSV

如果系统中已安装过旧版本的 KSV,可执行以下步骤升级 KSV 版本。

  1. 登录安装 KSV 时所使用的服务器节点。

  2. 执行安装 KSV 步骤 2 至步骤 4。

  3. 执行以下命令升级 KSV:

    ./upgrade.sh
  4. 执行以下命令开启 KSV Web 控制台添加节点功能:

    ksv upload-config {old package dir}

    common:NOTE

    在 KSV Web 控制台添加节点是 v1.1.0 版本的新增功能。如需从 KSV v1.1.0 之前的版本升级,则需要执行以上命令才能在 Web 控制台开启该功能。

  5. 升级完成后执行以下命令查看安装日志:

    ksv logs

    如果显示如下信息则升级成功:

    ##################################################### ### Welcome to KubeSphere Virtualization! ### ##################################################### Console: http://172.16.0.59:30880 Username: admin Password: P@88w0rd NOTE: Please change the default password of the admin user after login. ##################################################### https://kubesphere.cloud/ksv/ 2021-04-29 14:03:45 #####################################################

卸载 KSV

  1. root 用户登录保存安装包的服务器节点。

  2. 进入安装包解压后生成的目录。

  3. 执行以下命令开始卸载:

    ./uninstall.sh -m

    如果显示如下信息则卸载成功:

    INFO[14:25:16 CST] Successful.

    common:NOTE

    如卸载持续时间超过 15 分钟,您可以尝试重启机器再卸载 KSV。