Rush has submitted this change and it was merged. ( 
https://gerrit.wikimedia.org/r/368523 )

Change subject: openstack: move rabbitmq to module/profile/role
......................................................................


openstack: move rabbitmq to module/profile/role

Requires the private 'rabbit_monitor_pass' value
to be set for each deployment.

- ferm components remain in the old role for now

Bug: T171494
Change-Id: I2e58497fbaf0a0866942d2e9caed5eae9a92c5b4
---
M hieradata/codfw/profile/openstack/labtest.yaml
M hieradata/codfw/profile/openstack/labtestn.yaml
M hieradata/eqiad/profile/openstack/main.yaml
D modules/openstack/manifests/queue_server.pp
A modules/profile/manifests/openstack/base/rabbitmq.pp
A modules/profile/manifests/openstack/labtest/rabbitmq.pp
A modules/profile/manifests/openstack/labtestn/rabbitmq.pp
A modules/profile/manifests/openstack/main/rabbitmq.pp
D modules/profile/manifests/rabbitmq/server.pp
M modules/rabbitmq/manifests/init.pp
M modules/role/manifests/labs/openstack/nova/controller.pp
M modules/role/manifests/wmcs/openstack/labtest/control.pp
M modules/role/manifests/wmcs/openstack/labtestn/control.pp
M modules/role/manifests/wmcs/openstack/main/control.pp
14 files changed, 77 insertions(+), 71 deletions(-)

Approvals:
  Rush: Looks good to me, approved
  jenkins-bot: Verified



diff --git a/hieradata/codfw/profile/openstack/labtest.yaml 
b/hieradata/codfw/profile/openstack/labtest.yaml
index 1c4b737..6213ee8 100644
--- a/hieradata/codfw/profile/openstack/labtest.yaml
+++ b/hieradata/codfw/profile/openstack/labtest.yaml
@@ -1 +1,4 @@
 profile::openstack::labtest::version: 'liberty'
+profile::openstack::labtest::nova_controller: 
'labtestcontrol2001.wikimedia.org'
+profile::openstack::labtest::rabbit_monitor_user: 'monitoring'
+profile::openstack::labtest::rabbit_file_handles: 1024
diff --git a/hieradata/codfw/profile/openstack/labtestn.yaml 
b/hieradata/codfw/profile/openstack/labtestn.yaml
index 3320729..be7a3d2 100644
--- a/hieradata/codfw/profile/openstack/labtestn.yaml
+++ b/hieradata/codfw/profile/openstack/labtestn.yaml
@@ -1 +1,4 @@
 profile::openstack::labtestn::version: 'liberty'
+profile::openstack::labtestn::nova_controller: 
'labtestcontrol2003.wikimedia.org'
+profile::openstack::labtestn::rabbit_monitor_user: 'monitoring'
+profile::openstack::labtestn::rabbit_file_handles: 8192
diff --git a/hieradata/eqiad/profile/openstack/main.yaml 
b/hieradata/eqiad/profile/openstack/main.yaml
index bbf29f2..3e52fbd 100644
--- a/hieradata/eqiad/profile/openstack/main.yaml
+++ b/hieradata/eqiad/profile/openstack/main.yaml
@@ -1 +1,4 @@
 profile::openstack::main::version: 'liberty'
+profile::openstack::main::nova_controller: 'labcontrol1001.wikimedia.org'
+profile::openstack::main::rabbit_monitor_user: 'monitor'
+profile::openstack::main::rabbit_file_handles: 8192
diff --git a/modules/openstack/manifests/queue_server.pp 
b/modules/openstack/manifests/queue_server.pp
deleted file mode 100644
index 8ca370d..0000000
--- a/modules/openstack/manifests/queue_server.pp
+++ /dev/null
@@ -1,49 +0,0 @@
-# sets up rabbitmq on the nova controller
-class openstack::queue_server(
-        $rabbit_monitor_username,
-        $rabbit_monitor_password
-    ) {
-
-    package { [ 'rabbitmq-server' ]:
-        ensure  => present,
-    }
-
-    # Turn up the number of allowed file handles for rabbitmq
-    file { '/etc/default/rabbitmq-server':
-        ensure => present,
-        owner  => 'root',
-        group  => 'root',
-        mode   => '0444',
-        source => 'puppet:///modules/openstack/rabbitmq/labs-rabbitmq.default',
-    }
-
-    # Turn up the number of allowed file handles for rabbitmq
-    file { '/usr/local/sbin/rabbitmqadmin':
-        ensure => present,
-        owner  => 'root',
-        group  => 'root',
-        mode   => '0644',
-        source => 'puppet:///modules/openstack/rabbitmq/rabbitmqadmin',
-    }
-
-    if $::fqdn == hiera('labs_nova_controller') {
-        service { 'rabbitmq-server':
-            ensure  => running,
-            require => Package['rabbitmq-server'];
-        }
-    } else {
-        service { 'rabbitmq-server':
-            ensure  => stopped,
-            require => Package['rabbitmq-server'];
-        }
-    }
-
-    diamond::collector { 'RabbitMQ':
-        settings => {
-            'host'     => 'localhost:15672',
-            'user'     => $rabbit_monitor_username,
-            'password' => $rabbit_monitor_password,
-        },
-        source   => 'puppet:///modules/openstack/rabbitmq/rabbitmq.py',
-    }
-}
diff --git a/modules/profile/manifests/openstack/base/rabbitmq.pp 
b/modules/profile/manifests/openstack/base/rabbitmq.pp
new file mode 100644
index 0000000..5476e8b
--- /dev/null
+++ b/modules/profile/manifests/openstack/base/rabbitmq.pp
@@ -0,0 +1,17 @@
+class profile::openstack::base::rabbitmq(
+    $nova_controller = hiera('profile::openstack::base::nova_controller'),
+    $monitor_user = hiera('profile::openstack::base::rabbit_monitor_user'),
+    $monitor_password = hiera('profile::openstack::base::rabbit_monitor_pass'),
+    $file_handles = hiera('profile::openstack::base::rabbit_file_handles'),
+){
+
+    class { '::rabbitmq':
+        running      => $::fqdn == $nova_controller,
+        file_handles => $file_handles,
+    }
+
+    class { '::rabbitmq::monitor':
+        rabbit_monitor_username => $monitor_user,
+        rabbit_monitor_password => $monitor_password,
+    }
+}
diff --git a/modules/profile/manifests/openstack/labtest/rabbitmq.pp 
b/modules/profile/manifests/openstack/labtest/rabbitmq.pp
new file mode 100644
index 0000000..3c161cf
--- /dev/null
+++ b/modules/profile/manifests/openstack/labtest/rabbitmq.pp
@@ -0,0 +1,15 @@
+class profile::openstack::labtest::rabbitmq(
+    $nova_controller = hiera('profile::openstack::labtest::nova_controller'),
+    $monitor_user = hiera('profile::openstack::labtest::rabbit_monitor_user'),
+    $monitor_password = 
hiera('profile::openstack::labtest::rabbit_monitor_pass'),
+    $file_handles = hiera('profile::openstack::labtest::rabbit_file_handles'),
+){
+    require ::profile::openstack::labtest::cloudrepo
+
+    class {'::profile::openstack::base::rabbitmq':
+        nova_controller  => $nova_controller,
+        monitor_user     => $monitor_user,
+        monitor_password => $monitor_password,
+        file_handles     => $file_handles,
+    }
+}
diff --git a/modules/profile/manifests/openstack/labtestn/rabbitmq.pp 
b/modules/profile/manifests/openstack/labtestn/rabbitmq.pp
new file mode 100644
index 0000000..7bd4a8a
--- /dev/null
+++ b/modules/profile/manifests/openstack/labtestn/rabbitmq.pp
@@ -0,0 +1,15 @@
+class profile::openstack::labtestn::rabbitmq(
+    $nova_controller = hiera('profile::openstack::labtestn::nova_controller'),
+    $monitor_user = hiera('profile::openstack::labtestn::rabbit_monitor_user'),
+    $monitor_password = 
hiera('profile::openstack::labtestn::rabbit_monitor_pass'),
+    $file_handles = hiera('profile::openstack::labtestn::rabbit_file_handles'),
+){
+    require ::profile::openstack::labtestn::cloudrepo
+
+    class {'::profile::openstack::base::rabbitmq':
+        nova_controller  => $nova_controller,
+        monitor_user     => $monitor_user,
+        monitor_password => $monitor_password,
+        file_handles     => $file_handles,
+    }
+}
diff --git a/modules/profile/manifests/openstack/main/rabbitmq.pp 
b/modules/profile/manifests/openstack/main/rabbitmq.pp
new file mode 100644
index 0000000..d3ebb9a
--- /dev/null
+++ b/modules/profile/manifests/openstack/main/rabbitmq.pp
@@ -0,0 +1,15 @@
+class profile::openstack::main::rabbitmq(
+    $nova_controller = hiera('profile::openstack::main::nova_controller'),
+    $monitor_user = hiera('profile::openstack::main::rabbit_monitor_user'),
+    $monitor_password = hiera('profile::openstack::main::rabbit_monitor_pass'),
+    $file_handles = hiera('profile::openstack::main::rabbit_file_handles'),
+){
+    require ::profile::openstack::main::cloudrepo
+
+    class {'::profile::openstack::base::rabbitmq':
+        nova_controller  => $nova_controller,
+        monitor_user     => $monitor_user,
+        monitor_password => $monitor_password,
+        file_handles     => $file_handles,
+    }
+}
diff --git a/modules/profile/manifests/rabbitmq/server.pp 
b/modules/profile/manifests/rabbitmq/server.pp
deleted file mode 100644
index 0a5f95b..0000000
--- a/modules/profile/manifests/rabbitmq/server.pp
+++ /dev/null
@@ -1,15 +0,0 @@
-class profile::rabbitmq::server(
-    $monitor_user = hiera('profile::rabbitmq::monitor::user'),
-    $monitor_password = hiera('profile::rabbitmq::monitor::password'),
-    $file_handles = hiera('profile::rabbitmq::file_handles'),
-){
-
-    class { 'rabbitmq':
-        file_handles => $file_handles,
-    }
-
-    class { 'rabbitmq::monitor':
-        rabbit_monitor_username => $monitor_user,
-        rabbit_monitor_password => $monitor_password,
-    }
-}
diff --git a/modules/rabbitmq/manifests/init.pp 
b/modules/rabbitmq/manifests/init.pp
index ed9b276..0215c92 100644
--- a/modules/rabbitmq/manifests/init.pp
+++ b/modules/rabbitmq/manifests/init.pp
@@ -17,7 +17,8 @@
 #  rabbitmq-plugins enable rabbitmq_management
 
 class rabbitmq(
-    $file_handles='1024',
+    $running = false,
+    $file_handles = '1024',
     ) {
 
     package { [ 'rabbitmq-server' ]:
@@ -43,7 +44,7 @@
     }
 
     service { 'rabbitmq-server':
-        ensure  => running,
+        ensure  => $running,
         require => Package['rabbitmq-server'],
     }
 }
diff --git a/modules/role/manifests/labs/openstack/nova/controller.pp 
b/modules/role/manifests/labs/openstack/nova/controller.pp
index 264cdd7..f6096c0 100644
--- a/modules/role/manifests/labs/openstack/nova/controller.pp
+++ b/modules/role/manifests/labs/openstack/nova/controller.pp
@@ -13,11 +13,6 @@
     $novaconfig = $role::labs::openstack::nova::common::novaconfig
     $designateconfig = hiera_hash('designateconfig', {})
 
-    class { '::openstack::queue_server':
-        rabbit_monitor_username => $novaconfig['rabbit_monitor_user'],
-        rabbit_monitor_password => $novaconfig['rabbit_monitor_pass'],
-    }
-
     class { '::openstack::adminscripts':
         novaconfig => $novaconfig
     }
diff --git a/modules/role/manifests/wmcs/openstack/labtest/control.pp 
b/modules/role/manifests/wmcs/openstack/labtest/control.pp
index 01dd0b9..b8aa690 100644
--- a/modules/role/manifests/wmcs/openstack/labtest/control.pp
+++ b/modules/role/manifests/wmcs/openstack/labtest/control.pp
@@ -1,3 +1,4 @@
 class role::wmcs::openstack::labtest::control {
     include profile::openstack::labtest::cloudrepo
+    include profile::openstack::labtest::cloudrepo
 }
diff --git a/modules/role/manifests/wmcs/openstack/labtestn/control.pp 
b/modules/role/manifests/wmcs/openstack/labtestn/control.pp
index 5001124..d175474 100644
--- a/modules/role/manifests/wmcs/openstack/labtestn/control.pp
+++ b/modules/role/manifests/wmcs/openstack/labtestn/control.pp
@@ -1,3 +1,4 @@
 class role::wmcs::openstack::labtestn::control {
     include profile::openstack::labtestn::cloudrepo
+    include profile::openstack::labtestn::rabbitmq
 }
diff --git a/modules/role/manifests/wmcs/openstack/main/control.pp 
b/modules/role/manifests/wmcs/openstack/main/control.pp
index d8d4910..40f6880 100644
--- a/modules/role/manifests/wmcs/openstack/main/control.pp
+++ b/modules/role/manifests/wmcs/openstack/main/control.pp
@@ -1,3 +1,4 @@
 class role::wmcs::openstack::main::control {
     include profile::openstack::main::cloudrepo
+    include profile::openstack::main::cloudrepo
 }

-- 
To view, visit https://gerrit.wikimedia.org/r/368523
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I2e58497fbaf0a0866942d2e9caed5eae9a92c5b4
Gerrit-PatchSet: 6
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Rush <[email protected]>
Gerrit-Reviewer: Alex Monk <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: Rush <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to