×

Knative (kn) CLI 没有自己的登录机制。要登录集群,必须安装 OpenShift CLI (oc) 并使用 oc login 命令。CLI 的安装选项可能因操作系统而异。

有关为您的操作系统安装 OpenShift CLI (oc) 和使用 oc 登录的更多信息,请参阅OpenShift CLI 入门文档。

无法使用 Knative (kn) CLI 安装 OpenShift Serverless。集群管理员必须安装 OpenShift Serverless Operator 并设置 Knative 组件,如安装 OpenShift Serverless Operator文档中所述。

如果尝试将旧版本的 Knative (kn) CLI 与较新的 OpenShift Serverless 版本一起使用,则找不到 API 并发生错误。

例如,如果将使用版本 1.2 的 Knative (kn) CLI 的 1.23.0 版本与使用 Knative Serving 和 Knative Eventing API 的 1.3 版本的 1.24.0 OpenShift Serverless 版本一起使用,则 CLI 无法工作,因为它继续查找已过时的 1.2 API 版本。

确保使用与 OpenShift Serverless 版本相对应的最新 Knative (kn) CLI 版本,以避免出现问题。

使用 OpenShift Container Platform Web 控制台安装 Knative CLI

使用 OpenShift Container Platform Web 控制台提供了一个简化且直观的用户界面来安装 Knative (kn) CLI。安装 OpenShift Serverless Operator 后,您将在 OpenShift Container Platform Web 控制台的“命令行工具”页面上看到一个链接,用于下载适用于 Linux (amd64、s390x、ppc64le)、macOS 或 Windows 的 Knative (kn) CLI。

先决条件
  • 您已登录到 OpenShift Container Platform Web 控制台。

  • OpenShift Serverless Operator 和 Knative Serving 已安装在您的 OpenShift Container Platform 集群上。

    如果libc不可用,运行 CLI 命令时可能会看到以下错误

    $ kn: No such file or directory
  • 如果要使用此过程的验证步骤,则必须安装 OpenShift (oc) CLI。

步骤
  1. 从“命令行工具”页面下载 Knative (kn) CLI。您可以通过单击 Web 控制台右上角的问号圆圈 图标并从列表中选择“命令行工具”。

  2. 解压存档

    $ tar -xf <file>
  3. kn二进制文件移动到PATH上的目录。

  4. 要检查您的PATH,请运行

    $ echo $PATH
验证
  • 运行以下命令以检查是否已创建正确的 Knative CLI 资源和路由

    $ oc get ConsoleCLIDownload
    示例输出
    NAME                  DISPLAY NAME                                             AGE
    kn                    kn - OpenShift Serverless Command Line Interface (CLI)   2022-09-20T08:41:18Z
    oc-cli-downloads      oc - OpenShift Command Line Interface (CLI)              2022-09-20T08:00:20Z
    $ oc get route -n openshift-serverless
    示例输出
    NAME   HOST/PORT                                  PATH   SERVICES                      PORT       TERMINATION     WILDCARD
    kn     kn-openshift-serverless.apps.example.com          knative-openshift-metrics-3   http-cli   edge/Redirect   None

使用 RPM 包管理器在 Linux 上安装 Knative CLI

对于 Red Hat Enterprise Linux (RHEL),您可以使用包管理器(例如 `yum` 或 `dnf`)将 Knative (kn) CLI 作为 RPM 安装。这允许系统自动管理 Knative CLI 版本。例如,使用类似 `dnf upgrade` 的命令会升级所有包,包括 `kn`(如果存在新版本)。

先决条件
  • 您的 Red Hat 帐户拥有一个活动的 OpenShift Container Platform 订阅。

