FreeNX @ ENEA GRID Gestione e Amministrazione Samuele Pierattini ENEA
Sommario Cos è FreeNX Architettura Installazione in ENEA GRID Configurazione in ENEA GRID Amministrazione FreeNX e VirtualGL Troubleshooting
Cos è FreeNX FreeNX NX is an exciting new technology for remote display Versione Open Source del progetto NX della NoMachine. Server su sistemi Linux Clinet per Win, Mac, Linux versione NoMachine Applicazione locale configurabile (configurazione distribuibile) Java Plugin autoinstallante autoconfigurata per accesso da WEB Accesso ottimizzato per qualsiasi tipo di connessione Internet (Wan, Lan, ADSL, Modem) Sicurezza: aderenza agli standard internazionali di autenticazione (SSH) crittografia (SSL v3)
Architettura Accesso tramite SSH (porta default 22) Key NoMachine o Privata (NoMachine default) Load Balancing (Random Round Robin Load )
Installazione in ENEA GRID (1) Versione server FreeNX 0.7.3 Priscilla One Year Edition Core Libraries fornite da NoMachine sotto licenza GPL Vers 3.4.0 Prerequisiti Sistema operativo Linux Expect versione 5.32 compilato localmente con TclTK 8.4.6 Lib X11/OGL e X11 server per macchine con Rendering Remoto (VirtualGL) Compilazione su macchine a 32 e 64 bit con SO CentOS e RH Installazione in /usr/nx Key NoMachine /usr/nx/bin/nxsetup install setup nomachine key Repository in /afs/enea.it/software/freenx a breve
Installazione in ENEA GRID (2) Implementato in ambiente ENEA GRID (Autenticazione AFS) Cluster coinvolti: Portici (cresco) Brindisi Frascati (VM INFOGER) Bologna (VM INFOGER) a breve Accesso tramite macchina sicura SSH tunneling Macchine nx cresco nx.portici.enea.it brindisi nx.brindisi.enea.it frascati nx.frascati.enea.it bologna nx.bologna.enea.it a breve
Installazione in ENEA GRID (3) Front End grafici standard Macchine fgx cresco1 fg1/4.portici.enea.it graphic front end (nvidia quadro fx570) brindisi fg1.brindisi.enea.it frascati fg1.frascati.enea.it bologna fg1.bologna.enea.it a breve Macchine speciali (NVIDIA CUDA) cresco nvi1/3.portici.enea.it graphic machines (nvidia quadro fx 4500x2) cresco nvi4.portici.enea.it graphic/cuda machine (nvidiaquadro fx 4700x2)
Installazione in ENEA GRID (4) 30 BOLOGNA #CPU/Core CASACCIA 140 FRASCATI 400 PORTICI 2750 45 90 BRINDISI TRISAIA
Configurazione in ENEA GRID (1) Selezione della tipologia e geografia del cluster e Load Balance /usr/nx/etc/node.conf (Macchine nx) SERVER_FORWARD_HOST= macchina fg1.enea.it /usr/nx/etc/node.conf LOAD_BALANCE_SERVERS_CRESCO_FG="cresco1 fg1.portici.enea.it cresco1 fg2.portici.enea.it cresco1 fg3.portici.enea.it cresco1 fg4.portici.enea.it" LOAD_BALANCE_SERVERS_CRESCO_NVI="cresco nvi1.portici.enea.it cresco nvi2.portici.enea.it cresconvi3.portici.enea.it" LOAD_BALANCE_SERVERS_CRESCO_CUDA="cresco nvi4.portici.enea.it" LOAD_BALANCE_SERVERS_FRASCATI_FG="frascati fg1.frascati.enea.it" LOAD_BALANCE_SERVERS_BRINDISI_FG="brindisi fg1.brindisi.enea.it" LOAD_BALANCE_ALGORITHM="random" ENABLE_LOAD_BALANCE_PREFERENCE="1" ENABLE_LOADBALANCE="1 Verbosity of server wide log /usr/nx/etc/node.conf NX_LOG_LEVEL=6 (Debugging information) NX_LOGFILE=/var/log/nxserver.log
Configurazione in ENEA GRID (2) Selezione della tipologia e geografia del cluster e Load Balance /usr/nx/bin/nxserver SESSIONNAME="$(getparam session)" if [ "$SESSIONNAME" = "CRESCO NX" o "$SESSIONNAME" = "cresco nx" ] then echo_x SESSIONNAME="$SESSIONNAME" on CRESCO FG Cluster LOAD_BALANCE_SERVERS="$LOAD_BALANCE_SERVERS_CRESCO_FG" elif [ "$SESSIONNAME" = "CRESCO NX NVI" o "$SESSIONNAME" = "cresco nx nvi" else if [ dnsdomainname = "frascati.enea.it" ] then echo_x SESSIONNAME="$SESSIONNAME" on FRASCATI FG Cluster LOAD_BALANCE_SERVERS="$LOAD_BALANCE_SERVERS_FRASCATI_FG" elif [ dnsdomainname = "brindisi.enea.it" ] then echo_x SESSIONNAME="$SESSIONNAME" on BRINDISI FG Cluster LOAD_BALANCE_SERVERS="$LOAD_BALANCE_SERVERS_BRINDISI_FG" else echo_x SESSIONNAME="$SESSIONNAME" on CRESCO FG Cluster Default LOAD_BALANCE_SERVERS="$LOAD_BALANCE_SERVERS_CRESCO_FG" fi
Amministrazione Cartelle utilizzate dal server (key, log, etc ) /usr/nx/share /usr/nx/home Start stop restart del server /usr/nx/bin/nxserver start /usr/nx/bin/nxserver stop /usr/nx/bin/nxserver restart File del log /var/log/nxserver.log
FreeNX e VirtualGL @ENEA GRID VirtualGL èun pacchetto OpenSource per l esecuzione, tramite un software per il display remoto (FreeNX, VNC, etc.), di applicazioni OpenGL con l accelerazione hardware 3D. Perché VirtualGL indirizza le funzioni OpenGL e i dati 3D all acceleratore grafico sull application server e solo l immagine renderizzata è inviata al client tramite il software per il display remoto.
FreeNX e VirtualGL @ENEA GRID VirtualGL with VGL Transport vglclient e server X11 sul client Supporta lo stereo High bandwidth VGL Transport with X11 Forwarding vglconnect s {user}@{server} VirtualGL with X Proxies (VNC, FreeNX, etc.) vglrun {application_executable_or_script}
FreeNX e VirtualGL (Esempio)
Troubleshooting Processi pendenti (soprattutto applicazioni) Kill di sessioni spurie File.nx locali e in afs Resume di sessioni da PC/IP diversi
Grazie per l attenzione DOMANDE?