快速入门

本指南将帮助您快速启动一个具有默认选项的集群。

刚接触 Kubernetes 吗?官方Kubernetes文档已经有一些很好的教程,概述了基础知识,详见 这里

您可以使用 Prime Artifacts URL 上列出的任意 RKE2 Prime 版本,用于这些步骤中提到的资产。要了解有关 Prime Artifacts URL 的更多信息,请参阅我们的 仅限 Prime 的文档。需要身份验证。使用您的 SUSE 客户中心 (SCC) 凭据登录。

先决条件

  • 请确保您的环境满足要求。如果您的主机上安装并启用了 NetworkManager,请确保其配置为忽略 CNI 管理的接口

  • 如果主机内核支持 AppArmor,在安装 RKE2 之前,还必须存在 AppArmor 工具(通常通过`apparmor-parser` 软件包提供)。

  • SUSE® Rancher Prime: RKE2 的安装过程必须以 root 用户身份运行或通过 sudo 进行。

服务器节点安装

SUSE® Rancher Prime: RKE2 提供了一个安装脚本,它是一种便捷的方式,可在基于 systemd 的系统上将其作为服务安装。该脚本可在 https://get.rke2.io. 获得。要使用此方法安装 SUSE® Rancher Prime: RKE2,请执行以下操作:

  1. 运行安装程序,其中 INSTALL_RKE2_ARTIFACT_URL 表示 Prime Prime Artifacts URL,而 INSTALL_RKE2_CHANNEL 是您可以订阅的发布渠道,默认为 stable。在此示例中,INSTALL_RKE2_CHANNEL="latest" 为您提供 RKE2 的最新版本。

    curl -sfL https://get.rke2.io/ | sudo INSTALL_RKE2_ARTIFACT_URL=<PRIME-ARTIFACTS-URL>/rke2 INSTALL_RKE2_CHANNEL="latest" sh -

    如果您想指定版本,请设置 INSTALL_RKE2_VERSION 环境变量。

    curl -sfL https://get.rke2.io/ | sudo INSTALL_RKE2_ARTIFACT_URL=<PRIME-ARTIFACTS-URL>/rke2 INSTALL_RKE2_VERSION="<VERSION>" sh -

    这将把 rke2-server 服务和 rke2 二进制文件安装到您的机器上。由于其特性,除非以 root 用户身份运行或通过 sudo 进行,否则将会失败。

  2. 启用 rke2-server 服务。

    systemctl enable rke2-server.service
  3. 要从 Rancher Prime 注册表中拉取镜像,请在 etc/rancher/rke2/config.yaml 中设置以下值:

    system-default-registry: registry.rancher.com

    此配置指示 RKE2 使用 registry.rancher.com 作为其在集群中部署所需所有容器镜像的默认位置。

  4. 启动服务。

    systemctl start rke2-server.service
  5. 使用以下命令查看日志:

    journalctl -u rke2-server -f

运行此安装后:

  • 将安装`rke2-server`服务。`rke2-server`服务将配置为在节点重启后或进程崩溃或被终止时自动重启。

  • 将在`/var/lib/rancher/rke2/bin/安装其他实用程序。这些包括:`kubectlcrictl`和`ctr。请注意,这些默认情况下不在您的路径中。

  • 两个清理脚本,rke2-killall.sh`和`rke2-uninstall.sh,将安装到路径:

    • `/usr/local/bin`用于常规文件系统

    • `/opt/rke2/bin`用于只读和brtfs文件系统。

    • `INSTALL_RKE2_TAR_PREFIX/bin`如果`INSTALL_RKE2_TAR_PREFIX`被设置

  • 将在 /etc/rancher/rke2/rke2.yaml 写入一个 kubeconfig 文件。

  • 将在`/var/lib/rancher/rke2/server/node-token`创建一个可以用于注册其他服务器或代理节点的令牌。

如果您添加额外的服务器节点,您必须总共有一个奇数。需要一个奇数以维持法定人数。有关更多详细信息,请参见高可用性文档

