parapide.rb 9.95 KB
Newer Older
1
site :rennes do |site_uid|
2

3
4
5
  cluster :parapide do |cluster_uid|
    model "SUN FIRE X2270"
    created_at Time.parse("2010-01-25").httpdate
6
    kavlan true
7

8
9
    25.times do |i|
      node "#{cluster_uid}-#{i+1}" do |node_uid|
10

11
        performance({
12
13
14
15
16
17
18
        :core_flops => 9170000000,
        :node_flops => 71150000000
      })

        supported_job_types({
          :deploy       => true,
          :besteffort   => true,
19
          :virtual      => lookup('parapide_generated', node_uid, 'supported_job_types', 'virtual')
20
        })
21

22
        architecture({
23
24
25
          :smp_size       => lookup('parapide_generated', node_uid, 'architecture', 'smp_size'),
          :smt_size       => lookup('parapide_generated', node_uid, 'architecture', 'smt_size'),
          :platform_type  => lookup('parapide_generated', node_uid, 'architecture', 'platform_type')
26
27
        })

28
        processor({
29
30
31
32
33
34
35
36
37
38
39
          :vendor             => lookup('parapide_generated', node_uid, 'processor', 'vendor'),
          :model              => lookup('parapide_generated', node_uid, 'processor', 'model'),
          :version            => lookup('parapide_generated', node_uid, 'processor', 'version'),
          :clock_speed        => lookup('parapide_generated', node_uid, 'processor', 'clock_speed'),
          :instruction_set    => lookup('parapide_generated', node_uid, 'processor', 'instruction_set'),
          :other_description  => lookup('parapide_generated', node_uid, 'processor', 'other_description'),
          :cache_l1           => lookup('parapide_generated', node_uid, 'processor', 'cache_l1'),
          :cache_l1i          => lookup('parapide_generated', node_uid, 'processor', 'cache_l1i'),
          :cache_l1d          => lookup('parapide_generated', node_uid, 'processor', 'cache_l1d'),
          :cache_l2           => lookup('parapide_generated', node_uid, 'processor', 'cache_l2'),
          :cache_l3           => lookup('parapide_generated', node_uid, 'processor', 'cache_l3')
40
        })
41

42
        main_memory({
43
          :ram_size     => lookup('parapide_generated', node_uid, 'main_memory', 'ram_size'),
44
45
          :virtual_size => nil
        })
46

47
        operating_system({
48
          :name     => lookup('parapide_generated', node_uid, 'operating_system', 'name'),
49
          :release  => "Squeeze",
50
51
          :version  => lookup('parapide_generated', node_uid, 'operating_system', 'version'),
          :kernel   => lookup('parapide_generated', node_uid, 'operating_system', 'kernel')
52
        })
53

54
        storage_devices [{
55
          :interface  => 'SATA',
56
          :size       => lookup('parapide_generated', node_uid, 'block_devices', 'sda', 'size'),
57
          :driver     => "ahci",
58
59
60
61
          :device     => lookup('parapide_generated', node_uid, 'block_devices', 'sda', 'device'),
          :model      => lookup('parapide_generated', node_uid, 'block_devices', 'sda', 'model'),
          :vendor     => lookup('parapide_generated', node_uid, 'block_devices', 'sda', 'vendor'),
          :rev        => lookup('parapide_generated', node_uid, 'block_devices', 'sda', 'rev')
62
        }]
63

64
        network_adapters [{
65
66
67
68
69
70
          :interface        => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'interface'),
          :rate             => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'rate'),
          :enabled          => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'enabled'),
          :management       => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'management'),
          :mountable        => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'mountable'),
          :mounted          => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'mounted'),
71
          :bridged          => true,
72
          :device           => "eth0",
73
74
          :vendor           => "Intel",
          :version          => "82575EB",
75
          :driver           => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'driver'),
76
          :network_address  => "#{node_uid}.#{site_uid}.grid5000.fr",
77
78
79
80
81
          :ip               => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'ip'),
          :ip6              => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'ip6'),
          :switch           => lookup('parapide_manual', node_uid, 'network_interfaces', 'eth0', 'switch_name'),
          :switch_port      => lookup('parapide_manual', node_uid, 'network_interfaces', 'eth0', 'switch_port'),
          :mac              => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth0', 'mac')
