SteelHead-v Provisioning
SteelHead-v provisioning enables you need to deploy one or more SteelHead-v instances with a basic set of preconfigured parameters. Such preconfigured instances can then be fully configured through SteelCentral Controller for SteelHead (virtual edition). This can be useful in managed service provider networks, for example, where you might need to deploy many SteelHead-v instances and want to push configuration settings to them using an orchestration tool like SCC-VE rather than manually configuring each instance.
If you are provisioning many SteelHead-v instances on OpenStack, you’ll need some additional information regarding deploying licenses. For details, go to Knowledge Base article
S35286.
SteelHead-v provisioning overview
SteelHead-v provisioning is similar to Cloud-Init, industry standard software for applying basic configuration parameters to virtual machine instances deployed in the cloud. Riverbed’s SteelHead-v provisioning is a more secure provisioning tool, custom built for provisioning SteelHead-v instances with the parameters necessary to connect to deployment orchestration tools like SCC-VE.
SteelHead-v provisioning works with KVM, ESXi, and Hyper‑V.
To use SteelHead-v provisioning
SteelHead-v instances will only accept parameters from the ISO file on initial start-up. Subsequent start‑ up operations—even if the ISO is attached—will skip reading the contents of the ISO file. SteelHead-v provisioning is intended for one-time configuration during instance bootstrapping.
Supported configuration parameters
Using SteelHead-v provisioning, you can deploy any number of SteelHead-v instances with these parameters automatically set. Parameter values are validated by the system.
You can define multiple static routes.
Parameter | Accepted value | Example |
primary_ipv4 | valid IPv4 address | 192.168.1.2 |
primary_masklen | integer 0-32 | 24 |
primary_ipv6 | valid IPv6 address | 2001:db8:a0b:12f0::1 |
primary_ipv6_masklen | integer 0-128 | 64 |
aux_ipv4 | valid IPv4 address | 192.168.1.2 |
aux_masklen | integer 0-32 | 24 |
aux_ipv6 | valid IPv6 address | 2001:db8:a0b:12f0::1 |
aux_ipv6_masklen | integer 0-128 | 64 |
static_route_ipv4* | first address | masklen | next address | interface name (aux, primary, or inpath0_0) | 192.168.1.2 24 192.168.1.3 inpath0_0 |
static_route_ipv6* | first address | masklen | next address | interface name (aux, primary, or inpath0_0) | 2001:db8:a0b:12f0::1 64 2001:db8:a0b:12f0::2 aux |
admin_password | the string generated by the CLI openssl passwd - salt mysalt -1 mypassword | $1$xcuHq/$a/qZ8zGpzy.NHsKjJ8Yla. |
hostname | valid hostname | host.nbttech.com |
scc | valid IPv4 address or hostname | cmc.lab.riverbed.com |
name_server | valid IPv4 address | 10.16.32.48 |
domain_name | valid hostname | nbttech.com |
ntp_server_ipv4 | valid IPv4 address | 127.127.1.0 |
default_gw_ipv4 | valid IPv4 address | 10.0.0.1 |
default_gw_ipv6 | valid IPv6 address | 2001:db8:a0b:12f0::1 |
default_inpath_gw_ipv4 | valid IPv4 address | 192.168.1.2 |
default_inpath_gw_ipv6 | valid IPv6 address | 2001:db8:a0b:12f0::1 |
inpath0_0_ipv4 | valid IPv4 address | 192.168.1.2 |
inpath0_0_masklen | integer 0-32 | 24 |
inpath0_0_ipv6 | valid IPv6 address | 2001:db8:a0b:12f0::1 |
inpath0_0_ipv6_masklen | integer 0-128 | 64 |
inpath0_0_vlan | integer 0-4094 | 1024 |
license_customer_key | string | XXXXX-XXXXX-XXXXX |
license_key | string + optional string | XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX-XXXXX |
proxy_address | valid IPv4 or IPv6 address or hostname | proxy.nbttech.com |
proxy_port | integer 1-65535 | 6800 |
Creating the directory structure
The configuration directory structure must be in the OpenStack config-2 format described in this procedure.
To create the directory structure
1. On your server in a location of your choice, create a directory named config_drive. For example:
mkdir /tmp/config_drive
2. Create a directory named openstack under the config_drive directory:
mkdir config_drive/openstack
3. Create exactly one directory with a name of your choice under the openstack directory and place in the openstack directory exactly one symbolic link to that subdirectory. For example:
cd openstack
mkdir <my-shv-config>
ln -s <my-shv-config> latest
/openstack:
total 2
drwxr-xr-x 2 1023 users 2048 Jan 20 02:52 my-shv-config
lrwxrwxrwx 1 1023 users 10 Jan 20 02:52 latest -> my-shv-config
4. In the openstack subdirectory, /openstack/my-shv-config/ in this example, create a file named user_data and a JSON file named meta_data.json.
6. Populate the meta_data.json file with the UUIDs of the SteelHead-v instances you that want to configure with the parameter values you set in the user_data file.
Creating the configuration file
The configuration file must be named user_data and it must be located in the subdirectory under the openstack directory. The contents of the file comprise a clear-text list of the parameters and parameter values that you want to load into your SteelHead-v instances at the time of their initial start-up. Some parameters can accept multiple values. See
Supported configuration parameters. Here is an example configuration file:
rvbd_sh:
primary_ipv4: 192.168.1.2
primary_masklen: 24
aux_ipv4: 10.0.0.2
aux_masklen: 16
default_gw: 10.0.0.1
name_server: 10.16.32.48
domain_name: nbttech.com
admin_password: $1$xcuHq/$a/qZ8zGpzy.NHsKjJ8Yla.
scc: cmc.lab.riverbed.com
Creating and attaching the configuration ISO file
After you have prepared your SteelHead-v provisioning directory structure and files, you’ll need to convert them into an ISO drive that can be attached to your SteelHead-v instances.
To create the ISO file
Use this shell command line tool to transform the openstack directory and its contents into an ISO file:
mkisofs -R -V config-2 -o configdrive.iso /tmp/config_drive
To attach the ISO drive
• If you are using virsh on KVM, edit the domain.xml file of the KVM SteelHead-v instances as follows:
<disk type="file" device="cdrom">
<driver name="qemu" type="raw" cache="none" />
<source file="/mnt/Riverbed /configdrive.iso" />
<readonly />
<target dev="vdc" />
</disk>
• If you are using Hyper‑V or ESXi, use the GUI to attach the configdrive.iso to your SteelHead-v instances.
After the SteelHead-v instances are instantiated using the domain.xml file, they will be configured with the parameters provided in the user_data file.
To verify whether SteelHead-v provisioning has correctly configured your SteelHead-v instances, by run the show run command immediately after the CLI is launched.