diff --git a/docs/examples/import-https-url-definition/README.md b/docs/examples/import-https-url-definition/README.md new file mode 100644 index 000000000..3f8d240f3 --- /dev/null +++ b/docs/examples/import-https-url-definition/README.md @@ -0,0 +1,23 @@ +# Import Definitions Example + +You can import definitions, which contain definitions of all broker objects from a URL accessible over HTTPS. [Learn more about export and import rabbitmq definitions](https://www.rabbitmq.com/definitions.html#import). + +This is useful also for very large definitions (thousands of queues) when the config map maximum size of 1Mb is not enough. + +You can rely on these RabbitMQ configuration parameters: + +``` +definitions.import_backend = https +definitions.https.url = https://raw.githubusercontent.com/rabbitmq/sample-configs/main/lot-of-queues/5k-queues.json +definitions.tls.versions.1 = tlsv1.2 +``` + +Check out `rabbitmq.yaml` as an example. + +Importing a very large definition cluster with several thousands of queues like in the example takes a good amount of memory and in general computation resources. +For the example let's run it with a good amount of memory like 8GB and at least 2 cpu to be sure. + +Keep in mind that exported definitions contain all broker objects, including users. This means that the default-user credentials will be imported from the definitions, and will not be the one which is generated at the creation of the deployment as a kubernetes secret object. + + + diff --git a/docs/examples/import-https-url-definition/rabbitmq.yaml b/docs/examples/import-https-url-definition/rabbitmq.yaml new file mode 100644 index 000000000..4ff70d9fd --- /dev/null +++ b/docs/examples/import-https-url-definition/rabbitmq.yaml @@ -0,0 +1,18 @@ +apiVersion: rabbitmq.com/v1beta1 +kind: RabbitmqCluster +metadata: + name: import-https-url-definitions +spec: + replicas: 1 + resources: + requests: + cpu: 2 + memory: 8Gi + limits: + cpu: 2 + memory: 8Gi + rabbitmq: + additionalConfig: | + definitions.import_backend = https + definitions.https.url = https://raw.githubusercontent.com/rabbitmq/sample-configs/main/lot-of-queues/5k-queues.json + definitions.tls.versions.1 = tlsv1.2