X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Froles%2Fmanifests%2Fpubsub.pp;h=20554ece2b21152b5b05ea3f93b66e4332bfb035;hb=7709c4b48f7dced425db4b14613c07cf0642e0b1;hp=460066517a69b08c8a8cecdd8e2d022aa309b2ae;hpb=c29dc7240f2a85411bd1acb7fb14756251f56109;p=mirror%2Fdsa-puppet.git diff --git a/modules/roles/manifests/pubsub.pp b/modules/roles/manifests/pubsub.pp index 460066517..20554ece2 100644 --- a/modules/roles/manifests/pubsub.pp +++ b/modules/roles/manifests/pubsub.pp @@ -4,15 +4,13 @@ class roles::pubsub { $cluster_cookie = $roles::pubsub::params::cluster_cookie - $cc_master = rainier - $cc_secondary = rapoport + # Get the fact named hostname from all nodes in puppetdb with class Roles::Pubsub + $query = 'facts { name = "hostname" and resources { type = "Class" and title = "Roles::Pubsub" } }' + $cluster_nodes = sort(puppetdb_query($query).map |$value| { $value["value"] }) class { 'rabbitmq': config_cluster => true, - cluster_nodes => [ - $cc_master, - $cc_secondary, - ], + cluster_nodes => $cluster_nodes, cluster_node_type => 'disc', erlang_cookie => '8r17so6o1s124ns49sr08n0o24342160', delete_guest_user => true, @@ -35,15 +33,9 @@ class roles::pubsub { rule => '&SERVICE_RANGE(tcp, 5671, $HOST_DEBIAN)' } - if $::hostname == $cc_master { - $other = join(getfromhash($deprecated::allnodeinfo, "${cc_secondary}.debian.org", 'ipHostNumber'), ' ') - } else { - $other = join(getfromhash($deprecated::allnodeinfo, "${cc_master}.debian.org", 'ipHostNumber'), ' ') - } - - ferm::rule { 'rabbitmq_cluster': - domain => '(ip ip6)', - description => 'rabbitmq cluster connections', - rule => "proto tcp mod state state (NEW) saddr (${other}) ACCEPT" + @@ferm::rule::simple { "pubsub-cluster-from-${::fqdn}": + tag => 'roles::pubsub::intra-cluster', + saddr => $base::public_addresses, } + Ferm::Rule::Simple <<| tag == 'roles::pubsub::intra-cluster' |>> }