步骤
  1. 注册 Red Hat Subscription Manager

    # subscription-manager register
  2. 拉取最新的订阅数据

    # subscription-manager refresh
  3. 将订阅附加到已注册的系统

    # subscription-manager attach --pool=<pool_id> (1)
    1 活动 OpenShift Container Platform 订阅的池 ID
  4. 启用 Knative (kn) CLI 所需的存储库

    • Linux (x86_64, amd64)

      # subscription-manager repos --enable="openshift-serverless-1-for-rhel-8-x86_64-rpms"
    • IBM zSystems 和 IBM® LinuxONE 上的 Linux (s390x)

      # subscription-manager repos --enable="openshift-serverless-1-for-rhel-8-s390x-rpms"
    • IBM Power 上的 Linux (ppc64le)

      # subscription-manager repos --enable="openshift-serverless-1-for-rhel-8-ppc64le-rpms"
  5. 使用包管理器将 Knative (kn) CLI 作为 RPM 安装

    示例 `yum` 命令
    # yum install openshift-serverless-clients

锁定使用 RPM 包管理器安装的 Knative CLI 版本

您可能需要使用不是最新版本但处于维护阶段的 Knative (kn) CLI 版本。您可以通过锁定 `kn` 的版本来实现这一点,这可以防止其被升级。

步骤
  1. 为 DNF 包管理器安装 `versionlock` 插件

    # dnf install 'dnf-command(versionlock)'
  2. 运行以下命令锁定 `kn` 的版本:

    # dnf versionlock add --raw 'openshift-serverless-clients-1.7.*'

    此命令将 `kn` 锁定到基于 Knative 1.7 的版本,该版本在 OpenShift Serverless 1.29 发布时处于维护阶段。

升级具有锁定版本的 Knative CLI

您可以手动升级以前已锁定版本的 Knative (kn) CLI。

步骤
  1. 检查是否有可用的升级包

    # dnf search --showduplicates openshift-serverless-clients
  2. 删除 `kn` 的版本锁定

# dnf versionlock delete openshift-serverless-clients
  1. 将 `kn` 锁定到新版本

# dnf versionlock add --raw 'openshift-serverless-clients-1.8.*'

+ 此示例使用基于 Knative 1.8 的 `kn` 版本。

  1. 升级到新的可用版本

    # dnf install --upgrade openshift-serverless-clients

在 Linux 上安装 Knative CLI

如果您使用的是未安装 RPM 或其他包管理器的 Linux 发行版,则可以将 Knative (kn) CLI 安装为二进制文件。为此,您必须下载并解压一个 `tar.gz` 归档文件,并将二进制文件添加到您的 `PATH` 中的目录。

先决条件
  • 如果您不使用 RHEL 或 Fedora,请确保在您的库路径上的目录中安装了 **libc**。

    如果libc不可用,运行 CLI 命令时可能会看到以下错误

    $ kn: No such file or directory
步骤
  1. 下载相关的 Knative (kn) CLI `tar.gz` 归档文件

    您还可以通过导航到 Serverless 客户端下载镜像 中相应版本的目录来下载任何版本的 `kn`。

  2. 解压存档

    $ tar -xf <filename>
  3. kn二进制文件移动到PATH上的目录。

  4. 要检查您的PATH,请运行

    $ echo $PATH

在 macOS 上安装 Knative CLI

如果您使用的是 macOS,则可以将 Knative (kn) CLI 安装为二进制文件。为此,您必须下载并解压一个 `tar.gz` 归档文件,并将二进制文件添加到您的 `PATH` 中的目录。

步骤
  1. 下载 Knative (kn) CLI `tar.gz` 归档文件

    您还可以通过导航到 Serverless 客户端下载镜像 中相应版本的目录来下载任何版本的 `kn`。

  2. 解压并提取归档文件。

  3. kn二进制文件移动到PATH上的目录。

  4. 要检查您的 `PATH`,请打开终端窗口并运行

    $ echo $PATH

在 Windows 上安装 Knative CLI

如果您使用的是 Windows,则可以将 Knative (kn) CLI 安装为二进制文件。为此,您必须下载并解压一个 ZIP 归档文件,并将二进制文件添加到您的 `PATH` 中的目录。

步骤
  1. 下载 Knative (kn) CLI ZIP 归档文件

    您还可以通过导航到 Serverless 客户端下载镜像 中相应版本的目录来下载任何版本的 `kn`。

  2. 使用 ZIP 程序提取归档文件。

  3. kn二进制文件移动到PATH上的目录。

  4. 要检查您的 `PATH`,请打开命令提示符并运行命令

    C:\> path