第 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 版本以避免出现问题。
使用 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
$ kn: No such file or directoryCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
如果要使用验证步骤,您必须安装 OpenShift (
oc) CLI。
流程
-
从 Command Line Tools 页面下载 Knative (
kn) CLI。您可以点 web 控制台右上角的
图标进入 Command Line Tools 页,并在列表中选择 Command Line Tools。
解包存档:
tar -xf <file>
$ tar -xf <file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
kn二进制文件移到PATH中的目录中。 运行以下命令可以查看
PATH的值:echo $PATH
$ echo $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
运行以下命令检查是否已创建了正确的 Knative CLI 资源和路由:
oc get ConsoleCLIDownload
$ oc get ConsoleCLIDownloadCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
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
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:20ZCopy to Clipboard Copied! Toggle word wrap Toggle overflow oc get route -n openshift-serverless
$ oc get route -n openshift-serverlessCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD kn kn-openshift-serverless.apps.example.com knative-openshift-metrics-3 http-cli edge/Redirect None
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD kn kn-openshift-serverless.apps.example.com knative-openshift-metrics-3 http-cli edge/Redirect NoneCopy to Clipboard Copied! Toggle word wrap Toggle overflow