Cisco Nexus 1000V REST API Plug-in Configuration Guide, Release 4.2(1)SV2(2.1)
Cisco Nexus 1000V API Functions
Downloads: This chapterpdf (PDF - 1.08MB) The complete bookPDF (PDF - 2.02MB) | The complete bookePub (ePub - 159.0KB) | Feedback

Cisco Nexus 1000V API Functions

Cisco Nexus 1000V API Functions

This chapter provides information about the Cisco Nexus 1000V application programming interface (API) functions. The Cisco Nexus 1000V resource name is generic across all hypervisors. The functions that support write (create, update, and delete) operations are explicitly marked as writeable. All others are read-only functions.

The chapter contains the following topics:

Get a List of the Uplinks Configured on the VSM

Object Locator

["/api/vc/uplink"] [Read-only]

Description

Retrieves information about the details on the uplinks configured on the VSM.

Response Sample

<set name="uplink_set">
<instance name="Ethernet4/2" url="/api/vc/uplink">
<properties>
<module>4</module>
<portChannelType>Eth</portChannelType>
<packetsTx>727599</packetsTx>
<mtu>1500</mtu>
<cdpPort>Ethernet111/1/34</cdpPort>
<portChannelMembers>Ethernet4/2,Ethernet4/3,Ethernet4/4,Ethernet4/5</portChannelMembers>
<status>up</status>
<mode>trunk</mode>
<vlans>1609,2100</vlans>
<portChannel>2</portChannel>
<cdpNativeVlan>1</cdpNativeVlan>
<name>Ethernet4/2</name>
<ethernet>Ethernet</ethernet>
<packetsRx>1481212</packetsRx>
<cdpSwitch>Patch-N5K-2(SSI1324032L)</cdpSwitch>
<portProfile>uplink1</portProfile>
<speed>1000 Mb/s</speed>
</properties>
</instance>
</set>

Response Description

Property

Writeable or Readable

module

Readable

portChannelType

Readable

packetsTx

Readable

mtu

Readable

cdpPort

Readable

portChannelMembers

Readable

status

Readable

mode

Readable

vlans

Readable

cdpNativeVlan

Readable

name

Readable

ethernet

Readable

packetsRx

Readable

cdpswitch

Readable

portProfile

Readable

speed

Readable

Get the Cisco Nexus 1000V Resource Availability Information

Object Locator

["/api/vc/limits"] [Read-only]

Description

Retrieves information about the resource availability on the Cisco Nexus 1000V switch.

Response Sample

<set name="limits_set">
<instance url="/api/vc/limits">
<properties>
<vemMax>128</vemMax>
<vethUsed>2</vethUsed>
<vxlansUsed>1</vxlansUsed>
<vlansUsed>3</vlansUsed>
<vemUsed>2</vemUsed>
<vxlansMax>2048</vxlansMax>
<vethMax>4096</vethMax>
<vethPerHostMax>300</vethPerHostMax>
<vethPerHostUsed>2</vethPerHostUsed>
<vlansMax>2048</vlansMax>
<portprofilesUsed>8</portprofilesUsed>
<portprofilesMax>2048</portprofilesMax>
</properties>
</instance>
</set>

Response Description

Property

Writeable or Readable

vemMax

Readable

vethUsed

Readable

vxlansUsed

Readable

vemUsed

Readable

vxlansMax

Readable

vethMax

Readable

vethPerHostMax

Readable

vethPerHostUsed

Readable

vlansMax

Readable

portprofilesUsed

Readable

portProfilesMax

Readable

Get the Cisco Nexus 1000V Licensing Status

Object Locator

["/api/vc/license"] [Read-only]

Description

Retrieves information about the licensing details of the Cisco Nexus 1000V switch.

Response Sample

<set name="license_set">
<instance name="NEXUS_VSG_SERVICES_PKG" url="/api/vc/license">
<properties>
<expires>04 May 2013</expires>
<type>NEXUS_VSG_SERVICES_PKG</type>
<available>512</available>
<status>Unused</status>
<used>0</used>
</properties>
</instance>
<instance name="NEXUS_ASA1000V_SERVICES_PKG" url="/api/vc/license">
<properties>
<expires>04 May 2013</expires>
<type>NEXUS_ASA1000V_SERVICES_PKG</type>
<available>16</available>
<status>Unused</status>
<used>0</used>
</properties>
</instance>
<instance name="NEXUS1000V_LAN_SERVICES_PKG" url="/api/vc/license">
<properties>
<expires>04 May 2013</expires>
<type>NEXUS1000V_LAN_SERVICES_PKG</type>
<available>1024</available>
<status>Unused</status>
<used>0</used>
</properties>
</instance>
</set>