Linux代理(工作)节点安装

本节的步骤需要root级别的访问权限或`sudo`才能工作。

  1. 运行安装程序。

    curl -sfL https://get.rke2.io | INSTALL_RKE2_ARTIFACT_URL=<PRIME-ARTIFACTS-URL>/rke2 INSTALL_RKE2_CHANNEL="latest" INSTALL_RKE2_TYPE="agent" sh -

    如果您想指定版本,请设置 INSTALL_RKE2_VERSION 环境变量。

    curl -sfL https://get.rke2.io/ | sudo INSTALL_RKE2_ARTIFACT_URL=<PRIME-ARTIFACTS-URL>/rke2 INSTALL_RKE2_VERSION="<VERSION>" INSTALL_RKE2_TYPE="agent" sh -

    这将把 rke2-agent 服务和 rke2 二进制文件安装到您的机器上。由于其特性,除非以 root 用户身份运行或通过 sudo,否则将会失败。

  2. 启用rke2-agent服务。

    systemctl enable rke2-agent.service
  3. 配置rke2-agent服务。

    mkdir -p /etc/rancher/rke2/
    vim /etc/rancher/rke2/config.yaml

    config.yaml的内容:

    server: https://<server>:9345
    token: <token from server node>

    rke2 server 进程在 9345 端口上监听新节点的注册请求。Kubernetes API 仍然在 6443 端口上提供服务,正常运行。

  4. 启动服务。

    systemctl start rke2-agent.service
  5. 使用以下命令查看日志:

    journalctl -u rke2-agent -f

每台机器必须有一个唯一的主机名。如果您的机器没有唯一的主机名,请在 config.yaml 文件中设置 node-name 参数,并为每个节点提供一个有效且唯一的主机名。要了解更多关于 config.yaml 文件的信息,请参考 配置选项文档

Windows 代理(工作节点)安装

Windows 支持与 Calico 或 Flannel 一起作为 RKE2 集群的 CNI。

  1. 准备 Windows 代理节点。

    需要启用 Windows Server 容器功能,以使 RKE2 代理正常工作。

    1. 以管理员权限打开一个新的 Powershell 窗口。

      powershell -Command "Start-Process PowerShell -Verb RunAs"
    2. 在新的 Powershell 窗口中,运行以下命令以安装容器功能。

      Enable-WindowsOptionalFeature -Online -FeatureName containers –All

      这将需要重启,以使 Containers 功能正常运行。

  2. 下载安装脚本。

    Invoke-WebRequest -Uri https://raw.githubusercontent.com/rancher/rke2/master/install.ps1 -Outfile install.ps1

    该脚本将把 rke2.exe Windows 二进制文件下载到您的机器上。

  3. 为 Windows 配置 rke2-agent。

    New-Item -Type Directory c:/etc/rancher/rke2 -Force
    Set-Content -Path c:/etc/rancher/rke2/config.yaml -Value @"
    server: https://<server>:9345
    token: <token from server node>
    "@

    要了解更多关于 config.yaml 文件的信息,请参考 配置选项文档

  4. 配置 PATH。

    $env:PATH+=";c:\var\lib\rancher\rke2\bin;c:\usr\local\bin"
    
    [Environment]::SetEnvironmentVariable(
        "Path",
        [Environment]::GetEnvironmentVariable("Path", [EnvironmentVariableTarget]::Machine) + ";c:\var\lib\rancher\rke2\bin;c:\usr\local\bin",
        [EnvironmentVariableTarget]::Machine)
  5. 运行安装程序。

    ./install.ps1
  6. 启动 Windows RKE2 服务。

    rke2.exe agent service --add

每台机器必须有一个唯一的主机名。

不要忘记使用以下命令启动 RKE2 服务:

Start-Service rke2

如果您更愿意仅使用 CLI 参数,请使用所需的参数运行二进制文件。

rke2.exe agent --token <> --server <>