Service Manual
Table Of Contents
- Dell Networking Open Automation Guide December 2015
- About this Guide
- Open Automation Framework
- Bare Metal Provisioning
- Introduction
- How it Works
- Prerequisites
- Industrial Standard Upgrades with BMP
- BMP Process Overview
- BMP Operations
- Configure BMP
- BMP Commands and Examples
- System Boot and Set-Up Behavior in BMP Mode
- BMP Mode: Boot and Set-UP Behavior
- DHCP Offer Vendor-Specific Option for BMP
- DHCP Offer Relay Option 82
- Software Upgrade Using BMP
- Apply Configurations Using BMP Scripts
- Using the Post-Configuration Script
- Using Auto-Execution Script (Normal Mode Only)
- Timers in Pre–configuration and Post–configuration Scripts
- Script Examples
- BMP Operations on Servers Overview
- File Server Settings
- Domain Name Server Settings
- BMP MIB Support
- Bare Metal Provisioning CLI
- Open Management Infrastructure
- Puppet
- Smart Scripting
- Overview
- Download the Smart Scripting Package
- Dell Proprietary Utilities
- Dell SmartScript Utilities
- SQLite
- NET SNMP Client
- Limits on System Usage
- Supported UNIX Utilities
- Creating a User Name and Password for Smart Scripting
- Logging in to a NetBSD UNIX Shell
- Downloading Scripts to a Switch
- Setting a Search Path for Scripts
- Scheduling and Executing Scripts
- Running a Script from the UNIX Shell
- Running Scripts with User Privileges
- Smart Scripting CLI
- disable
- execute
- mount nfs
- package install
- package uninstall
- script (run)
- script (stop/resume/clear/kill/unschedule)
- script event-handler
- script execute (EXEC mode)
- script execute (CONFIGURATION mode)
- script get
- script path
- script remove
- script trigger-event
- show packages
- show script
- start shell
- triggered-by
- switch script limit
- username (event handler)
- username
- Virtual Server Networking
- Virtual Server Networking CLI
- REST API
- HTTP and HTTPS
- XML
- Important Points to Remember
- REST Authentication
- Request Query Parameters
- Sample BGP Configurations
- HTTP Status Error Codes
- REST API — Protocol Data Unit (PDU) Structure
- Configurations
- Operational
- Operational Data for IPv6
- Management Information Base (MIB)
- IETF Interface Operations
- REST API Framework to Execute the CLIs
- Samples of the config-command
- Samples of the EXEC command
- Samples of the show-command
- REST API CLI
- Web Server with HTTP Support

Sample script for Perl using DellExec, DellCli, and DellConfig
#! /usr/pkg/bin/perl
#importing DellSSUtils
require "/usr/pkg/scripts/DellSSUtils/DellSmartUtils.pl";
#Assigning Value to the vairable which is used as an argument to the
#dell library functions
$cli = "show version";
$script = "/usr/pkg/scripts/sample_scripts/sum.py";
$args = "1 2 3";
$ExtraArgs = "10";
@list = ("interface vlan $ARGV[0]", "no shutdown", "ip address $ARGV[0].
$ARGV[0].$ARGV[0].$ARGV[0]/24", "exit");
open (MYFILE, '>>/f10/flash/dellcliop.txt');
print MYFILE DellCli($cli);
print MYFILE "\n";
print MYFILE DellExec($script, $args);
print MYFILE "\n";
print DellCliConfig(@list);
Sample script for Python using DellExec, DellCli, and DellConfig
#! /usr/pkg/bin/python
import time
import sys
sys.path.append('/usr/pkg/scripts/DellSSUtils/')
import DellSmartUtils
for input1 in sys.argv[1:]:
print DellSmartUtils.DellCliConfig(["%s" %str("interface vlan %s" %str(input1)
) , "no shutdown"])
arg_val=""
for b in sys.argv[1:] :
arg_val=arg_val+" %s" %(b)
print DellSmartUtils.DellExec("loopback.zsh" , arg_val)
f = DellSmartUtils.DellCli("show version")
fh = open("/f10/flash/Dellcli.txt", "w")
fh.writelines(f)
fh.close()
For instructions about how to run a Perl, Python, or Ruby script from the Dell Networking OS CLI, refer to
Scheduling Time / Event-based Scripts.
SQLite
The Dell Networking OS supports the SQLite database engine as it is self-contained, serverless, zero-
configuration, and transactional.
This database performs the following tasks:
• Stores all the periodically collected data and/or statistics from the Dell Networking OS.
• Stores the Dell Networking OS configuration files.
• Stores other script logs, updated, deleted, and transferred using this database.
Dell Networking OS provides Perl, Python, Ruby, and TCLSH interfaces for SQLite. As a result, you can
create custom scripts to handle all the database information and operations.
Smart Scripting
79