diff --git a/defaults/main.yml b/defaults/main.yml index 6d0c7cf9..347dff2a 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -70,3 +70,7 @@ rabbitmq_ssl_self_signed_subject: "/C=US/ST=Texas/L=San Antonio/O=IT/CN={{ conta #rabbitmq_user_ssl_cert: #rabbitmq_user_ssl_key: #rabbitmq_user_ssl_ca_cert: + +# RabbitMQ erlang VM parameters +rabbitmq_async_threads: 128 +rabbitmq_process_limit: 1048576 diff --git a/doc/source/index.rst b/doc/source/index.rst index 3330224f..4c84e7f7 100644 --- a/doc/source/index.rst +++ b/doc/source/index.rst @@ -18,3 +18,14 @@ Basic Role Example vars: rabbitmq_cookie_token: secrete container_address: "{{ ansible_ssh_host }}" + + +Role overrides +^^^^^^^^^^^^^^ + +rabbitmq_async_threads + This override defaults to 128 threads for IO operations inside the erlang VM + +rabbitmq_process_limit + This override defaults to 1048576 for number of concurrent processes inside the erlang VM + Each network connection and file handle does need its own process inside erlang diff --git a/tasks/rabbitmq_post_install.yml b/tasks/rabbitmq_post_install.yml index e6203314..db249086 100644 --- a/tasks/rabbitmq_post_install.yml +++ b/tasks/rabbitmq_post_install.yml @@ -40,6 +40,7 @@ with_items: - { src: "rabbitmq.config.j2", dest: "/etc/rabbitmq/rabbitmq.config" } - { src: "rabbitmq-server.j2", dest: "/etc/default/rabbitmq-server" } + - { src: "rabbitmq-env.j2", dest: "/etc/rabbitmq/rabbitmq-env.conf" } tags: - rabbitmq-config diff --git a/templates/rabbitmq-env.j2 b/templates/rabbitmq-env.j2 new file mode 100644 index 00000000..918ee1a3 --- /dev/null +++ b/templates/rabbitmq-env.j2 @@ -0,0 +1,5 @@ +# {{ ansible_managed }} + +# Set ERLANG VM parameters +RABBITMQ_IO_THREAD_POOL_SIZE={{ rabbitmq_async_threads }} +RABBITMQ_SERVER_ERL_ARGS="+P {{ rabbitmq_process_limit }}"

AltStyle によって変換されたページ (->オリジナル) /