Yuvipanda has submitted this change and it was merged.

Change subject: mesos: Add simple mesos module
......................................................................


mesos: Add simple mesos module

- Picks up packages from labsdebrepo (for labs)
- Picks up zookeeper url from hiera settings

Change-Id: Ia423fcb2f1fe7eca944c443cb57500c332bcff00
---
A manifests/role/labsmesos.pp
A modules/mesos/files/mesos-master.default
A modules/mesos/files/mesos-slave.default
A modules/mesos/files/mesos.default
A modules/mesos/manifests/master.pp
A modules/mesos/manifests/slave.pp
6 files changed, 113 insertions(+), 0 deletions(-)

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



diff --git a/manifests/role/labsmesos.pp b/manifests/role/labsmesos.pp
new file mode 100644
index 0000000..f0dcc8c
--- /dev/null
+++ b/manifests/role/labsmesos.pp
@@ -0,0 +1,22 @@
+class role::labs::mesos::master {
+    include misc::labsdebrepo
+
+    $zookeeper_hosts = join(suffix(keys(hiera('zookeeper_hosts')), ':2181'), 
',')
+    $zookeeper_url = "zk://${zookeeper_hosts}/mesos"
+
+    class { '::mesos::master':
+        zookeeper_url => $zookeeper_url,
+        quorum       => hiera('quorum', 1),
+    }
+}
+
+class role::labs::mesos::slave {
+    include misc::labsdebrepo
+
+    $zookeeper_hosts = join(suffix(keys(hiera('zookeeper_hosts')), ':2181'), 
',')
+    $zookeeper_url = "zk://${zookeeper_hosts}/mesos"
+
+    class { '::mesos::slave':
+        zookeeper_url => $zookeeper_url,
+    }
+}
diff --git a/modules/mesos/files/mesos-master.default 
b/modules/mesos/files/mesos-master.default
new file mode 100644
index 0000000..37726ce
--- /dev/null
+++ b/modules/mesos/files/mesos-master.default
@@ -0,0 +1,2 @@
+PORT=5050
+ZK=`cat /etc/mesos/zk`
diff --git a/modules/mesos/files/mesos-slave.default 
b/modules/mesos/files/mesos-slave.default
new file mode 100644
index 0000000..ee078a3
--- /dev/null
+++ b/modules/mesos/files/mesos-slave.default
@@ -0,0 +1,2 @@
+MASTER=`cat /etc/mesos/zk`
+ISOLATION='cgroups/cpu,cgroups/mem'
diff --git a/modules/mesos/files/mesos.default 
b/modules/mesos/files/mesos.default
new file mode 100644
index 0000000..5148324
--- /dev/null
+++ b/modules/mesos/files/mesos.default
@@ -0,0 +1,2 @@
+LOGS=/var/log/mesos
+ULIMIT="-n 8192"
diff --git a/modules/mesos/manifests/master.pp 
b/modules/mesos/manifests/master.pp
new file mode 100644
index 0000000..46c6ffc
--- /dev/null
+++ b/modules/mesos/manifests/master.pp
@@ -0,0 +1,47 @@
+class mesos::master(
+    $zookeeper_url,
+    $quorum,
+) {
+
+    require_package('mesos')
+
+    file { '/etc/mesos/zk':
+        content => $zookeeper_url,
+        owner   => 'root',
+        group   => 'root',
+        mode    => '0444',
+        notify  => Service['mesos-master'],
+    }
+
+    file { '/etc/mesos-master/quorum':
+        content => $quorum,
+        owner   => 'root',
+        group   => 'root',
+        mode    => '0444',
+        notify  => Service['mesos-master'],
+    }
+
+    file { '/etc/default/mesos':
+        source => 'puppet:///modules/mesos/mesos.default',
+        owner  => 'root',
+        group  => 'root',
+        mode   => '0644',
+        notify => Service['mesos-master'],
+    }
+
+    file { '/etc/default/mesos-master':
+        source => 'puppet:///modules/mesos/mesos-master.default',
+        owner  => 'root',
+        group  => 'root',
+        mode   => '0644',
+        notify => Service['mesos-master'],
+    }
+
+    service { 'mesos-master':
+        ensure => running,
+    }
+
+    service { 'mesos-slave':
+        ensure => stopped,
+    }
+}
diff --git a/modules/mesos/manifests/slave.pp b/modules/mesos/manifests/slave.pp
new file mode 100644
index 0000000..a9852c7
--- /dev/null
+++ b/modules/mesos/manifests/slave.pp
@@ -0,0 +1,38 @@
+class mesos::slave(
+    $zookeeper_url,
+) {
+
+    require_package('mesos')
+
+    file { '/etc/mesos/zk':
+        content => $zookeeper_url,
+        owner   => 'root',
+        group   => 'root',
+        mode    => '0444',
+        notify  => Service['mesos-slave'],
+    }
+
+    file { '/etc/default/mesos':
+        source => 'puppet:///modules/mesos/mesos.default',
+        owner  => 'root',
+        group  => 'root',
+        mode   => '0644',
+        notify => Service['mesos-slave'],
+    }
+
+    file { '/etc/default/mesos-slave':
+        source => 'puppet:///modules/mesos/mesos-slave.default',
+        owner  => 'root',
+        group  => 'root',
+        mode   => '0644',
+        notify => Service['mesos-slave'],
+    }
+
+    service { 'mesos-master':
+        ensure => stopped,
+    }
+
+    service { 'mesos-slave':
+        ensure => running,
+    }
+}

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

Gerrit-MessageType: merged
Gerrit-Change-Id: Ia423fcb2f1fe7eca944c443cb57500c332bcff00
Gerrit-PatchSet: 13
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Yuvipanda <yuvipa...@gmail.com>
Gerrit-Reviewer: Yuvipanda <yuvipa...@gmail.com>
Gerrit-Reviewer: coren <mpellet...@wikimedia.org>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
MediaWiki-commits@lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to