Cisco-UCS
view release on metacpan or search on metacpan
caching blade method described above.
get_blades ()
my @blades = $ucs->get_blades();
foreach my $blade ( @blades ) {
print "Model: $blade->{model}\n";
}
Returns an array of Cisco::UCS::Blade objects with each object
representing a blade within the UCS cluster.
chassis ( $ID )
my $chassis = $ucs->chassis(1);
print "Chassis 1 serial : " . $chassis->serial . "\n";
# or
print "Chassis 1 serial : " . $ucs->chassis(1)->serial . "\n";
foreach my $psu ( $ucs->chassis(1)->get_psus ) {
print $psu->id . " thermal : " . $psu->thermal . "\n"
}
Returns a Cisco::UCS::Chassis object representing the chassis identified
by by the specified value of ID.
Note that this is a caching method and the default behaviour of this
method is to return a cached copy of a previously retrieved
Cisco::UCS::Chassis object if one is available. If a non-cached object
is required, then please consider using the equivalent get_chassis
method below.
Please see the Caching Methods section in NOTES for further information.
get_chassis ( $ID )
my $chassis = $ucs->get_chassis(1);
print "Chassis 1 label : " . $chassis->label . "\n";
# or
print "Chassis 1 label : " . $ucs->get_chassis(1)->label . "\n";
Returns a Cisco::UCS::Chassis object representing the chassis identified
by the specified value of ID.
Note that this method is non-caching and always queries the UCSM for
information. Consequently may be more expensive than the equivalent
caching chassis method described above.
get_chassiss
my @chassis = $ucs->get_chassiss();
foreach my $chassis (@chassis) {
print "Chassis $chassis->{id} serial number: $chassis->{serial}\n";
}
Returns an array of Cisco::UCS::Chassis objects representing all chassis
present within the cluster.
Note that this method is named get_chassiss (spelt with two sets of
double-s's) as there exists no English language collective plural for
the word chassis.
full_state_backup
This method generates a new "full state" type backup for the target UCS
cluster. Internally, this method is implemented as a wrapper method
around the private backup method. Required parameters for this method:
backup_proto
The protocol to use for transferring the backup from the target UCS
cluster to the backup host. Must be one of: ftp, tftp, scp or sftp.
backup_host
The host to which the backup will be transferred.
backup_target
The fully qualified name of the file to which the backup is to be
saved on the backup host. This should include the full directory path
and the target filename.
backup_username
The username to be used for creation of the backup file on the backup
host. This username should have write/modify file system access to
the backup target location on the backup host using the protocol
specified in the backup-proto attribute.
backup_passwd
The plaintext password of the user specified for the backup_username
attribute.
all_config_backup
This method generates a new "all configuration" backup for the target
UCS cluster. Internally, this method is implemented as a wrapper method
around the private backup method. For the required parameters for this
method, please refer to the documentation of the full_state_backup
method.
system_config_backup
This method generates a new "system configuration" backup for the target
UCS cluster. Internally, this method is implemented as a wrapper method
around the private backup method. For the required parameters for this
method, please refer to the documentation of the full_state_backup
method.
logical_config_backup
This method generates a new "logical configuration" backup for the
target UCS cluster. Internally, this method is implemented as a wrapper
method around the private backup method. For the required parameters for
this method, please refer to the documentation of the full_state_backup
method.
NOTES
Caching Methods
Several methods in the module return cached objects that have been
previously retrieved by querying UCSM, this is done to improve the
performance of methods where a cached copy is satisfactory for the
intended purpose. The trade off for the speed and lower resource
requirement is that the cached copy is not guaranteed to be an
up-to-date representation of the current state of the object.
As a matter of convention, all caching methods are named after the
singular object (i.e. interconnect(), chassis()) whilst non-caching
methods are named *get_<object*>. Non-caching methods will always query
UCSM for the object, as will requests for cached objects not present in
cache.
* The documentation could be cleaner and more thorough. The module was
written some time ago with only minor amounts of time and effort
invested since. There's still a vast opportunity for improvement.
* Better error detection and handling. Liberal use of Carp::croak
should ensure that we get some minimal diagnostics and die nicely,
and if used according to instructions, things should generally work.
When they don't however, it would be nice to know why.
* Detection of request and return type. Most of the methods are fairly
explanatory in what they return, however it would be nice to make
better use of wantarray to detect what the user wants and handle it
accordingly.
* Clean up of the UCS package to remove unused methods and improve the
ones that we keep. I'm still split on leaving some of the methods
common to most object type (fans, psus) in the main package.
AUTHOR
Luke Poskitt, "<ltp at cpan.org>"
BUGS
Please report any bugs or feature requests to "bug-cisco-ucs at
rt.cpan.org", or through the web interface at
<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Cisco-UCS>. 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
You can also look for information at:
* RT: CPAN's request tracker
<http://rt.cpan.org/NoAuth/Bugs.html?Dist=Cisco-UCS>
* AnnoCPAN: Annotated CPAN documentation
<http://annocpan.org/dist/Cisco-UCS>
( run in 1.890 second using v1.01-cache-2.11-cpan-39bf76dae61 )