Provision the NetScaler VPX instance by using the virsh program
The virsh
program is a command line tool for managing VM Guests. Its functionality is similar to that of Virtual Machine Manager. It enables you to change a VM Guest’s status (start, stop, pause, and so on), to set up new Guests and devices, and to edit existing configurations. The virsh
program is also useful for scripting VM Guest management operations.
To provision NetScaler VPX by using the virsh
program, follow these steps:
-
Use the tar command to untar the NetScaler VPX package. The NSVPX-KVM-*_nc.tgz package contains the following components:
- The Domain XML file specifying VPX attributes [NSVPX-KVM-*_nc.xml]
- Check sum of NS-VM Disk Image [Checksum.txt]
- NS-VM Disk Image [NSVPX-KVM-*_nc.raw]
Example:
tar -xvzf NSVPX-KVM-10.1-117_nc.tgz NSVPX-KVM-10.1-117_nc.xml NSVPX-KVM-10.1-117_nc.raw checksum.txt <!--NeedCopy-->
-
Copy the
NSVPX-KVM-\*\_nc.xml XML
file to a file named\<DomainName\>-NSVPX-KVM-\*\_nc.xml
. The <DomainName> is also the name of the virtual machine. Example:cp NSVPX-KVM-10.1-117_nc.xml NetScaler-VPX-NSVPX-KVM-10.1-117_nc.xml <!--NeedCopy-->
-
Edit the
\<DomainName\>-NSVPX-KVM-\*\_nc.xml
file to specify the following parameters:- name— Specify the name.
-
Mac— Specify the MAC address.
Note:
The domain name and the MAC address have to be unique.
-
source file— Specify the absolute disk-image source path. The file path has to be absolute. You can specify the path of the RAW image file or a QCOW2 image file.
If you want to specify a RAW image file, specify the disk image source path as shown in the following example:
Example:
<name>NetScaler-VPX</name> <mac address='52:54:00:29:74:b3'/> <source file='/root/NSVPX-KVM-10.1-117_nc.raw'/> <!--NeedCopy-->
Specify the absolute QCOW2 disk-image source path and define the driver type as qcow2, as shown in the following example:
Example:
<name>NetScaler-VPX</name> <mac address='52:54:00:29:74:b3'/> <driver name ='qemu' type='qcow2'/> <source file='/root/NSVPX-KVM-10.1-117_nc.qcow'/>* <!--NeedCopy-->
-
Edit the
\<DomainName\>-NSVPX-KVM-\*\_nc.xml
file to configure the networking details:- source dev— specify the interface.
- mode— specify the mode. The default interface is Macvtap Bridge.
Example: Mode: MacVTap Bridge Set target interface as
ethx
and mode as bridge Model type asvirtio
<interface type='direct'> <mac address='52:54:00:29:74:b3'/> <source dev='eth0' mode='bridge'/> <target dev='macvtap0'/> <model type='virtio'/> <alias name='net0'/> <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/> </interface> <!--NeedCopy-->
Here, eth0 is the physical interface attached to the VM.
-
Define the VM attributes in the
\<DomainName\>-NSVPX-KVM-\*\_nc.xml
file by using the following command:virsh define \<DomainName\>-NSVPX-KVM-\*\_nc.xml <!--NeedCopy-->
Example:
virsh define NS-VPX-NSVPX-KVM-10.1-117_nc.xml <!--NeedCopy-->
-
Start the VM by entering the following command:
virsh start \[\<DomainName\> | \<DomainUUID\>\] <!--NeedCopy-->
Example:
virsh start NetScaler-VPX <!--NeedCopy-->
-
Connect the Guest VM through the console:
virsh console \[\<DomainName\> | \<DomainUUID\> |\<DomainID\> \] <!--NeedCopy-->
Example:
virsh console NetScaler-VPX <!--NeedCopy-->
virsh
program
Add more interfaces to NetScaler VPX instance using After you have provisioned the NetScaler VPX on KVM, you can add additional interfaces.
To add more interfaces, follow these steps:
-
Shut down the NetScaler VPX instance running on the KVM.
-
Edit the
\<DomainName\>-NSVPX-KVM-\*\_nc.xml
file using the command:virsh edit \[\<DomainName\> | \<DomainUUID\>\] <!--NeedCopy-->
-
In the
\<DomainName\>-NSVPX-KVM-\*\_nc.xml
file, append the following parameters:-
For MacVTap
- Interface type— Specify the interface type as ‘direct’.
- MAC address— Specify the MAC address and make sure the MAC address is unique across the interfaces.
- source dev— Specify the interface name.
- mode— Specify the mode. The modes supported are - Bridge, VEPA, Private, and Pass-through
- model type— Specify the model type as
virtio
Example:
Mode: MacVTap Pass-through
Set target interface as
ethx
, Mode as bridge, and model type asvirtio
<interface type='direct'> <mac address='52:54:00:29:74:b3'/> <source dev='eth1' mode='passthrough'/> <model type='virtio'/> </interface> <!--NeedCopy-->
Here eth1 is the physical interface attached to the VM.
-
For Bridge Mode
Note:
Make sure that you have configured a Linux bridge in the KVM host, bound the physical interface to the bridge, and put the bridge in the UP state.
- Interface type— Specify the interface type as ‘bridge’.
- MAC address— Specify the MAC address and make sure the MAC address is unique across the interfaces.
- source bridge— Specify the bridge name.
- model type— Specify the model type as
virtio
Example: Bridge Mode
<interface type='bridge'> <mac address='52:54:00:2d:43:a4'/> <source bridge='br0'/> <model type='virtio'/> </interface> <!--NeedCopy-->
-