Related Documents on page 7 and the IETF Requests for Comment (RFCs). Supported Platforms and Required FTOS Versions The Open Automation 2.0 release is supported on the following Dell Force10 switches and minimum FTOS versions: • S55 switches require FTOS version 8.3.5.2 or later.
Note Informs you about important operational information. FTOS Behavior Informs you about an FTOS behavior. These behaviors are inherent to the Dell Force10 system or FTOS feature and are non-configurable. Platform-specific Informs you of the platform supporting the Open Automation features.
Related Documents For more information about the Dell Force10 Networks switches discussed in this document, refer to the following documents: • • FTOS Command Line Reference Guide for the S55 System • FTOS Configuration Guide for the S55 System •...
Open Automation Framework is supported on platforms: Dell Force10’s Open Automation Framework is designed to provide an open, industry standards-based automation technology that simplifies the management of dynamic virtual data centers and reduces risk and overhead. With the Open Automation Framework, resources in a virtualized data center are...
DHCP server. The DHCP server provides the switch with an IP address and the location of a file server, such as TFTP. The file server maintains a configuration file and an approved version of FTOS, the operating system for Dell Force10 switches. The switch automatically configures itself by loading and installing an embedded FTOS image with the startup configuration file.
Smart scripting increases network availability and manageability by allowing network administrators to deploy custom monitoring and management scripts on Dell Force10 switches. Using custom scripts, network administrators can implement version control systems, automatically generate alerts, create custom logging tools and automate management of network devices.
User protocols are supported, such as CLI/CLI-script, XML (Get and Set), and Web-based command. Programmatic management greatly improves network manageability by allowing Dell Force10 switches to be managed by third-party system management tools via standard programmatic interfaces. The programmatic management environment and set of interfaces communicate directly with third-party system management tools, avoiding the need for a dedicated network management tool.
Management. Overview Using Smart Scripting, network administrators can create custom TCL, ZCL, Expect, PERL, Python, and UNIX shell scripts to manage and interact with Dell Force10 switches/routers in the network. Smart Scripting provides support for: • Modules required to run PERL scripts, such as the software development kits (SDKs) for VMware and vCenter/vSphere.
PERL, Python, and UNIX scripts. A representation of CLI functions to retrieve data from the FTOS operating system and change configuration parameters on Dell Force10 switches is provided in the API libraries. Script writers include API function calls made directly on the FTOS command-line interface in their PERL, Python, and UNIX scripts.
Downloading the Smart Scripting Package The SmartScripts package can be downloaded from the Dell Force10 website as a file named SmartScripts2.0.x.tar.gz for platforms such as S4810, S55, and S60; for Z9000 the file name is SmartScripts-Z.2.0.x.tar.gz. The Smart Scripting package is downloaded with the following files and functionality: •...
To install the Smart Scripting package, you must download it from the Dell Force10 web portal: 1. On a PC or other network device, go to the Dell Force10 web portal at https://www.force10networks.com/CSPortal20/Main/SupportMain.aspx. Click Login, enter your user ID and password, and click the Login button.
To remove an installed Open Automation package, such as Smart Scripting, enter the command. package uninstall To follow the progress of a package installation (or removal), enter the show command. packages Displaying Installed Packages To view the Open Automation packages currently installed on a switch, including version numbers and content, enter the command.
Table 3-1. Limits on System Attributes System Attribute Value Description datasize 131,072 KB Maximum size of the data segment for a process; this value defines how far a program may extend its break with the sbrk(2) system call. stacksize 2,048 KB Maximum size of the stack segment for a process;...
Page 19
Table 3-2. Supported UNIX Utilities (continued) List the history of commands on the computer. Change the background process to foreground. file Determine file type. find Walk a file hierarchy. Internet file transfer program. getopts Called each time you want to process an argument. grep Print lines matching a pattern.
Creating PERL, Python and UNIX Scripts When you install the Smart Scripting package, sample PERL and Python scripts are installed in the /usr/pkg/scripts/sample_scripts directory. You can also create your own customized scripts and store them anywhere on the switch, such as in a /f10/ flash_ scripts directory.
Running a Script from the FTOS CLI You can run any PERL, Python, and UNIX script that is stored on the switch from the FTOS CLI. When you run a script from the FTOS CLI, you can specify an optional user name to apply the associated read-write privileges when the script is run (see Creating a User Name and Password for Smart...
Logging in to a NetBSD UNIX Shell To log in to the NetBSD UNIX shell on a switch to directly enter any of the UNIX commands described in Table 3-2 or to run a script, enter the command. start shell You are prompted to enter a user name and password before you can access the shell.
Use the information in this section to create a PERL script using the PERL API and run the script on a Dell Force10 switch. For information on how to create and run a Python script using the Python API, see Using the Python API.
Page 24
Table 3-2 describes the supported functions and required arguments that you can use in PERL scripts run on a Dell Force10 switch to connect through a telnet session and gather information or configure parameters through the CLI. Smart Scripting...
Page 25
Table 3-3. Supported FTOS API Functions in PERL Scripts PERL API Function Arguments Description F10AddLagIntToVlan (lagId, vlanId, tagFlag) Adds a LAG interface to a VLAN as either tagged or untagged. tagFlag values: 1 (tagged) or 0 (untagged). F10AddPhyIntToVlan (stackUnitNum, portId, Adds a physical interface to a VLAN as either tagged or untagged.
Table 3-3. Supported FTOS API Functions in PERL Scripts (continued) F10ShowLagIntVlanMember (lagId) Returns information on VLAN membership for a specified port-channel interface. F10ShowLog None Returns the switch log buffer. F10ShowMacAddrTbl None Returns the table of learned MAC addresses. F10ShowMem (lagId) Returns switch memory usage.
Use the information in this section to create a Python script using the Python API and run the script on a Dell Force10 switch. For information on how to create and run a PERL script using the PERL API, see Supported UNIX Utilities.
Page 28
Table 3-4 describes the supported functions and required arguments that you can use in Python scripts run on a Dell Force10 switch to connect through a telnet session and gather information or configure parameters through the CLI. Table 3-4. Supported FTOS API Functions in Python Scripts...
Page 29
Table 3-4. Supported FTOS API Functions in Python Scripts (continued) F10MakeVlanIntNoShutdown (vlanId) Enables the specified VLAN interface. F10MakeVlanIntShutdown (vlanId) Disables the specified VLAN interface. F10Ping (ipAddress) Pings (via ICMP) an IP address from the switch. F10ShowArpTbl None Returns the table of learned ARP entries. F10ShowBGPNeighbors None Returns list of BGP neighbors.
Table 3-4. Supported FTOS API Functions in Python Scripts (continued) F10ShowVlanIntStatus (vlanId) Returns the detailed status of a specified VLAN interface. F10ShowVrrp None Returns the full VRRP status output. F10ShowVrrpBrief None Returns a brief VRRP session summary. F10Traceroute (ipAddress, timeout) Performs a traceroute operation to an IP address from the switch.
Using the Python API. Creating a UNIX API Script Use the information in this section to create a UNIX shell script to be run on a Dell Force10 switch. The F10SmartScriptUtils.py file is the main API library file that contains the functions that you can include in a UNIX shell script.
Page 32
Table 3-5. Supported API Functions in UNIX Shell Scripts (continued) makephyintnoshutdown stackUnitNum, portId Enables the specified port. makephyintshutdown stackUnitNum, portId Disables the specified port. makephyintswitch stackunitNum, portId Configures the specified port as a Layer 2 switchport. makevlanintnoshutdown vlanId Enables the specified VLAN interface. makevlanintshutdown vlanId Disables the specified VLAN interface.
Table 3-5. Supported API Functions in UNIX Shell Scripts (continued) showvlan None Returns information on all VLANs, including membership. showvlanid vlanId Returns detailed interface information for a specified VLAN. showvlanintstatus vlanId Returns VLAN interface status. showvrrp None Returns the full VRRP status output. showvrrpbrief None Returns a brief VRRP session summary.
Smart Scripting CLI Overview Smart Scripting CLI is supported on platforms: Commands • package install • package uninstall • script • show packages • start shell • username package install Install the Smart Scripting package. This command downloads the package from the specified location, and installs it in the internal flash memory on a switch.
Page 36
Version 8.3.5.1 Introduced on the S55. Version 8.3.3.4 Introduced on the S60. Usage Because the installing of an Open Automation package may take time, the installation Information is performed in the background when the download finishes. A message is displayed on the console when the installation is complete.
Page 37
script Run a Perl, Python, or UNIX shell script from the FTOS CLI. Syntax script username name script-name script-parameter script-parameter ... Parameters username name (Optional) Enter the user name whose read-write privileges will be applied when the script is run. A username used to run scripts cannot contain special characters.
Page 38
Enter the no script script-name command to stop a running script. To display the scripts that are currently running, including the scripts you have stopped, enter the show running-config | grep command. show packages Display the installed Open Automation packages, including version number and contents.
Page 41
start shell Start a NetBSD UNIX shell. Syntax start shell Defaults None Command Modes EXEC Privilege Command Version 9.0.0.0 Introduced on the Z9000. History Version 8.3.8.0 Introduced on the S4810. Version 8.3.5.1 Introduced on the S55. Version 8.3.3.4 Introduced on the S60. Usage You must start an NetBSD shell on a switch before you can enter UNIX commands Information...
Page 42
username Configure an additional user name and password to be used only to run scripts on a switch. The user name and password are used to log in to a UNIX shell and apply the read-write privileges assigned to the user name when a script is run. Syntax username name password password Enter...
• Viewing VSN information Overview Virtual Server Networking is an Open Automation tool that enables Dell Force10 switch/routers in a data center network to retrieve configuration information from hypervisors. VMware vSphere and Citrix Xen hypervisors are supported. Virtual Server Networking | 43...
Page 44
VSN requires Layer 3 connectivity to access a hypervisor. Figure 5-1 shows an example of the network architecture in which a Dell FTOS switch is connected to multiple servers, each of which may run a different type of hypervisor.
Hypervisor Modes There are two modes for retrieving configuration information from a hypervisor on a virtual server: • Check: VSN retrieves configuration information from a hypervisor and notifies the system administrator when there is a change in the network configuration; for example, when a VLAN is added or removed.
Enter the show vlan command to display the VSN hypervisor-learned VLANs on the switch. As shown in Figure 5-2, VSN VLANs that have been automatically configured are displayed with a tag in the left-most column and are associated with ports marked with an tag.
Page 47
Installing Smart Scripting) To install the VSN package: 1. On a PC or other network device, go to the Dell Force10 web portal at https://www.force10networks.com/CSPortal20/Main/SupportMain.aspx. Click Login, enter your user ID and password, and click the Login button. 2. On the Customer Support page, click the Software Center tab.
You can reconfigure the firewall by using the esxcli network firewall command to create a rule set that allows the IP address of a Dell Force10 switch to pass the firewall. For detailed information, refer to How to Create Custom Firewall Rules in ESXi 5.0.
Page 49
Step Task Command Syntax Command Mode Establish the connection between the access url username username HYPERVISOR password password switch and a hypervisor Where url is one of the following values: For a VMware hypervisor: https://[ip-address]/sdk/vimService username [name] password [password] For an Xen hypervisor: http://ip-address username [name] password [password] username name: Username to be used for...
Discovery The discovery process starts after you enter the no disable command on the interface and ends 10 minutes after connectivity is established between the switch and hypervisor. If no connectivity is established, the switch attempts to connect for three minutes and then stops.
VMware. You may not create scripts for VMware products through use of the VMware SDK included in the Virtual Server Networking package. End Users may use the Dell Virtual Server Networking according to the terms, conditions, and limitation of the pertinent Dell End User License Agreement only.
To run a VSN script (Perl or Python) in all connected hypervisor sessions to retrieve virtual server configurations and update FTOS settings on the switch, enter the script command in configuration mode. Command Syntax Command Mode Task CONFIGURATION Run a VSN script in active sessions on VMware and script script-name Xen hypervisors.
Uninstalling VSN Caution: Before you uninstall the VSN package, you must first stop all VSN scripts that are currently running using the no script script-name command. Uninstalling the VSN package removes it from the internal flash memory on a switch. Command Syntax Command Mode Task...
Page 54
To display the components of current hypervisor sessions, including the link, virtual switch, and hypervisor to which the switch is connected, enter the show virtualswitch command. Command Syntax Command Mode Task show virtualswitch [interface] EXEC Privilege Display general information on current hypervisor [virtualswitch-name] sessions.
Page 55
Figure 5-7. Display Virtual Machines Accessed on an Interface: show vmmap FTOS#show vmmap gigabitethernet 0/32 VM Name Vlan ID Redhat_207_03_nfs 00:0c:29:4f:66:19 Redhat_207_03_nfs 00:50:56:92:00:77 Note: In output, VLAN 1 is displayed as VLAN ID 1; show vmmap show virtualswitch VLAN 4095 is displayed without a VLAN ID as "- " Virtual Server Networking | 55...
Virtual Server Networking CLI Overview Virtual Server Networking CLI is supported on platforms: Note: VSN is not supported in stacked configurations; it is only supported on standalone switches. Commands • access • disable • hypervisor • mode • package install •...
Page 58
access Configure the connection to access a hypervisor. Syntax [no] access url username name password password Parameters Enter the URL location of the desired hypervisor. For a VMware hypervisor, enter: https://[ip-address]/sdk/vimService username [name] password [password] For a Xen hypervisor, enter: http://ip-address username [name] password [password] username name Enter the user name to be used for authentication.
Page 59
hypervisor Specify the name of a hypervisor session with which VSN will connect. Syntax [no] hypervisor name Parameters name Enter up to 40 characters to specify the name of a hypervisor session to which you want to connect on network servers. Defaults None Command Modes...
Page 60
Usage You can use the command to change the way in which virtual-server mode Information information is retrieved in an existing hypervisor session. The following log messages are displayed when the hypervisor mode is used to check retrieve configuration information on virtual servers: Message 1 Dec 1 04:57:48: %STKUNIT0-M:CP %VSNMGR-5-VSN_VLAN_DISCOVERY: Te 0/35, Vlan: 4001-4008,4011-4012...
Page 61
package uninstall Remove an installed Open Automation package, such as Virtual Server Networking, from the system. Syntax package uninstall name Parameters name Enter the name of the Open Automation package, exactly as it appears in the show packages list. Defaults None Command Modes EXEC Privilege...
Page 62
script Run an installed VSN script (Perl or Python) on active hypervisor links to retrieve virtual server configurations and update FTOS settings on the switch. Syntax [no] script script-name Enter the to stop a running script. no script script-name Parameters script-name Enter the directory path and filename of where the VSN script is stored;...
Page 63
show hypervisor supported Display the types of hypervisors currently supported by VSN. Syntax show hypervisor supported Defaults None Command Modes EXEC Privilege Command Version 8.3.8.0 Introduced on the S4810. History Version 8.3.5.1 Introduced on the S55. Version 8.3.3.4 Introduced on the S60. Usage Use this information when defining types of hypervisor connections with the Information...
Page 65
show virtualswitch Display the components of current hypervisor sessions, including the virtual switch and name of the hypervisor session to which a switch interface is connected, Syntax show virtualswitch interface virtualswitch-name Defaults None Parameters interface Display information on the hypervisor session established on a specified interface.
Page 66
The following command output displays information on the hypervisor session established on virtual switch vSwitch3 on a VMware server connected to the interface 0/32. FTOS#show virtualswitch Gigabitethernet 0/32 vSwitch3 Interface :Gi 0/32 Hypervisor Type :vmware Hypervisor Name :vmware207 Hypervisor Version :4.1.0 Virtual Switch :vSwitch3...
Page 67
show vmmap Display the virtual machines accessed on a switch interface. Syntax show vmmap interface Defaults None Parameters interface Display information on the virtual machines accessed on a specified interface. Enter one of the following interface types: • For a 100/1000 Ethernet interface or 1-Gigabit Ethernet interface, enter: GigabitEthernet slot/port •...
Page 68
type Set the hypervisor type to which you want to connect. Syntax [no] type vmware xen-citrix Defaults None Parameters vmware Set the hypervisor type as VMware. xen-citrix Set the hypervisor type as Xen-Citrix. Command Modes HYPERVISOR Usage You must configure a hypervisor type in order to enable VSN connections with Information virtual servers.
For information on the third-party management tools supported to manage Dell Force10 switches, see Plug-In Modules. • For information on the SNMP and XML functions supported on Dell Force10 switches, refer to the FTOS Configuration Guides for the S55, S60, and S4810 systems. Programmatic Management | 69...
Table 7-1 describes the CGI scripts supported in an HTTP get request to access the REST API and return data from a remote Dell Force10 switch. The following example shows how to embed a REST-based HTTP get request in a Perl script run from a remote device.
Page 71
The following example shows how to embed an HTTP get request in Python script. Figure 7-2. Python Sample with HTTP Get Request that Invokes the REST API #!/usr/bin/python import httplib conn = httplib.HTTPConnection("10.42.51.5") # Send HTTP GET request conn.request("GET","/cgi-bin/F10Ping?IpAddress=10.42.0.13") # Get response data response = conn.getresponse() # Display response texts on success or display status if(response.status == 200):...
Page 72
Table 7-1. Supported Get Requests Invoked through the REST API HTTP Get Request FTOS CLI Operation F10Ping?IpAddress={ip-address} Pings a remote host from the switch using HTTP and returns the output. F10ShowArpTbl Returns a formatted table of known MAC address-to-IP address bindings. F10ShowBGPNeighbors Returns information on currently running BGP instances and discovered (configured or connected) BGP neighbors.
Plug-in modules running on remote hosts work together to provide a framework that may invoke SNMP get and set requests, XML queries, and Telnet CLI commands on Dell Force10 switches. For example, the Oracle OEM plug-in can retrieve status information on network interfaces, and CPU and memory usage via SNMP walks, resulting in timely detection of possible switch problems.
Web GUI and HTTP Server Web GUI and HTTP Server are supported on platforms and are downloaded with the SmartScripts package (see Downloading the Smart Scripting Package). This chapter describes the Web-based components in the Open Automation package: • HTTP Server •...
Web Graphical User Interface In the Open Automation package, the Web graphical user interface (GUI) provides a user-friendly way to retrieve configuration information from a switch by choosing a menu option. Getting Started To open the Web interface and get started on switch operations, follow these steps: Step Task Prerequisites: Only the following web browsers are supported:...
To retrieve or change configuration parameters on the switch, click a menu name and then click a menu option. You may be prompted to enter more information. Refer to Table 8-1 for a list of the tasks you can perform by choosing each menu option. Refer to the Web Graphical User Interface for examples of the output of each menu option.
Page 78
Table 8-1. Web User Interface: Supported Operations (continued) Interfaces > Management Displays the status and IP address of management interfaces. Protocols > VRRP Displays the currently configured VRRP instances on a switch, including status and session information. Protocols > VRRP Brief Displays summary information on BGP sessions and status.
Appendix A Web Graphical User Interface This appendix contains examples of the output displayed for each menu option in the Web interface used in the Open Automation Framework for the menus: • System • Interfaces • Protocols • Diagnostics • Utilities •...
Page 80
System > CPU Usage Web Graphical User Interface...
Page 81
System > Boot Variables System > Running Config Web Graphical User Interface | 81...
Page 82
System > Information Web Graphical User Interface...
Page 83
Interfaces Menu Interfaces > All Web Graphical User Interface | 83...
Page 84
Interfaces > Physical Interfaces > LAGs Interfaces > VLANs Web Graphical User Interface...
Page 85
Interfaces > Management Web Graphical User Interface | 85...
Page 86
Protocols Menu Protocols > VRRP Web Graphical User Interface...
Page 87
Protocols > VRRP Brief Protocols > BGP Summary Web Graphical User Interface | 87...
Page 88
Protocols > BGP Neighbors Protocols > OSPF Neighbors Web Graphical User Interface...
Page 89
Protocols > ISIS Neighbors Web Graphical User Interface | 89...
Page 90
Diagnostics Menu Diagnostics > Arp Table Diagnostics > Mac Address Table Diagnostics > Routing Table Web Graphical User Interface...
Page 91
Diagnostics > System Log Web Graphical User Interface | 91...
Page 92
Diagnostics > VLANs Diagnostics > VLAN Members Web Graphical User Interface...
Page 93
Diagnostics > Int Bandwidth Web Graphical User Interface | 93...
Page 94
Utilities Menu Utilities > Ping Utilities > Traceroute Web Graphical User Interface...
Page 95
Settings Menu Settings > SmartUtils Credentials Web Graphical User Interface | 95...
Index application programming interface APIs Perl Perl creating a script Python running a script REST supported API functions Plug-in modules UNIX as third-party management tools description supported modules Bare Metal Provisioning Programmatic Management description description switch autoconfiguration protocols supported REST API third-party tools supported displaying installed OA packages Python...
Page 98
Python API running a script in a hypervisor session Python scripts stopping a hypervisor session REST API stopping a script restrictions on CPU and memory usage supported hypervisors running scripts from a UNIX shell VLAN configuration Virtual Server Networking commands scripting languages supported access supported UNIX utilities...
Need help?
Do you have a question about the FORCE10 Open Automation and is the answer not in the manual?
Questions and answers