使用 Knative Operator CLI 插件安装¶
Knative 提供了一个 CLI 插件,可以通过命令行安装、配置和管理 Knative。此 CLI 插件以参数驱动的方式为您配置 Knative 集群,而无需与自定义资源的复杂性交互。
先决条件¶
在安装 Knative 之前,您必须满足以下先决条件
-
**用于原型设计目的**,Knative 在大多数 Kubernetes 本地部署中都能正常工作。例如,您可以使用一个具有 3 个 CPU 和 4 GB 内存的本地单节点集群。
提示
您可以使用 Knative 快速入门插件 安装用于开发目的的 Knative 本地分发版。
-
**用于生产目的**,建议
- 如果您只有一个节点,则需要至少 6 个 CPU、6 GB 内存和 30 GB 磁盘存储空间。
- 如果您有多个节点,则每个节点需要至少 2 个 CPU、4 GB 内存和 20 GB 磁盘存储空间。
- 您有一个使用 Kubernetes v1.28 或更高版本的集群。
- 您已经安装了
kubectl
CLI。 - 您的 Kubernetes 集群必须能够访问互联网,因为 Kubernetes 需要能够获取映像。要从私有注册表中提取,请参见 从私有容器注册表部署映像。
注意
提供的系统要求仅为建议。安装所需的资源可能会有所不同,具体取决于您是否使用了可选组件,例如网络层。
验证 CLI 二进制文件¶
从 1.9 版本开始,Knative kn
CLI 版本使用 cosign 签名。您可以使用以下步骤验证 CLI 二进制文件
-
下载您想要的
checksums.txt
、checksum.txt.pem
和checksums.txt.sig
文件以及您想要的文件,从发布页面运行以下命令wget https://github.com/knative/client/releases/download/<kn-version>/checksums.txt wget https://github.com/knative/client/releases/download/<kn-version>/kn-darwin-amd64 wget https://github.com/knative/client/releases/download/<kn-version>/checksums.txt.sig wget https://github.com/knative/client/releases/download/<kn-version>/checksums.txt.pem
其中
<kn-version>
是您要验证的 CLI 版本。例如,knative-v1.8.0
。 -
通过运行以下命令验证签名
cosign verify-blob \ --cert checksums.txt.pem \ --signature checksums.txt.sig \ --certificate-identity=signer@knative-releases.iam.gserviceaccount.com \ --certificate-oidc-issuer=https://127.0.0.1 \ checksums.txt
-
如果签名有效,则可以运行以下命令验证
SHA256
校验和是否与下载的二进制文件匹配sha256sum --ignore-missing -c checksums.txt
注意
Knative 映像在 KEYLESS
模式下签名。要详细了解无密钥签名,请参见 无密钥签名。Knative 版本的签名身份是 signer@knative-releases.iam.gserviceaccount.com
,发行者是 https://127.0.0.1
。
安装 Knative Operator CLI 插件¶
在安装 Knative Operator CLI 插件之前,请先安装 Knative CLI。
通过运行以下命令使插件可执行
chmod +x kn-operator
创建 kn
插件的目录
mkdir -p ~/.config/kn/plugins
将文件移动到 kn
的插件目录
cp kn-operator ~/.config/kn/plugins
验证 Knative Operator CLI 插件的安装¶
您可以运行以下命令来验证安装
kn operator -h
您应该会看到有关如何使用此 CLI 插件的更多信息。
安装 Knative Operator¶
您可以在任何特定命名空间下安装任何特定版本的 Knative Operator。默认情况下,命名空间为 default
,版本为最新版本。
要安装最新版本的 Knative Operator,请运行
kn operator install
要将 Knative Operator 安装到某个特定命名空间(例如 knative-operator)下,请运行
kn operator install -n knative-operator
要安装特定版本的 Knative Operator(例如 1.7.1),请运行
kn operator install -v 1.7.1
安装 Knative Serving 组件¶
您可以在任何特定命名空间下安装任何特定版本的 Knative Serving。默认情况下,命名空间为 knative-serving
,版本为最新版本。
要安装最新版本的 Knative Serving,请运行
kn operator install --component serving
要将 Knative Serving 安装到某个特定命名空间(例如 knative-serving)下,请运行
kn operator install --component serving -n knative-serving
要安装特定版本的 Knative Operator(例如 1.7),请运行
kn operator install --component serving -n knative-serving -v "1.7"
要与安装命令一起安装入口插件(例如 Kourier),请运行
kn operator install --component serving -n knative-serving -v "1.7" --kourier
如果您未指定入口插件,则 istio 将用作默认插件。但是,您需要确保您首先安装了 Istio。
安装网络层¶
您可以通过 Operator CLI 插件配置网络层选项。单击以下每个选项卡以查看如何使用不同的入口配置 Knative Serving
以下步骤安装 Kourier 并启用其 Knative 集成
-
要配置 Knative Serving 以使用 Kourier,请运行以下命令
kn operator enable ingress --kourier -n knative-serving
以下步骤安装 Istio 以启用其 Knative 集成
-
要配置 Knative Serving 以使用 Istio,请运行以下命令
kn operator enable ingress --istio -n knative-serving
以下步骤安装 Contour 并启用其 Knative 集成
-
安装已正确配置的 Contour
kubectl apply --filename https://github.com/knative/net-contour/releases/download/knative-v1.16.0/contour.yaml
-
要配置 Knative Serving 以使用 Contour,请运行以下命令
kn operator enable ingress --contour -n knative-serving
安装 Knative Eventing 组件¶
您可以在任何特定命名空间下安装任何特定版本的 Knative Eventing。默认情况下,命名空间为 knative-eventing
,版本为最新版本。
要安装最新版本的 Knative Eventing,请运行
kn operator install --component eventing
要将 Knative Eventing 安装到某个特定命名空间(例如 knative-eventing)下,请运行
kn operator install --component eventing -n knative-eventing
要安装特定版本的 Knative Operator(例如 1.7),请运行
kn operator install --component eventing -n knative-eventing -v "1.7"
使用事件源安装 Knative Eventing¶
Knative Operator 可以使用不同的事件源配置 Knative Eventing 组件。单击以下每个选项卡以查看如何使用不同的事件源配置 Knative Eventing
-
要安装事件源 Ceph,请运行以下命令
kn operator enable eventing-source --ceph --namespace knative-eventing
-
要安装事件源 Github,请运行以下命令
kn operator enable eventing-source --github --namespace knative-eventing
-
要安装事件源 Gitlab,请运行以下命令
kn operator enable eventing-source --gitlab --namespace knative-eventing
-
要安装事件源 Kafka,请运行以下命令
kn operator enable eventing-source --kafka --namespace knative-eventing
-
要安装事件源 RabbitMQ,请运行以下命令
kn operator enable eventing-source --rabbitmq --namespace knative-eventing
-
要安装事件源 Redis,请运行以下命令
kn operator enable eventing-source --redis --namespace knative-eventing