- Installing Cisco VTS in a Linux - OpenStack Environment
- Installing Cisco VTS on a VMware Environment
Installing Cisco
VTS
The following sections provide details about installing VTS on a Linux-OpenStack environment or a VMware-based environment. Ensure that you review the Prerequisites chapter, before you begin installing VTS.
- Installing Cisco VTS in a Linux - OpenStack Environment
- Installing Cisco VTS on a VMware Environment
- Installing VTSR
- Installing the Virtual Topology Forwarder
- Verifying VTS Installation
Installing Cisco VTS in a Linux - OpenStack Environment
Installing Cisco VTS in an OpenStack environment involves:
-
Installing the VTC VM. See Installing the VTC VM for details.
-
Installing the Host Agent and the Open Stack Neutron Plugin
See Installing Host Agent and Registering OpenStack VMM
- Installing the VTC VM
- Installing OpenStack Plugin
- Installing Host Agent
- Installing Host Agent on Newton OSPD using CLI
- Setting Up Ansible Install Through an SSH Proxy (for RHEL OpenStack Platform Director)
Installing the VTC VM
You can install the VTC VM using either the automatic or manual configuration option.
To install the VTC VM using an ISO file (Auto Configuration), see Installing VTC VM - Automatic Configuration Using ISO File
To install VTC VM using the virt-manager application (Manual Configuration), see Installing VTC VM - Manual Configuration Using virt-manager Application
To install VTC VM using VNC (Manual Configuration), see Installing VTC VM - Manual Configuration using VNC
![]() Note | If you need to access the VTC VM's console using virt-manager, VNC, or SPICE, it may be necessary to manually switch to tty1 using the CTRL+ALT+F1 key combination. After connecting to the VM's console, if the output shows a blank screen, then you must manually switch to tty1. |
Installing VTC VM - Automatic Configuration Using ISO File
To enable configuration using ISO file, the administrator needs to create a text file with the VM settings, wrap it into an ISO file, and then attach the ISO to the VM's CD drive.
| Step 1 | Connect to the controller node via SSH, and copy the vtc.qcow2 file to /var/lib/libvirt/images/ folder. | ||
| Step 2 | Copy the vtc.sample.xml file to your controller. A sample XML file is available at Sample XML File—VTC Installation. | ||
| Step 3 | Create a file
called config.txt. The contents of the file is given in the below example:
Hostname=vtc
ManagementIPv4Method=Static
ManagementIPv4Address=1.1.1.2
ManagementIPv4Netmask=255.255.255.0
ManagementIPv4Gateway=1.1.1.1
ManagementIPv6Method=Static
ManagementIPv6Address=1::2
ManagementIPv6Netmask=64
ManagementIPv6Gateway=1::1
UnderlayIPv4Method=Static
UnderlayIPv4Address=2.2.2.2
UnderlayIPv4Netmask=255.255.255.0
UnderlayIPv4Gateway=2.2.2.1
UnderlayIPv6Method=Static
UnderlayIPv6Address=2::2
UnderlayIPv6Netmask=64
UnderlayIPv6Gateway=2::1
DNSv4=3.3.3.3
DNSv6=3::3
Domain=cisco.com
NTP=1.1.1.1
vts-adminPassword=cisco123
AdministrativeUser=admin
AdministrativePassword=cisco123
In this file:
| ||
| Step 4 | Use mkisofs to
create an ISO file. For example:
mkisofs -o config.iso config.txt | ||
| Step 5 | Create the VTC
VM using following command:
virsh create vtc.sample.xml |
Installing VTC VM - Manual Configuration Using virt-manager Application
To install the VTC VM, configuring the VM, manually, using the virt-manager application:
Installing VTC VM - Manual Configuration using VNC
If the server where VTC is to be installed resides on a remote location with network latency or low bandwidth, you may want to opt for the use of VNC in order to gain graphical console access to the VTC VM, and manually configure the VM. To do this:
| Step 1 | Connect to the controller node via SSH, and copy the vtc.qcow2 file to /var/lib/libvirt/images/ folder. | ||
| Step 2 | Copy the vtc.sample.xml file to your controller. Modify it as per your setup. A sample XML file is available at Sample XML File—VTC Installation. | ||
| Step 3 | Replace the
following sections of the vtc.sample.xml file:
<graphics type='spice' port='5900' autoport='yes' listen='127.0.0.1'>
<listen type='address' address='127.0.0.1'/>
</graphics>
with the following: <graphics type='vnc' port='5900' autoport='yes' listen='0.0.0.0'>
<listen type='address' address='0.0.0.0'/>
</graphics>
| ||
| Step 4 | Create the VTC
VM using following command:
virsh create vtc.sample.xml You should now be able to use a VNC client to connect to the graphics console of the VTC VM to continue with the setup process. | ||
| Step 5 | Enter the
following:
VTC VM reboots at this time. Wait for two minutes for the VTC VM to be up. You can ping the IP address given for VTC VM in the setup process to verify whether the VTC VM is up. | ||
| Step 6 | SSH into VTC VM using the IP address, administrative username/password given in the setup process (not vts-admin user). |
Installing OpenStack Plugin
The OpenStack plugin gets installed when you register the VMM from the Cisco VTS GUI. See Registering OpenStack VMM, for details.
![]() Note | Cisco VTS GUI- based VMM Registration is applicable for single-node OpenStack Controller deployments only. For information about installing the plugin and host agent for a Multi-Node OpenStack Controller cluster, seeInstalling Plugin and Host Agent on Multi-Node OpenStack Controller Cluster. |
Registering OpenStack VMM
You can register the OpenStack VMM using the Cisco VTS GUI.
If you opt for the guided set up using the Setup wizard, VMM registration is done as part of the wizard flow. See the Using the Setup Wizard section in the Getting Started with Cisco Virtual Topology System chapter in the Cisco VTS User Guide for details.
If you are not using the Setup wizard, you can register the VMM using the Administration > Virtual Machine Manager UI.
![]() Note | If you install an unsupported OpenStack plugin version, you might encounter errors after installation. We recommend that you review the Supported Virtual Machine Managers section before you install the OpenStack plugin. |
| Step 1 | Go to Administration > Virtual Machine Manager. |
| Step 2 | Click the Add
(+) button.
The Register VMM page is displayed. |
| Step 3 | Enter the VMM
Details:
|
| Step 4 | Click
Register.
After the VMM is registered successfully, the Plugin sections opens up. |
| Step 5 | Select the
desired radio button to specify whether you want to Install plug in with Red
Hat OSP Director or not. If you select Yes, enter the following details:
|
Installing Host Agent
You can use the Host Agent while specifying the Virtual Switch type, in Host Inventory.
| Step 1 | Go to . The Inventory / Host Inventory page appears. The Host Inventory page has two tabs—Virtual Servers and Baremetals. By default, the page displays Virtual Server details. |
| Step 2 | To view host details on Virtual Servers, select the VMM from the Select VMM drop-down, and select the device from the Select Device drop-down list. The following details are displayed: |
| Step 3 | Enter the following host details, while adding a new host or while editing the host: |
| Step 4 | Click
Save.
After the installation is complete you can see the green check button under Installation Status. |
| Step 5 | Specify the physnet type. This is mandatory. You can find this using ovs bridge #sudo ovs-vsctl show | more . By default, it is tenant. |
| Step 6 | Log in to the compute and check the service is up and running.
# sudo service neutron-vts-agent status |
Installing Host Agent on Newton OSPD using CLI
| Step 1 | Log in to VTC |
| Step 2 | Go to cd /opt/vts/lib/ansible/playbooks |
| Step 3 | Create SAMPLE_INVENTORY_OVS. |
| Step 4 | Install SSH
keys. See
Setting Up Ansible Install Through an SSH Proxy (for RHEL OpenStack Platform Director).
sudo ansible-playbook ssh_proxy.yaml -i SAMPLE_INVENTORY_OVS -e ACTION=install -l proxy |
| Step 5 | Install OVS
Host Agent on compute.
sudo ansible-playbook neutron-compute.yaml -i SAMPLE_INVENTORY_OVS -e ACTION=install SAMPLE_INVENTORY_OVS for Newton OSPD with IPV4 [proxy] director ansible_ssh_host=172:20:200:18 # SSH Proxy access parameters. Do not modify the group name [proxy:vars] ansible_connection=ssh ansible_port=22 ansible_ssh_user=stack ansible_ssh_pass=<password> [proxied_hosts:children] vts_p_hosts_ovs # Host specific variable for P hosts with VTS OVS agent [vts_p_hosts_ovs] overcloud-controller-0 ansible_ssh_host=172.20.200.5 overcloud-controller-1 ansible_ssh_host=172.20.200.4 overcloud-compute-2 ansible_ssh_host=172:20:200:27 # Group variables for P hosts with VTS OVS agent [vts_p_hosts_ovs:vars] ansible_connection=ssh ansible_port=22 ansible_ssh_user=heat-admin ansible_ssh_pass=<password> VMM_NAME=OSPD_Newton # Common group variables [all:vars] VTS_IP=172:20:200:20 VTS_USERNAME=admin VTS_PASSWORD=<password> [defaults] timeout=60 [ssh_connection] ssh_args="-C -o ControlMaster=auto -o ControlPersist=600s -o GSSAPIAuthentication=no -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" SAMPLE_INVENTORY_OVS for Newton OSPD with IPV6 [proxy] director ansible_ssh_host=2001:420:10e:2010:172:20:100:18 # SSH Proxy access parameters. Do not modify the group name [proxy:vars] ansible_connection=ssh ansible_port=22 ansible_ssh_user=stack ansible_ssh_pass=cisco123 [proxied_hosts:children] vts_p_hosts_ovs # Host specific variable for P hosts with VTS OVS agent [vts_p_hosts_ovs] fd41:4c47:94d7:c790:172:23:92:18 ansible_ssh_host=fd41:4c47:94d7:c790:172:23:92:18 ansible_ssh_user=admin fd41:4c47:94d7:c790:172:23:92:17 ansible_ssh_host=fd41:4c47:94d7:c790:172:23:92:17 ansible_ssh_user=admin fd41:4c47:94d7:c790:172:23:92:43 ansible_ssh_host=fd41:4c47:94d7:c790:172:23:92:43 ansible_ssh_user=admin fd41:4c47:94d7:c790:172:23:92:44 ansible_ssh_host=fd41:4c47:94d7:c790:172:23:92:44 ansible_ssh_user=admin fd41:4c47:94d7:c790:172:23:92:45 ansible_ssh_host=fd41:4c47:94d7:c790:172:23:92:45 ansible_ssh_user=admin # Group variables for P hosts with VTS OVS agent [vts_p_hosts_ovs:vars] ansible_connection=ssh ansible_port=22 ansible_ssh_user=heat-admin ansible_ssh_pass=cisco123 VMM_NAME=OSPD_Newton # Common group variables [all:vars] VTS_IP=[2001:420:10e:2010:172:20:100:20] VTS_USERNAME=admin VTS_PASSWORD=Cisco123! [defaults] timeout=60 [ssh_connection] ssh_args="-C -o ControlMaster=auto -o ControlPersist=600s -o GSSAPIAuthentication=no -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
|
Uninstalling Host Agent
To uninstall OVS host agent on Newton OSPD using CLI
| Step 1 | Log in to VTC. |
| Step 2 | Go to: cd /opt/vts/lib/ansible/playbooks |
| Step 3 | Create SAMPLE_INVENTORY_OVS. |
| Step 4 | Uninstall SSH
keys.
sudo ansible-playbook ssh_proxy.yaml -i SAMPLE_INVENTORY_OVS -e ACTION=uninstall -l proxy |
| Step 5 | Uninstall the
OVS Host Agent on compute.
sudo ansible-playbook neutron-compute.yaml -i SAMPLE_INVENTORY_OVS -e ACTION=uninstall |
Setting Up Ansible Install Through an SSH Proxy (for RHEL OpenStack Platform Director)
An example of a Sample Inventory file:
[proxy]
undercloud1 ansible_ssh_host=10.194.132.62
# SSH Proxy access parameters. Do not modify the group name
[proxy:vars]
ansible_connection=ssh
ansible_ssh_user=stack
ansible_ssh_pass=cisco123
[proxied_hosts:children]
neutron_servers
vts_v_hosts
[neutron_servers]
overcloud2 ansible_ssh_host="NAME/IP of target Neutron server"
[neutron_servers:vars]
ansible_ssh_user=heat-admin
[vts_v_hosts]
rhel1 ansible_ssh_host="name/IP of target host" host_ip="20.0.87.203" host_netmask_len="24" net_gw="20.0.87.1" underlay_if="ens224" interfaces='["eno16777984", "eno33557248", "eno50336512"]' u_addresses='["11.0.0.0/8"]' vif_type="vhostuser"
[vts_v_hosts:vars]
ansible_ssh_user=heat-admin
sudo ANSIBLE_HOST_KEY_CHECKING=False ansible-playbook ssh_proxy.yaml -i SAMPLE_INVENTORY -e ACTION=install
ansible-playbook vpp.yaml -i SAMPLE_INVENTORY -e ACTION=install -l vts_v_hosts
![]() Note | It is important to consider variable precedence and edit or comment out the respective ssh username and password fields from the inventory file. The proxy will always be accessed on the username and password specified under the "proxy" group, while the proxied hosts will be accessed using the credentials defined in their individual group or host settings. The inventory file and proxy settings covers only one OpenStack domain. To manage multiple domains, it is necessary to create multiple inventory files, one per domain, reusing the pattern and definitions above. |
Installing Cisco VTS on a VMware Environment
- Installing VTC VM on ESXi
- Installing vCenter Plugin
- Important Notes Regarding VMware vSphere Distributed Switch (vDS)
Installing VTC VM on ESXi
To install VTC VM on an ESXi host:
| Step 1 | Connect to the ESXi host using the VMWare vSphere Client. | ||
| Step 2 | In the vSphere Client, select File > Deploy OVF Template. The Deploy OVF Template wizard appears. | ||
| Step 3 | Specify the name
and source location, and click Next.
| ||
| Step 4 | Select the appropriate host to spawn the VTC VM. | ||
| Step 5 | For VM disk format, use the default disk format settings (that is Thick Provision Lazy Zeroed). | ||
| Step 6 | Map VTC network connectivity to appropriate port-groups on vSwitch/DVS. | ||
| Step 7 | Enter the
following properties:
|
Installing vCenter Plugin
The vCenter plugin gets installed when you register the VMM from the Cisco VTS GUI.
| Step 1 | Go to Administration > Virtual Machine Manager. | ||
| Step 2 | Click the Add
(+) button.
The Register VMM page is displayed. | ||
| Step 3 | Enter the VMM Details: | ||
| Step 4 | Click
Register.
After the VMM is registered successfully, the Plugin sections opens up. | ||
| Step 5 |
Enter the following in the Plugin details section:
|
Important Notes Regarding VMware vSphere Distributed Switch (vDS)
The following points need to be taken care of while you create a vDS.
![]() Note |
|
For Non-vPC Specific Configuration
For vPC Specific Configuration
If you are using vPC on the leaves:
| Step 1 | Create one vDS switch for one or more vPC pairs. |
| Step 2 | Enable
enhanced LACP.
See VMware documentation for the detailed procedure. |
| Step 3 | Create a Link
Aggregation Group for each vDS.
See VMware documentation for the detailed procedure. |
| Step 4 | You may remove the default port group that gets created as it will not be used. |
Installing VTSR
The VTSR VM serves two purposes. It is required to enable VTS High Availability. It also acts as the control plane for the VTF. You need to install VTSR only if you consider enabling High Availability or if you plan to have a VTF in your set up.
Installing VTSR involves:
-
Generating an ISO file. See Generating an ISO for VTSR, for details.
-
Deploying the VTSR on the VMM. See Deploying VTSR on OpenStack or Deploying VTSR on VMWare, for details.
- Generating an ISO for VTSR
- Deploying VTSR on OpenStack
- Deploying VTSR on VMWare
- Installing VTSR in High Availability Mode
- Applying VTSR Device Templates Using vts-cli.sh Script
Generating an ISO for VTSR
To create an ISO for VTSR:
![]() Note | For an HA installation, you need to create two ISOs and deploy them separately. |
| Step 1 | Go to /opt/cisco/package/vts/share. | ||
| Step 2 | Make a copy of
the vtsr_template.cfg template and edit for your VTSR instance. A sample
vtsr_template.cfg file is given below:
# This is a sample VTSR configuration file # Copyright (c) 2015 cisco Systems # Please protect the generated ISO, as it contains authentication data # in plain text. # VTS Registration Information: # VTS_ADDRESS should be the IP for VTS. The value must be either an ip or a mask. # VTS_ADDRESS is mandatory. If only the V4 version is specified, # The V4 management interface for the VTSR (NODE1_MGMT_NETWORK_IP_ADDRESS) # will be used. If the V6 version is specified, the V6 management interface # for the VTSR (NODE1_MGMT_NETWORK_IPV6_ADDRESS) must be specified and will be used. #VTS_ADDRESS="172.23.209.17" VTS_IPV6_ADDRESS="fded:1bc1:fc3e:96d0::1000:17" # VTS_REGISTRATION_USERNAME used to login to VTS. VTS_REGISTRATION_USERNAME="admin" # VTS_REGISTRATION_PASSWORD is in plaintext. VTS_REGISTRATION_PASSWORD="Cisco123!" # VTSR VM Admin user/password USERNAME="admin" PASSWORD="cisco123" # VTSR VM Network Configuration for Node 1: # NETWORK_IP_ADDRESS, NETWORK_IP_NETMASK, and NETWORK_IP_GATEWAY # are required to complete the setup. Netmask can be in the form of # "24" or "255.255.255.0" # The first network interface configured with the VTC VM will be used for # underlay connectivity; the second will be used for the management network. # For both the MGMT and UNDERLAY networks, a <net-name>_NETWORK_IP_GATEWAY # variable is mandatory; they are used for monitoring purposes. # # V6 is only supported on the mgmt network and dual stack is # currently not supported, so if both are specified V6 will take priority (and # requires VTS_IPV6_ADDRESS to be set). # The *V6* parameters for the mgmt network are optional. Note that if V6 is used for mgmt # it must be V6 on both nodes. Netmask must be the prefix length for V6. #NODE1_MGMT_NETWORK_IP_ADDRESS="172.23.209.19" #NODE1_MGMT_NETWORK_IP_NETMASK="255.255.255.192" #NODE1_MGMT_NETWORK_IP_GATEWAY="172.23.209.1" NODE1_MGMT_NETWORK_IPV6_ADDRESS="fded:1bc1:fc3e:96d0::1000:19" NODE1_MGMT_NETWORK_IPV6_NETMASK="64" NODE1_MGMT_NETWORK_IPV6_GATEWAY="fded:1bc1:fc3e:96d0::1" NODE1_UNDERLAY_NETWORK_IP_ADDRESS="82.82.82.19" NODE1_UNDERLAY_NETWORK_IP_NETMASK="255.255.255.0" NODE1_UNDERLAY_NETWORK_IP_GATEWAY="82.82.82.1" # AUX network is optional #NODE1_AUX_NETWORK_IP_ADDRESS="169.254.20.100" #NODE1_AUX_NETWORK_IP_NETMASK="255.255.255.0" #NODE1_AUX_NETWORK_IP_GATEWAY="169.254.20.1" # XR Hostname NODE1_XR_HOSTNAME="vtsr01" # Loopback IP and netmask NODE1_LOOPBACK_IP_ADDRESS="128.0.0.10" NODE1_LOOPBACK_IP_NETMASK="255.255.255.255" # VTSR VM Network Configuration for Node 2: # If there is no HA then the following Node 2 configurations will remain commented and # will not be used and Node 1 configurations alone will be applied # For HA , the following Node 2 configurations has to be uncommented # VTSR VM Network Configuration for Node 2 # NETWORK_IP_ADDRESS, NETWORK_IP_NETMASK, and NETWORK_IP_GATEWAY # are required to complete the setup. Netmask can be in the form of # "24" or "255.255.255.0" # The first network interface configured with the VTC VM will be used for # underlay connectivity; the second will be used for the management network. # For both the MGMT and UNDERLAY networks, a <net-name>_NETWORK_IP_GATEWAY # variable is mandatory; they are used for monitoring purposes. # # V6 is only supported on the mgmt network and dual stack is # currently not supported, so if both are specified V6 will take priority (and # requires VTS_IPV6_ADDRESS to be set). # The *V6* parameters for the mgmt network are optional. Note that if V6 is used for mgmt # it must be V6 on both nodes. Netmask must be the prefix length for V6. #NODE2_MGMT_NETWORK_IP_ADDRESS="172.23.209.20" #NODE2_MGMT_NETWORK_IP_NETMASK="255.255.255.192" #NODE2_MGMT_NETWORK_IP_GATEWAY="172.23.209.1" NODE2_MGMT_NETWORK_IPV6_ADDRESS="fded:1bc1:fc3e:96d0::1000:20" NODE2_MGMT_NETWORK_IPV6_NETMASK="64" NODE2_MGMT_NETWORK_IPV6_GATEWAY="fded:1bc1:fc3e:96d0::1" NODE2_UNDERLAY_NETWORK_IP_ADDRESS="82.82.82.20" NODE2_UNDERLAY_NETWORK_IP_NETMASK="255.255.255.0" NODE2_UNDERLAY_NETWORK_IP_GATEWAY="82.82.82.1" # AUX network is optional # Although Aux network is optional it should be either present in both nodes # or not present in both nodes. # It cannot be present on Node1 and not present on Node2 and vice versa #NODE2_AUX_NETWORK_IP_ADDRESS="179.254.20.200" #NODE2_AUX_NETWORK_IP_NETMASK="255.255.255.0" #NODE2_AUX_NETWORK_IP_GATEWAY="179.254.20.1" # XR Hostname NODE2_XR_HOSTNAME="vtsr02" # Loopback IP and netmask NODE2_LOOPBACK_IP_ADDRESS="130.0.0.1" NODE2_LOOPBACK_IP_NETMASK="255.255.255.255" | ||
| Step 3 | Update the
following on vtsr_template.cfg for your deployment.
| ||
| Step 4 | Run the
buiild_vts_config_iso.sh vtsr script: This will generate the ISO file that you
need to attach to the VM before booting it.
For example: admin@dev:~$ /opt/cisco/package/vts/bin/build_vts_config_iso.sh vtsr /opt/cisco/package/vts/share/vtsr_template.cfg
Validating input.
validating
Generating ISO File.
Done!
admin@dev:~$ ls -l
-rw-r--r-- 1 admin vts-admin 360448 Jan 4 18:16 vtsr_node1_cfg.iso
|
Deploying VTSR on OpenStack
To deploy VTSR on OpenStack:
| Step 1 | Create VTSR.XML
referring the sample XML file. For example:
<domain type='kvm' id='20'>
<name>SAMPLE-VTSR-1</name>
<memory unit='GiB'>48</memory>
<cpu mode='host-passthrough'/>
<vcpu placement='static'>14</vcpu>
<resource>
<partition>/machine</partition>
</resource>
<os>
<type arch='x86_64' machine='pc-i440fx-rhel7.0.0'>hvm</type>
<boot dev='hd'/>
<boot dev='cdrom'/>
</os>
<features>
<acpi/>
<apic/>
<pae/>
</features>
<clock offset='localtime'/>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>restart</on_crash>
<devices>
<emulator>/usr/libexec/qemu-kvm</emulator>
<disk type='file' device='cdrom'>
<driver name='qemu'/>
<source file='/home/admin/VTS20/images/vtsr_node1_cfg.iso'/>
<target dev='hda' bus='ide'/>
<readonly/>
</disk>
<disk type='file' device='disk'>
<driver name='qemu' type='qcow2'/>
<source file='/home/admin/VTS20/images/vtsr.qcow2'/>
<target dev='vda' bus='virtio'/>
<alias name='virtio-disk0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'/>
</disk>
<controller type='usb' index='0'>
<alias name='usb0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x2'/>
</controller>
<controller type='ide' index='0'>
<alias name='ide0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
</controller>
<controller type='pci' index='0' model='pci-root'>
<alias name='pci.0'/>
</controller>
<interface type='bridge'>
<source bridge='br-ex'/>
<virtualport type='openvswitch'>
<parameters interfaceid='4ffa64df-0d57-4d63-b85c-78b17fcac60a'/>
</virtualport>
<target dev='vtsr-dummy-mgmt'/>
<model type='virtio'/>
<alias name='vnet1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'/>
</interface>
<interface type='bridge'>
<source bridge='br-inst'/>
<virtualport type='openvswitch'>
<parameters interfaceid='4ffa64df-0d67-4d63-b85c-68b17fcac60a'/>
</virtualport>
<target dev='vtsr-dummy-2'/>
<model type='virtio'/>
<alias name='vnet1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
<interface type='bridge'>
<source bridge='br-inst'/>
<virtualport type='openvswitch'>
<parameters interfaceid='4ffa64df-0f47-4d63-b85c-68b17fcac70a'/>
</virtualport>
<target dev='vtsr-dummy-3'/>
<model type='virtio'/>
<alias name='vnet1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
</interface>
<interface type='bridge'>
<source bridge='br-inst'/>
<virtualport type='openvswitch'>
<parameters interfaceid='4ffa64df-0d47-4d63-b85c-58b17fcac60a'/>
</virtualport>
<vlan>
<tag id='800'/>
</vlan>
<target dev='vtsr-gig-0'/>
<model type='virtio'/>
<alias name='vnet1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'/>
</interface>
<interface type='bridge'>
<source bridge='br-ex'/>
<virtualport type='openvswitch'>
<parameters interfaceid='3ffa64df-0d47-4d63-b85c-58b17fcac60a'/>
</virtualport>
<target dev='vtsr-gig-1'/>
<model type='virtio'/>
<alias name='vnet1'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
</interface>
<interface type='bridge'>
<source bridge='br-inst'/>
<virtualport type='openvswitch'>
<parameters interfaceid='a2f3e85a-4de3-4ca9-b3df-3277136c4054'/>
</virtualport>
<vlan>
<tag id='800'/>
</vlan>
<target dev='vtsr-gig-2'/>
<model type='virtio'/>
<alias name='vnet3'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
</interface>
<serial type='pty'>
<source path='/dev/pts/0'/>
<target port='0'/>
<alias name='serial0'/>
</serial>
<console type='pty' tty='/dev/pts/0'>
<source path='/dev/pts/0'/>
<target type='serial' port='0'/>
<alias name='serial0'/>
</console>
<input type='tablet' bus='usb'>
<alias name='input0'/>
</input>
<input type='mouse' bus='ps2'/>
<graphics type='vnc' port='5900' autoport='yes' listen='0.0.0.0' keymap='en-us'>
<listen type='address' address='0.0.0.0'/>
</graphics>
<video>
<model type='cirrus' vram='9216' heads='1'/>
<alias name='video0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>
</video>
<memballoon model='virtio'>
<alias name='balloon0'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'/>
</memballoon>
</devices>
</domain>
|
| Step 2 | Create the VM
using the XML and pointing the correct qcow2 and ISO.
virsh create VTSR.xml |
| Step 3 | To ensure VTSR
is configred with the proper day zero configuration, SSH to VTSR and then run:
RP/0/RP0/CPU0:vtsr01#bash [xr-vm_node0_RP0_CPU0:~]$docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 31f6cbe6a048 vtsr:dev "/usr/bin/supervisord" 3 weeks ago Up 7 days vtsr |
| Step 4 | Run either of
the following commands:
Or,
In the second option, 31 is the process ID, which you can get from Step 3. an out put similar to the below example is displayed: connecting to confd_cli root@host:/opt/cisco/package# confd_cli -u admin -C Welcome to the ConfD CLI admin connected from 127.0.0.1 using console on host host> en host# show running-config vtsr-? Possible completions: vtsr-config vtsr-day0-config host(config)# vtsr-config ? Possible completions: dhcp-relays global-config interfaces ip-routes l2-networks vm-macs vrfs vtfs host(config)# vtsr-config |
Deploying VTSR on VMWare
Deploying the VTSR.ova is similar to XRNC.
| Step 1 | Generate an ISO file for the VTSR VM. See Generating an ISO for VTSR . |
| Step 2 | In the vSphere Client, select File > Deploy OVF Template. The Deploy OVF Template wizard appears. |
| Step 3 | Select VTSR.ova from the source location, and click Next.The OVF template details are displayed. |
| Step 4 | Click
Next to specify the destination. Enter the following
details:
|
| Step 5 | Click Next to select the storage location to store the files for the template. The default values for virtual disk format and VM Storage Policy need not be changed. |
| Step 6 | Click Next to set up the networks. Specify the first network as the Underlay Network and the second network as the Management Network. |
| Step 7 | Click Next. Review the settings selections. |
| Step 8 | Click Finish to start the deployment. |
| Step 9 | After the deployment is complete, edit the VM settings. Add a CD/DVD Drive selecting Datastore ISO file and point to the vtsr.iso file which was generated and uploaded to the host. |
| Step 10 | Power on the VM. |
| Step 11 | To ensure VTSR
is configred with the proper day zero configuration, SSH to VTSR and then run:
RP/0/RP0/CPU0:vtsr01-vcenter#bash [xr-vm_node0_RP0_CPU0:~]$docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 31f6cbe6a048 vtsr:dev "/usr/bin/supervisord" 3 weeks ago Up 7 days vtsr |
| Step 12 | Run either of
the following commands:
Or,
In the second option, 31 is the process ID, which you can get from Step11. An output similar to the below example is displayed: connecting to confd_cli root@host:/opt/cisco/package# confd_cli -u admin -C Welcome to the ConfD CLI admin connected from 127.0.0.1 using console on host host> en host# show running-config vtsr-? Possible completions: vtsr-config vtsr-day0-config host(config)# vtsr-config ? Possible completions: dhcp-relays global-config interfaces ip-routes l2-networks vm-macs vrfs vtfs host(config)# vtsr-config Do not press or Enter key when the VTSR is loading or getting registered with VTC. For vCenter, VTSR may take approximately 30-45 minutes to come up. |
Installing VTSR in High Availability Mode
-
Generating two ISOs for the Master and the Slave VMs. See Generating an ISO for VTSR for details.
-
Deploy the two VTSR VMs using the respective ISO files generated during the process. See Deploying VTSR on OpenStack or Deploying VTSR on VMWare, based on your VMM type.
The system automatically detects which VM is the Master and which is the slave, based on the information you provide while generating the ISO files.
Verifying VTSR HA Setup
root@vtsr01:/opt/cisco/package# crm_mon -Afr1
Last updated: Fri Apr 14 06:04:40 2017 Last change: Thu Apr 13 23:08:25 2017 by hacluster via crmd on vtsr01
Stack: corosync
Current DC: vtsr02 (version 1.1.14-70404b0) - partition with quorum
2 nodes and 11 resources configured
Online: [ vtsr01 vtsr02 ]
Full list of resources:
dl_server (ocf::heartbeat:anything): Started vtsr01
Clone Set: cfg_dl_clone [cfg_dl]
Started: [ vtsr01 vtsr02 ]
Clone Set: rc_clone [rc]
Started: [ vtsr01 vtsr02 ]
Clone Set: confd_clone [confd]
Started: [ vtsr01 vtsr02 ]
Clone Set: mping_clone [mgmt_ping]
Started: [ vtsr01 vtsr02 ]
Clone Set: uping_clone [underlay_ping]
Started: [ vtsr01 vtsr02 ]
Node Attributes:
* Node vtsr01:
+ mping : 100
+ uping : 100
* Node vtsr02:
+ mping : 100
+ uping : 100
Migration Summary:
* Node vtsr02:
* Node vtsr01:
Applying VTSR Device Templates Using vts-cli.sh Script
The day zero configuration (OSPF, loopback0) has to be configured on VTSR using the vts-cli.sh script. You can apply the following templates:
![]() Note | This procedure is not required in case you have VTF in L2 switch mode. |
-
vtsr-underlay-loopback-template. See Applying Loopback Template
-
vtsr-underlay-ospf-template. See Applying OSPF Template
admin@tb11-vtc:/opt/vts/bin$ ./vts-cli.sh
Usage:
vts-cli -<command> <templateName>
Valid commands are:
vts-cli -createTemplate <templateName>
-- creates template structure in VTC db.
vts-cli -applyTemplate <templateName>
-- collects template variables values & applies template to device.
vts-cli -deleteTemplate <templateName>
-- deletes template structure from VTC db.
vts-cli -deleteTemplateConfig <templateName>
-- deletes earlier applied template config from device.
vts-cli -getTemplate <templateName>
-- gets template structure from VTC db.
If they are issues in running the commands check the /opt/vts/bin/vts-cli.log to get more details.
Applying Loopback Template
| Step 1 | On VTC (Master VTC in case of an HA setup), go to /opt/vts/bin. |
| Step 2 | Run the following command:
admin@VTC1:/opt/vts/bin$ vts-cli.sh -applyTemplate vtsr-underlay-loopback-template This will prompt you to input the parameters. For example: Enter device name: vtsr01 Enter loopback-interface: Loopback0 Enter ipaddress: 100.100.100.100 Enter netmask: 255.255.255.255 In case you have a VTSR HA setup, apply the template on both VTSRs. . The following message is shown if the configuration got applied correctly:Template vtsr-underlay-loopback-template successfully applied to device vtsr01 |
Applying OSPF Template
| Step 1 | On VTC (Master VTC in case of an HA setup), go to /opt/vts/bin. |
| Step 2 | Run the following command:
admin@VTC1:/opt/vts/bin$ vts-cli.sh -applyTemplate vtsr-underlay-ospf-template This will prompt you to input the parameters. For example: Enter device name: VTSR-1 Enter process-name: 100 Enter router-id: 48.8.8.8 Enter area-address: 0.0.0.0 Enter physical-interface: GigabitEthernet0/0/0/0 Enter loopback-interface: Loopback0 Enter default-cost: 10 In case you have a VTSR HA setup, apply the template on both VTSRs. . The following message is shown if the configuration got applied correctly:Template vtsr-underlay-ospf-template successfully applied to device vtsr01
|
Installing the Virtual Topology Forwarder
You can install VTF using the Cisco VTS GUI. See Installing VTF on vCenter and Installing VTF on OpenStack for details.
![]() Note | If your VMM version is OpenStack Liberty on RHEL, and VTF installation mode is vtf-vhost, you need to manually install VTF. See Installing VTF in vhost Mode using Ansible for details. You need to refresh the Host Inventory page, after you complete the manual installation, for the details to get updated in the Host Inventory page. |
We recommend that you register the VMM via the VTS GUI, before you install VTF to ensure there are no errors later.
Before you install VTF, you must install VTSR and register it to VTS. See Installing VTSR, for details.
Also, verify whether VTSR is in sync with the VTC. If not, use the sync-from operation via VTS-GUI to synchronize the VTS configuration by pulling configuration from the device. See Synchronizing Configuration section in the Cisco VTS User Guide for more information on this feature.
Installing VTF on OpenStack
![]() Note | If the VMM version is openstack-liberty-rhel and the mode for VTF deployment is vtf-vhost, VTF installation has to be done manually. |
| Step 1 | Specify the VTF Mode in the System Settings. Go to Administration > System Settings page, select either L2 or VTEP from the drop down, based on your requirement. | ||
| Step 2 | Go to Host Inventory > Virtual Servers. You can either edit an existing host, or install VTF while adding a new host. See Cisco VTS User Guide for details. | ||
| Step 3 | Enter the Host
Information
Ensure that you review the tooltips for important information about the entries. | ||
| Step 4 | Select the VMM ID | ||
| Step 5 | Select the
Virtual Switch as vtf-L2 option. VTF as an L2 switch is supported only if VTF
is deployed as a vHost.
| ||
| Step 6 | Enter the Host Interface details. | ||
| Step 7 | Enter the VTF
details. If the VTF is already deployed in vHost mode, the details are
prepopulated.
| ||
| Step 8 | Click Save. |
Installing VTF in vhost Mode using Ansible
![]() Note | Only RHEL nodes are currently supported as target vhost nodes. |
The automated installation is enabled via VTS Ansible playbook, which so takes care of GRUB setup on each compute.
Before You Begin
Before you start the installation, make sure the following requirements are met:- Ensure that the following is installed:
-
Ensure that the target vhost compute node has at least 16Gb of RAM and 2 CPUs.
-
The interfaces targeted by the operator to be mapped to the VPP must be enabled as regular linux interfaces prior to installation, and their interface names used as part of the inventory parameters.
VPP bonding works in—Intel X710-DA4, Intel 82599, Intel 1350I, X540-AT2, UCS VIC 1225, UCS VIC 1385 NICs.
-
The VTC server, which acts as the Ansible launchpad node, comes with all software dependencies pre-installed.
- For Red Hat OpenStack Director, the compute nodes are not accessible directly, and the only way to access the nodes is via OSP director. Therefore, the procedure involves installing and configuring SSH keys on the computes using ansible proxy and then installing VTF using the same SAMPLE_INVENTORY file. See Setting Up Ansible Install Through an SSH Proxy (for RHEL OpenStack Platform Director) for details.
-
To run the playbook, a host(s) inventory needs to be provided, along with host parameters:
Use a single inventory file and pass it to Ansible via the -i option. The SAMPLE_INVENTORY file contains an example of such a file for a single host. Re-use this inventory, modifying the host or group settings as needed, as well as adding additional hosts to the group.
The inventory specifies variables that are used to configure VPP, VPFA, and SSH proxy correctly. These variables are: 
Note
Due to a python library limitation, the host variables must be on a single line. Optional parameters are commented out (#),which are not needed for VTF install.### Common group variables ### [all:vars] # When using IPv6 literals encolse the address in square brackets [] VTS_IP="<IP of FQDN OF VTS>" VTS_USERNAME="<vts-username>" VTS_PASSWORD="<vts-password>" VMM_NAME="<vmm-name>" ### VTS-Agent specific variable for P hosts with VTS OVS agent ### #[vts_p_hosts_ovs] #<nova compute name> ansible_ssh_host="DNS name/IP of target host" # Group variables for P hosts with VTS OVS agent #[vts_p_hosts_ovs:vars] #ansible_ssh_user=heat-admin #VMM_ID="e13aebf0-ef9f-4992-b777-ac67a0ddcaa4" ### VTF V-Host (VPP) specific variables, more details are given below ### [vts_v_hosts] ### The host variables specified below must be on a single line ### <nova compute name> ansible_ssh_host="DNS name/IP of target host" vhost_type="compute" host_ip="Underlay IP address" host_netmask_len="Underlay Netmask" net_gw="Underlay Gateway" underlay_if="interface name" interfaces='["bond interface1", "bond interface2"]' u_addresses='["List of routes on the underlay"]' vif_type="vhostuser" # nova compute name - your compute name (e.g. overcloud-compute-0.localdomain) # ansible_ssh_host - your compute IP address, which is reachable from OSP director # host_ip - underlay IP address that will be assigned to this host during VTF install # underlay_if - Type of bond mode used, one of the bonding types. Eg "bond-active-backup" or "bond-balance-xor-l23". If "bond" is specified the default mode balance-xor-l34 will be used # interfaces - List of system interface names for bonding] eg: '["enp6s0f1","enp6s0f0"]', are the constituent member of the BOND. VPP binds to the PCI devices for the uplink interfaces based on the input provided with this variable # u_addresses - List of networks reachable through VPP underlay, generally VTC underlay subnet # V-Host Group variables [vts_v_hosts:vars] #If not using a sudo capable user below, then please specify "ansible_sudo_pass" # Note: by default OSPD creates heat-admin user to access all the nodes so will use this user to access the nodes to install VTF ansible_ssh_user=heat-admin #ansible_ssh_pass="cisco123" #ansible_sudo_pass="cisco123" #ansible_ssh_private_key_file="id_rsa" config_method="static" name_server="<DNS server IP>" #VTS address on the underlay. If not set, defaults to VTS_IP vts_u_address="<VTC-underlay-ip>" # % of memory you want to allocate on compute for huge pages. max_hp_memory_perc=70 # Configure VTF to run in multi-thread mode enable_workers=True #l2_mode=False #[pci_driver="vfio-pci|uio_pci_generic"] #Defaults to uio_pci_generic when not specified. Use "vfio-pci" along with a Cisco VIC. pci_driver="uio_pci_generic" ### Neutron Control Servers ### #[neutron_servers] #<name> ansible_ssh_host="DNS name/IP of target host" #[neutron_servers:vars] #ansible_connection=ssh #If not using a sudo capable user below, then please specify "ansible_sudo_pass" #ansible_ssh_user=heat-admin #ansible_ssh_pass=cisco123 #ansible_sudo_pass="cisco123" #ansible_ssh_private_key_file="id_rsa" #VTS_DRIVER="cisco_vts" #VMM_NAME=OSPD # VTS_USERNAME and PASSWORD can be overriden here, or the all group setting used #VTS_USERNAME=<VTS username> #VTS_PASSWORD=<VTS password> ### Grouping of host-groups behind the SSH Proxy ### # List the host group names that are proxied by an SSH gateway # Comment out when NOT using an SSH proxy # We’ll be using SSH proxy for VTF install so we’re commenting other lines [proxied_hosts:children] #neutron_servers vts_v_hosts # Access parameters to the proxied hosts. **The password is that of the ssh proxy** [proxied_hosts:vars] ansible_ssh_pass=<OSP director password> # **Do not modify or remove the following line** ansible_ssh_common_args='-o ProxyCommand="ssh -C -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no -o ControlMaster=auto -o ControlPersist=300s -o GSSAPIAuthentication=no -W %h:%p -q {{hostvars[groups[\'proxy\'][0]][\'ansible_ssh_user\']}}@{{hostvars[groups[\'proxy\'][0]][\'ansible_ssh_host\']}}"' ### SSH Proxy node definition. Do not modify the group name ### # Maximum of one proxy is currently supported [proxy] undercloud1 ansible_ssh_host="<OSP Director IP>" # SSH Proxy access parameters. Do not modify the group name [proxy:vars] ansible_ssh_user=<OSP director username> ansible_ssh_pass=<OSP director password> - The binding HOSTNAME in Inventory file, should match OpenStack Nova compute name.
If you
Using Ansible Vault for Sensitive Data
The sample file "vts-host" in the playbooks/group_vars directory contains a list of such attributes.
Vault encrypted parameters can be host or group parameters and are automatically included in an Ansible run, provided a vault password is provided. Additional vault protected files, containing parameters, can also be included via the Ansible command line.
To vault protect a file defining group parameters do the following:
| Step 1 | Enter the playbooks/group_vars directory. |
| Step 2 | Create/edit
the filename corresponding to the group name, for example:
vi vts-hosts |
| Step 3 | Add the parameters in plain text and yaml format. |
| Step 4 | Exit the editor. |
| Step 5 | Use the
ansible-vault encrypt <file name> command on the file. For example:
ansible-vault encrypt vts-hostsAnsible asks for a vault password to be entered. This password must be kept confidential, and will be required when running a playbook using the vaulted file. |
| Step 6 | To re-edit
an encrypted file use the ansible-vault edit <filename> command
To run a
playbook against an inventory which either wholly or partially is protected by
Ansible vault, add the --ask-vault-pass to the ansible command line. For
example:
ansible-playbook vpp.yaml -i SAMPLE_INVENTORY -e ACTION=install --ask-vault-pass ansible-playbook vpp.yaml -i SAMPLE_INVENTORY -e ACTION=install -e @crypto-params.yaml --ask-vault-pas |
Verifying Installation
VPP should have one or more interfaces up and running. Run vppctl show int to verify this.
![]() Note | Upon running, the current VPFA installs a default route to the configured gateway across the underlay interface. If the gateway or the underlay interface is different than the SSH IP interface, this results in a loss of SSH connectivity to the device. Disable the vpfa and vpp services via the console to regain SSH connectivity. |
Deleting VTF in an OpenStack Environment
The following sections provide information about deleting VTF based on the mode of installation (VM or vHost).
Deleting VTF in VM Mode
If VTF is installed in VM, do the following:
Deleting VTF in vHost Mode
| Step 1 | Uninstall vHost from host compute using Ansible script (ansible-playbook -i SAMPLE_INVENTORY vpp.yaml -e ACTION=uninstall). | ||
| Step 2 | Change the
virtual switch to not-defined in Inventory > Host Inventory, and click
Save.
|
Installing VTF on vCenter
You can use the Install Capabilities button in the Host Inventory page to install VTF.
| Step 1 | Specify the VTF Mode in the System Settings. Go to Administration > System Settings page, select VTEP from the drop down. |
| Step 2 | Go to Host Inventory > Virtual Servers. You can install VTF while adding a new host or by editing an existing host. |
| Step 3 | Enter the Host
Information
Ensure that you review the tooltips for important information about the entries. |
| Step 4 | Select the VMM ID for the vCenter VMM. |
| Step 5 | Select the
Virtual Switch. You have the following options:
To install VTF, select vtf-vtep |
| Step 6 | Enter the Host Interface details. |
| Step 7 | Enter the VTF details. |
| Step 8 | Confirm whether the Plugin installation needs to start immediately |
| Step 9 | Click Install VTF on Save. |
Deleting VTF in a vCenter Environment
To delete VTF:
| Step 1 | Power off the VTF VM from vCenter, and delete it under ESXi. |
| Step 2 | Ensure that there is no other VM associated with the DVS port-group. |
| Step 3 | Remove the ESXi host from vCenter under the DVS on which VTF was spawned. |
| Step 4 | Disassociate the VTF from Virtual Forwarding Group (VFG). |
| Step 5 | Convert the Host back to virtual-server in Cisco VTS GUI. |
| Step 6 | Remove the associated TOR from the Admin Domain. |
| Step 7 | Add the ESXi Host back to the DVS in vCenter. |
| Step 8 | Restart the vSphere web client. |
| Step 9 | Verify whether the host is part of the DVS device-group and Admin Domain. |
Verifying VTS Installation
Verifying VTC VM Installation
To verify VTC VM installation:
| Step 1 | Log in to the VTC VM just created using the VTC VM console. | ||
| Step 2 | Ping the
management gateway.
In case ping fails, verify the VM networking to the management network. | ||
| Step 3 | For the VTC VM
CLI, ping the underlay gateway.
In case the ping fails, verify VM networking to the underlay network.
| ||
| Step 4 | Verify whether the VTS UI is reachable, by typing in the VTS management IP in the browser. |
Verifying VTSR Installation
To verify VTSR installation:
| Step 1 | Log in to the
VTSR.
| ||
| Step 2 | Ping the
underlay gateway IP address.
In case ping fails, verify underlay networking. | ||
| Step 3 | Ping the VTC VM.
In case ping fails, verify underlay networking.
| ||
| Step 4 | Run virsh list to make sure the nested VM is running. | ||
| Step 5 | Verify whether
the Virtual Forwarding Group (VFG) group is created on VTS GUI, and VTSR is
part of the VFG group.
|
Verifying VTF Installation
To verify VTF installation:
| Step 1 | Log in to the
VTF VM / vhost.
| ||
| Step 2 | Ping the
underlay gateway IP address.
In case ping fails, verify underlay networking. | ||
| Step 3 | Ping the VTC VM
underlay IP address.
In case ping fails, verify underlay networking. | ||
| Step 4 | Verify whether
the VTF CLI is available . To do this, run:
'sudo vppctl If the o/p command fails, run the following command to identify whether vpfa service is up and running: sudo service vpfa statusIf there are errors, try restarting the service. sudo service vpfa restart | ||
| Step 5 | Verify whether
the VTF is part of the VFG, on VTS GUI.
|
Changing Password for Cisco VTS from VTS GUI
The GUI password change will trigger the updating of password on all host agents which are running on the Physical computes. And if there are VTFs in your setup, then the VTSR and VTF passwords will also get updated.
-
Traffic disruption will happen only if you have VTFs installed (Virtual deployment) and it happens because of the vpfa process restart.
In case of a Physical deployment there will not be any traffic disruption.
- For Baremetal ports there is no impact.
- The password change from the GUI will change only the host agent password. Not the Linux password. So, we cannot use the command ‘passwd’
- If you are changing the Linux password of a Physical or Virtual host then you should also update the VTC host inventory with correct password. Changing the Linux password will not impact any traffic.
| Step 1 | Log in to VTS GUI and click on settings icon on the top-right corner and click Change Passphrase. | ||
| Step 2 | Enter the current password, new password, then click Change Passphrase. | ||
| Step 3 | Click
OK in the
Confirm Change Passphrase popup, to confirm.
|
Changing Password for Cisco VTS Linux VM
You can use the Linux command ‘passwd’ to change the VTC VM password. After changing the password, you should use the new password for the subsequent SSH session to the VTC VM.
For an HA installation you must change the password on both Master and Slave with the command ‘passwd’.
Feedback