Skip to content

Commit 95e5d40

Browse files
committed
COOK-42 Setup NodeManager local directories with defaults
1 parent b9598d1 commit 95e5d40

File tree

1 file changed

+28
-15
lines changed

1 file changed

+28
-15
lines changed

recipes/hadoop_yarn_nodemanager.rb

Lines changed: 28 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
# Cookbook Name:: hadoop
33
# Recipe:: hadoop_yarn_nodemanager
44
#
5-
# Copyright © 2013-2015 Cask Data, Inc.
5+
# Copyright © 2013-2017 Cask Data, Inc.
66
#
77
# Licensed under the Apache License, Version 2.0 (the "License");
88
# you may not use this file except in compliance with the License.
@@ -21,19 +21,6 @@
2121
include_recipe 'hadoop::_system_tuning'
2222
pkg = 'hadoop-yarn-nodemanager'
2323

24-
%w(yarn.nodemanager.local-dirs yarn.nodemanager.log-dirs).each do |opt|
25-
next unless node['hadoop'].key?('yarn_site') && node['hadoop']['yarn_site'].key?(opt)
26-
node['hadoop']['yarn_site'][opt].split(',').each do |dir|
27-
directory dir.gsub('file://', '') do
28-
owner 'yarn'
29-
group 'yarn'
30-
mode '0755'
31-
action :create
32-
recursive true
33-
end
34-
end
35-
end
36-
3724
# Ensure permissions for secure Hadoop... this *should* be no-op
3825
file "#{hadoop_lib_dir}/hadoop-yarn/bin/container-executor" do
3926
owner 'root'
@@ -49,13 +36,39 @@
4936
else
5037
'/var/log/hadoop-yarn'
5138
end
52-
5339
yarn_pid_dir =
5440
if hdp22? || iop?
5541
'/var/run/hadoop/yarn'
5642
else
5743
'/var/run/hadoop-yarn'
5844
end
45+
nm_local_dirs =
46+
if node['hadoop'].key?('yarn_site') && node['hadoop']['yarn_site'].key?('yarn.nodemanager.local-dirs')
47+
node['hadoop']['yarn_site']['yarn.nodemanager.local-dirs']
48+
else
49+
'file:///tmp/hadoop-yarn/nm-local-dir'
50+
end
51+
nm_log_dirs =
52+
if node['hadoop'].key?('yarn_site') && node['hadoop']['yarn_site'].key?('yarn.nodemanager.log-dirs')
53+
node['hadoop']['yarn_site']['yarn.nodemanager.log-dirs']
54+
else
55+
"#{yarn_log_dir}/userlogs"
56+
end
57+
58+
node.default['hadoop']['yarn_site']['yarn.nodemanager.local-dirs'] = nm_local_dirs
59+
node.default['hadoop']['yarn_site']['yarn.nodemanager.log-dirs'] = nm_log_dirs
60+
61+
%w(yarn.nodemanager.local-dirs yarn.nodemanager.log-dirs).each do |opt|
62+
node['hadoop']['yarn_site'][opt].split(',').each do |dir|
63+
directory dir.gsub('file://', '') do
64+
owner 'yarn'
65+
group 'yarn'
66+
mode '0755'
67+
action :create
68+
recursive true
69+
end
70+
end
71+
end
5972

6073
# Create /etc/default configuration
6174
template "/etc/default/#{pkg}" do

0 commit comments

Comments
 (0)