创建 Broker¶
安装 Knative Eventing 和 Broker 实现后,您可以创建 Broker 实例。
注意
Knative Eventing 默认提供 MTChannelBasedBroker。其默认后备通道是 InMemoryChannel
。InMemoryChannel
不应在生产环境中使用。其他 Broker 类型及其配置选项可以在 可用 Broker 类型 中找到。
您可以使用 kn
CLI 或通过使用 kubectl
应用 YAML 文件来创建 Broker。
-
您可以通过输入以下命令来创建 Broker
kn broker create <broker-name> -n <namespace>
这将创建一个新的 Broker,使用您的默认 Broker 类和默认 Broker 配置(两者都在
config-br-defaults
ConfigMap 中定义)。注意
如果您选择不指定命名空间,则 Broker 将在当前命名空间中创建。
注意
如果您的集群中安装了多个 Broker 类,则可以通过
--class
参数指定 Broker 类,例如:kn broker create <broker-name> -n <namespace> --class MTChannelBasedBroker
-
可选:通过列出现有 Broker 来验证 Broker 是否已创建
kn broker list
-
可选:您还可以通过描述您创建的 Broker 来验证 Broker 是否存在
kn broker describe <broker-name>
以下示例中的 YAML 创建了一个名为 default
的 Broker。
-
通过使用以下模板创建 YAML 文件来创建 Broker
apiVersion: eventing.knative.dev/v1 kind: Broker metadata: name: <broker-name> namespace: <namespace>
这将创建一个新的 Broker,使用默认的 Broker 类和默认的 Broker 配置,两者都在
config-br-defaults
ConfigMap 中定义。 -
应用 YAML 文件
其中kubectl apply -f <filename>.yaml
<filename>
是您在上一步中创建的文件的名称。 -
可选:验证 Broker 是否正常工作
kubectl -n <namespace> get broker <broker-name>
这将显示有关您 Broker 的信息。如果 Broker 正常工作,它将显示
READY
状态为True
NAME READY REASON URL AGE default True http://broker-ingress.knative-eventing.svc.cluster.local/default/default 1m
如果
READY
状态为False
,请等待片刻,然后再次运行该命令。