title: 创建 RKE1 Kubernetes 集群 keywords:

  • Harvester
  • Rancher
  • RKE1 Kubernetes 集群
  • Harvester 主机驱动
  • Node Driver description: 你可以使用内置的 Harvester 主机驱动在 Rancher 2.6.3 中配置在 Harvester 集群之上的 RKE1 Kubernetes 集群。

概述

你可以使用内置的 Harvester 主机驱动在 Rancher 2.6.3 中配置在 Harvester 集群之上的 RKE1 Kubernetes 集群。

rke1-cluster

注意: Harvester 主机驱动需要 VLAN 网络。

在创建由 Harvester 基础架构托管的 Kubernetes 集群时,节点模板用于配置集群节点。这些模板使用 Docker Machine 配置选项来定义节点的操作系统镜像以及设置/参数。

节点模板可以使用云凭证来访问在基础设施提供商中配置节点所需的凭证信息。多个节点模板可以使用相同的云凭证。通过使用云凭证,你不必为同一云提供商重新输入访问密钥。云凭证存储为 Kubernetes 密文。

你可以在两种情况下创建云凭据

所有云凭证都绑定到你的用户配置文件,不能与其他用户共享。

创建你的云凭证

  1. 单击☰ > 集群管理
  2. 单击云凭证
  3. 单击创建
  4. 单击 Harvester.
  5. 输入你的云凭证名称。
  6. 选择导入的 Harvester外部 Harvester
  7. 单击创建

create-harvester-cloud-credentials

创建节点模板

你可以使用 Harvester 主机驱动为你的 Kubernetes 集群创建节点模板并创建节点池。

  1. 配置云凭证
  2. 配置实例选项
    • 配置 CPU,内存和磁盘。
    • 选择与 cloud-init 配置兼容的操作系统镜像。
    • 选择 主机驱动能够连接的网络,目前仅支持 VLAN
    • 输入 SSH 用户。用户名会用于 SSH 到节点。例如,Ubuntu 云镜像的默认用户将是 ubuntu
  3. (可选)如果你需要自定义虚拟机的 cloud-init 配置,设置高级选项
  4. 输入 RANCHER 模板名称。

description: 你可以使用内置的 Harvester 主机驱动在 Rancher 2.6.3 中配置在 Harvester 集群之上的 RKE1 Kubernetes 集群。 - 图3

详情请参见基础设施提供商托管的节点

创建 RKE1 Kubernetes 集群

用户可以通过 Harvester RKE1 主机驱动从集群管理页面创建 RKE1 Kubernetes 集群。

  1. 点击集群菜单。
  2. 点击创建按钮。
  3. 切换到 RKE1
  4. 选择 Harvester 主机驱动。
  5. 输入集群名称(必须)。
  6. 输入主机池名称前缀(必须)。
  7. 输入主机模板(必须)。
  8. 选择 EtcdControl(必须)。
  9. 如果你需要使用 Harvester 云提供商CSI 驱动,在集群选项中,把云提供商配置为Harvesterdescription: 你可以使用内置的 Harvester 主机驱动在 Rancher 2.6.3 中配置在 Harvester 集群之上的 RKE1 Kubernetes 集群。 - 图4
  10. 单击创建

create-rke-harvester-cluster

在离线环境中使用 Harvester RKE1 主机驱动

RKE1 配置依赖 qemu-guest-agent 来获取虚拟机的 IP,并依赖 docker 来设置 RKE 集群。但是,在离线环境中安装 qemu-guest-agentdocker 可能不可行。

你可以使用以下选项解决安装限制:

选项 1:使用安装了 qemu-guest-agentdocker 的虚拟机镜像。

选项 2:配置 cloud init 用户数据,使虚拟机能够通过 HTTP(S) 代理安装 qemu-guest-agentdocker

Harvester 节点模板中的用户数据示例:

  1. #cloud-config
  2. apt:
  3. http_proxy: http://192.168.0.1:3128
  4. https_proxy: http://192.168.0.1:3128
  5. write_files:
  6. - path: /etc/environment
  7. content: |
  8. HTTP_PROXY="http://192.168.0.1:3128"
  9. HTTPS_PROXY="http://192.168.0.1:3128"
  10. append: true