MaxSem has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/293540

Change subject: Move everything Postgres-related out of role::maps::server
......................................................................

Move everything Postgres-related out of role::maps::server

This decouples database from Kartotherian and allows provisioning
them seaprately. I need this for testing in labs but this could
also be useful in prod.

Change-Id: I4bce77574b3492c3e3487efc6a304ceae6707a0f
---
M modules/role/manifests/maps/master.pp
A modules/role/manifests/maps/postgresql_common.pp
M modules/role/manifests/maps/server.pp
M modules/role/manifests/maps/slave.pp
4 files changed, 31 insertions(+), 24 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/operations/puppet 
refs/changes/40/293540/1

diff --git a/modules/role/manifests/maps/master.pp 
b/modules/role/manifests/maps/master.pp
index b5a0fc5..4f01263 100644
--- a/modules/role/manifests/maps/master.pp
+++ b/modules/role/manifests/maps/master.pp
@@ -1,6 +1,7 @@
 # Sets up a maps server master
 class role::maps::master {
     include ::postgresql::master
+    include postgresql_common
     include ::osm
     include ::osm::import_waterlines
 
diff --git a/modules/role/manifests/maps/postgresql_common.pp 
b/modules/role/manifests/maps/postgresql_common.pp
new file mode 100644
index 0000000..abdbca3
--- /dev/null
+++ b/modules/role/manifests/maps/postgresql_common.pp
@@ -0,0 +1,29 @@
+# Sets up Postgres settings common between master and slave roles
+class role::maps::postgresql_common {
+    include ::postgresql::postgis
+
+    # Tuning
+    file { '/etc/postgresql/9.4/main/tuning.conf':
+      ensure => 'present',
+      owner  => 'root',
+      group  => 'root',
+      mode   => '0444',
+      source => 'puppet:///modules/role/maps/tuning.conf',
+    }
+
+    sysctl::parameters { 'postgres_shmem':
+      values => {
+        # That is derived after tuning postgresql, deriving automatically is
+        # not the safest idea yet.
+        'kernel.shmmax' => 8388608000,
+      },
+    }
+
+    # TODO: Figure out a better way to do this
+    # Ensure postgresql logs as maps-admin to allow maps-admin to read them
+    # Rely on logrotate's copytruncate policy for postgres for the rest of the
+    # log file
+    file { '/var/log/postgresql/postgresql-9.4-main.log':
+      group => 'maps-admins',
+    }
+}
diff --git a/modules/role/manifests/maps/server.pp 
b/modules/role/manifests/maps/server.pp
index 64232e1..4c188ad 100644
--- a/modules/role/manifests/maps/server.pp
+++ b/modules/role/manifests/maps/server.pp
@@ -2,7 +2,6 @@
 # the services kartotherian and tilerator
 class role::maps::server {
     include standard
-    include ::postgresql::postgis
     include ::cassandra
     include ::cassandra::metrics
     include ::cassandra::logging
@@ -17,29 +16,6 @@
 
     if $::realm == 'production' {
         include lvs::realserver
-    }
-
-    # Tuning
-    file { '/etc/postgresql/9.4/main/tuning.conf':
-        ensure => 'present',
-        owner  => 'root',
-        group  => 'root',
-        mode   => '0444',
-        source => 'puppet:///modules/role/maps/tuning.conf',
-    }
-    sysctl::parameters { 'postgres_shmem':
-        values => {
-            # That is derived after tuning postgresql, deriving automatically 
is
-            # not the safest idea yet.
-            'kernel.shmmax' => 8388608000,
-        },
-    }
-    # TODO: Figure out a better way to do this
-    # Ensure postgresql logs as maps-admin to allow maps-admin to read them
-    # Rely on logrotate's copytruncate policy for postgres for the rest of the
-    # log file
-    file { '/var/log/postgresql/postgresql-9.4-main.log':
-        group => 'maps-admins',
     }
 
     $cassandra_hosts = hiera('cassandra::seeds')
diff --git a/modules/role/manifests/maps/slave.pp 
b/modules/role/manifests/maps/slave.pp
index 5ac2869..53a2bf6 100644
--- a/modules/role/manifests/maps/slave.pp
+++ b/modules/role/manifests/maps/slave.pp
@@ -1,6 +1,7 @@
 # Sets up a maps server slave
 class role::maps::slave {
     include ::postgresql::slave
+    include postgresql_common
 
     system::role { 'role::maps::slave':
         ensure      => 'present',

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

Gerrit-MessageType: newchange
Gerrit-Change-Id: I4bce77574b3492c3e3487efc6a304ceae6707a0f
Gerrit-PatchSet: 1
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: MaxSem <[email protected]>

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

Reply via email to