Merge "Allow deployer to choose Ceilometer backend"
authorJenkins <jenkins@review.openstack.org>
Thu, 30 Apr 2015 08:39:56 +0000 (08:39 +0000)
committerGerrit Code Review <review@openstack.org>
Thu, 30 Apr 2015 08:39:56 +0000 (08:39 +0000)
1  2 
controller.yaml
puppet/controller-puppet.yaml
puppet/manifests/overcloud_controller.pp

diff --cc controller.yaml
Simple merge
Simple merge
@@@ -182,47 -183,40 +184,57 @@@ if hiera('step') >= 2 
      dbname        => $heat_dsn[6],
      allowed_hosts => $allowed_hosts,
    }
+   if downcase(hiera('ceilometer_backend')) == 'mysql' {
+     $ceilometer_dsn = split(hiera('ceilometer_mysql_conn_string'), '[@:/?]')
+     class { 'ceilometer::db::mysql':
+       user          => $ceilometer_dsn[3],
+       password      => $ceilometer_dsn[4],
+       host          => $ceilometer_dsn[5],
+       dbname        => $ceilometer_dsn[6],
+       allowed_hosts => $allowed_hosts,
+     }
+   }
  
 -  $rabbit_nodes = split(downcase(hiera('rabbit_node_names', $::hostname)), ',')
 -  if count($rabbit_nodes) > 1 {
 -    $rabbit_cluster = true
 -  }
 -  else {
 -    $rabbit_cluster = false
 -  }
 -  class { 'rabbitmq':
 -    config_cluster   => $rabbit_cluster,
 -    cluster_nodes    => $rabbit_nodes,
 -    node_ip_address  => hiera('controller_host'),
 -  }
 -  if $rabbit_cluster {
 -    rabbitmq_policy { 'ha-all@/':
 -      pattern    => '^(?!amq\.).*',
 -      definition => {
 -        'ha-mode'      => 'all',
 -        'ha-sync-mode' => 'automatic',
 +  if $enable_pacemaker {
 +    # the module ignores erlang_cookie if cluster_config is false
 +    file { '/var/lib/rabbitmq/.erlang.cookie':
 +      ensure  => 'present',
 +      owner   => 'rabbitmq',
 +      group   => 'rabbitmq',
 +      mode    => '0400',
 +      content => hiera('rabbitmq::erlang_cookie'),
 +      replace => true,
 +    } ->
 +    class { '::rabbitmq':
 +      service_manage        => false,
 +      environment_variables => {
 +        'RABBITMQ_NODENAME' => "rabbit@$::hostname",
        },
      }
 -  }
 -  rabbitmq_vhost { '/':
 -    provider => 'rabbitmqctl',
 +    if $pacemaker_master {
 +      pacemaker::resource::ocf { 'rabbitmq':
 +        resource_name => 'heartbeat:rabbitmq-cluster',
 +        options       => 'set_policy=\'ha-all ^(?!amq\.).* {"ha-mode":"all"}\'',
 +        clone         => true,
 +        require       => Class['::rabbitmq'],
 +      }
 +    }
 +  } else {
 +    $rabbit_nodes = split(hiera('rabbit_node_ips'), ',')
 +    if count($rabbit_nodes) > 1 {
 +      class { '::rabbitmq':
 +        config_cluster  => true,
 +        cluster_nodes   => $rabbit_nodes,
 +      }
 +      rabbitmq_policy { 'ha-all@/':
 +        pattern    => '^(?!amq\.).*',
 +        definition => {
 +          'ha-mode' => 'all',
 +        },
 +      }
 +    } else {
 +      include ::rabbitmq
 +    }
    }
  
    # pre-install swift here so we can build rings