L’infrastruttura tecnologica di Develer: intervista a Stefano Fedrigo

Due parole con Stefano Fedrigo, sistemista e sviluppatore, per scoprire l’infrastruttura tecnologica di Develer.

Di cosa ti occupi in Develer?

Sono un programmatore appassionato al livello del software più vicino all’hardware: driver, sistemi operativi open source e protocolli di comunicazione sono il mio mondo. La mia caratteristica è quella di padroneggiare un numero elevato di tecnologie, alcune delle quali in modo particolarmente approfondito.

Oltre alla mia attività di sviluppo software per i clienti, in Develer mi occupo anche della gestione dell’infrastruttura tecnologica: dall’amministrazione dei sistemi informatici alla sicurezza.

Quali sono le sfide più grandi che hai incontrato nella gestione dei sistemi?

Con il recente trasloco in una nuova sede più ampia e l’aumento notevole del numero dei dipendenti (siamo passati da 20 persone a più di 50 in pochi anni), sono emerse nuove esigenze e complessità da affrontare.

La continuità dei servizi

Sicuramente una delle mie responsabilità più importanti è quella di garantire la disponibilità dei nostri servizi in modo continuativo (High Availability) e di assicurare che eventuali disagi siano risolvibili in tempi brevi, in modo da permettere un’operatività senza interruzioni sia per i nostri sviluppatori sia per il cliente. Il mio obiettivo principale è quindi quello di consentire al personale Develer di lavorare in tranquillità, agli utenti di avere un’esperienza senza interruzioni, limitando al tempo stesso i tempi di gestione e manutenzione al minimo.

La rete Wi-Fi

Un’altra sfida tecnologicamente significativa è stata l’installazione della rete Wi-Fi nella nuova sede. Garantire una copertura per un numero elevato di utenti, con alte aspettative in termini di banda elevata e stabilità della connessione, in una sede di 1300 m², è stata un’attività complessa ma gratificante. 

La rete Ethernet

Anche per la connessione Ethernet avevamo delle esigenze stringenti:

Il tutto con il massimo della banda e dell’affidabilità possibili.

Quali sono le soluzioni che si sono dimostrate più efficaci?

Per garantire la continuità dei servizi, una delle soluzioni più efficaci, ma anche molto interessante da implementare, è stata la strutturazione del nostro data center facendo ampio uso della virtualizzazione dei server. A questo scopo, abbiamo creato un mini-cluster sul quale far girare le macchine virtuali, adottando KVM (Kernel-based Virtual Machine) e LXC (Linux Containers) come infrastruttura.

Il sistema così realizzato con KVM si è dimostrato estremamente versatile, permettendo la migrazione delle macchine virtuali da un server all’altro in modalità live, la gestione delle risorse hardware dei server anche da remoto e tante altre funzionalità che ci permettono di ridurre al minimo i tempi di riavvio/manutenzione.

Inoltre, grazie a LXC, i nostri programmatori possono avere a disposizione macchine virtuali, con grandi risorse CPU, da attivare e disattivare a piacimento.

Per la connettività Wi-Fi, sicuramente una scelta vincente è stata quella di affidarci ad hardware di livello enterprise; poi sono stati determinanti tutta una serie di accorgimenti per gestire in modo efficace la disposizione dell’ambiente, degli utilizzatori del Wi-Fi nell’edificio, scegliendo con attenzione la posizione e la configurazione dei numerosi access-point per evitare interferenze e ottimizzare l’utilizzo della banda disponibile.

Abbiamo adottato delle policy come, per esempio, quella di usare dispositivi (come i portatili in dotazione agli sviluppatori) che avessero dei requisiti minimi di connettività, come un numero di antenne adeguato a garantire una banda minima e il supporto per le estensioni Wi-Fi come il fast roaming.

Un requisito importante che ci siamo posti e che abbiamo raggiunto è stato di garantire connettività Wi-Fi ininterrotta agli utenti che si spostano all’interno della sede, ad esempio potendo comunicare in conference call o telefonate VoIP ininterrottamente mentre si muovono in varie zone dell’ufficio e passano dalla copertura di un access point all’altro.

Una caratteristica indispensabile degli access-point che utilizziamo è il controller centralizzato, fondamentale per gestire e ottimizzare l’intera rete. Altra funzionalità utile è l’utilizzo dinamico della banda radio, che decide in automatico quali canali utilizzare sincronizzando fra loro gli access-point e verificando le eventuali interferenze tra essi.

Abbiamo poi fatto un grande numero di test e misurazioni e i risultati sono estremamente positivi: anche nel luogo più remoto della sede la velocità del Wi-Fi non è mai inferiore a 30 Mbyte/s.

Per la rete Ethernet sono state impiegate soluzioni come switch gestiti da remoto per ogni isola di lavoro e collegamenti in fibra ottica a 10 gbit/s tra core switch e isole per avere il massimo della banda, e anche la flessibilità di avere tante sottoreti diverse per i vari utilizzi (per esempio una rete dedicata per il reparto embedded, un’altra che garantisse la massima sicurezza, etc.).

Vuoi lavorare in Develer?

C’è qualcosa di nuovo che stai pensando di implementare?

La tendenza ad esternalizzare strategicamente determinati servizi continua, integrando soluzioni SaaS o PasS come CloudFlare, GitHub, CircleCI, AppVeyor, Slack o Google GSuite ogni volta che il loro utilizzo sia più adatto alle nostre esigenze. Scegliere in modo accurato di appoggiarsi a servizi esterni, ci permette di dedicare più tempo e risorse per quelle attività che invece è più opportuno gestire internamente.

Un altro passaggio al quale stiamo lavorando riguarda l’implementazione del nuovo protocollo IPv6: lo abbiamo già implementato per la nostra LAN e abbiamo attivato una VPN IPsec con autenticazione gestita tramite certificati x509 (molto utile e sicura). A breve estenderemo la connettività IPv6 su tutti i nostri server: non che si tratti di un’esigenza immediata, ma ci vogliamo preparare in anticipo “mettendo le mani” su queste nuove tecnologie che diventeranno indispensabili nel prossimo futuro.

Vuoi scoprire la dotazione hardware di Develer? Scarica la scheda tecnica.