diff --git a/Documentation/CRDs/specification.md b/Documentation/CRDs/specification.md index 6cf3bcde8..dcd304780 100644 --- a/Documentation/CRDs/specification.md +++ b/Documentation/CRDs/specification.md @@ -2948,6 +2948,19 @@ int64

ObservedGeneration is the latest generation observed by the controller.

+ + +secrets
+ + +[]SecretReference + + + + +(Optional) + +

CIDR @@ -7533,6 +7546,34 @@ string

The authentication mechanism for this topic (PLAIN/SCRAM-SHA-512/SCRAM-SHA-256/GSSAPI/OAUTHBEARER)

+ + +UserSecretRef
+ + +Kubernetes core/v1.SecretKeySelector + + + + +(Optional) +

The kafka user name to use for authentication

+ + + + +PasswordSecretRef
+ + +Kubernetes core/v1.SecretKeySelector + + + + +(Optional) +

The kafka password to use for authentication

+ +

KerberosConfigFiles @@ -12487,7 +12528,7 @@ int32

SecretReference

-(Appears on:ObjectStoreUserStatus) +(Appears on:BucketTopicStatus, ObjectStoreUserStatus)

diff --git a/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-bucket-notifications.md b/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-bucket-notifications.md index 7653b0947..8aa76d68d 100644 --- a/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-bucket-notifications.md +++ b/Documentation/Storage-Configuration/Object-Storage-RGW/ceph-object-bucket-notifications.md @@ -66,50 +66,67 @@ spec: # ackLevel: broker [17] # useSSL: false [18] # mechanism: SCRAM-SHA-512 [19] +# userSecretRef: [20] +# name: foo-kafka +# key: user +# passwordSecretRef: [21] +# name: foo-kafka +# key: pass +``` + +```yaml +--- +apiVersion: v1 +kind: Secret +metadata: + name: foo-kafka + namespace: rook-ceph +stringData: + user: bar + pass: baz ``` 1. `name` of the `CephBucketTopic` - + In case of AMQP endpoint, the name is used for the AMQP topic (“routing key” for a topic exchange) + + In case of AMQP endpoint, the name is used for the AMQP topic ("routing key" for a topic exchange) + In case of Kafka endpoint, the name is used as the Kafka topic 2. `namespace`(optional) of the `CephBucketTopic`. Should match the namespace of the CephBucketNotification associated with this CephBucketTopic, and the OBC with the label referencing the CephBucketNotification 3. `objectStoreName` is the name of the object store in which the topic should be created. This must be the same object store used for the buckets associated with the notifications referencing this topic. 4. `objectStoreNamespace` is the namespace of the object store in which the topic should be created 5. `opaqueData` (optional) is added to all notifications triggered by a notifications associated with the topic -6. `persistent` (optional) indicates whether notifications to this endpoint are persistent (=asynchronous) or sent synchronously (“false” by default) +6. `persistent` (optional) indicates whether notifications to this endpoint are persistent (=asynchronous) or sent synchronously (`false` by default) 7. `endpoint` to which to send the notifications to. Exactly one of the endpoints must be defined: `http`, `amqp`, `kafka` 8. `http` (optional) hold the spec for an HTTP endpoint. The format of the URI would be: `http[s]://[:][/]` + port defaults to: 80/443 for HTTP/S accordingly -9. `disableVerifySSL` indicates whether the RGW is going to verify the SSL certificate of the HTTP server in case HTTPS is used ("false" by default) -10. `sendCloudEvents`: (optional) send the notifications with the [CloudEvents header](https://github.com/cloudevents/spec/blob/main/cloudevents/adapters/aws-s3.md). ("false" by default) +9. `disableVerifySSL` indicates whether the RGW is going to verify the SSL certificate of the HTTP server in case HTTPS is used (`false` by default) +10. `sendCloudEvents`: (optional) send the notifications with the [CloudEvents header](https://github.com/cloudevents/spec/blob/main/cloudevents/adapters/aws-s3.md). (`false` by default) 11. `amqp` (optional) hold the spec for an AMQP endpoint. The format of the URI would be: `amqp[s]://[:@][:][/]` + port defaults to: 5672/5671 for AMQP/S accordingly + user/password defaults to: guest/guest + user/password may only be provided if HTTPS is used with the RGW. If not, topic creation request will be rejected + vhost defaults to: “/” -12. `disableVerifySSL` (optional) indicates whether the RGW is going to verify the SSL certificate of the AMQP server in case AMQPS is used ("false" by default) +12. `disableVerifySSL` (optional) indicates whether the RGW is going to verify the SSL certificate of the AMQP server in case AMQPS is used (`false` by default) 13. `ackLevel` (optional) indicates what kind of ack the RGW is waiting for after sending the notifications: - + “none”: message is considered “delivered” if sent to broker - + “broker”: message is considered “delivered” if acked by broker (default) - + “routable”: message is considered “delivered” if broker can route to a consumer + + `none`: message is considered "delivered" if sent to broker + + `broker`: message is considered "delivered" if acked by broker (default) + + `routable`: message is considered "delivered" if broker can route to a consumer 14. `exchange` in the AMQP broker that would route the notifications. Different topics pointing to the same endpoint must use the same exchange 15. `kafka` (optional) hold the spec for a Kafka endpoint. The format of the URI would be: `kafka://[:@][: