NAME

Cisco::UCS::Blade - Class for operations with a Cisco UCS blade.

SYNOPSIS

# Print all blades in chassis 1 along with their serial number

foreach my $blade ($ucs->chassis(1)->get_blades) {
        printf ("%1d\t: %-20s\n", $blade->id, $blade->serial)
}

# Print the memory installed and available in blade 2/3

print $chassis(2)->blade(3)->memory_available;

# Print all blades in all chassis along with a cacti-style listing of the
# blades current, minimum and maximum power consumption values.

map { 
        print "Chassis: " . $_->id ."\n";
        map { print "\tBlade: ". $_->id ." - Power consumed -"
                  . " Current:". $_->power_stats->consumed_power 
                  . " Max:". $_->power_stats->consumed_power_max 
                  . " Min:". $_->power_stats->consumed_power_min ."\n" 
        } 
        sort { $a->id <=> $b->id } $_->get_blades 
} 
sort { 
        $a->id <=> $b->id 
} $ucs->get_chassiss;

# Prints something like:
#
# Chassis: 1
#       Blade: 1 - Power consumed - Current:115.656647 Max:120.913757 Min:110.399513
#       Blade: 2 - Power consumed - Current:131.427994 Max:139.313675 Min:126.170883
#       Blade: 3 - Power consumed - Current:131.427994 Max:157.713593 Min:126.170883
#       Blade: 4 - Power consumed - Current:0.000000 Max:0.000000 Min:0.000000
#       Blade: 5 - Power consumed - Current:0.000000 Max:0.000000 Min:0.000000
#       Blade: 6 - Power consumed - Current:0.000000 Max:0.000000 Min:0.000000
#       Blade: 7 - Power consumed - Current:0.000000 Max:0.000000 Min:0.000000
#       Blade: 8 - Power consumed - Current:0.000000 Max:0.000000 Min:0.000000
# Chassis: 2
#       Blade: 1 - Power consumed - Current:131.427994 Max:136.685120 Min:128.799438
#       Blade: 2 - Power consumed - Current:126.170883 Max:131.427994 Min:123.542320
#       Blade: 3 - Power consumed - Current:134.056564 Max:155.085037 Min:131.427994
# ...etc.

DECRIPTION

Cisco::UCS::Blade is a class providing operations with a Cisco UCS Blade.

Note that you are not supposed to call the constructor yourself, rather a Cisco::UCS::Blade object is created automatically by method calls to a Cisco::UCS::Chassis object.

METHODS

admin_state

Returns the administrative state of the specified blade.

assignment

Returns the dn of the service profile currently assigned to the specified blade.

association

Returns the association status of the specified blade.

availability

Returns the availability status of the specified blade.

conn_path

Returns the connectivity path detail of the specified blade.

conn_status

Returns the connectivity path status of the specified blade.

cores_enabled

Returns the number of enabled cores for the specified blade.

chassis

Returns the chassis ID of the chassis in which the specified blade is located.

checkpoint

returns the checkpoint status of the specified blade.

cpu ( $id )

Returns the specified CPU in the socket designated by the value of the $id parameter as a Cisco::UCS::Blade::CPU object.

Note that this is a caching method and will return a previously retrieved and cached object if one is available. See the method description for get_cpu below for non-caching behaviour.

get_cpu ( $id )

This is a functionally equivalent non-caching implementation of the cpu method.

get_cpus ( $id )

Returns all CPUs in the target blade as an array of Cisco::UCS::Blade::CPU objects.

description

Returns the value of the user description field for the specified blade.

discovery

Returns the discovery status of the specified blade.

dn

Returns the dn (distinguished name) of the specified blade in the UCS management heirarchy.

id

Returns the id of the specified blade in the chassis - this is equivalent to the slot ID number (e.g. 1 .. 8).

led ( $state )

Sets the locator led of the blade to the desired state; either on or off;

managing_instance

Returns the managing instance for the specified blade (either A or B).

memory_available

Returns the amount of available memory (in Mb) for the specified blade.

memory_speed

Returns the operational memory speed (in MHz) of the specified blade.

memory_total

Returns the total amount of memory installed (in Mb) in the specified blade.

model

Returns the model number of the specified blade.

name

Returns the name of the specified blade.

num_adaptors

Returns the number of adaptors in the specified blade.

num_cores

Returns the number of CPU cores in the specified blade.

num_cpus

Returns the number of CPUs in the specified blade.

num_eth_ifs

Returns the number of Ethernet interfaces configured on teh specified blade.

num_fc_ifs

Returns the number of Fibre Channel interfaces configured on teh specified blade.

num_threads

Returns the number of execution threads available on the specified blade.

operability

Returns the operability status of the specified blade.

oper_power

Returns the operational power state of the specified blade.

oper_state

Returns the operational status of the specified blade.

presence

Returns the presence status of the specified blade.

power_budget

Returns a Cisco::UCS::Blade::PowerBudget object representing the power budget values for the specified blade.

power_stats

Returns a Cisco::UCS::Common::PowerStats object representing the power usage statistics of the specified blade.

revision

Returns the revision level of the specified blade.

serial

Returns the serial number of the specified blade.

server_id

Returns the ID of the specified blade in chassis/slot notation (e.g. this value would be 2/8 for a server in the eight slot of the second chassis).

slot_id

Returns the slot ID of the specified blade - this is the same value as returned by the id method.

user_label

Returns the value for the user-specified label of the designated blade.

uuid

Returns the UUID of the specified blade - note that this UUID value is the user-specified value and may differ to the original UUID value of the blade (see uuid_original).

uuid_original

Returns the original UUID value of the specified blade - this value is the "burned-in" UUID for the blade.

vendor

Returns the vendor identifier of the specified blade.

AUTHOR

Luke Poskitt, <ltp at cpan.org>

BUGS

Please report any bugs or feature requests to bug-cisco-ucs-blade at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Cisco-UCS-Blade. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Cisco::UCS::Blade

You can also look for information at:

ACKNOWLEDGEMENTS

LICENSE AND COPYRIGHT

Copyright 2012 Luke Poskitt.

This program is free software; you can redistribute it and/or modify it under the terms of either: the GNU General Public License as published by the Free Software Foundation; or the Artistic License.

See http://dev.perl.org/licenses/ for more information.