Questo laboratorio puo' essere svolto in due modi diversi:
- Utilizzando le VM fornite (Consigliato)
- Utilizzando Docker
Sono state fornite delle macchine virtuali con tutti i pacchetti necessari per svolgere il laboratorio. Queste macchine virtuali sono state create per funzionare sia con architetture x86_64 che con architetture ARM64.
Per avviare le macchine virtuali, è necessario utilizzare un provider di virtualizzazione (es. Virtualbox o VMware) e seguire le istruzioni fornite insieme alle macchine virtuali.
- Installare Virtualbox
- Scaricare la macchina virtuale dal questo link.
- Il link è accessibile solo agli studenti del Politecnico di Milano, previa autenticazione con le credenziali istituzionali.
- Se si vuole verificare che il file scaricato sia corretto, verificando l'hash direttamente cosi:
Il confronto darà esito positivo se l'output riporta OK, altrimenti ritorna FAILED.
$ echo "f95c015797924a18600116a1e49ae11b602c5abdb991fefefe3992262b4c350a sdn-labs-amd64.ova" | sha256sum -c -
- Aprire il file
.ovacon Virtualbox e seguire le istruzioni per importare la macchina virtuale. - Avviare la macchina virtuale e attendere che sia completamente avviata.
- Le credenziali di accesso sono:
- Username:
sdn - Password:
sdn
- Username:
- Una volta dentro la VM, aprire il terminale e clonare il repository con il comando:
$ git clone https://github.com/gverticale/sdn-vm-polimi.git
- Nel caso in cui la cartella sia gia' presente, e' possibile aggiornarla con il comando:
$ cd sdn-vm-polimi $ git pull
- Nel caso in cui la cartella sia gia' presente, e' possibile aggiornarla con il comando:
- Entrare nella cartella ed avviare il docker con il comando:
$ cd sdn-vm-polimi $ make connect-docker
- Installare VMware Fusion
- È necessario avere un account VMWare Customer Connect per procedere al download. È possibile iscriversi mediante l'indirizzo email del Politecnico o tramite quello personale: la licenza per VMWare Fusion Player è gratuita sia per scopi personali che per gli studenti.
- Scaricare la macchina virtuale dal questo link.
- Il link è accessibile solo agli studenti del Politecnico di Milano, previa autenticazione con le credenziali istituzionali.
- Estrarre il file
sdn-labs-arm634.vmwarevmdall'archivio.zipe posizionarlo in una cartella a piacere. - Aprire VMware Fusion e selezionare
File->Apri...e selezionare il filesdn-labs-arm634.vmwarevm. - Quando la macchina virtuale si avvia, verrà chiesto se la macchina virtuale è stata spostata o copiata. Selezionare
Copiata. - Attendere che sia completamente avviata.
- Le credenziali di accesso sono:
- Username:
sdn - Password:
sdn
- Username:
- Una volta dentro la VM, aprire il terminale e clonare il repository con il comando:
$ git clone https://github.com/gverticale/sdn-vm-polimi.git
- Nel caso in cui la cartella sia gia' presente, e' possibile aggiornarla con il comando:
$ cd sdn-vm-polimi $ git pull
- Nel caso in cui la cartella sia gia' presente, e' possibile aggiornarla con il comando:
- Entrare nella cartella ed avviare il docker con il comando:
$ cd sdn-vm-polimi $ make connect-docker
Docker è una piattaforma per lo sviluppo, la distribuzione e l'esecuzione di applicazioni in container. In questo caso, verrà utilizzato per creare un container con un sistema operativo Ubuntu 20.04 LTS, con tutti i pacchetti necessari per svolgere il laboratorio. Anche in questo caso, in base al sistema operativo dell'host ed all'architettura del processore, e' necessario eseguire delle istruzioni diverse.
Il supporto a Docker su Windows è limitato. È possibile installare Docker Desktop, ma non è garantito che funzioni correttamente dato che Windows Subsystem for Linux (WSL2) è limitato nel numero di interfacce e moduli kernel. È fortemente consigliato l'utilizzo della macchina virtuale fornita.
-
Installare Docker:
# Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update
# Install Docker sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -
Nel caso in cui si voglia utilizzare Docker senza
sudo, aggiungere l'utente al gruppodocker:sudo usermod -aG docker $USER newgrp docker
- Installare Docker dal sito web.
- Una volta installato il Docker Engine, verificare che questo funzioni correttamente eseguendo il comando:
sudo docker run hello-world
- Entrare nella cartella del laboratorio.
- Avviare il container con il comando:
make connect-docker
- La prima volta che viene eseguito, questo comando proverà a scaricare l'immagine del Docker per il laboratorio. Questo potrebbe richiedere del tempo.
- Una volta avviato, si aprirà una nuova shell all'interno del container e sara' possibile svolgere il laboratorio.
- Per aprire altre shell all'interno del container, eseguire, su un altro terminale, il comando:
make connect-docker
È opportuno controllare se il demone è veramente disattivato:
systemctl status docker --no-pagerSe confermato, riattivarlo in questo modo:
sudo systemctl start docker
sudo systemctl enable dockere riprovare a lanciare il container.
Il metodo più raccomandato è quello di installare Virtualbox direttamente dalla repository ufficiale:
# aggiornare il sistema
sudo apt update
sudo apt upgrade -y
# installare il pacchetto specifico gnupg2
sudo apt install wget gnupg2 -y
# aggiungere la chiave GPG ufficiale di oracle
wget -O- https://www.virtualbox.org/download/oracle_vbox_2016.asc | \
sudo gpg --dearmor -o /usr/share/keyrings/virtualbox.gpg
# aggiungere al repository apt il repository di virtualbox
echo "deb [signed-by=/usr/share/keyrings/virtualbox.gpg] https://download.virtualbox.org/virtualbox/debian jammy contrib" | \
sudo tee /etc/apt/sources.list.d/virtualbox.list
# aggiornare il sistema di nuovo
sudo apt update
# installare virtualbox
sudo apt install virtualbox-7.0 -ySe si dovesse incorrere in qualche problematica, uno dei problemi è potrebbe essere legato all'attivazione del secure boot. Altrimenti all'interno del file di log /var/log/vbox-setup.log è possibile controllare quale sia l'errore nello specifico.