第 3 章 安装 Knative CLI

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

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

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

重要

如果您试图将较旧版本的 Knative kn CLI 与较新的 OpenShift Serverless 发行版本搭配使用,则不会找到 API,并出现错误。

例如,您使用 1.23.0 版本的 Knative (kn) CLI(使用版本 1.2),以及 1.24.0 版本的 OpenShift Serverless(使用版本 1.3 的 Knative Serving 和 Knative Eventing API),则 CLI 将无法正常工作,因为它会一直寻找已过时的 1.2 版本的 API。

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

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

使用 OpenShift Container Platform Web 控制台提供了一个简洁、直观的用户界面来安装 Knative (kn) CLI。安装 OpenShift Serverless Operator 后,您会看到从 OpenShift Container Platform Web 控制台的 Command Line Tools 页面中下载适用于 Linux 的 Knative (kn) CLI 的链接(amd64、s390x、ppc64le)、macOS 或 Windows。

先决条件

  • 已登陆到 OpenShift Container Platform Web 控制台。
  • OpenShift Serverless Operator 和 Knative Serving 已安装在 OpenShift Container Platform 集群中。

    重要

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

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

流程

  1. Command Line Tools 页面下载 Knative (kn) CLI。您可以点 web 控制台右上角的 question circle 图标进入 Command Line Tools 页,并在列表中选择 Command Line Tools
  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