Expose more rabbitmq tunables via config

Bug #1693561 reported by Edward Hope-Morley
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack RabbitMQ Server Charm
Fix Released
Medium
Edward Hope-Morley

Bug Description

There are a number of useful tunables that are not currently exposed by the
charm but that would be of benefit to those running production clusters on
machines with above-standard resource quotas for which the current defaults
do not necessarily apply.

I would like to propose that we expose the following via the charm config:

  * VM I/O Thread Pool (set via RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS in [1])

    The default value has increased in newer versions but in Xenial
    (rabbitmq version v3.5.7) it is 30 which, according to the upstream
    documentation [0], is non-optimal since the recommendation is to use
    a value no lower than 96 when you have >= 8 cores (i.e. min 12 threads
    per core) - which is more than likely the case for most production
    environments.

  * Connection backlog (set in tcp_listen_options in [2])

    Again this value defaults to 128 which, for larger deployments with a
    large number of clients and particularly where network interrupts are
    extant and reconnects undesirable this number should be higher. Docs
    suggest going up to 4096.

[0] https://www.rabbitmq.com/networking.html
[1] /etc/rabbitmq/rabbitmq-env.conf
[2] /etc/rabbitmq/rabbitmq.config

Tags: openstack sts
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-rabbitmq-server (master)

Fix proposed to branch: master
Review: https://review.openstack.org/469141

Changed in charm-rabbitmq-server:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to charm-rabbitmq-server (master)

Reviewed: https://review.openstack.org/469141
Committed: https://git.openstack.org/cgit/openstack/charm-rabbitmq-server/commit/?id=96fa17720b7fb16eadd5531c88d20005a0425d31
Submitter: Jenkins
Branch: master

commit 96fa17720b7fb16eadd5531c88d20005a0425d31
Author: Edward Hope-Morley <email address hidden>
Date: Tue May 30 15:13:26 2017 +0100

    Expose performance tuning options via charm

    Adds connection-backlog and erl-vm-io-thread-multiplier config
    options which are required for tuning when deploying in
    environments with large numbers of clients and server hosts
    with high numbers of cores respectively. Also refactors
    rabbitmq-env.conf rendering code so that it is properly
    applied by the charm.

    Change-Id: I8596eb9a0419d4e64782bfaf9d8c0f67e5de96b1
    Closes-Bug: 1693561

Changed in charm-rabbitmq-server:
status: In Progress → Fix Committed
James Page (james-page)
Changed in charm-rabbitmq-server:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.