The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Brocade::BSC - Configure and query the Brocade SDN controller.

VERSION

Version 1.0.4

DESCRIPTION

A Brocade::BSC object is used to model, query, and configure Brocade's OpenDaylight-based Software-Defined Networking controller.

Most API methods return a duple: a Brocade::BSC::Status object, and a reference to a data structure with the requested information. Status should always be verified before attempting to dereference the second return value.

METHODS

new

Creates a new Brocade::BSC object and populates fields with values from argument hash, if present, or YAML configuration file.

  ### parameters:
  #   + cfgfile       - path to YAML configuration file specifying controller attributes
  #   + ipAddr        - IP address of controller
  #   + portNum       - TCP port for controller's REST interface
  #   + adminName     - username
  #   + adminPassword - password
  #   + timeout       - for HTTP requests, in seconds
  #
  ### YAML configuration file labels and default values
  #
  #   parameter hash | YAML label  | default value
  #   -------------- | ----------- | -------------
  #   ipAddr         | ctrlIpAddr  | 127.0.0.1
  #   portNum        | ctrlPortNum | 8181
  #   adminName      | ctrlUname   | admin
  #   adminPassword  | ctrlPswd    | admin
  #   timeout        | timeout     | 5

Returns new Brocade::BSC object.

as_json
  # Returns pretty-printed JSON string representing BSC object.
get_nodes_operational_list
  # Returns   : BSC::Status
  #           : reference to an array of node names
get_node_info
  # Parameter : node name (string, required)
  # Returns   : BSC::Status
  #           : array reference containing node info
check_node_config_status
  # Parameter : node name (string, required)
  # Returns   : BSC::Status - NODE_CONFIGURED or NODE_NOT_FOUND
check_node_conn_status
  # Parameter : node name (string, required)
  # Returns   : BSC::Status - NODE_CONNECTED or NODE_DISCONNECTED
get_all_nodes_in_config
  # Returns   : BSC::Status
  #           : array reference - list of node identifiers
get_all_nodes_conn_status
  # Returns   : BSC::Status
  #           : reference to array of hashes:
  #             { id        => nodename,
  #               connected => boolean }
get_netconf_nodes_in_config
  # Returns   : BSC::Status
  #           : array reference - list of node identifiers
get_all_nodes_conn_status
  # Returns   : BSC::Status
  #           : reference to array of hashes:
  #             { id        => nodename,
  #               connected => boolean }
get_schemas
  # Parameters: node name (string, required)
  # Returns   : BSC::Status
  #           : array reference - supported schemas on node
get_schema
  # Parameters: node name
  #           : YANG schema ID
  #           : YANG schema version
  # Returns   : BSC::Status
  #           : requested YANG schema as formatted JSON
get_netconf_operations
  # Parameters: node name
  # Returns   : BSC::Status
  #           : hash reference - operations supported by specified node
get_all_modules_operational_state
  # Returns   : BSC::Status
  #           : array reference - hashes of module state
get_module_operational_state
  # Parameter : module type
  #           : module name
  # Returns   : BSC::Status
  #           : array reference - hash of module state
get_sessions_info
  # Parameters: node name
  # Returns   : BSC::Status
  #           : hash reference - session listing on specified node
get_streams_info
  # Parameters:
  # Returns   : BSC::Status
  #           : hash reference - streams info
get_service_providers_info
  # Parameters:
  # Returns   : BSC::Status
  #           : array reference ~ name/provider pairs
get_service_provider_info
  # Parameters: node name
  # Returns   : BSC::Status
  #           : array reference ~ name/provider pairs
add_netconf_node

Add a mount point on controller for specified node.

  # Parameters: node name
  # Returns   : BSC::Status
delete_netconf_node
  # Parameters: node name
  # Returns   : BSC::Status
  #           :
get_ext_mount_config_urlpath
  # Parameters: node name
  # Returns   : base restconf URL for configuration of mounted netconf node
get_ext_mount_operational_urlpath
  # Parameters: node name
  # Returns   : base restconf URL for operational status of mounted netconf node
get_node_operational_urlpath
  # Parameters: node name
  # Returns   : base restconf URL for node, operational status
get_node_config_urlpath
  # Parameters: node name
  # Returns   : base restconf URL for node, configuration
get_openflow_nodes_operational_list
  # Returns   : BSC::Status
  #           : array reference - node names

AUTHOR

<pruiklw at cpan.org>

BUGS

Please report any bugs or feature requests to bug-brocade-bsc at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Brocade-BSC. 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 Brocade::BSC

You can also look for information at:

ACKNOWLEDGEMENTS

Brocade::BSC is entirely based on pybvc created by Sergei Garbuzov.

COPYRIGHT

Copyright (c) 2015, BROCADE COMMUNICATIONS SYSTEMS, INC

All rights reserved.