From bf618365914b8fbf7f6b6bc37fcc05574ab3af99 Mon Sep 17 00:00:00 2001 From: Giulio Fidente Date: Mon, 11 May 2015 15:37:07 +0200 Subject: Use optimized config for RabbitMQ cluster Use some optimized configuration settings for RabbitMQ when clustered. Data is ported from Astapor. Change-Id: If54aff5654dbe75e68197588be12cb3995c77ec7 --- puppet/hieradata/controller.yaml | 10 ++++++++++ puppet/manifests/overcloud_controller.pp | 8 ++++++-- puppet/manifests/overcloud_controller_pacemaker.pp | 9 +++++---- 3 files changed, 21 insertions(+), 6 deletions(-) (limited to 'puppet') diff --git a/puppet/hieradata/controller.yaml b/puppet/hieradata/controller.yaml index 76488457..bd0d83d9 100644 --- a/puppet/hieradata/controller.yaml +++ b/puppet/hieradata/controller.yaml @@ -5,11 +5,21 @@ nova::consoleauth::enabled: true nova::vncproxy::enabled: true nova::scheduler::enabled: true +# rabbitmq rabbitmq::delete_guest_user: false rabbitmq::wipe_db_on_cookie_change: true rabbitmq::port: '5672' rabbitmq::package_source: undef rabbitmq::repos_ensure: false +rabbitmq_environment: + RABBITMQ_NODENAME: "rabbit@%{::hostname}" + RABBITMQ_SERVER_ERL_ARGS: '"+K true +A30 +P 1048576 -kernel inet_default_connect_options [{nodelay,true},{raw,6,18,<<5000:64/native>>}] -kernel inet_default_listen_options [{raw,6,18,<<5000:64/native>>}]"' +rabbitmq_kernel_variables: + inet_dist_listen_min: '35672' + inet_dist_listen_max: '35672' +rabbitmq_config_variables: + tcp_listen_options: '[binary, {packet, raw}, {reuseaddr, true}, {backlog, 128}, {nodelay, true}, {exit_on_close, false}, {keepalive, true}]' + cluster_partition_handling: 'pause_minority' mongodb::server::replset: tripleo diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp index b068b973..1b088a86 100644 --- a/puppet/manifests/overcloud_controller.pp +++ b/puppet/manifests/overcloud_controller.pp @@ -161,8 +161,12 @@ if hiera('step') >= 2 { $rabbit_nodes = split(hiera('rabbit_node_ips'), ',') if count($rabbit_nodes) > 1 { class { '::rabbitmq': - config_cluster => true, - cluster_nodes => $rabbit_nodes, + config_cluster => true, + cluster_nodes => $rabbit_nodes, + tcp_keepalive => false, + config_kernel_variables => hiera('rabbitmq_kernel_variables'), + config_variables => hiera('rabbitmq_config_variables'), + environment_variables => hiera('rabbitmq_environment'), } rabbitmq_policy { 'ha-all@/': pattern => '^(?!amq\.).*', diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp index ba5f80a6..ff1ad884 100644 --- a/puppet/manifests/overcloud_controller_pacemaker.pp +++ b/puppet/manifests/overcloud_controller_pacemaker.pp @@ -223,10 +223,11 @@ if hiera('step') >= 2 { replace => true, } -> class { '::rabbitmq': - service_manage => false, - environment_variables => { - 'RABBITMQ_NODENAME' => "rabbit@$::hostname", - }, + service_manage => false, + tcp_keepalive => false, + config_kernel_variables => hiera('rabbitmq_kernel_variables'), + config_variables => hiera('rabbitmq_config_variables'), + environment_variables => hiera('rabbitmq_environment'), } if $pacemaker_master { pacemaker::resource::ocf { 'rabbitmq': -- cgit 1.2.3-korg