12.5. Additional Para-virtualized Hardware Configuration

This section will explain how to add additional virtual network or storage to a guest operating system. For more details on configuring network and storage resources on Red Hat Enterprise Linux 5 Virtualization read the document available on Emerging Technologies, Red Hat.com

12.5.1. Virtualized Network Interfaces

Perform the following steps to configure additional network devices for your guest.
Edit your guest configuration file in /etc/xen/YourGuestName replacing YourGuestName with the name of your guest.
The original entry may look like the one below.
vif = [ "mac=00:16:3e:2e:c5:a9,bridge=xenbr0" ]
Add an additional entry to the “vif=” section of the configuration file similar to the one seen below.
vif = [ "mac=00:16:3e:2e:c5:a9,bridge=xenbr0",
    "mac=00:16:3e:2f:d5:a9,bridge=xenbr0" ]
Make sure you generate a unique MAC address for the new interface. You can use the command below.
# echo 'import virtinst.util ; print virtinst.util.randomMAC()' | python
After the guest has been rebooted perform the following step in the guest operating system. Verify the update has been added to your /etc/modules.conf in Red Hat Enterprise Linux 3 or /etc/modprobe.conf in Red Hat Enterprise Linux 4 and Red Hat Enterprise Linux 5. Add a new alias for each new interface you added.
alias eth1 xen-vnif
Now test that each new interface you added make sure it is available inside the guest.
# ifconfig eth1
The command above should display the properties of eth1, repeat the command for eth2 if you added a third interface, and so on.
Now configure the new network interfaces with redhat-config-network on Red Hat Enterprise Linux 3 or system-config-network on Red Hat Enterprise Linux 4 and Red Hat Enterprise Linux 5.

12.5.2. Virtual Storage Devices

Perform the following steps to configure additional virtual storage devices for your guest.
Edit your guest configuration file in /etc/xen/YourGuestName replacing YourGuestName with the name of your guest. The original entry may look like the one below.
disk = [ "file:/var/lib/libvirt/images/rhel5_64_fv.dsk,hda,w"]
Now, add an additional entry for your new physical device, LUN, partition or volume to the “disk=” parameter in the configuration file. Storage entities which use the para-virtualized driver resemble the entry below. The “tap:aio” parameter instructs the hypervisor to use the para-virtualized driver.
disk = [ "file:/var/lib/libvirt/images/rhel5_64_fv.dsk,hda,w",
    "tap:aio:/var/lib/libvirt/images/UserStorage1.dsk,xvda,w" ]
If you want to add more entries just add them to the “disk=” section as a comma separated list.

Note

You need to increment the letter for the 'xvd' device, that is for your second storage entity it would be 'xvdb' instead of 'xvda'.
disk = [ "file:/var/lib/libvirt/images/rhel5_64_fv.dsk,hda,w",
    "tap:aio:/var/lib/libvirt/images/UserStorage1.dsk,xvda,w",
    "tap:aio:/var/lib/libvirt/images/UserStorage2.dsk,xvdb,w" ]
Verify the partitions have been created and are available.
# cat /proc/partitions
major minor  #blocks    name
   3     0   10485760   hda
   3     1     104391   hda1
   3     2   10377990   hda2
 202     0      64000   xvda
 202     1      64000   xvdb
 253     0    8257536   dm-0
 253     1    2031616   dm-1
In the above output you can see the partition or device “xvdb” is available to the system.
Mount the new devices and disks to local mount points and update the /etc/fstab inside the guest to mount the devices and partitions at boot time.
# mkdir /mnt/pvdisk_xvda
# mkdir /mnt/pvdisk_xvdb
# mount /dev/xvda /mnt/pvdisk_xvda
# mount /dev/xvdb /mnt/pvdisk_xvdb
# df /mnt
Filesystem           1K-blocks      Used   Available Use%  Mounted on
/dev/xvda                64000        15       63985   1%  /mnt/pvdisk_xvda
/dev/xvdb                64000        15       63985   1%  /mnt/pvdisk_xvdb
Red Hat logoGithubRedditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

© 2024 Red Hat, Inc.