aboutsummaryrefslogtreecommitdiffstats
path: root/puppet
diff options
context:
space:
mode:
authorGiulio Fidente <gfidente@redhat.com>2015-05-11 15:37:07 +0200
committerGiulio Fidente <gfidente@redhat.com>2015-05-11 15:37:07 +0200
commitbf618365914b8fbf7f6b6bc37fcc05574ab3af99 (patch)
tree55597bcc3a66bdb54b26fd531825eaf51d5f0e0b /puppet
parent607ea9c8d30d752b01881e2ac913c712f0243272 (diff)
Use optimized config for RabbitMQ cluster
Use some optimized configuration settings for RabbitMQ when clustered. Data is ported from Astapor. Change-Id: If54aff5654dbe75e68197588be12cb3995c77ec7
Diffstat (limited to 'puppet')
-rw-r--r--puppet/hieradata/controller.yaml10
-rw-r--r--puppet/manifests/overcloud_controller.pp8
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp9
3 files changed, 21 insertions, 6 deletions
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':