Response Description

Property

Writeable or Readable

expires

Readable

type

Readable

available

Readable

status

Readable

used

Readable

Get a List of Port Profiles Configured on the VSM

Object Locator

["/api/vc/port-profile"] [Read-only]

Description

Retrieves information about the list of port profiles that are configured on the VSM.

Response Sample

<set name="portProfile_set">
<instance name="Unused_Or_Quarantine_Uplink" url="/api/vc/port-profile">
<properties>
<maxPorts>32</maxPorts>
<type>Ethernet</type>
<name>Unused_Or_Quarantine_Uplink</name>
<systemVlans>none</systemVlans>
<status>1</status>
<minPorts>1</minPorts>
<vlans></vlans>
<usedPorts>0</usedPorts>
</properties>
</instance>
<instance name="vxlan-5500" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>none</systemVlans>
<usedPorts>2</usedPorts>
<name>vxlan-5500</name>
<type>Vethernet</type>
<status>1</status>
<mode>access</mode>
<maxPorts>32</maxPorts>
<vlans></vlans>
</properties>
</instance>
<instance name="Unused_Or_Quarantine_Veth" url="/api/vc/port-profile">
<properties>
<maxPorts>32</maxPorts>
<type>Vethernet</type>
<name>Unused_Or_Quarantine_Veth</name>
<systemVlans>none</systemVlans>
<status>1</status>
<minPorts>1</minPorts>
<vlans></vlans>
<usedPorts>0</usedPorts>
</properties>
</instance>
<instance name="vmnet-2100" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>none</systemVlans>
<usedPorts>2</usedPorts>
<name>vmnet-2100</name>
<type>Vethernet</type>
<status>1</status>
<mode>access</mode>
<maxPorts>32</maxPorts>
<vlans>2100</vlans>
</properties>
</instance>
<instance name="vmnet-1609-temp" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>1609</systemVlans>
<usedPorts>0</usedPorts>
<name>vmnet-1609-temp</name>
<type>Vethernet</type>
<status>1</status>
<mode>access</mode>
<maxPorts>32</maxPorts>
<vlans>1609</vlans>
</properties>
</instance>
<instance name="vmnet-1609-copy" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>1609</systemVlans>
<usedPorts>0</usedPorts>
<name>vmnet-1609-copy</name>
<type>Vethernet</type>
<status>1</status>
<mode>access</mode>
<maxPorts>32</maxPorts>
<vlans>1609</vlans>
</properties>
</instance>
<instance name="uplink1" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>1609</systemVlans>
<usedPorts>3</usedPorts>
<name>uplink1</name>
<type>Ethernet</type>
<status>1</status>
<mode>trunk</mode>
<maxPorts>32</maxPorts>
<vlans>1609,2100</vlans>
</properties>
</instance>
<instance name="vmnet-1609" url="/api/vc/port-profile">
<properties>
<minPorts>1</minPorts>
<systemVlans>1609</systemVlans>
<usedPorts>1</usedPorts>
<name>vmnet-1609</name>
<type>Vethernet</type>
<status>1</status>
<mode>access</mode>
<maxPorts>32</maxPorts>
<vlans>1609</vlans>
</properties>
</instance>
</set>

Response Description

Property Writeable or Readable
minPorts Readable
systemVlans Readable
usedPorts Readable
name Readable
type Readable
status Readable
mode Readable
maxPorts Readable
vlans Readable

Get a List of VEMs Attached to the VSM

Object Locator

["/api/vc/vem"] [Read-only]

Description

Retrieves information about a list of VEMs that are attached to the VSM.

Response Sample

<set name="vem_set">
<instance name="4" url="/api/vc/vem">
<properties>
<module>4</module>
<licenseUsage>-</licenseUsage>
<esxVersion>VMware ESXi 5.0.0 Releasebuild-469512 (3.0)</esxVersion>
<ip>10.105.234.232</ip>
<vethMax>300</vethMax>
<status>ok</status>
<license>licensed</license>
<type>Virtual Ethernet Module</type>
<numVM>1</numVM>
<nSockets>1</nSockets>
<vethUsed>2</vethUsed>
<datacenterName>Param-DC</datacenterName>
<macMax>32000</macMax>
<macUsed>35</macUsed>
<version>4.2(1)SV2(2.1)</version>
<model>NA</model>
<lic_version>-</lic_version>
<ports>332</ports>
<name>10.105.234.232</name>
<srvuuid>7fd47b62-d1bd-11df-a582-588d0908990a</srvuuid>
</properties>
<children>
<child name="port-profile" url="/api/vc/vem/4/port-profile"/>
<child name="uplink" url="/api/vc/vem/4/uplink"/>
<child name="vnic" url="/api/vc/vem/4/vnic"/>
</children>
</instance>
</set>

