Versione 14 del 2014-05-27 14:55:50

Nascondi questo messaggio
Italiano English
Modifica History Actions

ConfineNodeHowTo

CONFINE Research Device HOWTO

CONFINE è un progetto di ricerca che ha l’obiettivo di costruire un’infrastruttura all’interno di varie community network europee, da sempre propense alla sperimentazione, per metterla a disposizione dei ricercatori. I ricercatori possono così studiare reti reali, con utenti veri, anziché limitarsi ad esperimenti in laboratorio o simulati.

Post sul blog: http://blog.ninux.org/2014/04/29/ninux-in-confine/

Hardware

Requisiti Minimi

I Research Device sono i computer che costituiscono la maggior parte dell'infrastruttura di CONFINE (chiamata Community-Lab). Qualunque dispositivo con i seguenti requisiti può fungere da Research Device:

  • architettura x86 (per il momento)
  • almeno 60GB di disco
  • almeno 4GB di RAM

NUC

I dispositivi finanziati dal progetto sono Intel NUC (Next Unit of Computing) DC32171YE, con processore i3 dual core, 60GB disco SSD, 4GB RAM. Il consumo di corrente varia tra gli 8W senza carico e circa 20W a pieno regime. La temperatura non va mai oltre i 40 gradi centigradi e la ventola, pure se presente, è molto silenziosa.

Per installare disco e RAM bisogna svitare le viti che si trovano nella parte inferiore.

viti.png

Quindi installare il disco Mini PCIE SSD e la RAM. Notare la presenza della vite per tenere fermo il disco.

discoeram.png

Quindi collegare tastiera e monitor (il mouse è comodo ma non necessario), accendere il NUC ed entrare nel BIOS premendo il tasto F2.

visualbios.png

Andare su "Advanced Setup" -> Power e settare la voce "After Power Failure" su "Power On" per fare in modo che il device si riavvii senza bisogno di intervento manuale.

biospoweron.png

Andare su "Advanced Setup" -> "boot" ed attivare "Boot USB Devices First" per avere la possibilità di installare il firmware sul dispositivo da pen drive usb.

biosusbboot.png

Macchine Virtuali

Macchine virtuali possono essere utilizzate a patto di scegliere un nome per il Node che contenga la sigla "VM".

Installazione del Firmware

Il sistema operativo da installare sui Research Device è chiamato CONFINE Firmware. Si tratta di una versione customizzata di OpenWrt e il codice sorgente si può trovare qui.

Per ottenere un'immagine compilata e configurata del CONFINE Firmware innanzitutto bisgona registrarsi su panel.community-lab.net.

communitylabregistration.png

Effettuare il login. Quindi cliccare su "Nodes" e poi su "Add node" in alto a destra.

addnode.png

Scegliere un nome ed impostare Group: ninux.org, Island: Ninux.org. L'impostazione "Island" configura il Gateway Tinc (vedi Glossario) della community network. Molte delle impostazioni "Advanced" (in particolare IP statici ed IPv6) al momento della scrittura di questa guida ancora non funzionano propriamente.

newnode0.png

Cliccare su "Save and continue editing" in basso. Ignorare i warning e cliccare su "Download Firmware" in alto a destra.

Selezionare l'immagine "Testing", tutti gli "Optional files" (che servono per configurare l'autenticazione con il Controller e la rete di management Tinc - vedi Glossario) e la casella "USB Image" se si vuole effettuare l'installazione del firmware tramite pen drive USB. Cliccare su "Build Firmware!" in basso.

generatefirmware.png

Scaricare l'immagine del firmware compilata e configurata.

Installazione tramite pen drive

/!\ ATTENZIONE: Utilizzando questo metodo tutti i dati presenti sul pen drive USB verranno persi /!\

Per installare l'immagine su un pen drive USB si puo' utlizzare unetbootin, oppure il comando dd nel seguente modo:

  • collegare il pen drive e monitorare i messaggi del kernel per trovare il nome del device associato

[clauz@metzi ~]$ dmesg | tail
[ 6447.637043] sd 8:0:0:0: [sdd] Write Protect is off
[ 6447.637057] sd 8:0:0:0: [sdd] Mode Sense: 03 00 00 00
[ 6447.637234] sd 8:0:0:0: [sdd] No Caching mode page found
[ 6447.637238] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[ 6447.639322] sd 8:0:0:0: [sdd] No Caching mode page found
[ 6447.639326] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[ 6447.713506]  sdd: sdd1 sdd2
[ 6447.715095] sd 8:0:0:0: [sdd] No Caching mode page found
[ 6447.715103] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[ 6447.715110] sd 8:0:0:0: [sdd] Attached SCSI removable disk
[clauz@metzi ~]$ 
  • se il sistema operativo utilizza il mount automatico, fare l'unmount del pen drive
  • dare il seguente comando, modificando il nome del file immagine e del device in modo opportuno:

gunzip -c /tmp/USB-confine-firmware-newRDname-i686.img.gz | sudo dd of=/dev/sdd bs=1M; sync

Metodi alternativi di installazione del firmware

Il firmware di CONFINE puo' essere installato in altri modi.

Boot da altra distribuzione

Si puo' far fare il boot da USB ad una distribuzione Linux live qualunque, quindi scaricare o uploadare il firmware (compilato senza l'opzione "USB Image") e poi scompattarlo e copiarlo sull'hard disk del Research Device (/!\ ATTENZIONE: non dare il comando sul proprio PC /!\) utilizzando il comando dd:

gunzip -c confine-install.img.gz | sudo dd of=/dev/sdX bs=1M ; sync

dove /dev/sdX e' l'hard disk principale del Research Device (normalmente /dev/sda).

Boot da rete

Un altro metodo consiste nel configurare il PXE ovvero il boot da rete. Ci sono varie guide online, per esempio questa.

Glossario

  • Community-Lab: l'infrastruttura di ricerca all'interno delle community networks, costituita principalmente da Research Device. Vedere anche sul wiki di CONFINE

  • Research Device: computer che i ricercatori possono utilizzare, da collegare ai nodi della community network

  • Node: termine equivalente a Research Device

  • Management Network: VPN TINC che comprende i Research Device, i Tinc Gateway e il Controller. Gli indirizzi utilizzati appartengono alla network fdf5:5351:1dfd::/48. Vedere anche sul wiki di CONFINE

  • Controller: server che ha il compito di monitorare e creare macchine virtuali sui Research Device. Ha un'interfaccia Web all'indirizzo https://panel.community-lab.net/

  • Tinc Gateway: macchina all'interno della community network che ha il compito di aggregare il traffico di management

  • Sliver: macchina virtuale (LXC) creata all'interno dei Research Device dal Controller su richiesta di un ricercatore