storcs 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,3 @@
1
+ pkg/*
2
+ *.gem
3
+ .bundle
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in storcs.gemspec
4
+ gemspec
@@ -0,0 +1,47 @@
1
+ h1. Storcs
2
+
3
+ h2. Description
4
+
5
+ Storcs (STORage Calculation Service) is a gem designed to help you manage centralized storages in a datacenter. It's especially appropriate for having a unique visibility on heterogeneous datacenters where many SAN or NAS devices are used. It currently reports the following elements :
6
+ * total size, used size and free size (computed from sum of children's ones if any, recursively)
7
+ * percent_used and percent_free, based on the previous metrics
8
+ * raid type if applicable and accessible
9
+
10
+ Those calulcations are performed on a state file for each device you have. The way you generate the state file depends on the type of the storage system.
11
+
12
+ For the moment, it has only been tested on the following devices :
13
+ * IBM DS4000 series (tested with a DS3400, a DS4100, a DS4300 and a DS4500)
14
+ * Equalogic PS5000 and PS6000 series (tested with a PS5000XV and a PS6000)
15
+ * simple 'df -Pk' on Linux boxes (tested with various NAS devices)
16
+
17
+ h2. Installation
18
+
19
+ Build the gem and install it:
20
+
21
+ bc. gem build storcs.gemspec
22
+ gem install storcs-*.gem
23
+
24
+ h2. Parsers
25
+
26
+ A parser is an adapter specific to your device. Parser implementation depends on the way you retrieve your storage informations. Basically, it takes a name and a file, parse the file, and build a Storcs::Device object based on the parsed informations. For instance:
27
+
28
+ bc. parsed = Storcs::Parsers::DfNas.new("my-shiny-nas.example.com", "/path/to/df-k_output.txt")
29
+ device = parsed.device
30
+
31
+ h3. df -k
32
+
33
+ This is the simplest parser. It analyzes the output of a @df -Pk@ command on a mounted filesystem, possibly a local filesystem or a NAS attached with NFS or CIFS:
34
+
35
+ bc. df -kP |grep <mask_specific_to_your_server> > file.txt
36
+
37
+ h3. IBM DS4000 series
38
+
39
+ It parses a 'profile' text file, which can be obtained :
40
+ * by saving the file manually in the Fast Storage Manager graphical client (manual)
41
+ * by running a command on your management IP with the 'SMcli' client (automatic) :
42
+
43
+ bc. SMcli 192.0.0.15 -c 'show storagesubsystem profile;' > file.txt
44
+
45
+ h3. Equalogic PS5000 and PS6000
46
+
47
+ It parses the output of a 'show' command in the shell. Unfortunately, I wasn't able to run it remotely since my network administrator didn't allow me. So I have a script based on the "expect" tool with the @show@ command inside.
@@ -0,0 +1,2 @@
1
+ require 'bundler'
2
+ Bundler::GemHelper.install_tasks
@@ -0,0 +1,3 @@
1
+ require 'storcs/device'
2
+ require 'storcs/parsers'
3
+ require 'storcs/formatter'
@@ -0,0 +1,36 @@
1
+ module Storcs
2
+ class Device
3
+ attr_accessor :name, :children, :real_used, :real_size, :raid
4
+
5
+ def initialize(name)
6
+ @name = name
7
+ @children = []
8
+ @real_used = nil
9
+ @real_size = nil
10
+ end
11
+
12
+ def size
13
+ real_size || children.inject(0) do |memo,child|
14
+ memo + child.size
15
+ end
16
+ end
17
+
18
+ def used
19
+ real_used || children.inject(0) do |memo,child|
20
+ memo + child.used
21
+ end
22
+ end
23
+
24
+ def free
25
+ size - used
26
+ end
27
+
28
+ def percent_used
29
+ (100 * used / size).round
30
+ end
31
+
32
+ def percent_free
33
+ (100 * free / size).round
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,14 @@
1
+ module Storcs
2
+ module Formatter
3
+ def pretty_size(size=nil)
4
+ size ||= self.size
5
+ units = %w(bytes Kb Mb Gb Tb Pb)
6
+ i = 0
7
+ while size >=1024 && units[i+1]
8
+ size /= 1024.0
9
+ i += 1
10
+ end
11
+ "#{"%.1f" % size}#{units[i]}"
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ require 'storcs/parsers/utils'
2
+ require 'storcs/parsers/df_nas'
3
+ require 'storcs/parsers/ibm'
4
+ require 'storcs/parsers/equalogic'
5
+
6
+ module Storcs
7
+ module Parsers
8
+ AVAILABLE_PARSERS = %w(df_nas)
9
+ end
10
+ end
@@ -0,0 +1,20 @@
1
+ module Storcs::Parsers
2
+ class DfNas
3
+ attr_accessor :device
4
+
5
+ def initialize(name,file)
6
+ @device = Storcs::Device.new(name)
7
+ parse!(File.readlines(file))
8
+ end
9
+
10
+ def parse!(content)
11
+ ary = content.map do |l|
12
+ l.split(/\s+/)
13
+ end.detect do |a|
14
+ a[1] && a[1].match(/^\d+$/)
15
+ end
16
+ @device.real_size = ary[1].to_i * 1024
17
+ @device.real_used = ary[2].to_i * 1024
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,43 @@
1
+ module Storcs::Parsers
2
+ class Equalogic
3
+ include Storcs::Parsers::Utils
4
+
5
+ attr_accessor :device
6
+
7
+ def initialize(name,file)
8
+ @device = Storcs::Device.new(name)
9
+ parse!(File.readlines(file))
10
+ end
11
+
12
+ def parse!(lines)
13
+ @device.children = volumes(lines)
14
+ end
15
+
16
+ def volumes(lines)
17
+ return @volumes if @volumes
18
+ @volumes = []
19
+ current_section = nil
20
+ lines.each do |line|
21
+ line.strip!
22
+ if line.match /________ ([^_]+) ________/
23
+ current_section = $1.downcase
24
+ elsif %w(pools volumes).include?(current_section) && line.split[2].to_s.match(/^\d+$/)
25
+ if current_section == "volumes" && line.match(/^(\S+)\s+(\S+)/)
26
+ #g01-varlibnfs 50MB 0 online read-write 2 N
27
+ d = Storcs::Device.new($1)
28
+ d.real_size = parse_size($2)
29
+ d.real_used = d.real_size
30
+ @volumes << d
31
+ elsif current_section == "pools" && line.match(/(\S+)$/)
32
+ #default true 1 10 3744.01GB 43.88GB
33
+ d = Storcs::Device.new("free")
34
+ d.real_size = parse_size($1)
35
+ d.real_used = 0
36
+ @volumes << d
37
+ end
38
+ end
39
+ end
40
+ @volumes
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,58 @@
1
+ module Storcs::Parsers
2
+ class Ibm
3
+ include Storcs::Parsers::Utils
4
+
5
+ attr_accessor :device
6
+
7
+ def initialize(name,file)
8
+ @device = Storcs::Device.new(name)
9
+ @lines = File.readlines(file)
10
+ parse!(@lines)
11
+ end
12
+
13
+ def parse!(content)
14
+ @device.children = arrays
15
+ end
16
+
17
+ def sections
18
+ return @sections if @sections
19
+ @sections = {}
20
+ current_section = nil
21
+ @lines.each do |line|
22
+ if line.chomp.match(/^([A-Z ]{3,}).*-------$/)
23
+ current_section = $1.downcase.to_sym
24
+ @sections[current_section] = []
25
+ elsif current_section
26
+ @sections[current_section] << line
27
+ end
28
+ end
29
+ @sections
30
+ end
31
+
32
+ def arrays
33
+ return @arrays if @arrays
34
+ @arrays = []
35
+ current_array = nil
36
+ logical_drive_list = false
37
+ sections[:arrays].map do |line|
38
+ if line.match /^ (ARRAY \d+)\s+\(RAID (\w+)\)/
39
+ current_array = Storcs::Device.new($1)
40
+ current_array.raid = $2
41
+ @arrays << current_array
42
+ elsif line.match /^\s{8,}LOGICAL DRIVE NAME/
43
+ logical_drive_list = true
44
+ elsif line.match /^\s*$/
45
+ logical_drive_list = false
46
+ elsif current_array && logical_drive_list
47
+ line.gsub!(/Free Capacity/,"free")
48
+ name, raw_size = line.strip.scan(/(\S+)\s+(.+)/).first
49
+ ld = Storcs::Device.new(name)
50
+ ld.real_size = parse_size(raw_size)
51
+ ld.real_used = (name == "free" ? 0 : ld.real_size)
52
+ current_array.children << ld
53
+ end
54
+ end.compact
55
+ @arrays
56
+ end
57
+ end
58
+ end
@@ -0,0 +1,25 @@
1
+ module Storcs
2
+ module Parsers
3
+ module Utils
4
+ def parse_size(line)
5
+ size = line.gsub(/[^a-z0-9().,]/i, '') #1,234 and 1 234 => 1234 + sanitizes some awful chars
6
+ if size.tr(",.","").match(/(\d+)Bytes\)/)
7
+ return $1.to_i
8
+ end
9
+ size.gsub!(/\(.*/,"")
10
+ units = %w(KB MB GB TB PB)
11
+ #let's try to guess the format :/
12
+ size.gsub!(",","") if size.include?(",") && size.include?(".")
13
+ size.gsub!(",","") if size.scan(",").length > 1
14
+ size.gsub!(",",".")
15
+ num = size.to_f
16
+ units.each_with_index do |u,idx|
17
+ if size.include?(u)
18
+ num = num * 1024 ** (idx+1)
19
+ end
20
+ end
21
+ num.round
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,3 @@
1
+ module Storcs
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,2 @@
1
+ Filesystem 1M-blocks Used Available Use% Mounted on
2
+ 192.168.0.1:/mnt/vol0 795481 598024 197457 76% /mnt/server/vol0
@@ -0,0 +1,869 @@
1
+ PROFILE FOR STORAGE SUBSYSTEM: SAN01 (16/03/10 09:49:55)
2
+
3
+
4
+ SUMMARY------------------------------
5
+
6
+ Number of controllers: 2
7
+
8
+ Number of logical drive groups: 1
9
+
10
+ Total number of logical drives used: 3
11
+ Number of standard logical drives: 2
12
+ Number of access logical drives: 1
13
+ Total number of logical drives allowed: 256
14
+
15
+
16
+ Number of drives: 10
17
+ Mixed drive types: Enabled
18
+ Current drive type(s): Serial Attached SCSI (SAS) (10)
19
+ Total hot spare drives: 1
20
+ Standby: 1
21
+ In use: 0
22
+
23
+ Number of drive enclosures: 0
24
+ Number of drive enclosures allowed: 0
25
+
26
+ Storage Partitioning: Enabled
27
+ Number of partitions used: 1
28
+ Number of partitions allowed: 2
29
+ Number of logical drives allowed per partition: 32
30
+
31
+ Access logical drive: LUN 30,31 (see Mappings section for details)
32
+ Default host OS: W2KNET0 (Host OS index 0)
33
+
34
+ Current configuration
35
+ Firmware version: 06
36
+ NVSRAM version: N
37
+ Pending configuration
38
+ Staged firmware download supported: Yes
39
+ Firmware version: None
40
+ NVSRAM version: None
41
+ Transferred on: None
42
+ Controller enclosure audible alarm: Disabled
43
+
44
+ NVSRAM configured for batteries: Yes
45
+
46
+ Start cache flushing at (in percentage): 80
47
+ Stop cache flushing at (in percentage): 80
48
+ Cache block size (in KB): 4
49
+
50
+ Media scan frequency (in days): 30
51
+
52
+ Failover alert delay (in minutes): 5
53
+
54
+ Feature enable identifier: 33
55
+
56
+ Feature pack: Basic
57
+ Feature pack submodel ID: 40
58
+
59
+ Storage Subsystem world-wide identifier (ID): 600A
60
+
61
+ CONTROLLERS------------------------------
62
+ Number of controllers: 2
63
+
64
+ Controller in Enclosure 85, Slot A
65
+
66
+ Status: Online
67
+ Current configuration
68
+ Firmware version: 0.22.00
69
+ Appware version: 0.22.00
70
+ Bootware version: 0.22.00
71
+ NVSRAM version: N
72
+ Pending configuration
73
+ Firmware version: None
74
+ Appware version: None
75
+ Bootware version: None
76
+ NVSRAM version: None
77
+ Transferred on: None
78
+ Replacement part number: 39R6502
79
+ Board ID: 1932
80
+ Submodel ID: 40
81
+ Product ID: 1726-4xx FAStT
82
+ Product revision: 0617
83
+ Serial number: SX81432585
84
+ Date of manufacture: 9 avril 2008
85
+ Cache
86
+ Total data cache: 368 MB
87
+ Processor cache: 144 MB
88
+ Host Interface Board
89
+ Board ID: 0901
90
+ Host card status: Optimal
91
+ Serial number:
92
+ Date of manufacture: Not available
93
+ Part number:
94
+ Vendor:
95
+
96
+ Associated Logical Drives (* = Preferred Owner):
97
+ SAN01_LUN1*
98
+
99
+ Controller host name: target
100
+ Remote login: Enabled*
101
+
102
+ Ethernet port: 1
103
+ MAC address: 00:30
104
+ Network configuration: Static
105
+ IP address: 192.168.129.5
106
+ Subnet mask: 255.255.255.0
107
+ Gateway: 192.168.129.1
108
+
109
+ *NVSRAM setting, may be overridden by DHCP/Bootp server setting
110
+
111
+ Drive interface: SAS
112
+ Channel: 1
113
+ Port: Expansion
114
+ Status: Up
115
+ Maximum data rate: 3 Gbps
116
+ Current data rate: 3 Gbps
117
+ Drive interface: SAS
118
+ Channel: 2
119
+ Port: Expansion
120
+ Status: Up
121
+ Maximum data rate: 3 Gbps
122
+ Current data rate: 3 Gbps
123
+ Host interface: Fibre
124
+ Channel: 1
125
+ Current ID: 125/0x1
126
+ Preferred ID: 125/0x1
127
+ NL-Port ID: 0x000001
128
+ Maximum data rate: 4 Gbps
129
+ Current data rate: 4 Gbps
130
+ Data rate control: Auto
131
+ Link status: Up
132
+ Topology: Arbitrated Loop - Private
133
+ World-wide port identifier: 20:24:00:30
134
+ World-wide node identifier: 20:04:00:30
135
+ Part type: HPFC-5700 revision 5
136
+ Host interface: Fibre
137
+ Channel: 2
138
+ Current ID: Not applicable/0xFFFFFFFF
139
+ Preferred ID: 1/0xE8
140
+ NL-Port ID: 0xFFFFFF
141
+ Maximum data rate: 4 Gbps
142
+ Current data rate: 4 Gbps
143
+ Data rate control: Auto
144
+ Link status: Down
145
+ Topology: Not available
146
+ World-wide port identifier: 20:34:00:30
147
+ World-wide node identifier: 20:04:00:30
148
+ Part type: HPFC-5700 revision 5
149
+
150
+ Controller in Enclosure 85, Slot B
151
+
152
+ Status: Online
153
+ Current configuration
154
+ Firmware version: 0.22.00
155
+ Appware version: 0.22.00
156
+ Bootware version: 0.22.00
157
+ NVSRAM version: N
158
+ Pending configuration
159
+ Firmware version: None
160
+ Appware version: None
161
+ Bootware version: None
162
+ NVSRAM version: None
163
+ Transferred on: None
164
+ Replacement part number: 39R6502
165
+ Board ID: 1932
166
+ Submodel ID: 40
167
+ Product ID: 1726-4xx FAStT
168
+ Product revision: 0617
169
+ Serial number: S
170
+ Date of manufacture: 9 avril 2008
171
+ Cache
172
+ Total data cache: 368 MB
173
+ Processor cache: 144 MB
174
+ Host Interface Board
175
+ Board ID: 0901
176
+ Host card status: Optimal
177
+ Serial number:
178
+ Date of manufacture: Not available
179
+ Part number:
180
+ Vendor:
181
+
182
+ Associated Logical Drives (* = Preferred Owner):
183
+ SAN01_LUN2*
184
+
185
+ Controller host name: target
186
+ Remote login: Enabled*
187
+
188
+ Ethernet port: 1
189
+ MAC address: 00:0a
190
+ Network configuration: Static
191
+ IP address: 192.168.129.15
192
+ Subnet mask: 255.255.255.0
193
+ Gateway: 192.168.129.1
194
+
195
+ *NVSRAM setting, may be overridden by DHCP/Bootp server setting
196
+
197
+ Drive interface: SAS
198
+ Channel: 1
199
+ Port: Expansion
200
+ Status: Up
201
+ Maximum data rate: 3 Gbps
202
+ Current data rate: 3 Gbps
203
+ Drive interface: SAS
204
+ Channel: 2
205
+ Port: Expansion
206
+ Status: Up
207
+ Maximum data rate: 3 Gbps
208
+ Current data rate: 3 Gbps
209
+
210
+ Host Interface(s): Unable to retrieve latest data; using last known state.
211
+
212
+ Host interface: Fibre
213
+ Channel: 1
214
+ Current ID: 2/0xE4
215
+ Preferred ID: 2/0xE4
216
+ NL-Port ID: 0x0000E4
217
+ Maximum data rate: 4 Gbps
218
+ Current data rate: 4 Gbps
219
+ Data rate control: Auto
220
+ Link status: Up
221
+ Topology: Arbitrated Loop - Private
222
+ World-wide port identifier: 20:25:00:30
223
+ World-wide node identifier: 20:04:00:30
224
+ Part type: HPFC-5700 revision 5
225
+ Host interface: Fibre
226
+ Channel: 2
227
+ Current ID: Not applicable/0xFFFFFFFF
228
+ Preferred ID: 3/0xE2
229
+ NL-Port ID: 0xFFFFFF
230
+ Maximum data rate: 4 Gbps
231
+ Current data rate: 4 Gbps
232
+ Data rate control: Auto
233
+ Link status: Down
234
+ Topology: Not available
235
+ World-wide port identifier: 20:35:00:30
236
+ World-wide node identifier: 20:04:00:30
237
+ Part type: HPFC-5700 revision 5
238
+
239
+ ARRAYS------------------------------
240
+
241
+ Number of logical drive groups: 1
242
+
243
+ ARRAY 1 (RAID 5)
244
+
245
+ Array status: Online
246
+
247
+ Drive type: Serial Attached SCSI (SAS)
248
+ Enclosure loss protection: No
249
+
250
+ Current owner: Controller in slot A,B
251
+
252
+ Associated logical drives and free capacities:
253
+
254
+ LOGICAL DRIVE NAME CAPACITY
255
+ SAN01_LUN1 1 024 GB
256
+ SAN01_LUN2 1 207,172 GB
257
+
258
+ Associated drives (in piece order):
259
+
260
+ ENCLOSURE SLOT
261
+ 85 2
262
+ 85 3
263
+ 85 4
264
+ 85 5
265
+ 85 6
266
+ 85 7
267
+ 85 9
268
+ 85 10
269
+ 85 11
270
+
271
+ STANDARD LOGICAL DRIVES------------------------------
272
+
273
+ SUMMARY
274
+
275
+ Number of standard logical drives: 2
276
+
277
+ See other Logical Drives sub-tabs for premium feature information.
278
+
279
+ NAME STATUS CAPACITY RAID LEVEL ARRAY DRIVE TYPE
280
+ SAN01_LUN1 Optimal 1 024 GB 5 1 SAS
281
+ SAN01_LUN2 Optimal 1 207,172 GB 5 1 SAS
282
+
283
+ DETAILS
284
+
285
+ LOGICAL DRIVE NAME: SAN01_LUN1
286
+
287
+ Logical Drive status: Optimal
288
+
289
+ Capacity: 1 024 GB (1 099 511 627 776 Bytes)
290
+ Logical Drive ID: 60:00
291
+ Subsystem ID (SSID): 0
292
+ Associated array: 1
293
+ RAID level: 5
294
+
295
+ Drive type: Serial Attached SCSI (SAS)
296
+ Enclosure loss protection: No
297
+
298
+ Preferred owner: Controller in slot A
299
+ Current owner: Controller in slot A
300
+
301
+ Segment size: 128 KB
302
+ Modification priority: High
303
+
304
+ Read cache: Enabled
305
+ Write cache: Enabled
306
+ Write cache without batteries: Disabled
307
+ Write cache with mirroring: Enabled
308
+ Flush write cache after (in seconds): 10.00
309
+ Dynamic cache read prefetch: Enabled
310
+
311
+ Enable background media scan: Enabled
312
+ Media scan with redundancy check: Disabled
313
+
314
+ LOGICAL DRIVE NAME: SAN01_LUN2
315
+
316
+ Logical Drive status: Optimal
317
+
318
+ Capacity: 1 207,172 GB (1 296 190 930 944 Bytes)
319
+ Logical Drive ID: 60:85
320
+ Subsystem ID (SSID): 1
321
+ Associated array: 1
322
+ RAID level: 5
323
+
324
+ Drive type: Serial Attached SCSI (SAS)
325
+ Enclosure loss protection: No
326
+
327
+ Preferred owner: Controller in slot B
328
+ Current owner: Controller in slot B
329
+
330
+ Segment size: 128 KB
331
+ Modification priority: High
332
+
333
+ Read cache: Enabled
334
+ Write cache: Enabled
335
+ Write cache without batteries: Disabled
336
+ Write cache with mirroring: Enabled
337
+ Flush write cache after (in seconds): 10.00
338
+ Dynamic cache read prefetch: Enabled
339
+
340
+ Enable background media scan: Enabled
341
+ Media scan with redundancy check: Disabled
342
+
343
+ MISSING LOGICAL DRIVES------------------------------
344
+
345
+ Number of missing logical drives: 0
346
+
347
+ DRIVES------------------------------
348
+
349
+ SUMMARY
350
+ Number of drives: 10
351
+ Current drive types: Serial Attached SCSI (SAS) (10)
352
+
353
+ BASIC:
354
+ TRAY, SLOT STATUS CAPACITY TYPE CURRENT DATA RATE PRODUCT ID FIRMWARE VERSION
355
+ 85, 1 Optimal 279,397 GB SAS 3 Gbps ST3300655SS BA28
356
+ 85, 2 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
357
+ 85, 3 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
358
+ 85, 4 Optimal 279,397 GB SAS 3 Gbps ST3300655SS BA28
359
+ 85, 5 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
360
+ 85, 6 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
361
+ 85, 7 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
362
+ 85, 9 Optimal 279,397 GB SAS 3 Gbps ST3300655SS BA28
363
+ 85, 10 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
364
+ 85, 11 Optimal 279,397 GB SAS 3 Gbps MBA3300RC SA05
365
+
366
+ DRIVE CHANNELS:
367
+ TRAY, SLOT PREFERRED CHANNEL REDUNDANT CHANNEL
368
+ 85, 1 1 2
369
+ 85, 2 2 1
370
+ 85, 3 1 2
371
+ 85, 4 2 1
372
+ 85, 5 1 2
373
+ 85, 6 2 1
374
+ 85, 7 1 2
375
+ 85, 9 1 2
376
+ 85, 10 2 1
377
+ 85, 11 1 2
378
+
379
+
380
+ HOT SPARE COVERAGE:
381
+ The following logical drive groups are not protected: None - All logical drive groups are protected
382
+ Total hot spare drives: 1
383
+ Standby: 1
384
+ In use: 0
385
+
386
+ Standby drive at enclosure 85, slot 1 (SAS, 279,397 GB)
387
+ Protects the following logical drive groups: 1
388
+
389
+
390
+ DETAILS
391
+ Drive at Enclosure 85, Slot 1
392
+
393
+ Status: Optimal
394
+
395
+ Mode: Hot spare standby
396
+ Raw capacity: 279,397 GB
397
+ Usable capacity: 278,897 GB
398
+ World-wide identifier: 50:00:c5:00:0b:cb:e0:e7
399
+ Associated array: None
400
+
401
+ PORT CHANNEL
402
+ 0 1
403
+ 1 2
404
+
405
+ Drive path redundancy: OK
406
+ Drive type: Serial Attached SCSI (SAS)
407
+
408
+ Speed: 15015 RPM
409
+ Current data rate: 3 Gbps
410
+ Product ID: ST3300655SS
411
+ Firmware version: BA28
412
+ Serial number: 3LM5E5YF00009904BQZ5
413
+ Vendor: IBM-ESXS
414
+ Date of manufacture: Not available
415
+
416
+ Drive at Enclosure 85, Slot 2
417
+
418
+ Status: Optimal
419
+
420
+ Mode: Assigned
421
+ Raw capacity: 279,397 GB
422
+ Usable capacity: 278,897 GB
423
+ World-wide identifier: 50:00:00:e0:1c:99:25:70
424
+ Associated array: 1
425
+
426
+ PORT CHANNEL
427
+ 0 2
428
+ 1 1
429
+
430
+ Drive path redundancy: OK
431
+ Drive type: Serial Attached SCSI (SAS)
432
+
433
+ Speed: 15000 RPM
434
+ Current data rate: 3 Gbps
435
+ Product ID: MBA3300RC
436
+ Firmware version: SA05
437
+ Serial number: BJ59P8801L0S
438
+ Vendor: IBM-ESXS
439
+ Date of manufacture: Not available
440
+
441
+ Drive at Enclosure 85, Slot 3
442
+
443
+ Status: Optimal
444
+
445
+ Mode: Assigned
446
+ Raw capacity: 279,397 GB
447
+ Usable capacity: 278,897 GB
448
+ World-wide identifier: 50:00:00:e0:1c:96:0d:30
449
+ Associated array: 1
450
+
451
+ PORT CHANNEL
452
+ 0 1
453
+ 1 2
454
+
455
+ Drive path redundancy: OK
456
+ Drive type: Serial Attached SCSI (SAS)
457
+
458
+ Speed: 15000 RPM
459
+ Current data rate: 3 Gbps
460
+ Product ID: MBA3300RC
461
+ Firmware version: SA05
462
+ Serial number: BJ59P8801K4Y
463
+ Vendor: IBM-ESXS
464
+ Date of manufacture: Not available
465
+
466
+ Drive at Enclosure 85, Slot 4
467
+
468
+ Status: Optimal
469
+
470
+ Mode: Assigned
471
+ Raw capacity: 279,397 GB
472
+ Usable capacity: 278,897 GB
473
+ World-wide identifier: 50:00:c5:00:0b:cb:de:ff
474
+ Associated array: 1
475
+
476
+ PORT CHANNEL
477
+ 0 2
478
+ 1 1
479
+
480
+ Drive path redundancy: OK
481
+ Drive type: Serial Attached SCSI (SAS)
482
+
483
+ Speed: 15015 RPM
484
+ Current data rate: 3 Gbps
485
+ Product ID: ST3300655SS
486
+ Firmware version: BA28
487
+ Serial number: 3LM5E5TC00009905D8Z2
488
+ Vendor: IBM-ESXS
489
+ Date of manufacture: Not available
490
+
491
+ Drive at Enclosure 85, Slot 5
492
+
493
+ Status: Optimal
494
+
495
+ Mode: Assigned
496
+ Raw capacity: 279,397 GB
497
+ Usable capacity: 278,897 GB
498
+ World-wide identifier: 50:00:00:e0:1c:99:25:10
499
+ Associated array: 1
500
+
501
+ PORT CHANNEL
502
+ 0 1
503
+ 1 2
504
+
505
+ Drive path redundancy: OK
506
+ Drive type: Serial Attached SCSI (SAS)
507
+
508
+ Speed: 15000 RPM
509
+ Current data rate: 3 Gbps
510
+ Product ID: MBA3300RC
511
+ Firmware version: SA05
512
+ Serial number: BJ59P8801L0M
513
+ Vendor: IBM-ESXS
514
+ Date of manufacture: Not available
515
+
516
+ Drive at Enclosure 85, Slot 6
517
+
518
+ Status: Optimal
519
+
520
+ Mode: Assigned
521
+ Raw capacity: 279,397 GB
522
+ Usable capacity: 278,897 GB
523
+ World-wide identifier: 50:00:00:e0:1c:95:db:70
524
+ Associated array: 1
525
+
526
+ PORT CHANNEL
527
+ 0 2
528
+ 1 1
529
+
530
+ Drive path redundancy: OK
531
+ Drive type: Serial Attached SCSI (SAS)
532
+
533
+ Speed: 15000 RPM
534
+ Current data rate: 3 Gbps
535
+ Product ID: MBA3300RC
536
+ Firmware version: SA05
537
+ Serial number: BJ59P8801K3M
538
+ Vendor: IBM-ESXS
539
+ Date of manufacture: Not available
540
+
541
+ Drive at Enclosure 85, Slot 7
542
+
543
+ Status: Optimal
544
+
545
+ Mode: Assigned
546
+ Raw capacity: 279,397 GB
547
+ Usable capacity: 278,897 GB
548
+ World-wide identifier: 50:00:00:e0:1c:99:25:80
549
+ Associated array: 1
550
+
551
+ PORT CHANNEL
552
+ 0 1
553
+ 1 2
554
+
555
+ Drive path redundancy: OK
556
+ Drive type: Serial Attached SCSI (SAS)
557
+
558
+ Speed: 15000 RPM
559
+ Current data rate: 3 Gbps
560
+ Product ID: MBA3300RC
561
+ Firmware version: SA05
562
+ Serial number: BJ59P8801L0T
563
+ Vendor: IBM-ESXS
564
+ Date of manufacture: Not available
565
+
566
+ Drive at Enclosure 85, Slot 9
567
+
568
+ Status: Optimal
569
+
570
+ Mode: Assigned
571
+ Raw capacity: 279,397 GB
572
+ Usable capacity: 278,897 GB
573
+ World-wide identifier: 50:00:c5:00:0b:c9:96:2b
574
+ Associated array: 1
575
+
576
+ PORT CHANNEL
577
+ 0 1
578
+ 1 2
579
+
580
+ Drive path redundancy: OK
581
+ Drive type: Serial Attached SCSI (SAS)
582
+
583
+ Speed: 15015 RPM
584
+ Current data rate: 3 Gbps
585
+ Product ID: ST3300655SS
586
+ Firmware version: BA28
587
+ Serial number: 3LM5DY2V00009904YK44
588
+ Vendor: IBM-ESXS
589
+ Date of manufacture: Not available
590
+
591
+ Drive at Enclosure 85, Slot 10
592
+
593
+ Status: Optimal
594
+
595
+ Mode: Assigned
596
+ Raw capacity: 279,397 GB
597
+ Usable capacity: 278,897 GB
598
+ World-wide identifier: 50:00:00:e0:1c:96:0e:a0
599
+ Associated array: 1
600
+
601
+ PORT CHANNEL
602
+ 0 2
603
+ 1 1
604
+
605
+ Drive path redundancy: OK
606
+ Drive type: Serial Attached SCSI (SAS)
607
+
608
+ Speed: 15000 RPM
609
+ Current data rate: 3 Gbps
610
+ Product ID: MBA3300RC
611
+ Firmware version: SA05
612
+ Serial number: BJ59P8801K53
613
+ Vendor: IBM-ESXS
614
+ Date of manufacture: Not available
615
+
616
+ Drive at Enclosure 85, Slot 11
617
+
618
+ Status: Optimal
619
+
620
+ Mode: Assigned
621
+ Raw capacity: 279,397 GB
622
+ Usable capacity: 278,897 GB
623
+ World-wide identifier: 50:00:00:e0:1c:95:c2:b0
624
+ Associated array: 1
625
+
626
+ PORT CHANNEL
627
+ 0 1
628
+ 1 2
629
+
630
+ Drive path redundancy: OK
631
+ Drive type: Serial Attached SCSI (SAS)
632
+
633
+ Speed: 15000 RPM
634
+ Current data rate: 3 Gbps
635
+ Product ID: MBA3300RC
636
+ Firmware version: SA05
637
+ Serial number: BJ59P8801K2F
638
+ Vendor: IBM-ESXS
639
+ Date of manufacture: Not available
640
+
641
+ DRIVE CHANNELS----------------------------
642
+
643
+ SUMMARY
644
+
645
+ CHANNEL PORT STATUS
646
+ 1 Optimal
647
+ 2 Optimal
648
+
649
+ DETAILS
650
+
651
+ DRIVE CHANNEL 1
652
+
653
+ Port:
654
+ Status: Optimal
655
+ Max. Rate: 3 Gbps
656
+ Current Rate: 3 Gbps
657
+ Rate Control: Switched
658
+ DRIVE COUNTS
659
+
660
+ Total # of attached drives: 10
661
+ Connected to: Controller A
662
+ Attached drives: 10
663
+ Drive enclosure: 85 (10 drives)
664
+
665
+
666
+ CUMULATIVE ERROR COUNTS
667
+
668
+ Controller A
669
+ Baseline time set: 16/03/10 10:19:01
670
+ Sample period (hh:mm:ss): 00:00:00
671
+ Controller detected errors: 0
672
+ Drive detected errors: 7
673
+ Timeout errors: 0
674
+ Total I/O count: 218848647
675
+
676
+ Controller B
677
+ Baseline time set: 16/03/10 10:19:01
678
+ Sample period (hh:mm:ss): 00:00:00
679
+ Controller detected errors: 0
680
+ Drive detected errors: 0
681
+ Timeout errors: 0
682
+ Total I/O count: 0
683
+
684
+ DRIVE CHANNEL 2
685
+
686
+ Port:
687
+ Status: Optimal
688
+ Max. Rate: 3 Gbps
689
+ Current Rate: 3 Gbps
690
+ Rate Control: Switched
691
+ DRIVE COUNTS
692
+
693
+ Total # of attached drives: 0
694
+ Connected to: Controller B
695
+ Attached drives: 0
696
+
697
+
698
+ CUMULATIVE ERROR COUNTS
699
+
700
+ Controller A
701
+ Baseline time set: 16/03/10 10:19:01
702
+ Sample period (hh:mm:ss): 00:00:00
703
+ Controller detected errors: 0
704
+ Drive detected errors: 5
705
+ Timeout errors: 0
706
+ Total I/O count: 177878511
707
+
708
+ Controller B
709
+ Baseline time set: 16/03/10 10:19:01
710
+ Sample period (hh:mm:ss): 00:00:00
711
+ Controller detected errors: 0
712
+ Drive detected errors: 0
713
+ Timeout errors: 0
714
+ Total I/O count: 0
715
+
716
+ ENCLOSURES------------------------------
717
+ Controller/Drive Enclosure Overall Component Information
718
+
719
+ Enclosure audible alarm: Disabled
720
+ Current drive types: SAS
721
+ Part number: PN 39R6545
722
+ Serial number: SN 136847B
723
+ Vendor: VN IBM
724
+ Date of manufacture: 1 mai 2008
725
+
726
+ 2 Battery Packs Detected
727
+
728
+ Battery status: Optimal
729
+ Location: Controller A
730
+ Age: 676 days
731
+ Days until replacement: 43 days
732
+ Replacement part number: PN 39R6520
733
+ Serial number: SN 1Y81242428PS
734
+ Vendor: VN IBM
735
+ Date of manufacture: 1 mars 2008
736
+
737
+ Battery status: Optimal
738
+ Location: Controller B
739
+ Age: 676 days
740
+ Days until replacement: 43 days
741
+ Replacement part number: PN 39R6520
742
+ Serial number: SN 1Y81242464PS
743
+ Vendor: VN IBM
744
+ Date of manufacture: 1 mars 2008
745
+
746
+
747
+ 2 SFPs Detected
748
+
749
+ SFP status: Optimal
750
+ Attached to: Host-side of controller A
751
+ Location: Unknown
752
+ Supported data rate(s): 1 Gbps, 2 Gbps, 4 Gbps
753
+ Link length: Intermediate
754
+ Connector: LC
755
+ Transmitter type: Shortwave Laser w/o OFC
756
+ Transmission media: TM Multi-mode 50m(M5) TM Multi-mode 62.5m(M6)
757
+ IEEE company ID: 00 17 6a
758
+ Revision:
759
+ Part number: AFBR-57R5AEZ
760
+ Serial number: A90828156A
761
+ Vendor: AVAGO
762
+ Date of manufacture: 12 juillet 2008
763
+
764
+ SFP status: Optimal
765
+ Attached to: Host-side of controller B
766
+ Location: Unknown
767
+ Supported data rate(s): 1 Gbps, 2 Gbps, 4 Gbps
768
+ Link length: Intermediate
769
+ Connector: LC
770
+ Transmitter type: Shortwave Laser w/o OFC
771
+ Transmission media: TM Multi-mode 50m(M5) TM Multi-mode 62.5m(M6)
772
+ IEEE company ID: 00 17 6a
773
+ Revision:
774
+ Part number: AFBR-57R5AEZ
775
+ Serial number: A9082813X4
776
+ Vendor: AVAGO
777
+ Date of manufacture: 12 juillet 2008
778
+
779
+
780
+ 2 Power-Fan Canisters Detected
781
+
782
+ Power-fan canister (right) status: Optimal
783
+ Part number: PN 42C2140
784
+ Serial number: SN G5T081019708
785
+ Vendor: VN IBM
786
+ Date of manufacture: 1 mars 2008
787
+
788
+
789
+ Power-fan canister (left) status: Optimal
790
+ Part number: PN 42C2140
791
+ Serial number: SN G5T081019619
792
+ Vendor: VN IBM
793
+ Date of manufacture: 1 mars 2008
794
+
795
+
796
+ 2 Power Supplies Detected
797
+
798
+ Power supply status: Optimal
799
+ Location: Power supply canister (right)
800
+
801
+ Power supply status: Optimal
802
+ Location: Power supply canister (left)
803
+
804
+
805
+ 2 Fans Detected
806
+
807
+ Fan Status: Optimal
808
+ Location: Fan canister (left)
809
+
810
+ Fan Status: Optimal
811
+ Location: Fan canister (right)
812
+
813
+
814
+ 4 Temperature Sensors Detected
815
+
816
+ Temperature sensor status: Optimal
817
+ Location: Controller A
818
+
819
+ Temperature sensor status: Optimal
820
+ Location: Controller B
821
+
822
+ Temperature sensor status: Optimal
823
+ Location: Not available
824
+
825
+ Temperature sensor status: Optimal
826
+ Location: Not available
827
+
828
+
829
+
830
+ MAPPINGS (Storage Partitioning - Enabled (1 of 2 used))-------------------
831
+
832
+ VOLUME NAME LUN CONTROLLER ACCESSIBLE BY VOLUME STATUS
833
+ Access Logical Drive 30 A,B Host APPSRV1 Optimal
834
+ SAN01_LUN1 0 A Host APPSRV1 Optimal
835
+ SAN01_LUN2 1 B Host APPSRV1 Optimal
836
+ Access Logical Drive 31 A,B Storage Subsystem Optimal
837
+
838
+ TOPOLOGY DEFINITIONS
839
+
840
+ STORAGE SUBSYSTEM
841
+ Default type: W2KNETNCL0
842
+
843
+ HOST APPSRV1
844
+ Type: Linux
845
+ Alias: APPSRV10
846
+
847
+ Type: Linux
848
+ Alias: APPSRV11
849
+
850
+ NVSRAM HOST TYPE DEFINITIONS
851
+
852
+ HOST TYPE ADT STATUS ASSOCIATED INDEX
853
+ AIX Disabled 6
854
+ AIX (with Veritas DMP) Enabled 4
855
+ HP-UX Enabled 7
856
+ IBM TS SAN VCE Enabled 12
857
+ Irix Disabled 10
858
+ LNXCLVMWARE Disabled 13
859
+ Linux Disabled 5
860
+ Netware Failover Disabled 11
861
+ Solaris Disabled 8
862
+ Solaris (with Veritas DMP) Enabled 14
863
+ Unused1 Disabled 1
864
+ W2KNETNCL0 Disabled 0 (Default)
865
+ Windows 2000/Server 2003 Clustered Disabled 3
866
+ Windows 2000/Server 2003 Clustered (supports DMP) Enabled 15
867
+ Windows 2000/Server 2003 Non-Clustered Disabled 2
868
+ Windows 2000/Server 2003 Non-Clustered (supports DMP) Enabled 9
869
+