OSDN Git Service

add IPv4/6 setting support for Ganglia.
[metasearch/grid-chef-repo.git] / roles / praesepe-nn.rb
1 $LOAD_PATH.push("#{File.dirname(__FILE__)}/../_lib")
2 #${chef-repo}/_lib/grid.rb
3 require 'grid'
4
5 cluster_name = 'praesepe'
6 cluster_sym = cluster_name.to_sym
7
8 name "#{cluster_name}-nn"
9 description "#{cluster_name.capitalize} NameNode node"
10
11 run_list(
12   'role[node_commons]',
13   #'role[grid-realm]',
14   'role[ganglia-gmond]',
15   "role[#{cluster_name}-node]"
16 )
17
18 #env_run_lists()
19
20 this_subcluster = Grid::CLUSTERS[cluster_sym][:namenodes]
21 mcast_addr = this_subcluster[:mcast_addr]
22 port = '8649'
23 # uni-cast
24 udp_send_channels4ucast = []
25 this_subcluster[:nodes].first(2).each {|host|
26   udp_send_channels4ucast.push(
27     {
28       'mcast_join' => '',
29       'host' => "#{host}.#{Grid::DOMAIN}",
30       'port' => port,
31       'ttl' => ''
32     }
33   )
34 }
35
36 default_attributes(
37 )
38
39 override_attributes(
40   'ganglia' => {
41     # gmond
42     'cluster' => {
43       'name' => this_subcluster[:alias],
44       'owner' => Grid::DOMAIN
45     },
46     'static' => {
47 =begin
48       ## static multi-cast
49       'udp_send_channels' => [
50         {
51           'mcast_join' => mcast_addr,
52           'host' => '',
53           'port' => port,
54           'ttl' => '1'
55         }
56       ],
57       'udp_recv_channels' => [
58         {
59           'mcast_join' => mcast_addr,
60           'port' => port,
61           'bind' => mcast_addr
62         }
63       ]
64 =end
65       ## static uni-cast
66       'udp_send_channels' => udp_send_channels4ucast,
67       'udp_recv_channels' => [
68         {
69           'mcast_join' => '',
70           'port' => port,
71           'bind' => ''
72         }
73       ]
74     }
75   }
76 )