Visore
ACI Object Viewer

Now that you have had the chance to dig into the APIC REST interface with POSTMAN, we are going to introduce you to another tool to browse the ACI Object model. It is called Visore. Visore is an italian word for viewer, which if you know the original group of Cisco engineers that worked on ACI are from italian decent.

Visore is a great tool to interact with the object model because it provides some utilities to help you understand the organization of the tree better.

To reach visore you just have to point your browser to any Cisco ACI APIC controller and add /visore.html or you can launch it from within the APIC GUI:

Step 1 - Connect to Visore

There are two ways to connect to Visore. in the ACI admin page there is a link. You can also connect directly via a direct URL

The second way is accessing visore directly via a URL

Once the window completes loading you will have to enter the credentials. These are the same you used for the ACI fabric.

This will open a new browser tab and you will be presented with Visore (you might not need to login based on aging out of APIC cookie in your browser).

  • Username: aciproglab04
  • Password: cisco.123

Step 2 - Do a search in the Visore interface

The interface for Visore contains a couple of fields. These are broken down in:

  • Class or DN
  • Property
  • Search operator
  • Values

You will be performing a search for endpoints in the ACI fabric. The object that you will query is going to be fvCEp. Enter the fvCEp in the Class or DN input field and submit Run Query.

Pay attention to capitalization in ACI! Everything is case sensitive.

The result should look something similar to the following:

As you can see it is very easy in Visore to do searches in the ACI fabric for either a class of an object of a particular DN. The big advantage is how Visore provides you with a easy link to see the children of the query class and also get a link directly to the API documentation.

The limitation of Visore is that it's not designed for doing changes in the ACI fabric. For that you will need another tool, a REST interface tool like Postman.

Step 3 - Browse the children objects

One of the best features of Visore is how easy it is to browse the parent/child relationships of objects in the management information tree. In the DN element of the object there are two arrows to the left and right. These reference the parent and the child element of the object.

When you click on the right arrow, you will see various children objects be listed including fvIP (discussed previously) and fvRsCEpToPathEp:

For the fvCEp class, the possible children objects (only first level) are:

  • fv:CEp
    • dhcp:Ep
    • fault:Counts
    • fv:Ip
    • fv:PathEp
    • fv:PrimaryEncap
    • fv:RsCEpToPathEp
    • fv:RsHyper
    • fv:RsNic
    • fv:RsToNic
    • fv:RsToVm
    • fv:RsVm
    • fv:RtDestToVPort
    • fv:RtFromEp
    • fv:RtFromEpForEpToEpg
    • fv:RtSrcToVPort
    • fv:RtToEp
    • fv:RtToEpForEpToEp
    • fv:RtToEpForEpgToEp
    • fv:RtTrEpDst
    • fv:RtTrEpSrc
    • health:Inst

For this example the fvCEp object that we see has these two objects. In this case the fvIP object and the fvRsCEpToPathEp object that denotes it's location in the fabric. You will interact with these objects programmatically soon.

If you were to click on the API documentation question mark on the upper right, you will be taken directly to the API documentation for this class.

You can also do queries in the Visore browser for other objects that we see on this list like fvIp. Yet the important part to see with Visore is that you see how you can travel the object tree with ease to see the relationships between members of the MIT.

Step 4 - Using Visore to help build ReST URL Queries

One of the big uses of visore is to assist you the developer with developing queries into the ReST interface. Let's do a simple example of doing a query for a tenant. In the visore tool, enter the search Class of fvTenant. This should return many results like the following:

Now if you click on Show URL and response of last query link you will get something like this:

What this is showing you is the actual URL request that would need to be completed to get this data. This is very useful as we can get granular with these and it helps build these queries.

This will return one result and the cool thing is that if you click on the show url and response of last query link you will see that the query is:

/api/node/class/fvTenant.json?query-target-filter=and(wcard(fvTenant.name,"aciproglab01"))&order-by=fvTenant.modTs|desc

This can be very helpful as it assists you in building the URL that would be used in various ReST interface tools. With this tool and the next tool you can really start playing with the fabric ReST interface and pulling objects, understanding the structure and eventually use them to build and configure objects.