Response Description

Property

Writeable or Readable

module

Readable

licenseUsage

Readable

esxVersion

Readable

ip

Readable

vethMax

Readable

status

Readable

license

Readable

type

Readable

numVM

Readable

nSockets

Readable

vethused

Readable

datacenterName

Readable

macMax

Readable

macUsed

Readable

srvuuid

Readable

Get a List of Virtual Ports Connected to the Cisco Nexus 1000V Switch

Object Locator

["/api/vc/vnic"] [Read-only]

Description

Retrieves information about a list of virtual ports that are connected to the Cisco Nexus 1000V switch.

Response Sample

<set name="vnic_set">
<instance name="Vethernet2" url="/api/vc/vnic">
<properties>
<mac>0050.56a3.0b0c</mac>
<vlans>2100</vlans>
<vnic>Vethernet2</vnic>
<portGroup>vmnet-2100</portGroup>
<status>down</status>
<adapter>Network Adapter 1</adapter>
<vm>Ostinato1</vm>
<dvport>DVPort64</dvport>
</properties>
</instance>
<instance name="Vethernet6" url="/api/vc/vnic">
<properties>
<module>4</module>
<dvport>DVPort101</dvport>
<adapter>vmk0</adapter>
<hostIP>10.105.234.232</hostIP>
<vlans>1609</vlans>
<portGroup>vmnet-1609</portGroup>
<status>up</status>
<mac>0010.1864.e920</mac>
<vm>VMware VMkernel</vm>
<vnic>Vethernet6</vnic>
</properties>
</instance>
<instance name="Vethernet1" url="/api/vc/vnic">
<properties>
<mac>0050.56a3.0577</mac>
<vlans>0</vlans>
<vnic>Vethernet1</vnic>
<portGroup>vxlan-5500</portGroup>
<status>down</status>
<adapter>Network Adapter 1</adapter>
<vm>WindowsXP2</vm>
<dvport>DVPort288</dvport>
</properties>
</instance>
<instance name="Vethernet3" url="/api/vc/vnic">
<properties>
<mac>0050.56a3.2963</mac>
<vlans>2100</vlans>
<vnic>Vethernet3</vnic>
<portGroup>vmnet-2100</portGroup>
<status>down</status>
<adapter>Network Adapter 1</adapter>
<vm>Ostinato2</vm>
<dvport>DVPort65</dvport>
</properties>
</instance>
<instance name="Vethernet8" url="/api/vc/vnic">
<properties>
<module>4</module>
<dvport>DVPort288</dvport>
<adapter>Net Adapter 1</adapter>
<hostIP>10.105.234.232</hostIP>
<vlans>0</vlans>
<portGroup>vxlan-5500</portGroup>
<status>up</status>
<mac>0050.56a3.35af</mac>
<vm>WindowsXP3</vm>
<vnic>Vethernet8</vnic>
</properties>
</instance>
</set>

Response Description

Property

Writeable or Readable

mac

Readable

vlans

Readable

vnic

Readable

portGroup

Readable

status

Readable

adapter

Readable

vm

Readable

dvport

Readable

Get a Summary of the Cisco Nexus 1000V Switch

Object Locator

["/api/vc/summary"] [Read-only]

Description

Retrieves information about a summary of the Cisco Nexus 1000V switch.

Response Sample

<set name="summary_set">
<instance url="/api/vc/summary">
<properties>
<vcStatus>Connected</vcStatus>
<vcIpaddress>10.105.234.240</vcIpaddress>
<switchMode>Essential</switchMode>
<ip>10.105.234.235</ip>
<vcUuid>c2 61 23 50 85 b9 e7 79-ab 43 99 a2 3a 56 76 f3</vcUuid>
<name>n1kv-cy208</name>
<datacenterName>Param-DC</datacenterName>
<haStatus>true</haStatus>
<mode>L3</mode>
<version>version 4.2(1)SV2(2.1) [build 4.2(1)SV2(2.0.208)] [gdb]</version>
<connectionName>vcenter</connectionName>
</properties>
</instance>
</set>

Response Description

Property

Writeable or Readable

vcstatus

Readable

vcIPaddress

Readable

switchMode

Readable

ip

Readable

vcUuid

Readable

name

Readable

datacenterName

Readable

haStatus

Readable

mode

Readable

version

Readable

connectionName

Readable