创建 RabbitMQ Broker¶
本主题介绍如何创建 RabbitMQ Broker。
先决条件¶
这些说明假定您的集群管理员已安装 Knative RabbitMQ broker。
创建 RabbitMQBrokerConfig 对象¶
-
使用以下模板创建 YAML 文件
其中apiVersion: eventing.knative.dev/v1alpha1 kind: RabbitmqBrokerConfig metadata: name: <rabbitmq-broker-config-name> spec: rabbitmqClusterReference: # Configure name if a RabbitMQ Cluster Operator is being used. name: <cluster-name> # Configure connectionSecret if an external RabbitMQ cluster is being used. connectionSecret: name: rabbitmq-secret-credentials queueType: quorum是您为 RabbitMQBrokerConfig 对象选择的名称。 是您之前创建的 RabbitMQ 集群的名称。
注意
您不能同时设置
name和connectionSecret,因为name用于与 Broker 运行在同一集群中的 RabbitMQ Cluster Operator 实例,而connectionSecret用于外部 RabbitMQ 服务器。 -
通过运行命令应用 YAML 文件
其中kubectl create -f <filename><filename>是您在上一步中创建的文件的名称。
创建 RabbitMQBroker 对象¶
-
使用以下模板创建 YAML 文件
其中apiVersion: eventing.knative.dev/v1 kind: Broker metadata: annotations: eventing.knative.dev/broker.class: RabbitMQBroker name: <broker-name> spec: config: apiVersion: eventing.knative.dev/v1alpha1 kind: RabbitmqBrokerConfig name: <rabbitmq-broker-config-name><rabbitmq-broker-config-name>是您在上一步中为 RabbitMQBrokerConfig 指定的名称。 -
通过运行命令应用 YAML 文件
其中kubectl apply -f <filename><filename>是您在上一步中创建的文件的名称。
配置消息排序¶
默认情况下,Triggers 将一次消费一条消息以保留排序。如果事件排序不重要且希望获得更高的性能,您可以通过使用 parallelism 注解来配置此设置。将 parallelism 设置为 n 会为 Trigger 创建 n 个工作进程,它们将并行消费消息。
以下 YAML 显示了一个将 parallelism 设置为 10 的 Trigger 示例
apiVersion: eventing.knative.dev/v1
kind: Trigger
metadata:
name: high-throughput-trigger
annotations:
rabbitmq.eventing.knative.dev/parallelism: "10"
...
附加信息¶
- 有关更多示例,请访问
eventing-rabbitmqGithub 仓库 samples 目录 - 要报告错误或请求功能,请在
eventing-rabbitmqGithub 仓库 中提出问题。