82
83
        },
        {
84
          :interface        => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'interface'),
85
          :rate             => 1.G,
86
87
88
89
          :enabled          => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'enabled'),
          :management       => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'management'),
          :mountable        => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'mountable'),
          :mounted          => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'mounted'),
90
91
92
93
          :bridged          => false,
          :device           => "eth1",
          :vendor           => "Intel",
          :version          => "82575EB",
94
95
          :driver           => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'driver'),
          :mac              => lookup('parapide_generated', node_uid, 'network_interfaces', 'eth1', 'mac')
96
97
        },
        {
98
99
          :interface        => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'interface'),
          :rate             => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'rate'),
100
          :device           => "ib0",
101
102
103
104
          :enabled          => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'enabled'),
          :management       => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'management'),
          :mountable        => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'mountable'),
          :mounted          => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'mounted'),
105
          :vendor           => 'Mellanox',
106
          :version          => "MT25418",
107
          :driver           => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'driver'),
108
          :network_address  => "#{node_uid}-ib0.#{site_uid}.grid5000.fr",
109
110
111
          :ip               => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'ip'),
          :ip6              => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'ip6'),
          :guid             => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib0', 'guid')
112
113
        },
        {
114
115
          :interface        => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'interface'),
          :rate             => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'rate'),
116
          :device           => "ib1",
117
118
119
120
          :enabled          => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'enabled'),
          :management       => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'management'),
          :mountable        => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'mountable'),
          :mounted          => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'mounted'),
121
          :vendor           => 'Mellanox',
122
          :version          => "MT25418",
123
124
          :driver           => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'driver'),
          :guid             => lookup('parapide_generated', node_uid, 'network_interfaces', 'ib1', 'guid')
125
126
127
128
129
        },
        {
          :interface            => 'Ethernet',
          :rate                 => 1.G,
          :network_address      => "#{node_uid}-bmc.#{site_uid}.grid5000.fr",
130
131
          :ip                   => lookup('parapide_generated', node_uid, 'network_interfaces', 'bmc', 'ip'),
          :mac                  => lookup('parapide_generated', node_uid, 'network_interfaces', 'bmc', 'mac'),
132
133
134
135
136
          :enabled              => true,
          :mounted              => false,
          :mountable            => false,
          :management           => true,
          :device               => "bmc"
137
        }]
138

139
        chassis({
140
141
142
          :serial        => lookup('parapide_generated', node_uid, 'chassis', 'serial_number'),
          :name          => lookup('parapide_generated', node_uid, 'chassis', 'product_name'),
          :manufacturer  => lookup('parapide_generated', node_uid, 'chassis', 'manufacturer')
143
144
145
        })

        bios({
146
147
148
          :version      => lookup('parapide_generated', node_uid, 'bios', 'version'),
          :vendor       => lookup('parapide_generated', node_uid, 'bios', 'vendor'),
          :release_date => lookup('parapide_generated', node_uid, 'bios', 'release_date')
149
150
        })

151
        bios({
152
153
154
          :version      => lookup('parapide_generated', node_uid, 'bios', 'version'),
          :vendor       => lookup('parapide_generated', node_uid, 'bios', 'vendor'),
          :release_date => lookup('parapide_generated', node_uid, 'bios', 'release_date')
155
        })
156

157
158
159
        gpu({
          :gpu  => false
        })
160

161
        monitoring({
162
          :wattmeter    => false,
163
164
          :temperature  => true
        })
165
166
167
168
169

        sensors({
          :power => {
            :available => true,
            :via => {
170
              :pdu      => [{ :uid => lookup('parapide_manual', node_uid, 'pdu', 'pdu_name') }],
171
172
173
174
175
            }
          },
          :temperature => {
            :available => true,
            :via => {
Pascal Morillon's avatar
Pascal Morillon committed
176
177
              :api  => { :metric => "ambient_temp" },
              :ipmi     => { :sensors => { :ambient => "/MB/T_AMB" } }
178
179
180
181
            }
          }
        })

182
183
184
      end
    end
  end
185
end