|
|
Line 15: |
Line 15: |
| | | |
| * [[vnx-install-ubuntu|Installation of VNX over Ubuntu (v11.04, 10.10, 10.04 and 9.10)]] | | * [[vnx-install-ubuntu|Installation of VNX over Ubuntu (v11.04, 10.10, 10.04 and 9.10)]] |
− |
| |
− | == Installation over Ubuntu 10.04/9.10 ==
| |
− |
| |
− | This section describes the procedure for installing VNX over Ubuntu 10.04 or 9.10. Open a root shell window and follow these steps:
| |
− | <ul>
| |
− |
| |
− | <li>Install all packages required (basic development, virtualization, perl libraries and auxiliar packages):</li>
| |
− | apt-get update
| |
− | apt-get install build-essential qemu-kvm libvirt-bin vlan xterm \
| |
− | bridge-utils screen virt-manager virt-viewer libxml-checker-perl \
| |
− | libxml-parser-perl libnetaddr-ip-perl libnet-pcap-perl \
| |
− | libnet-ipv6addr-perl liberror-perl libexception-class-perl \
| |
− | uml-utilities libxml-libxml-perl libxml2-dev libgnutls-dev \
| |
− | libdevmapper-dev libterm-readline-perl-perl libnet-telnet-perl \
| |
− | libnet-ip-perl libreadonly-perl libmath-round-perl libappconfig-perl \
| |
− | libdbi-perl graphviz libnl-dev genisoimage gnome-terminal libfile-homedir-perl python-dev libsasl2-dev
| |
− |
| |
− | <!--Note: for Ubuntu 9.04 change "qemu-kvm" package by "qemu kvm" -->
| |
− | <li>If you use 64 bits version of Ubuntu, install 32 bits compatibility libraries:</li>
| |
− | apt-get install ia32-libs
| |
− |
| |
− | <li>Install libvirt 0.9.3:</li>
| |
− | /etc/init.d/libvirt-bin stop
| |
− | wget http://libvirt.org/sources/libvirt-0.9.3.tar.gz
| |
− | tar xfvz libvirt-0.9.3.tar.gz
| |
− | cd libvirt-0.9.3
| |
− | ./configure --without-xen --prefix=/usr && make && make install
| |
− | /etc/init.d/libvirt-bin start
| |
− |
| |
− | '''NOTE''': VNX should work with libvirt versions from 0.7.5 to 0.8.5 (it has been mainly tested with 0.7.5 and 0.8.5). Note that, although libvirt 0.7.5 is available as a package in Ubuntu 10.04, it has some problems related with the Apparmor profiles configured for libvirt. If you disable Apparmor (with "/etc/init.d/apparmor stop"), VNX will work with libvirt 0.7.5 installed as package, however we recommend to download and compile version 0.8.5 as described above, in order to maintain Apparmor in your system.
| |
− |
| |
− | <li>Install Sys::Virt perl module:</li>
| |
− | <ul>
| |
− | <li>For Ubuntu 10.04, just install the libsys-virt-perl package</li>
| |
− | apt-get install libsys-virt-perl
| |
− | <!--
| |
− | '''IMPORTANT NOTE''': Windows XP virtual machines started with VNX over Ubuntu 9.10 frequently hang when executing commands or with high traffic loads. The problem could be related with virtual network drivers. We are investigating the problem to find a solution. By now, Ubuntu 10.04 is the recomended platform to test VNX.
| |
− | -->
| |
− | <li>For Ubuntu 9.10, as Sys::Virt library is not available as a package, install it manually:</li>
| |
− | wget http://search.cpan.org/CPAN/authors/id/D/DA/DANBERR/Sys-Virt-0.2.3.tar.gz
| |
− | tar xfvz Sys-Virt-0.2.3.tar.gz
| |
− | cd Sys-Virt-0.2.3
| |
− | perl Makefile.PL
| |
− | make install
| |
− | </ul>
| |
− |
| |
− | <li>Install VNX:</li>
| |
− | mkdir /tmp/vnx-update
| |
− | cd /tmp/vnx-update
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/vnx-latest.tgz
| |
− | tar xfvz vnx-latest.tgz
| |
− | cd vnx-*
| |
− | ./install_vnx
| |
− |
| |
− | <li>Create the VNX config file (/etc/vnx.conf). You just can move the sample config file:</li>
| |
− | mv /etc/vnx.conf.sample /etc/vnx.conf
| |
− |
| |
− | <li>Download root file systems from http://idefix.dit.upm.es/download/vnx/filesystems and copy them to /usr/share/vnx/filesystems directory:</li>
| |
− | cd /usr/share/vnx/filesystems
| |
− |
| |
− | # ubuntu server
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-v02.qcow2.bz2
| |
− | bunzip2 root_fs_ubuntu-10.10-v02.qcow2.bz2
| |
− | ln -s root_fs_ubuntu-10.10-v02.qcow2 root_fs_ubuntu
| |
− |
| |
− | # ubuntu with gui
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
| |
− | bunzip2 root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
| |
− | ln -s root_fs_ubuntu-10.10-gui-v01.qcow2 root_fs_ubuntu-gui
| |
− |
| |
− | # freebsd server
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-v01.qcow2.bz2
| |
− | bunzip2 root_fs_freebsd-8.1-v01.qcow2.bz2
| |
− | ln -s root_fs_freebsd-8.1-v01.qcow2 root_fs_freebsd
| |
− |
| |
− | # freebsd gui
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-gui-v01.qcow2.bz2
| |
− | bunzip2 root_fs_freebsd-8.1-gui-v01.qcow2.bz2
| |
− | ln -s root_fs_freebsd-8.1-gui-v01.qcow2 root_fs_freebsd-gui
| |
− |
| |
− | # winxp and win7
| |
− | # Sorry! Unfortunately for legal reasons we cannot distribute windows XP
| |
− | # or Windows 7 root filesystems. See VNX documentation for detailed recipes
| |
− | # to create these root fylesystems from scratch
| |
− |
| |
− | <li>Additionally, if you plan to use VNUML root filesystem:</li>
| |
− | # VNUML root_fs_tutorial and kernel
| |
− | cd /usr/share/vnx/filesystems
| |
− | wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_tutorial-0.6.0.bz2
| |
− | bunzip2 root_fs_tutorial-0.6.0.bz2
| |
− | ln -s root_fs_tutorial-0.6.0 root_fs_tutorial
| |
− | cd /usr/share/vnx/kernels
| |
− | wget -N http://jungla.dit.upm.es/~vnx/download/kernels/linux-2.6.18.1-bb2-xt-4m
| |
− | chmod +x linux-2.6.18.1-bb2-xt-4m
| |
− | ln -s linux-2.6.18.1-bb2-xt-4m linux
| |
− |
| |
− | </ul>
| |
− |
| |
− | '''NOTE for Ubuntu 10.04.1''': It seems that an additional package has to be installed:
| |
− | apt-get install kvm-pxe
| |
− |
| |
− |
| |
− | === Additional install steps for Dynamips support ===
| |
− |
| |
− | * Install Dynamips and Dynagen:
| |
− | apt-get install dynamips dynagen
| |
− |
| |
− | * Create a file /etc/init.d/dynamips (taken from http://7200emu.hacki.at/viewtopic.php?t=2198):
| |
− | <pre>
| |
− | #!/bin/sh
| |
− | # Start/stop the dynamips program as a daemon.
| |
− | #
| |
− | ### BEGIN INIT INFO
| |
− | # Provides: dynamips
| |
− | # Default-Start: 2 3 4 5
| |
− | # Default-Stop: 0 1 6
| |
− | # Short-Description: Cisco hardware emulator daemon
| |
− | ### END INIT INFO
| |
− |
| |
− | DAEMON=/usr/bin/dynamips
| |
− | NAME=dynamips
| |
− | PORT=7200
| |
− | PIDFILE=/var/run/$NAME.pid
| |
− | LOGFILE=/var/log/$NAME.log
| |
− | DESC="Cisco Emulator"
| |
− | SCRIPTNAME=/etc/init.d/$NAME
| |
− |
| |
− | test -f $DAEMON || exit 0
| |
− |
| |
− | . /lib/lsb/init-functions
| |
− |
| |
− |
| |
− | case "$1" in
| |
− | start) log_daemon_msg "Starting $DESC " "$NAME"
| |
− | start-stop-daemon --start --chdir /tmp --background --make-pidfile --pidfile $PIDFILE --name $NAME --startas $DAEMON -- -H $PORT -l $LOGFILE
| |
− | log_end_msg $?
| |
− | ;;
| |
− | stop) log_daemon_msg "Stopping $DESC " "$NAME"
| |
− | start-stop-daemon --stop --quiet --pidfile $PIDFILE --name $NAME
| |
− | log_end_msg $?
| |
− | ;;
| |
− | restart) log_daemon_msg "Restarting $DESC " "$NAME"
| |
− | start-stop-daemon --stop --retry 5 --quiet --pidfile $PIDFILE --name $NAME
| |
− | start-stop-daemon --start --chdir /tmp --background --make-pidfile --pidfile $PIDFILE --name $NAME --startas $DAEMON -- -H $PORT -l $LOGFILE
| |
− | log_end_msg $?
| |
− | ;;
| |
− | status)
| |
− | status_of_proc -p $PIDFILE $DAEMON $NAME && exit 0 || exit $?
| |
− | #status $NAME
| |
− | #RETVAL=$?
| |
− | ;;
| |
− | *) log_action_msg "Usage: $SCRIPTNAME {start|stop|restart|status}"
| |
− | exit 2
| |
− | ;;
| |
− | esac
| |
− | exit 0
| |
− |
| |
− | </pre>
| |
− |
| |
− | * Set execution permissions for the script and add it to system start-up:
| |
− | chmod +x /etc/init.d/dynamips
| |
− | update-rc.d dynamips defaults
| |
− | /etc/init.d/dynamips start
| |
− |
| |
− | * Download and install cisco IOS image:
| |
− | cd /usr/share/vnx/filesystems
| |
− | # Cisco image
| |
− | wget ... c3640-js-mz.124-19.image
| |
− | ln -s c3640-js-mz.124-19.image c3640
| |
− |
| |
− | * Calculate the idle-pc value for your computer following the procedure in http://dynagen.org/tutorial.htm:
| |
− | dynagen /usr/share/vnx/examples/R.net
| |
− | console R # type 'no' to exit the config wizard and wait
| |
− | # for the router to completely start
| |
− | idle-pc get R
| |
− | Once you know the idle-pc value for your system, include it in /etc/vnx.conf file.
| |
− |
| |
− | === Additional install steps for Olive support ===
| |
− |
| |
− | Several additional steps are needed to support Olive (Juniper) routers in VNX scenarios:
| |
− |
| |
− | <ul>
| |
− |
| |
− | <!-- Ya no hace falta desde que se usa <qemu:commandline>
| |
− |
| |
− | <li>Install a patched version of libvirt 0.8.5 with support to define the bios used by a virtual machine:</li>
| |
− |
| |
− | <ul>
| |
− | <li>Copy the following content to a file named libvirt-0.8.5-biosfile.patch (based on http://www.mail-archive.com/libvir-list@redhat.com/msg15952.html):</li>
| |
− | <pre>
| |
− | diff -crB libvirt-0.8.5.orig/src/conf/domain_conf.c libvirt-0.8.5/src/conf/domain_conf.c
| |
− | *** libvirt-0.8.5.orig/src/conf/domain_conf.c 2010-11-22 11:38:08.000000000 +0100
| |
− | --- libvirt-0.8.5/src/conf/domain_conf.c 2010-11-22 11:47:41.000000000 +0100
| |
− | ***************
| |
− | *** 4267,4272 ****
| |
− | --- 4267,4274 ----
| |
− | if (node)
| |
− | def->mem.hugepage_backed = 1;
| |
− |
| |
− | + def->biosfile = virXPathString("string(./biosfile[1])", ctxt);
| |
− | +
| |
− | /* Extract other memory tunables */
| |
− | if (virXPathULong("string(./memtune/hard_limit)", ctxt,
| |
− | &def->mem.hard_limit) < 0)
| |
− | diff -crB libvirt-0.8.5.orig/src/conf/domain_conf.h libvirt-0.8.5/src/conf/domain_conf.h
| |
− | *** libvirt-0.8.5.orig/src/conf/domain_conf.h 2010-11-22 11:38:08.000000000 +0100
| |
− | --- libvirt-0.8.5/src/conf/domain_conf.h 2010-11-22 11:40:18.000000000 +0100
| |
− | ***************
| |
− | *** 885,890 ****
| |
− | --- 885,891 ----
| |
− | unsigned long min_guarantee;
| |
− | unsigned long swap_hard_limit;
| |
− | } mem;
| |
− | + char *biosfile;
| |
− | unsigned short vcpus;
| |
− | unsigned short maxvcpus;
| |
− | int cpumasklen;
| |
− | diff -crB libvirt-0.8.5.orig/src/qemu/qemu_conf.c libvirt-0.8.5/src/qemu/qemu_conf.c
| |
− | *** libvirt-0.8.5.orig/src/qemu/qemu_conf.c 2010-11-22 11:38:08.000000000 +0100
| |
− | --- libvirt-0.8.5/src/qemu/qemu_conf.c 2010-11-22 11:41:05.000000000 +0100
| |
− | ***************
| |
− | *** 3984,3989 ****
| |
− | --- 3984,3995 ----
| |
− | ADD_ARG_LIT(emulator);
| |
− | ADD_ARG_LIT("-S");
| |
− |
| |
− | + if(def->biosfile)
| |
− | + {
| |
− | + ADD_ARG_LIT("-bios");
| |
− | + ADD_ARG_LIT(def->biosfile);
| |
− | + }
| |
− | +
| |
− | /* This should *never* be NULL, since we always provide
| |
− | * a machine in the capabilities data for QEMU. So this
| |
− | * check is just here as a safety in case the unexpected
| |
− | </pre>
| |
− |
| |
− | <li>Install libvirt 0.8.5 with that patch applied:</li>
| |
− | service libvirt-bin stop
| |
− | wget http://libvirt.org/sources/libvirt-0.8.5.tar.gz
| |
− | tar xfvz libvirt-0.8.5.tar.gz
| |
− | cd libvirt-0.8.5
| |
− | patch -p1 -i ../libvirt-0.8.5-biosfile.patch
| |
− | ./configure --without-xen --prefix=/usr && make && make install
| |
− | service libvirt-bin start
| |
− |
| |
− | </ul>
| |
− | -->
| |
− | <li>Download old qemu bios from 0.10.6 version and copy it to /usr/share/qemu directory:</li>
| |
− | wget http://downloads.sourceforge.net/project/kvm/qemu-kvm/0.10.6/qemu-kvm-0.10.6.tar.gz
| |
− | tar xfvz qemu-kvm-0.10.6.tar.gz
| |
− | cp qemu-kvm-0.10.6/pc-bios/bios.bin /usr/share/qemu-kvm/bios-0.10.6.bin
| |
− |
| |
− | <!-- Not needed, it seems to work without downloading this drivers
| |
− | <li>Download i82559 ROM from the latest qemu versions (Ubuntu 10.04 does not include that ROM in qemu-kvm package):</li>
| |
− | wget http://downloads.sourceforge.net/project/kvm/qemu-kvm/0.12.5/qemu-kvm-0.12.5.tar.gz
| |
− | tar xfvz qemu-kvm-0.12.5.tar.gz
| |
− | cp qemu-kvm-0.12.5/pc-bios/pxe-i82559er.bin /usr/share/qemu-kvm/
| |
− | -->
| |
− | </ul>
| |
| | | |
| == Installation over Fedora 11 (Draft) == | | == Installation over Fedora 11 (Draft) == |
VNX Installation Guides
Requirements
- Modern Linux distribution (Ubuntu 11.04/10.10/10.04 recommended)
- Processor with virtualization support
- 2 Gb of Memory
- 10 Gb of disk (depends mainly on the numbre of root-file-systems used)
Installing VNX from Packages
Not available yet.
Manual Installation
Installation over Fedora 11 (Draft)
Follow this steps to install VNX over Fedora 11:
yum -y groupinstall "Development Tools"
yum install qemu-kvm libvirt virt-manager virt-viewer perl-XML-LibXML
yum install perl-XML-DOM perl-NetAddr-IP perl-Readonly perl-TermReadKey
yum install perl-Net-Pcap perl-Net-IPv6Addr perl-Net-Telnet perl-Error
yum install perl-Exception-Class perl-ExtUtils-MakeMaker tunctl screen wget
yum install libxml2-devel gnutls-devel device-mapper-devel uml_utilities
yum install roxterm xterm graphviz perl-AppConfig
Install libvirt 0.8.5:
/etc/init.d/libvirtd stop
wget http://libvirt.org/sources/libvirt-0.8.5.tar.gz
tar xfvz libvirt-0.8.5.tar.gz
cd libvirt-0.8.5
./configure --without-xen --prefix=/usr && make && make install
/etc/init.d/libvirtd start
Install SysVirt manually:
wget http://search.cpan.org/CPAN/authors/id/D/DA/DANBERR/Sys-Virt-0.2.4.tar.gz
tar xfvz Sys-Virt-0.2.4.tar.gz
cd Sys-Virt-0.2.4
perl Makefile.PL
make install
Add symbolic link for kvm:
ln -s /usr/bin/qemu-kvm /usr/bin/kvm
Install VNX:
mkdir /tmp/vnx-update
cd /tmp/vnx-update
wget -N http://idefix.dit.upm.es/download/vnx/vnx-latest.tgz
tar xfvz vnx-latest.tgz
cd vnx-*
./install_vnx
Create the VNX config file (/etc/vnx.conf). You just can move the sample config file:
mv /etc/vnx.conf.samble /etc/vnx.conf
Disable host firewall or, alternatively, configure "tun" type network interfaces as trusted interfaces (System->Firewall->Trusted Interfaces).
Download root file systems from http://idefix.dit.upm.es/download/vnx/filesystems and copy them to /usr/share/vnx/filesystems directory:
cd /usr/share/vnx/filesystems
# ubuntu server
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-v01.qcow2.bz2
bunzip2 root_fs_ubuntu-10.10-v01.qcow2.bz2
ln -s root_fs_ubuntu-10.10-v01.qcow2 root_fs_ubuntu
# ubuntu with gui
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
bunzip2 root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
ln -s root_fs_ubuntu-10.10-gui-v01.qcow2 root_fs_ubuntu-gui
# freebsd server
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-v01.qcow2.bz2
bunzip2 root_fs_freebsd-8.1-v01.qcow2.bz2
ln -s root_fs_freebsd-8.1-v01.qcow2 root_fs_freebsd
# freebsd gui
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-gui-v01.qcow2.bz2
bunzip2 root_fs_freebsd-8.1-gui-v01.qcow2.bz2
ln -s root_fs_freebsd-8.1-gui-v01.qcow2 root_fs_freebsd-gui
# winxp and win7
# Sorry! Unfortunately for legal reasons we cannot distribute windows XP
# or Windows 7 root filesystems. See VNX documentation for detailed recipes
# to create these root fylesystems from scratch
Additional install steps for Dynamips support
- Install Dynamips and Dynagen:
wget http://downloads.sourceforge.net/project/dyna-gen/dynamips%20Linux%20RPM/0.2.8-RC2/dynamips-0.2.8RC2-1.i386.rpm
rpm -i dynamips-0.2.8RC2-1.i386.rpm
wget http://downloads.sourceforge.net/project/dyna-gen/dynagen%20source%20_%20Linux/dynagen%200.11.0/dynagen-0.11.0-1.fc9.noarch.rpm
rpm -i dynagen-0.11.0-1.fc9.noarch.rpm
- Add dynamips to system start-up and start it manually for this time:
chkconfig --add dynamips
/etc/init.d/dynamips start
- Download and install cisco IOS image:
cd /usr/share/vnx/filesystems
# Cisco image
wget ... c3640-js-mz.124-19.image
ln -s c3640-js-mz.124-19.image c3640
dynagen /usr/share/vnx/examples/R.net
console R # type 'no' to exit the config wizard and wait
# for the router to completely start
idle-pc get R
Once you know the idle-pc value for your system, include it in /etc/vnx.conf file.
Additional install steps for Olive support
Several additional steps are needed to support Olive (Juniper) routers in VNX scenarios:
- Download old qemu bios from 0.10.6 version and copy it to /usr/share/qemu directory:
wget http://downloads.sourceforge.net/project/kvm/qemu-kvm/0.10.6/qemu-kvm-0.10.6.tar.gz
tar xfvz qemu-kvm-0.10.6.tar.gz
cp qemu-kvm-0.10.6/pc-bios/bios.bin /usr/share/qemu/bios-0.10.6.bin
Installation over CentOS 5.6 (Draft)
Recipe tested over a Dell Optiplex 745 installing Cent0S 5.6 64 bits from DVD.
Follow this steps to install VNX over CentOS 5.6:
- Install the system from the CentOS 5.6 DVD with the options you want. Restart the system and update all packages with:
yum update
Once installation is finished, configure the RPMForge repository following the procedure described here:
wget http://packages.sw.be/rpmforge-release/rpmforge-release-0.5.2-2.el5.rf.i386.rpm
rpm --import http://apt.sw.be/RPM-GPG-KEY.dag.txt
rpm -K rpmforge-release-0.5.2-2.el5.rf.*.rpm
rpm -i rpmforge-release-0.5.2-2.el5.rf.*.rpm
yum update
Install packages:
yum -y groupinstall "Development Tools"
yum -y install qemu kvm kmod-kvm libvirt virt-manager virt-viewer
yum -y install perl-XML-LibXML perl-XML-Parser perl-Net-Telnet tunctl screen
yum -y install wget libxml2-devel gnutls-devel perl-Net-Pcap perl-Net-IPv6Addr
yum -y install perl-Error perl-XML-DOM perl-NetAddr-IP perl-Readonly
yum -y install perl-TermReadKey perl-Exception-Class graphviz perl-AppConfig
yum -y install perl-Sys-Virt
--- Fallan
roxterm
yum install device-mapper-devel uml_utilities
perl-ExtUtils-MakeMaker
Install uml_utilities manually (not rpm package found for CentOS 5):
mkdir src
cd src
wget http://user-mode-linux.sourceforge.net/uml_utilities_20070815.tar.bz2
tar xfvj uml_utilities_20070815.tar.bz2
cd tools-20070815/
yum -y install readline-devel ncurses-devel fuse-devel
make
make install
cd ..
Install libvirt 0.8.8:
/etc/init.d/libvirtd stop
wget http://libvirt.org/sources/libvirt-0.8.8.tar.gz
tar xfvz libvirt-0.8.8.tar.gz
cd libvirt-0.8.8
./configure --without-xen --prefix=/usr && make && make install
rm -f /usr/lib/libvirt.so.0
ln -s /usr/lib/libvirt.so.0.8.8 /usr/lib/libvirt.so.0
rm -f /usr/lib/libvirt-qemu.so.0
ln -s /usr/lib/libvirt-qemu.so.0.8.8 /usr/lib/libvirt-qemu.so.0
rm -f /usr/lib64/libvirt*
ln -s /usr/lib/libvirt* /usr/lib64/
/etc/init.d/libvirtd start
Add symbolic link for kvm:
ln -s /usr/bin/qemu /usr/bin/kvm
Install VNX:
mkdir /tmp/vnx-update
cd /tmp/vnx-update
wget -N http://idefix.dit.upm.es/download/vnx/vnx-latest.tgz
tar xfvz vnx-latest.tgz
cd vnx-*
./install_vnx
Create the VNX config file (/etc/vnx.conf). You just can move the sample config file:
mv /etc/vnx.conf.sample /etc/vnx.conf
Disable SELINUX. If not disabled, virtual machines fail to start with:
Connecting to qemu:///system hypervisor...OK
libvirt error code: 1, message: internal error Process exited while reading console log output: char device redirected to /dev/pts/4
bind(unix:/root/.vnx/scenarios/simple_ubuntu/vms/ubuntu/ubuntu_socket): Permission denied
chardev: opening backend "socket" failed
Check that the hostname is correctly configured (in /etc/hosts it has to appear in the 127.0.0.1 and ::1 lines). If not configured you could get the following error when accesing virtual machine consoles:
virsh console ubuntu
error:Falló al obtener nombre del host local
Disable host firewall or, alternatively, allow the services you want to use among virtual machines.
Download root file systems from http://idefix.dit.upm.es/download/vnx/filesystems and copy them to /usr/share/vnx/filesystems directory:
cd /usr/share/vnx/filesystems
# ubuntu server
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-v02.qcow2.bz2
bunzip2 root_fs_ubuntu-10.10-v02.qcow2.bz2
ln -s root_fs_ubuntu-10.10-v02.qcow2 root_fs_ubuntu
# ubuntu with gui
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
bunzip2 root_fs_ubuntu-10.10-gui-v01.qcow2.bz2
ln -s root_fs_ubuntu-10.10-gui-v01.qcow2 root_fs_ubuntu-gui
# freebsd server
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-v01.qcow2.bz2
bunzip2 root_fs_freebsd-8.1-v01.qcow2.bz2
ln -s root_fs_freebsd-8.1-v01.qcow2 root_fs_freebsd
# freebsd gui
wget -N http://idefix.dit.upm.es/download/vnx/filesystems/root_fs_freebsd-8.1-gui-v01.qcow2.bz2
bunzip2 root_fs_freebsd-8.1-gui-v01.qcow2.bz2
ln -s root_fs_freebsd-8.1-gui-v01.qcow2 root_fs_freebsd-gui
# winxp and win7
# Sorry! Unfortunately for legal reasons we cannot distribute windows XP
# or Windows 7 root filesystems. See VNX documentation for detailed recipes
# to create these root fylesystems from scratch
Additional install steps for Dynamips support
- Install Dynamips and Dynagen:
yum -y install libpcap
wget http://downloads.sourceforge.net/project/dyna-gen/dynamips%20Linux%20RPM/0.2.8-RC2/dynamips-0.2.8RC2-1.i386.rpm
rpm --nodeps -i dynamips-0.2.8RC2-1.i386.rpm
wget http://downloads.sourceforge.net/project/dyna-gen/dynagen%20source%20_%20Linux/dynagen%200.11.0/dynagen-0.11.0-1.fc9.noarch.rpm
rpm -i dynagen-0.11.0-1.fc9.noarch.rpm
- Add dynamips to system start-up and start it manually for this time:
chkconfig --add dynamips
/etc/init.d/dynamips start
- Download and install cisco IOS image:
cd /usr/share/vnx/filesystems
# Cisco image
wget ... c3640-js-mz.124-19.image
ln -s c3640-js-mz.124-19.image c3640
dynagen /usr/share/vnx/examples/R.net
console R # type 'no' to exit the config wizard and wait
# for the router to completely start
idle-pc get R
Once you know the idle-pc value for your system, include it in /etc/vnx.conf file.
Additional install steps for Olive support
One additional step is needed to support Olive (Juniper) routers in VNX scenarios:
- Download old qemu bios from 0.10.6 version and copy it to /usr/share/qemu directory:
wget http://downloads.sourceforge.net/project/kvm/qemu-kvm/0.10.6/qemu-kvm-0.10.6.tar.gz
tar xfvz qemu-kvm-0.10.6.tar.gz
cp qemu-kvm-0.10.6/pc-bios/bios.bin /usr/share/qemu/bios-0.10.6.bin