Puppet Class: hadoop::nodemanager::service

Defined in:
manifests/nodemanager/service.pp

Overview

Class hadoop::nodemanager::service

Namenode must be launched first if it is colocated with nodemanager (conflicting ports) (tested on hadoop 2.4.1).

It works OK automatically when using from parent hadoop::service class.



7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'manifests/nodemanager/service.pp', line 7

class hadoop::nodemanager::service {
  if $hadoop::zookeeper_deployed {
    service { $hadoop::daemons['nodemanager']:
      ensure    => 'running',
      enable    => true,
      subscribe => [File["${hadoop::confdir}/core-site.xml"], File["${hadoop::confdir}/yarn-site.xml"]],
    }

    # namenode must be launched first if it is colocated with nodemanager
    # (conflicting ports, and it's dependency anyway) (tested on hadoop 2.4.1)
    if $hadoop::daemon_namenode {
      include ::hadoop::namenode::service
      Class['hadoop::namenode::service'] -> Class['hadoop::nodemanager::service']
    }

    # resourcemanager must be launched before nodemanager
    # (on Debian YARN ResourceManager is started unconfigured and it talks nonsense to nodemanagers)
    if $hadoop::daemon_resourcemanager {
      include ::hadoop::resourcemanager::service
      Class['hadoop::resourcemanager::service'] -> Class['hadoop::nodemanager::service']
    }
  } else {
    service { $hadoop::daemons['nodemanager']:
      ensure => 'stopped',
      enable => true,
    }
  }
}