Deploying the Cisco IOS XRv Router
This chapter covers information about deploying the Cisco IOS XRv Router using VMware ESXi and KVM/QEMU hypervisors, and booting the Cisco IOS XRv Router as the VM.
- Deployment Types
- Hardcoded Username for Demo-Locked Image
- Cisco IOS XRv Router Deployment on VMware ESXi
- Cisco IOS XRv Router Deployment on KVM/QEMU
Deployment Types
Like other IOS XR platforms, Cisco IOS XRv Router supports turboboot pre-installed hard disks (VMDK).
Turboboot—Cisco IOS XRv Router can turboboot from a .vm or .vmdk image. When booting Cisco IOS XRv Router for the first time from a hard disk image, IOS XR undergoes a normal turboboot process that involves expanding the IOS XR software on disk, followed by an automatic reload. After this reboot, IOS XR is fully installed and boots normally from this disk.
Hardcoded Username for Demo-Locked Image
As an anti-security feature for demo-locked image, Cisco IOS XRv Router provides hard-coded username-password combinations that can be used to login at and administer the VM:
Username | Password |
---|---|
lab |
lab |
cisco |
cisco |
root |
root |
admin |
admin |
Note |
These hardcoded username-password combinations are available only in the demo-locked image. You cannot configure these user names (even at the initial "Admin Setup Dialog"); attempting to do so will be rejected with an appropriate error message. The workaround is simply to pick a different username (other than above listed) to configure instead. |
Cisco IOS XRv Router Deployment on VMware ESXi
VMware ESXi is an enterprise-level computer virtualization product offered by VMware. It is VMware's enterprise software hypervisor for guest virtual servers that run directly on the host server hardware without requiring an additional underlying operating system. For more information, refer to VMware documentation.
Prerequisites
- Before creating a new VM, upload the Cisco IOS XRv Router VMDK to your ESXi server.
- The Cisco IOS XRv Router is compatible with ESXi server version 5.0 or later.
- The ESXi server supports only E1000 network driver and does not support virtio. Hence, make sure you define all NICs as E1000 before running on ESXi.
- The Firewall options on the host server must be enabled to allow the VM serial port to be connected over the network. To enable Firewall option, select Configuration->Security Profile->Firewall Properties->'VM serial port connected over network' on the host server.
Supported Parameters
While creating a new virtual machine using vSphere, specify these parameters with the recommended settings:
Parameters | Recommendation | ||
---|---|---|---|
Configuration |
Custom |
||
Name and Location |
as with any other VM |
||
Storage |
as with any other VM |
||
Virtual Machine Version |
Virtual Machine Version: 8 |
||
Guest Operating System |
Other, Version: Other (32-bit) |
||
CPUs |
1 virtual socket, 1 core per virtual socket |
||
Memory |
minimum 4 GB, maximum 8 GB |
||
Network |
1-4 NICs, each NIC must use "E1000" adapter type. First NIC will be MgmtEthernet0/0/CPU0/0 while subsequent NICs will be GigabitEthernet
|
||
SCSI Controller |
LSI Logic Parallel (default) |
||
Select a Disk |
Use an existing virtual disk |
||
Select Existing Disk |
select Cisco IOS XRv Router VMDK image |
||
Advanced Options |
(default) |
||
Ready to Complete |
select Edit the virtual machine settings before completion |
Creating the Cisco IOS XRv Router Virtual Machine Using the vSphere GUI
To create the Cisco IOS XRv Router Virtual Machine using the VMware VSphere, perform these tasks:
Note |
The following procedure provides a general guideline for how to deploy the Cisco IOS XRv Router. However, the exact steps that you need to perform may vary depending on the characteristics of your VMware environment and setup. |
Before you go ahead, make sure that:
What to Do Next
- on the demo locked image, login with hardcoded username/password combinations.
- on the production image, you will be prompted to configure a root-system username and password, which can subsequently use to log in.
Cisco IOS XRv Router Deployment on KVM/QEMU
Kernel-based Virtual Machine (KVM) is a virtualization infrastructure for the Linux kernel. QEMU (Quick EMUlator) is a free and open-source software product that performs hardware virtualization. You can run QEMU on a Cisco UCS server with KVM installed. The recommended version of QEMU for Cisco IOS XRv Router reference platform is QEMU 1.0.
- Supported Parameters
- Creating and Modifying Disk Images
- Creating Cisco IOS XRv Router Virtual Machine Using QEMU
- Examples: Cisco IOS XRv Router Deployment on KVM/QEMU
Supported Parameters
Parameters | Cisco IOS XRv Router Comments | ||
---|---|---|---|
-nographic |
Recommended as Cisco IOS XRv Router does not support VGA. |
||
-m memory |
-m 4096 - minimum supported is 3072 (3 GB), maximum is 8192 (8 GB) |
||
-hda disk-image |
Required. Minimum/preferred size is 2 GB.
|
||
-hdb disk-image-2 |
Optional. For disk1 |
||
-serial ... |
Requires at least one, can use up to 4 (IOS console + 3 ksh consoles) |
||
-cdrom ... |
Supported for configuration from CVAC. As the CD-ROM is read-only, it is safe for multiple VM instances to share a CD-ROM if desired. |
||
-net ... -net or -netdev ... -device |
The -netdev ... -device... syntax is preferred.
|
Creating and Modifying Disk Images
Cisco IOS XRv Router supports a secondary disk as a means to provide files beyond the base OS.
To create and modify disk images perform these steps:
1. Format the disk in MSDOS (FAT32) format.
2. Open the disk image in guestfish.
3. List disk partitions.
4. Mount the desired partition as root filesystem.
5. Add the desired file to the disk.
6. (Optional) Verify the file is present.
DETAILED STEPS
Step 1 |
Format the disk in MSDOS (FAT32) format. Example: mkfs.msdos filedisk.vmdk |
Step 2 |
Open the disk image in guestfish. Example: guestfish -a filedisk.vmdk run |
Step 3 |
List disk partitions. Example: list-filesystems /dev/vda: vfat |
Step 4 |
Mount the desired partition as root filesystem. Example: mount /dev/vda/ |
Step 5 |
Add the desired file to the disk. Example: upload xrvr-4.3.2.08I.pie /xrvr.pie |
Step 6 |
(Optional) Verify the file is present. Example: ls /xrvr.pie |
Creating Cisco IOS XRv Router Virtual Machine Using QEMU
To create Cisco IOS XRv Router Virtual Machine using QEMU, perform these tasks:
Before you go ahead, make sure you have QEMU emulator version 1.0.
1. Download xrvr-full-demo.vmdk or xrvr-full-prod.vmdk file from Cisco IOS XRv Router software installation image package and copy it to the VM Datastore.
2. (Optional) Create a disk1.
3. Start QEMU with IOS XRv image.
4. QEMU waits for first serial.
5. Start TELNET sessions to the configured serial ports in separate windows.
6. Cisco IOS XRv Router proceeds with TURBOBOOT.
DETAILED STEPS
Step 1 | Download xrvr-full-demo.vmdk or xrvr-full-prod.vmdk file from Cisco IOS XRv Router software installation image package and copy it to the VM Datastore. |
Step 2 |
(Optional) Create a disk1. Example: qemu-img create -f vmdk blank.vmdk 1G |
Step 3 |
Start QEMU with IOS XRv image. Example: qemu-system-x86_64\ -smp cores=1,sockets=8\ -nographic\ -m 8192\ -hda xrvr-full-turboboot-prod.vmdk\ -hdb blank.vmdk\ -serial telnet::13101,server,wait\ -serial telnet::13102,server,nowait\ -serial telnet::13103,server,nowait\ -net nic,model=e1000,vlan=1,macaddr=00:01:00:ff:00:0\ |
Step 4 | QEMU waits for first serial. |
Step 5 |
Start TELNET sessions to the configured serial ports in separate windows. Example: telnet localhost 13101 (IOS XRv Console Port) telnet localhost 13102 (IOS XRv Auxiliary (AUX) Port) |
Step 6 | Cisco IOS XRv Router proceeds with TURBOBOOT. |
Examples: Cisco IOS XRv Router Deployment on KVM/QEMU
VM 1 | VM 2 |
---|---|
qemu-system-x86_64 \ -nographic \ -m 4096 \ -hda xrvr-full-turboboot-1.vmdk \ -serial telnet::9101,server,nowait \ -serial telnet::9102,server,nowait \ -net socket,listen=localhost:9001,vlan=1 \ -net nic,model=e1000,vlan=1,macaddr=00:01:00:ff:00:00 \ -net socket,listen=localhost:9002,vlan=2 \ -net nic,model=e1000,vlan=2,macaddr=00:01:00:ff:00:01 |
qemu-system-x86_64 \ -nographic \ -m 4096 \ -hda xrvr-full-turboboot-2.vmdk \ -serial telnet::9111,server,nowait \ -serial telnet::9112,server,nowait \ -net socket,connect=localhost:9001,vlan=1 \ -net nic,model=e1000,vlan=1,macaddr=00:01:00:ff:00:10 \ -net socket,connect=localhost:9002,vlan=2 \ -net nic,model=e1000,vlan=2,macaddr=00:01:00:ff:00:11 |