Innovium Shell

This chapter contains the following topics:

About the Innovium Shell

The Cisco Nexus 3400-S platform switches consist of the following:

  • Cisco Nexus 3408-S, which is a 4-RU switch with 8 module slots. The module slots can accept a mix of line-card expansion modules (LEMs) for extra high-speed connectivity.

  • Cisco Nexus 3432D-S, which is a 1-RU chassis switch with a fixed port configuration. This switch has no module slots or LEMs.

Cisco Nexus 3400-S platform switches use Innovium Teralynx ASICs, which exist on the switch motherboard. A specific shell enables access directly to the ASICs, or passing ASIC commands to the shell from Cisco NX-OS. This shell is the Innovium shell (innoshell).

Guidelines and Limitations

Following are the guidelines and limitations for the Innovium shell (innoshell):

  • The innoshell is for authorized use only. Use it with extreme caution and only when authorized by Cisco.

  • You can access and read information from the Innovium Teralynx ASICs without any limitations. However, Cisco does not recommend changing the Innovium configuration settings.

  • The Innovium shell is supported on the Cisco Nexus 3408-S and the Cisco Nexus 3432D-S switches only.

Accessing the Innovium Shell Through CLI API

The Innovium shell is available directly from EXEC mode at the top level of the NX-OS command hierarchy. The Innovium shell enables you to issue commands directly to the Innovium Teralynx ASICs.

switch-1# ?
  ...
  gunzip                 Uncompresses LZ77 coded files
  gzip                   Compresses file using LZ77 coding
  hardware               Change hardware usage settings
  innoshell              Innoshell
  install                Upgrade software
  ip                     Display IP information
  key                    Encryption key for strong encryption
  ...

As an alternative, you can enter individual Innovium-shell commands directly from NX-OS. See Passing Commands to the Innovium Shell.

The Innovium shell is supported on the Innovium Teralynx ASICs, which are in Cisco Nexus 3408-S and Cisco Nexus 3432D-S switches. You can check the model of your switch by entering the show module command.

Example:
switch-1# show module
Mod Ports Module-Type                           Model                 Status
--- ----- ------------------------------------- --------------------- ---------
1    0    Supervisor                            N3K-C3408-S           active * 
 

This topic documents how to access the Innovium shell from NX-OS, use the online Help function, and exit the Innovium shell. For detailed documentation about the Innovium shell and its commands, consult the Innovium Teralynx documentation.

  • To enter the Innovium shell, enter the innoshell command.

    Example:

    switch-1# innoshell                                                                
    Warning: innoshell access should be used with caution
    exec /lc/isan/bin/innoshell
    moving ifcsrshell.log to ifcsrshell.log.bkp
    Script started, file is ifcsrshell.log
                    Connected to Innovium Shell Server
    
                    Innovium Remote Command Shell Client. 
            Type '?' or 'help' for help. Type 'exit' or 'quit' to exit shell.
    IVM-R:0>
    

    The command prompt changes to IVM-R:0 to indicate that you are in the Innovium shell.

  • To get a list of top-level commands in the hierarchy, type ? (question mark) or help.

    Example:

    IVM-R:0>?
    
    +----------------------------------------------------------------------------------------------+
    | Innovium CLI Shell Help Menu : Description                                                   |
    |----------------------------------------------------------------------------------------------|
    | exit                         : Quit the Innovium shell                                       |
    | source                       : Source a command file with shell commands                     |
    | redirect                     : Redirect outputs from a shell to a file                       |
    | pen                          : Pen Access Commands                                           |
    | ifcs                         : IFCS Api Debug Commands                                       |
    | console                      : Start an interactive Python Interpreter from within the shell |
    | clear                        : Clear screen                                                  |
    | run                          : Clear screen                                                  |
    +----------------------------------------------------------------------------------------------+
    
  • To get detailed syntax help for a command, type the command name plus ? (question mark) or help .

    Example:

    IVM-R:0>pen ?
    
                  Usage:
                       pen read ib <ib#> pen_name <index>       - node pen read <pen_id> ...
                       pen write ib <ib#> pen_name <index>      - node pen write <pen_id> ...
                       pen modify ib <ib#> pen_name <index>     - node pen modify <pen_id> ...
                       pen insert ib <ib#> pen_name <index>     - node pen insert <pen_id> ...
                       pen lookup ib <ib#> pen_name <index>     - node pen lookup <pen_id> ...
                       pen delete ib <ib#> pen_name <index>     - node pen delete <pen_id> ...
                       pen flush ib <ib#> <pen_id>              - node pen flush <pen_id> ...
        
                       pen help or ?                            - show this text
                  Command Details:
                       Type : "pen <subcmd> ? or pen <subcmd> help" For more specific sub cmd help
        
    
  • Notice that command help is nested, so you can get help about subcommands.

    Example:

    IVM-R:0>pen read ib ?
    
                  Usage::
                        pen read ib <ib> [pic <pic_id>] <pen-name> [count] - node pen read
                  Command Options:
                        <ib>                                  - IB #
                        [pic-id]                              - pic_id (mandatory for pic pens)
                        <pen_name>                            - pen name
                        [count]                               - number of entries  (optional)
                        <index>                               - Read index (mandatory for Direct index pen)
        
    IVM-R:0>
    
  • To exit the Innovium shell, enter either the exit or quit command, which terminates the current Innovium CLI session and returns you to the NX-OS prompt.

    Example:

    IVM-R:0>exit
    Script done, file is ifcsrshell.log
    switch-1# 

Passing Commands to the Innovium Shell

Besides logging in to the Innovium shell, you can pass Innvoium shell commands directly from NX-OS to the Innovium shell. The command is executed in the Innovium shell, and then returns its output to NX-OS. Passing Innovium commands from Cisco NX-OS to the Innovium shell is helpful if you have the exact syntax of the command, or if you have just a few tasks to do in the Innovium shell.

To pass the command to the Innovium shell, issue the innoshell cmd command and enclose the exact command syntax in double quotes.

Example: This example is equivalent to:

  1. Logging in to the Innovium shell

  2. Issuing ifcs show ecmp

  3. Logging out of the Innovium shell

switch-1# innoshell cmd "ifcs show ecmp"
exec /lc/isan/bin/innoshell ifcs show ecmp
Script started on Tue Apr 16 13:47:49 2019
ifcs show ecmp
exit
                Connected to Innovium Shell Server

                Innovium Remote Command Shell Client. 
        Type '?' or 'help' for help. Type 'exit' or 'quit' to exit shell.
IVM-R:0>ifcs show ecmp
Total ecmp count: 3 
+---------------------------------------------------------------------+
|        ecmp |    type | number_of_slots | group_size | member_count |
|---------------------------------------------------------------------|
| (ecmp:   1) | DEFAULT |               0 |          0 |            2 |
| (ecmp:   2) | DEFAULT |               0 |          0 |            2 |
| (ecmp:   4) | DEFAULT |               0 |          0 |            4 |
+---------------------------------------------------------------------+

IVM-R:0>exit

Script done on Tue Apr 16 13:47:55 2019

switch-1#