Menu Zavrieť

Inštalácia nástroja VNX (Virtual Networks over linuX (VNX))

Web: http://web.dit.upm.es/vnxwiki/index.php/Main_Page

Autor: Radovan Kohutiar

Požiadavky

  • Moderná linuxová distribúcia (Ubuntu 14.04 alebo novšie) 
  • Aspoň 2GB RAM (odporúčané viac) 
  • Procesor s podporou virtualizácie (potrebné pre KVM virtualizáciu) 
    •  Skontrolujeme príkazom kvm-ok prípadne sudo kvm-ok 
# kvm-ok 
INFO: Your CPU supports KVM extensions 
INFO: /dev/kvm exists 
KVM acceleration can be used 
    • Alebo prehľadať súbor /proc/cpuinfo (hľadáme slová vmx pre intel procesory alebo svm pre AMD procesory) 

Inštalácia

Začneme inštaláciou potrebných balíkov:

udo apt-get update 
sudo apt-get upgrade 
sudo apt-get install \ 
bash-completion bridge-utils curl eog expect genisoimage gnome-terminal \ 
graphviz libappconfig-perl libdbi-perl liberror-perl libexception-class-perl \ 
libfile-homedir-perl libio-pty-perl libmath-round-perl libnetaddr-ip-perl \ 
libnet-ip-perl libnet-ipv6addr-perl libnet-pcap-perl libnet-telnet-perl \ 
libreadonly-perl libswitch-perl libsys-virt-perl libterm-readline-perl-perl \ 
libvirt-bin libxml-checker-perl libxml-dom-perl libxml-libxml-perl \ 
libxml-parser-perl libxml-tidy-perl lxc lxc-templates net-tools \ 
openvswitch-switch picocom pv qemu-kvm screen tree uml-utilities virt-manager \ 
virt-viewer vlan w3m wmctrl xdotool xfce4-terminal xterm 

Ďalej potrebujeme zmeniť konfiguráciu libvirt, preto zeditujeme súbor /etc/libvirt/qemu.conf a nastavíme nasledujúce parametre:

security_driver = "none" 
user = "root" 
group = "root" 
cgroup_device_acl = [ 
   "/dev/null", "/dev/full", "/dev/zero", 
   "/dev/random", "/dev/urandom", 
   "/dev/ptmx", "/dev/kvm", "/dev/kqemu", 
   "/dev/rtc", "/dev/hpet", "/dev/vfio/vfio", "/dev/net/tun" 
] 

Alebo môžeme použiť nasledovný script:

cat << EOF >> /etc/libvirt/qemu.conf 
security_driver = "none" 
user = "root" 
group = "root" 
cgroup_device_acl = [ 
   "/dev/null", "/dev/full", "/dev/zero", 
   "/dev/random", "/dev/urandom", 
   "/dev/ptmx", "/dev/kvm", "/dev/kqemu", 
   "/dev/rtc", "/dev/hpet", "/dev/vfio/vfio", "/dev/net/tun" 
] 
EOF 

Zmenu v konfigurácií aplikujeme reštartovaním služby libvirt-bin

sudo systemctl restart libvirt-bin 

Skontrolujeme či libvirt beží, napríklad príkazom

sudo virsh capabilities 

Ďalej nainštalujeme samotné VNX

mkdir /tmp/vnx-update 
cd /tmp/vnx-update 
rm -rf /tmp/vnx-update/vnx-* 
wget http://vnx.dit.upm.es/vnx/vnx-latest.tgz 
tar xfvz vnx-latest.tgz 
cd vnx-*-* 
sudo ./install_vnx 

Reštartujeme apparmor:

sudosystemctlrestartapparmor 

Premiestnime konfiguračný súbor VNX:

sudo mv /usr/share/vnx/etc/vnx.conf.sample /etc/vnx.conf 

Editujeme konfiguračný súbor vnx.conf a meníme/pridávame nasledovné parametre:

overlayfs_workdir_option = 'yes' 
union_type='overlayfs' 

Pridanie dyanmips podpory (pre cisco zariadenia)

Nainštalujeme dynamips:

sudo apt-get install dynamips dynagen

Vytvoríme súbor /etc/init.d/dynamips a uložíme doň nasledovný script:

#!/bin/sh 
# Start/stop the dynamips program as a daemon. 
# 
### BEGIN INIT INFO 
# Provides:          dynamips 
# Required-Start: 
# Required-Stop: 
# 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 

Nastavíme oprávnenia pre vykonávanie scriptu:

chmod +x /etc/init.d/dynamips 
update-rc.d dynamips defaults 
/etc/init.d/dynamips start 

V prípade že sa dynamips nespúšťa po štarte systému, môžeme nastaviť crontab aby ho automaticky spúšťal. Príkazom sudo crontab -e otvoríme súbor crontabu. Na koniec súboru pridáme riadok:

@reboot /etc/init.d/dynamips start 

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.