Puppet Class: mesos::config

Defined in:
manifests/config.pp

Overview

Class: mesos::config

This class manages the mesos configuration directories

Parameters:

[*log_dir*]        - directory for logging, (default: '/var/log/mesos')
[*conf_dir*]       - directory for configuration files (default: /etc/mesos)
[*manage_zk_file*] - flag whether module manages /etc/mesos/zk (default: true)
[*owner*]          - owner of configuration files
[*group*]          - group of configuration files
[*zookeeper_url*]  - string of ZooKeeper servers e.g. `zk://10.0.0.1/mesos`

This class should not be included directly, always use ‘mesos::slave’ or ‘mesos:master’

Parameters:

  • log_dir (Optional[String]) (defaults to: undef)
  • ulimit (Integer) (defaults to: 8192)
  • conf_dir (String) (defaults to: '/etc/mesos')
  • conf_file (String) (defaults to: '/etc/default/mesos')
  • manage_zk_file (Boolean) (defaults to: true)
  • owner (String) (defaults to: 'root')
  • group (String) (defaults to: 'root')
  • env_var (Hash) (defaults to: {})
  • zookeeper_url (Optional[String]) (defaults to: undef)


16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# File 'manifests/config.pp', line 16

class mesos::config(
  Optional[String]  $log_dir        = undef,
  Integer           $ulimit         = 8192,
  String            $conf_dir       = '/etc/mesos',
  String            $conf_file      = '/etc/default/mesos',
  Boolean           $manage_zk_file = true,
  String            $owner          = 'root',
  String            $group          = 'root',
  Hash              $env_var        = {},
  Optional[String]  $zookeeper_url  = undef,
){
  validate_bool($manage_zk_file)

  File {
    owner  => $owner,
    group  => $group,
  }

  if $log_dir {
    file { $log_dir:
      ensure => directory,
    }
  }

  file { $conf_dir:
    ensure => directory,
  }

  file { $conf_file:
    ensure  => 'present',
    content => template('mesos/default.erb'),
    mode    => '0644',
    require => Package['mesos'],
  }

  if $manage_zk_file {
    # file containing only zookeeper URL
    file { '/etc/mesos/zk':
      ensure  => empty($zookeeper_url) ? {
        true  => absent,
        false => present,
      },
      content => $zookeeper_url,
    }
  }

}