This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.5.8.3. 使用 YAML 文件创建 API 服务器源
使用 YAML 文件创建 Knative 资源使用声明性 API,它允许您以可重复的方式描述事件源。要使用 YAML 创建 API 服务器源,您必须创建一个 YAML 文件来定义 ApiServerSource
对象,然后使用 oc apply
命令应用它。
先决条件
- 在集群中安装了 OpenShift Serverless Operator 和 Knative Eventing。
- 您已创建了一个项目,或者具有适当的角色和权限访问项目,以便在 OpenShift Container Platform 中创建应用程序和其他工作负载。
-
您已在与 API 服务器源 YAML 文件中定义的相同的命名空间中创建
default
代理。 -
安装 OpenShift CLI(
oc
)。
如果要重新使用现有服务帐户,您可以修改现有的 ServiceAccount
资源,使其包含所需的权限,而不是创建新资源。
以 YAML 文件形式,为事件源创建服务帐户、角色和角色绑定:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用 YAML 文件:
oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 API 服务器源创建为 YAML 文件:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用
ApiServerSource
YAML 文件:oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要检查 API 服务器源是否已正确设置,请创建一个 Knative 服务作为 YAML 文件,在日志中转储传入的信息:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用
Service
YAML 文件:oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 创建一个
Trigger
对象作为一个 YAML 文件,该文件将事件从default
代理过滤到上一步中创建的服务:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 应用
Trigger
YAML 文件:oc apply -f <filename>
$ oc apply -f <filename>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 通过在 default 命名空间中启动 pod 来创建事件:
oc create deployment hello-node --image=quay.io/openshift-knative/knative-eventing-sources-event-display
$ oc create deployment hello-node --image=quay.io/openshift-knative/knative-eventing-sources-event-display
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令并检查输出,检查是否正确映射了控制器:
oc get apiserversource.sources.knative.dev testevents -o yaml
$ oc get apiserversource.sources.knative.dev testevents -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
要验证 Kubernetes 事件是否已发送到 Knative,您可以查看消息转储程序功能日志。
输入以下命令来获取 pod:
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令来查看 pod 的消息转储程序功能日志:
oc logs $(oc get pod -o name | grep event-display) -c user-container
$ oc logs $(oc get pod -o name | grep event-display) -c user-container
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
删除 API 服务器源
删除触发器:
oc delete -f trigger.yaml
$ oc delete -f trigger.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除事件源:
oc delete -f k8s-events.yaml
$ oc delete -f k8s-events.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除服务帐户、集群角色和集群绑定:
oc delete -f authentication.yaml
$ oc delete -f authentication.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow