PDA

View Full Version : Scelta componenti e assemblaggio server aziendale


jordan83
20-11-2011, 22:18
Ciao!

Avrei bisogno del vostro aiuto per assemblare un server aziendale. Lavoro in una piccola società di sviluppo software e questo dovrebbe diventare il server "principale" che gestisce un po' tutti i servizi.

Mi piacerebbe assemblare il server da me (alternativamente mi orienterei verso un Dell PowerEdge T110) un po' per curiosità/divertimento e perché voglio gestire il server dalla A alla Z e un po' per risparmiare qualcosa.
Purtroppo sono un po' di anni che non seguo con attenzione l'evoluzione dell'hardware e avrei bisogno di un po' di aiuto per scegliere le componenti adatte :fagiano:

Questo server dovrà fungere da server di virtualizzazione su cui devono poter funzionare almeno 8 appliance contemporaneamente:

Redmine + GIT
FTP
Bacula per il backup (salvato su disco esterno)
3-4 appliance ulteriori per i progetti in sviluppo (potrebbero essere server LAMP, Tomcat+Postgresql, MS SQL Server 2008)

Il budget dovrebbe stare intorno i 1500€ IVA esclusa.

Mi servirebbe ora il vostro aiuto per verificare la "lista della spesa" :)
Pensavo di inserire qui sotto i vari elementi e magari aggiornarli con i vostri consigli.

La lista (circa 1300€ IVA inclusa)
Cabinet: COOLERMASTER Case Elite 371 Middle Tower ATX Colore Nero
Alimentatore: Antec Truepower 650W
Processore: INTEL - XEON E3-1220 3.10GHZ (http://ark.intel.com/products/52269)
Scheda Madre: Asus P8B-X (http://www.asus.com/Server_Workstation/Server_Motherboards/P8BX/#specifications)
RAM: 3 moduli KINGSTON - DDR3 8GB 1333MHZ ECC (http://www.eprice.it/memorie-KINGSTON/d-2616735) per un totale di 24GB
Dischi: 4 dischi WESTERN DIGITAL - Caviar Blue 500 Gb Sata 600 Buffer 16 Mb 7200 rpm configurati in RAID 10 SW (1TB totale)
Lettore DVD: Masterizzatore DVD 24x Double Layer Interfaccia Sata
Raffreddamento: Noctua NH-U9DX 1366 Dissipatore per CPU Intel Xeon + altre ventole per il cabinet

Alcune domande:

Oltre alla lista sopra, di che altre componenti avrò bisogno per assemblare il pc? "Paste" particolari per facilitare il raffreddamento, cavi non compresi negli imballaggi... Magari avete un link che riassuma i passaggi chiave? Scusate ma sono un niubbo dell'argomento (sono più un software guy) :P Update: ho trovato questa guida [1] (http://www.tomshw.it/guide.php?guide=20071201)

Per la virtualizzazione vorrei usare CentOS/Ubuntu + XEN, non ho ancora deciso quale delle due. Qualcuno consiglia invece qualcos'altro (VMWare o KVM) per qualche particolare motivo?
[Obsoleta] La scheda madre supporta RAID5 via Intel Matrix Storage Manager e sul manuale dicono "Windows only". In rete ho letto che molti usano questa tecnologia pure con CentOS o Ubuntu. Avete esperienza in merito? So che se non funzionasse potrei riconfigurare il controller da RAID in AHCI/SATA e creare un RAID software in linux.
[Obsoleta] Non usare un controller RAID hardware uccide di molto le prestazioni? Nel mio caso le prestazioni non sono una necessità forte ma non vorrei trovarmi con un sistema "impallato". Avete un qualche controller RAID5 da consigliarmi, in alternativa? Magari non una cosa che costi una follia (entro i 3-400€ sarebbe il top)


Grazie in anticipo!
Giordano

marKolino
21-11-2011, 09:14
io per prima cosa cambierei quei dischi, che non solo sono lenti ma proprio non vanno bene per gestire soluzioni raid. Metterei ancora un po' di RAM e metterei un controller raid dedicato. Quelli che conosco io sono adaptec, promise o dell.

Alfonso78
21-11-2011, 10:15
io per prima cosa cambierei quei dischi, che non solo sono lenti ma proprio non vanno bene per gestire soluzioni raid. Metterei ancora un po' di RAM e metterei un controller raid dedicato. Quelli che conosco io sono adaptec, promise o dell.

Quoto il consiglio di marKolino. Quei dischi "green" appunto sono stati progettati per puntare al risparmio energetico. Inoltre la rotazione mi pare dovrebbe stare sui 5.400rpm.

Personalmente per sistemi RAID consiglio sempre gli hard disk versione RE (appunto Raid Edition) della Western Digital. Niente male anche la versione Black.

jordan83
21-11-2011, 10:21
Ok,

@marKolino
@Alfonso78
stavo giusto per rispondere a marKolino chiedendo ulteriori lumi :)
I dischi sono a 7200rpm ma non mi ero accorto fossere non adatti al RAID.



Metterei ancora un po' di RAM e metterei un controller raid dedicato. Quelli che conosco io sono adaptec, promise o dell.
Ok quindi punto a un 24GB di RAM.
Vedo cosa trovo per i controller RAID.
Ma un RAID software ha grossi svantaggi? Leggevo su una guida qui in HW che le prestazioni non sono così diverse.

Update: ho aggiornato la lista sopra, ho cambiato i dischi, aggiunto RAM e controller RAID

Update 2:Ho notato che la scheda madre può montare fino a 16GB di RAM UDIMM. Per arrivare a 24 dovrei montare 8GB di RDIMM (~300€ in più). Secondo voi conviene mettere 300€ in più per passare da 16 a 24? In alternativa, esistono schede madri che supportano + di 16GB di RAM? Magari mi conviene cambiare processore e/o scheda madre?

Update 3: Visto quanto notato in update 2, mi starei orientando su:
Processore: INTEL - XEON E3-1220 3.10GHZ (http://ark.intel.com/products/52269)
Scheda Madre: Asus P8B-X (http://www.asus.com/Server_Workstation/Server_Motherboards/P8BX/#specifications)
RAM: 3 moduli KINGSTON - DDR3 8GB 1333MHZ ECC (http://www.eprice.it/memorie-KINGSTON/d-2616735) per un totale di 24GB

Domanda: I dischi WD Caviar Blue come sono? Inadatti per RAID?

Alfonso78
21-11-2011, 16:40
Mi auguro comunque che tu sia consapevole dei rischi a cui vai incontro nel caso in cui assembli un server.

Dopo l'assemblaggio tieni presente che dovrai metterti sulle spalle tutta la responsabilità di un eventuale assistenza tecnica immediata.

Cosa succede se dovesse saltare un controller RAID, un hard disk, un alimentatore o peggio ancora la scheda madre?

Quanto tempo puoi permetterti di paralizzare l'intera attività?

E con le domande potremmo ancora continuare per molto...

jordan83
21-11-2011, 17:02
Mi auguro comunque che tu sia consapevole dei rischi a cui vai incontro nel caso in cui assembli un server.

Le tue osservazioni sono assolutamente pertinenti e importanti. Sfortunatamente ho omesso di dire (perché al tempo non lo ritenevo importante ai fini del post) che io lavoro in una piccola società informatica composta da me e un'altra persona :)

Ritengo interessante assemblare il server per vari motivi:

Per approfondire/rinfrescare le mie conoscenze hardware. In più tali conoscenze sono utili nel mio lavoro.
Proprio, come puntualizzi tu, per essere più reattivo in caso di problemi, avendo conoscenza dei vari componenti.
Per avere un sistema più potente, a parità di costo.


Diciamo che il mio è un caso particolare dove può avere senso (almeno secondo me) assemblarsi il server (soprattutto ora che è soltanto uno :P ).
Fossi stato un dipendente di un'azienda, magari di maggiori dimensioni e/o non informatica, ci avrei dovuto effettivamente pensare 2 volte prima di fare una cosa del genere, hai assolutamente ragione a puntualizzare la cosa :)

Grazie ancora per le risposte!

P.S. hai qualche suggerimento sui WD Blue? Ho letto che i Black e i RE sono un po' più performanti, tuttavia se i blue fossere un po' più lenti ma comunque affidabili non mi dispiacerebbe salvare 300€ da investire magari in un UPS o in un controller RAID migliore.

Alfonso78
21-11-2011, 17:35
Ok. Era solo per metterti in guardia.

Posso solo dirti che spesso chi intraprende queste strade duplica l'hardware in possesso per tenerlo di scorta.

Per quanto riguarda i Caviar Blue posso parlarne più che bene. Certo se adatto per soluzioni server non saprei.

Personalmente ho una coppia di Caviar Blue all'interno di un NAS accesso 24/24 e non ho mai avuto alcun problema.

jordan83
21-11-2011, 17:57
Ok. Era solo per metterti in guardia.

Posso solo dirti che spesso chi intraprende queste strade duplica l'hardware in possesso per tenerlo di scorta.

Infatti, avere un po' di scorta non è una cattiva idea.


Per quanto riguarda i Caviar Blue posso parlarne più che bene. Certo se adatto per soluzioni server non saprei.

Personalmente ho una coppia di Caviar Blue all'interno di un NAS accesso 24/24 e non ho mai avuto alcun problema.

Ok grazie. Quasi quasi uso quelli, anche perché il risparmio è notevole (un 40%). Al più presto aggiorno la lista della spesa, vediamo se riesco a venirne a capo.

Di che altre cose dovrei tener conto durante l'assemblaggio? Magari altri cavi, colle, materiali/paste ad-hoc (so che esiste una pasta che facilita la trasmissione di calore, o erro?). Magari c'è qualche risorsa nel web che mi riassume tutti i passaggi e/o i trucchetti per fare un buon lavoro?

Scusa(te) la niubbaggine :muro:

jordan83
22-11-2011, 11:02
Penso di avere più o meno definito il setup.

Alla fine, dopo un po' di ricerche[1] (http://www.zdnet.com/blog/storage/raidfail-dont-use-raid-5-on-small-arrays/483)[2] (http://www.linuxplanet.com/linuxplanet/tutorials/6514/1)[3] (http://www.buzzle.com/articles/raid-5-vs-raid-1.html)[4] (http://www.cyberciti.biz/tips/raid5-vs-raid-10-safety-performance.html) ho deciso di non usare RAID 5 e puntare su RAID 10 (anche se sto ancora facendo un pensierino a RAID 1).
A conti fatti per il mio caso RAID 10 (o al max 1) è più economico, più prestante e probabilmente più veloce da gestire.

Ho una domanda: un disco con interfaccia SATA 3 (http://www.wdc.com/global/products/specs/?driveID=896&language=1) può funzionare su SATA 2? O ci son problemi (a parte il dolore allo stomaco di fare andare una Ferrari a 80 km/h :cry: )?

Update: Da quel che dicono qua (http://www.techpowerup.com/forums/showthread.php?t=126190) non dovrebbero esserci problemi. Confermate?

jordan83
22-11-2011, 15:52
Uhm... mi sa che attenderò un paio di mesi a confezionare il server :mbe:
http://www.tomshw.it/cont/news/prezzi-degli-hard-disk-in-impennata-speculatori-all-opera/34371/1.html
Ora capisco perché i prezzi dei dischi mi sembravano così alti...

D1o
22-11-2011, 20:07
Gia che sei li prenderei anche in considerazione l'acquisto di una seconda scheda di rete, vuoi per un fatto prestazionale, vuoi perche non si sa mai...

jordan83
23-11-2011, 12:16
Gia che sei li prenderei anche in considerazione l'acquisto di una seconda scheda di rete, vuoi per un fatto prestazionale, vuoi perche non si sa mai...
Non saprei, la scheda madre già fornisce 2 interfacce di rete.
Io sarei più propenso ad aggiungere una scheda in più in caso di malfunzionamento di una delle porte già presenti.

Tasslehoff
23-11-2011, 13:38
Le tue osservazioni sono assolutamente pertinenti e importanti. Sfortunatamente ho omesso di dire (perché al tempo non lo ritenevo importante ai fini del post) che io lavoro in una piccola società informatica composta da me e un'altra persona :)

Ritengo interessante assemblare il server per vari motivi:

Per approfondire/rinfrescare le mie conoscenze hardware. In più tali conoscenze sono utili nel mio lavoro.
Proprio, come puntualizzi tu, per essere più reattivo in caso di problemi, avendo conoscenza dei vari componenti.
Per avere un sistema più potente, a parità di costo.


Diciamo che il mio è un caso particolare dove può avere senso (almeno secondo me) assemblarsi il server (soprattutto ora che è soltanto uno :P ).
Fossi stato un dipendente di un'azienda, magari di maggiori dimensioni e/o non informatica, ci avrei dovuto effettivamente pensare 2 volte prima di fare una cosa del genere, hai assolutamente ragione a puntualizzare la cosa :)Posso capire la tua curiosità e il tuo interesse (che condivido eh :) ) però io ti consiglierei di ripensare un po' alle priorità.
Siete una società piccola e dovrete farvi in quattro per soddisfare le esigenze dei vostri clienti (lo dico per esperienza visto che lavoro come consulente IT per una società di piccole dimensioni), tutto il tempo dedicato a "coccolare" quel server, a riparare eventuali malfunzionamenti, ad assemblare, ordinare pezzi e sostituirli in caso di guasto sarà tutto tempo perso che non avrete.

Acquistando un server IBM, Dell o HP avrete una macchina sicuramente assemblata meglio, dotata di più accorgimenti che con l'assemblato non potrete avere (es interfacce di ILO per poter intervenire da remoto anche in caso di malfunzionamenti sulla rete o blocchi del sistema operativo, piuttosto che monitoraggio integrato delle componenti hardware, agenti di notifica in caso di guasti o malfunzionamenti etc etc etc...), ma soprattutto avrete una macchina che in caso di guasto richierà giusto il tempo necessario ad alzare la cornetta, aprire un ticket e aprire la porta al tecnico che uscirà per sostituire pezzi o riparare i guasti, senza preoccuparvi di pezzi di ricambio, disponibilità, costi etc etc etc...

io per prima cosa cambierei quei dischi, che non solo sono lenti ma proprio non vanno bene per gestire soluzioni raid. Metterei ancora un po' di RAM e metterei un controller raid dedicato. Quelli che conosco io sono adaptec, promise o dell.A me pare che già la ram che sta ipotizzando ora sia sovradimensioanta per l'utilizzo che intende fare del server, imho anche 4GB risulterebbero utilizzati solo parzialmente per i processi utente.

Alla fin fine parliamo di una serie di servizi a basso impatto sulle risorse:

un sistema di project management e bug tracking fatto in ruby che verrà utilizzato da poche persone (visto che la società è composta da due persone, anche considerandone una decina tra consulenti e clienti il carico non cambierà di molto)
un sistema di versioning (io non uso git ma svn, il carico di un servizio del genere è comunque ridicolo, al massimo impatta giusto sullo storage)
un server ftp (tempo fa cercai un benchmark di un ftp da allegare alla documentazione per un progetto e il più recente che trovai in rete utilizzava un server dotato di cpu Pentium da 90MHz, tanto per dare l'idea di quanto sia esoso un server ftp in termini di risorse)
un software di backup (che impatta praticamente solo su rete e storage occupato)
application server, webserver e dbms il cui carico e risorse occupate non sono definibili a priori visto che noi non abbiamo idea delle applicazioni che ci gireranno sopra.
E' presumibile però che trattandosi di una macchina ad uso interno (presumibilmente per sviluppo, testing e demo ai clienti, jordan83 correggimi se ho intuito male) il numero di richieste sarà davvero ridicolo e di conseguenza anche le risorse occupate saranno molto basse.


L'unico aspetto su cui presterei attenzione è lo storage, soprattutto in termini qualitativi e prestazionali, dalla mia esperienza è raro avere server piegati per carico computazionale ed esaurimento di ram, è molto più probabile ritrovarsi con cpu prevalentemente idle (o peggio in I/O wait) e gran parte della ram inutilizzata ma server azzoppati per troppi accessi concorrenti allo storage.
La somma di tante applicazioni leggere ma che accedono frequentemente e in modo concorrente allo storage può portare a risultati catastrofici anche su server con mega cpu e quantità industriali di ram.

jordan83
25-11-2011, 22:39
Ciao,

perdona il ritardo con cui rispondo ma sono stato un po' preso in questi giorni :)
Innanzitutto grazie per aver dedicato del tempo per postare una risposta così articolata ed esaustiva. In effetti hai sollevato diversi punti molto importanti e che pure io mi son posto molte volte.
Devo ammettere che le tue osservazioni mi hanno (ri)messo parecchio in crisi, tanto che mi sono lanciato (nuovamente) all'esplorazione degli IBM xSeries e dei server Dell.

Cerco di portarti le ragioni delle mie scelte.


Siete una società piccola e dovrete farvi in quattro per soddisfare le esigenze dei vostri clienti (lo dico per esperienza visto che lavoro come consulente IT per una società di piccole dimensioni), tutto il tempo dedicato a "coccolare" quel server, a riparare eventuali malfunzionamenti, ad assemblare, ordinare pezzi e sostituirli in caso di guasto sarà tutto tempo perso che non avrete.

Acquistando un server IBM, Dell o HP avrete una macchina sicuramente assemblata meglio, dotata di più accorgimenti che con l'assemblato non potrete avere [...] ma soprattutto avrete una macchina che in caso di guasto richierà giusto il tempo necessario ad alzare la cornetta, aprire un ticket e aprire la porta al tecnico che uscirà per sostituire pezzi o riparare i guasti, senza preoccuparvi di pezzi di ricambio, disponibilità, costi etc etc etc...

Mi son fatto un po' di preventivi e per avere server che sulla carta sono comparabili a livello prestazioni:

Assemblato: ~1300€
Dell: ~2000€
IBM: ~2600€ (in questo caso i dischi sono a 10k, negli altri casi a 7.2k)


Ora, andando a vedere pro e contro di usare un assemblato...

CONTRO:

I dischi utilizzati da Dell e IBM (soprattutto IBM) sono probabilmente migliori di quelli che comprerei io
L'hardware in generale è assemblato meglio e più facilmente accessibile (simple/hot swap, niente cavi penzolanti, etc..)
L'assistenza è sicuramente migliore, e ci sono meccanismi di monitoraggio e amministrazione del server che sicuramente l'assemblato non ha


PRO:

Nel mio lavoro e in previsione dei progetti futuri che ho in mente per la mia società ritengo importante conoscere bene le caratteristiche della virtualizzazione e l'impatto che ha in termini di HW/SW. Conosco abbastanza bene le problematiche SW (anche se devo fare ancora moltissima esperienza, ovviamente), meno quelle HW. Gestire un assemblato mi aiuterà ad avere le mani più in pasta. Un giorno che magari comprerò principalmente IBM e/o Dell saprò meglio dove avrà senso spendere dei soldi e dove no :)
Questo server sarà completamente gestito in loco. Le interfacce di amministrazione ILO etc... (tra parentesi... figata :eek: ) non sono di importanza critica in questo caso
A conti fatti nel migliore dei casi pagherei 600€ (stiamo bassi) in più (quindi ~46% in più dell'assemblato) solo per avere praticamente la stessa macchina. Sì perché qualunque dei tre sistemi io decida di acquistare, il software non è compreso e me lo dovrò installare da me. Ok, le componenti saranno migliori ma con 600€ mi compro almeno 5-6 HD di ricambio e un banco nuovo di RAM o 4 HD e una mobo nuova. E rompere tutte queste cose in 3 anni lo ritengo improbabile.
L'assistenza in loco la vedo utile/fondamentale nel caso ci fossero più di 2-3 server da amministrare. O nel caso vendessi la macchina a un cliente. Inoltre i tempi di ripristino (=sostituzione pezzo) che il lavoro me lo faccia io o che me lo venga a fare qualcun'altro rischiano di essere minori nel primo caso.





A me pare che già la ram che sta ipotizzando ora sia sovradimensioanta per l'utilizzo che intende fare del server, imho anche 4GB risulterebbero utilizzati solo parzialmente per i processi utente.
[...]


Confermo le tue impressioni sull'utilizzo che sarà fatto del server. Preciso che molte delle funzionalità verranno utilizzate all'interno di macchine virtuali e non all'interno di uno stesso OS (questo anche per facilitare un giorno la portabilità di tali applicazioni magari in server diversi).

Un po' per esperienza personale sviluppando in Java (con il portatile con 4GB di RAM che a un certo punto inizia a swappare pesantemente con una VM Virtualbox + Eclipse + poco altro aperti) un po' per risposte ricevute in altri posti dove ho chiesto informazioni (http://serverfault.com/questions/332701/what-server-setup-for-a-small-web-development-company) mi stavo orientando ad avere almeno 8-16GB di RAM, anche visti i costi abbastanza contenuti.

Il mio obiettivo è quello di non avere la RAM centellinata, cosa che lavorando con virtualizzazione e Java potrebbe non essere cosa scontata, anche con 8GB... :P
Fa conto ad esempio che per compilare un progetto scritto in GWT (http://code.google.com/intl/it-IT/webtoolkit/) servono anche 1,5GB di RAM.
Forse 24GB in effetti sono decisamente troppi, potrei installarne 16 ed estendere la memoria in futuro se necessario.


L'unico aspetto su cui presterei attenzione è lo storage, soprattutto in termini qualitativi e prestazionali, dalla mia esperienza è raro avere server piegati per carico computazionale ed esaurimento di ram, è molto più probabile ritrovarsi con cpu prevalentemente idle (o peggio in I/O wait) e gran parte della ram inutilizzata ma server azzoppati per troppi accessi concorrenti allo storage.
La somma di tante applicazioni leggere ma che accedono frequentemente e in modo concorrente allo storage può portare a risultati catastrofici anche su server con mega cpu e quantità industriali di ram.

Ecco, questo mi preoccupa già di più... :uh:
E qui ti ringrazio di nuovo perché le tue osservazioni mi hanno davvero dato una mano e probabilmente salvato da un errato investimento ;)

Leggevo che una virtual machine (vmware) per funzionare ha bisogno di almeno 30 IOPS (40 per darle un po' di fiato). [1] (http://en.wikipedia.org/wiki/IOPS)[2] (http://www.vadapt.com/2010/11/storage-iops-per-vm/)

Un disco da 7.2k è in grado di fornire circa 100 IOPS. In realtà dipende molto dal modello. Come viene detto in questa pagina (http://www.storagereview.com/Testbed4Compare.sr) (una volta aperta la pagina, seleziona IOMeter File Server - 1 I/O) abbiamo che tra i dischi Western Digital:

un Caviar Black tipo WD1001FALS da 1TB a 7200rpm mi fa 89 IOPS
un Velociraptor WD3000GLFS da 300 GB a 10000rpm mi fa 150 IOPS


A questo punto quindi usando un RAID 10 di Caviar Blue mi posso permettere circa (85*2/40 = 170/40 =~ 4) 4 virtual machines.
Usando un RAID 10 di Velociraptor me ne posso permettere (150*2/40 =~7.5) almeno 7-8 virtual machines.

Quando scenderanno i prezzi degli HD mi sa che mi conviene decisamente andare per i Velociraptor.