Table Of Contents
FexApp Service
Information About SoftwareApp Service
bindPortsToFex
bindPortsToFexWithForce
createFabricExtenders
deleteFabricExtenders
disableFex
disableLocatorLedFex
enableFex
enableLocatorLedFex
fexPinningRedistribute
getFabricExtenderGlobalSetting
getFabricExtenders
getFabricExtendersInNetworkElement
getManagedEnesInNetworkElements
getPortsInFabricExtender
getVpcStateOfExtendedNetworkElements
isHostInterfacePortChannelCapable
modifyFabricExtenders
unbindPortsFromFex
FexApp Service
This chapter describes the DCNM web services' API methods for the FexApp service. This API is available for Cisco Nexus 7000 Series switches that run Cisco NX-OS Release 5.0(3) or later.
Information About SoftwareApp Service
This chapter defines the APIs that you can use to get information about FEX on the DCNM server.
bindPortsToFex
Binds fex-fabric(interface) ports with specified FexId.
If the specified FabricExtender object doesn't exist,then IntegrityException is thrown. FeatureException is thrown if any of the following situation
•
If user associate FabricExtender to member port of port-channel
•
If user associates the same FabricExtender with multiple port-channels
•
If user associates with port-channel which has max pinning links more than one
ValidationException is thrown if any of the following situation
•
If the portNameIdCol contains one or more null element, or the collection contains objects that are not of type SwitchedNetworkInterface.
Parameters
opContext -
portNameIdCol -
fexId -
Returns
void.
bindPortsToFexWithForce
Binds fex-fabric(interface) ports with specified FexId.
In case given FabricExtender already associate with port-channel, API will unbind the existing association and will create association between given SwitchedEtherChannelNetworkInterface
While updating DB FabricExtender reference is set to the sni and saved and set InstanceState to UNMODIFIED. If the specified FabricExtender object doesn't exist,then IntegrityException is thrown. FeatureException is thrown if any of the following situation
•
If user associate FabricExtender to member port of port-channel
•
If user associates the same FabricExtender with multiple port-channels
•
If user associates with port-channel which has max pinning links more than one
ValidationException is thrown if any of the following situation
•
If the portNameIdCol contains one or more null element, or the collection contains objects that are not of type SwitchedNetworkInterface.
Parameters
opContext -
portNameIdCol -
fexId -
Returns
void.
createFabricExtenders
Creates one or more FabricExtender objects in a network element. Given the InstanceNameId of a network element and a list of FabricExtender objects, creates the objects in the server and returns it's instance name IDs.
ValidationException is thrown if any of the following situation occurs:
•
If neInstanceNameId is null.
•
If neInstanceNameId is not a valid network element InstanceNameId.
•
If the fabricExtenderCol is null or the collection is empty.
•
If the fabricExtenderCol contains one or more null element, or the collection contains objects that are not of type FabricExtender.
PropertiesException is thrown if any of the following situation occurs:
•
In the fabricExtenderCol collection, if any of the FabricExtender attribute is not valid.
Example
1.
fexId of an FabricExtender is not in the range between 100-199.
2.
maxPinningLinks of an FabricExtender is not in the range between 1-4.
3.
description attribute value of an FabricExtender contains more than 20 characters.
4.
serialNumber attribute value of an FabricExtender contains more than 20 characters.
IntegrityException is thrown if any of the following situation occurs:
•
If the fabricExtenderCol contains a FabricExtender that already exist in the database.
This API will not consider the interface association. If a FabricExtender is passed with the interface association, that will not be considered by this API. User needs to call separate API to bind the FabricExtender to an interface.
Parameters
opContext - operational context. operational context.
neInstanceNameId - InstanceNameId of a network element.
fabricExtenderCol - a collection (one or more) of FabricExtender objects that needs to be created.
Returns
Instance name IDs of the newly created FabricExtender objects.
deleteFabricExtenders
Deletes one or more FabricExtender objects. Given the InstanceNameId of the FabricExtender objects, those objects will be deleted from the server.
ValidationException is thrown if any of the following situation occurs:
•
If fabricExtenderInstanceNameIdCol collection is null or it is empty.
•
If fabricExtenderInstanceNameIdCol collection contains an element that is not of type FabricExtender InstanceNameId.
•
If fabricExtenderInstanceNameIdCol collection contains a FabricExtender that does not exist in the database.
Parameters
opContext - operational context.
fabricExtenderInstanceNameIdCol - a collection that contains InstanceNameId of one or more FabricExtender objects that needs to be deleted.
Returns
void.
disableFex
Disables FEX conditional feature on one or more network element.
ValidationException is thrown if any of the following situation occurs:
•
If the neInstanceNameIdCol is null.
•
If the neInstanceNameIdCol contains one or more null element, or the collection is empty or it is not type InstanceNameId.
Parameters
opContext - operational Context
neInstanceNameIdCol - list of InstanceNameId of the Network Element for which FEX conditional feature should be disabled
Returns
void.
disableLocatorLedFex
Issues no locator-led fex for the fabricExtender. This method is available for Cisco Nexus 7000 Series switches that run Cisco NX-OS Release 5.1(1) or later.
Parameters
opContext - operational Context
Returns
void
enableFex
Enables FEX conditional feature on one or more network elements. Given the instance name ID of one or more network elements, FEX conditional feature will be enabled on those elements.
ValidationException is thrown if any of the following situation occurs:
•
If the neInstanceNameIdCol is null.
•
If the neInstanceNameIdCol contains one or more null element, or the collection is empty or it is not type InstanceNameId.
Parameters
opContext - operational context
neInstanceNameIdCol - list of InstanceNameId of the Network Element for which FEX conditional feature should be enabled
Returns
void.
enableLocatorLedFex
Issues locator-led fex for the fabricExtender. This method is available for Cisco Nexus 7000 Series switches that run Cisco NX-OS Release 5.1(1) or later.
Parameters
opContext - operational Context
Returns
void
fexPinningRedistribute
Issues fex pining redistribute(Redistribute the fex downlink ports) for the fabricExtenderCol.
Parameters
opContext -
fabricExtenderCol -
Returns
void.
getFabricExtenderGlobalSetting
Returns the device level fabricExtenderGlobalsettings for one or more network elements. Given the InstanceNameId of one or more network elements, returns the corresponding FabricExtenderGlobalSetting object for those network elements.
ValidationException is thrown if any of the following situation occurs:
•
If neInstanceNameIdCol is null or empty or it is not of type InstanceNameId.
•
If neInstanceNameIdCol is not a valid InstanceNameId of AbstractNetworkElement object.
Parameters
opContext - OpContext
neInstanceNameIdCol - InstanceNameId of one or more AbstractNetworkElement objects.
Returns
A collection of FabricExtenderGlobalSetting objects.
getFabricExtenders
Returns FabricExtender objects from it's InstanceNameIds. Given a collection of InstanceNameId of FabricExtender, returns corresponding FabricExtender objects.
ValidationException is thrown if any of the following situation occurs:
•
If fabricExtenderInstanceNameIdCol is null or it is empty.
•
If fabricExtenderInstanceNameIdCol contains invalid InstanceNameId of a FabricExtender.
•
If fabricExtenderInstanceNameIdCol contains a null value.
•
If there is no equivalent FabricExteder object with the given InstanceNameId in the fabricExtenderInstanceNameIdCol.
Parameters
opContext - operational context.
fabricExtenderInstanceNameIdCol - a collection of InstanceNameId of FabricExtender.
Returns
List of FabricExtender objects corresponding to given collection of InstanceNameId. In the returned list of FabricExtender objects,other associations will be cleared.
getFabricExtendersInNetworkElement
Returns all Fex configured in a network element. Given the InstanceNameId of the network element, returns a collection of FabricExtender objects.
InstanceException is thrown if the argument passed neInstanceNameId is null or it is not a valid network element InstanceNameId.
Parameters
opContext - operational context. operational context.
neInstanceNameId - InstanceNameId of the network element.
Returns
List of FabricExtender, In the returned list of objects, all other associations will be cleared. Returned fabricExtenders will be ordered by the fexId of the fabricExtender.
getManagedEnesInNetworkElements
Returns a collection of ExtendedNetworkElements present in the given list of network elements. Given a list of InstanceNameId of the network elements, returns a collection of ExtendedNetworkElement objects.
ValidationException is thrown if any of the following situation occurs:
•
If the argument passed is null or it is not a valid network element InstanceNameId
•
If a valid non-exixting network element InstanceNameId is passed.
Parameters
opContext - Operational context.
neInstanceNameIdCol - list of InstanceNameId of the network element.
Returns
List of List of ExtendedNetworkElement objects corresponding to NetworkElement.
Following association will be available for each ExtendedNetworkElement objects:
•
Chassis
getPortsInFabricExtender
Returns a list of ports associate to a FabricExtender. Returns a collection of SwitchedNetworkInterface (Physical Ports and Port Channel) based on the FabricExtender
Following associations will be available for each NetworkInterface:
1.
NetworkInterfaceName.
2.
FabricPortStatus.
3.
PhysicalPort.
4.
SwitchedEtherChannelPortSetting.
ValidationException is thrown if any of the following situation occurs:
•
If fabricInstanceNameId is null or not a valid InstanceNameId of FabricExtender.
IntegrityException is thrown if any of the following situation occurs:
•
If the corresponding object for fabricExtenderId does not exist.
Parameters
opContext - Operational context.
fabricExtenderId - InstanceNameId of FabricExtender from which the ports are to be queried.
Returns
List of SwitchedNetworkInterface ports that are associated for the given FabricExtenderInstanceNameId.
getVpcStateOfExtendedNetworkElements
Returns list of Boolean based on whether FEX participates in vPC setup for the given list of ExtendedNetworkElement InstanceNameIds.
ValidationException is thrown if any of the following situation occurs:
•
If neInstanceNameIdCol collection contains an element that is null or the collection is empty or it is not type InstanceNameId.
•
If the argument passed is null or it is not a valid network element InstanceNameId.
Parameters
opContext - operational Context
neInstanceNameIdCol - InstanceNameId of the one or more Extended Network Element
Returns
The returned list will contain Boolean instances.
Boolean value TRUE represents ExtendedNetworkElement participates in vPC setup.
Boolean value FALSE represents ExtendedNetworkElement does not participates in vPC setup.
isHostInterfacePortChannelCapable
Returns list of Boolean based on whether multiple host interfaces can be grouped as single port-channel for the given list of ExtendedNetworkElement InstanceNameIds.
ValidationException is thrown if any of the following situation occurs:
•
If neInstanceNameIdCol collection contains an element that is null or the collection is empty or it is not type InstanceNameId.
•
If the argument passed is null or it is not a valid network element InstanceNameId.
Parameters
opContext - operational Context
eneInstanceNameIdCol - InstanceNameId of the one or more Extended Network Element
Returns
The returned list will contain Boolean instances.
Boolean value TRUE represents ExtendedNetworkElement participates in vPC setup.
Boolean value FALSE represents ExtendedNetworkElement does not participates in vPC setup.
modifyFabricExtenders
Modifies one or more existing FabricExtender objects.
ValidationException is thrown if any of the following situation occurs:
•
If fabricExtenderCol collection is null or it is empty.
•
If fabricExtenderCol collection contains an object that is not of type FabricExtender.
PropertiesException is thrown if any of the following situation occurs:
•
In the fabricExtenderCol collection, if any attribute in the FabricExtender is not valid.
Example
1.
maxPinningLinks of an FabricExtender is not in the range between 1-4.
2.
description attribute value of an FabricExtender contains more than 20 characters.
3.
serialNumber attribute value of an FabricExtender contains more than 20 characters.
IntegrityException is thrown if any of the following situation occurs:
•
If the fabricExtenderCol collection contains a FabricExtender that does not exist in the database.
This API will not consider the interface association. If a FabricExtender is passed with the interface association, that will not be considered by this API. User needs to call separate API to bind the FabricExtender to an interface.
Parameters
opContext - operational context. operational context.
fabricExtenderCol - a collection (one or more) of FabricExtender objects that will replace the existing FabricExtender objects in the database.
Returns
void.
unbindPortsFromFex
Unbind fabricextender from sni.Loads the sni from DB and based on the FabricExtenderRef gets the associated fabricExtender Object. Only after delivering the command to device the fabricextender object is set to null.
•
If the portNameIdCol contains one or more null element, or the collection contains objects that are not of type SwitchedNetworkInterface.
Parameters
opContext -
portNameIdCol -
Returns
void.