Avanti Indietro Indice

10. Considerazioni e Dimensionamento

Il punto di inizio in questo, sarà considerare dove siete e cosa volete fare. Un tipico sistema casalingo inizia con hardware esistente e l'utente Linux convertito da poco vorrà ottenere il massimo dall'hardware esistente. Qualcuno che mette su un nuovo sistema per uno scopo specifico (come un ISP) dovrà considerare invece quale è lo scopo e comprare in relazione ad esso. Essendo ambizioso, cercherò di ricoprire l'intero ambito.

Vari scopi avranno anche necessità differenti riguardanti il posizionamento del file system sui dischi, una grande macchina multiutente sarà migliore con la directory /home su un disco separato, solo per dare un esempio.

In generale, per prestazione è vantaggioso dividere la maggior parte delle cose su più dischi possibili ma c'è un numero limitato di dispositivi che possono vivere su un bus SCSI ed il costo è naturalmente un altro fattore. Ugualmente importante, la manutenzione del file system diventa più complicata con l'aumentare del numero delle partizioni e dei dischi fisici.

10.1 Sistemi casalinghi

Con l'hardware economico che si può comprare oggi, è possibile avere un sistema grande a casa che è ancora economico, sistemi che battono i maggiori server del passato. Mentre molti hanno iniziato a mettere su un server Linux con vecchi dischi scartati (che è il motivo per il quale questo HOWTO è nato), molti possono permettersi oggi di comprare dischi da 20 GB.

La dimensione rimane importante per alcuni, e qui ci sono un po' di linee guida:

Testare

Linux è semplice e non avete nemmeno bisogno di un disco rigido per provarlo, se potete fare il boot dai floppy, probabilmente riuscirete a farlo funzionare sul vostro hardware. Se il kernel standard non vi funziona, non dimenticate che spesso ci possono essere versioni speciali dei dischi di boot per combinazioni inusuali di hardware che possono risolvere i vostri problemi iniziali fino a che non compilate il vostro kernel personale.

Conoscere

il sistema operativo è qualcosa in cui Linux eccelle, c'è una marea di documentazione ed i sorgenti sono disponibili. Un disco singolo con 50 MB è sufficiente per farvi iniziare con una shell e una cerchia ristretta dei comandi e delle utilità più frequentemente utilizzate.

Un utilizzo per hobby

o per un apprendimento più serio richiede più comandi ed utilità ma un disco singolo è ancora ciò che è necessario, 500 MB saranno spazio sufficiente, sia per i sorgenti che per la documentazione.

Serio

sviluppo software o semplicemente serio lavoro richiede anche molto altro spazio. A questo stadio, probabilmente avrete entrate di posta e news che richiedono file di coda e molto spazio. Dischi separati per compiti di vario genere cominceranno a mostrare un beneficio. A questo stadio probabilmente avrete anche un po' di dischi. Le necessità di dischi diventano più dure da stimare ma mi aspetterei che 2-4 GB siano sufficienti, anche per un piccolo server.

I server

sono di molti tipi, variando da server di posta fino a server ISP di piena grandezza. Una base di 2 GB per il sistema principale dovrebbe essere sufficiente, poi aggiungete spazio e forse anche dischi per caratteristiche separate che offrirete. Il costo è il maggior fattore limitante qui ma siate preparati a spendere un po' se volete giustificare la "S" dell'ISP. In verità non tutti lo fanno.

Praticamente un server è dimensionato come ogni macchina per utilizzo serio con spazio aggiunto per i servizi offerti, e tende ad essere limitato dall'IO piuttosto che dalla CPU.

Con tecnologia economica sia per linee di terra come anche per reti radio, è molto probabile che molto presto, gli utenti casalinghi avranno i propri server più o meno permenentemente agganciati alla rete.

10.2 Server

Grossi compiti richiedono grossi dischi ed una sezione separata qui. Se possibile mantenete quanto più possibile su dischi separati. Qualcuna delle appendici descrivono il setup di un piccolo server dipartimentale per 10-100 utenti. Qui presenterò un po' di considerazioni per i server limite. In generale non dovreste avere paura di utilizzare RAID, non solo perché è veloce e sicuro ma anche perché rende la crescita un po' meno dolorosa. Tutte le note qui sotto sono aggiunte ai punti menzionati in precedenza.

I server popolari raramente sono lì per caso, piuttosto, crescono nel tempo e questo richiede quantitativi generosi di spazio disco come anche una buona connessione di rete. In molti di questi casi potrebbe essere una buona idea riservare ad ogni compito interi dischi SCSI, da soli o in fila. In questo modo potrete spostare i dati nel caso il computer fallisse. Notate che trasferire i dischi attraverso i computer non è semplicissimo e potrebbe anche non funzionare sempre, specialmente nel caso di dischi IDE. Gli insiemi di dischi, richiedono setup attenti al fine di ricostruire i dati correttamente, quindi potreste voler mantenere una copia cartacea del vostro file fstab come anche una nota degli ID degli SCSI.

Directory Home

Stimate di quanti dischi avete bisogno, se sono più di 2, raccomanderei RAID, fortemente. Altrimenti dovreste separare gli utenti attraverso i vostri dischi dedicati agli utenti basati su una qualche specie di semplice algoritmo di hash. Ad esempio potreste utilizzare le prime due lettere del nome utente, quindi jbloggs viene situato in /u/j/b/jbloggs dove /u/j è un link simbolico ad un disco fisico quindi potete ottenere un carico bilanciato sui vostri dischi.

FTP Anonimo

Questo è un servizio essenziale se siete seri riguardo al servizio. I server buoni sono ben mantenuti, documentati, aggiornati e immensamente popolari, non importa dove sono localizzati nel mondo. Il grosso server ftp.funet.fi è un eccellente esempio di ciò.

In generale questo non è una questione di CPU ma di ampiezza di banda di rete. La dimensione è difficile da calcolare, principalmente è una questione di ambizione e attitudini del server. Credo che il grosso archivo presente presso ftp.cdrom.com sia una macchina *BSD con un disco da 50 GB. Inoltre anche la memoria è importante per un server FTP dedicato, circa 256 MB di RAM sarebbero sufficienti per un server molto grande, anche se server più piccoli possono farcela bene anche con 64 MB di RAM. Le connessioni di rete sarebbero comunque sempre il fattore più importante.

WWW

Per molti questa è la ragione principale per andare in Internet, infatti ora sembra che molti li considerino la stessa cosa. Inoltre ad essere intensi in rete consegue il fatto di avere un bel po' di attività nei dischi per questo motivo, principalmente riguardante le cache. Mantenere le cache su un disco separato e veloce, porterebbe beneficio. Anche meglio sarebbe installare un server proxy di cache. In questo modo potreste ridurre la dimensione della cache per ogni utente ed aumentare la velocità del servizio riducendo nello stesso tempo le necessità di ampiezza di banda.

Con un server proxy di cache, avrete bisogno di un insieme di dischi veloci; RAID0 sarebbe l'ideale visto che l'affidabilità qui non è importante. Una capacità più alta è importante ma circa 2 GB sarebbero sufficienti per la maggior parte. Ricordatevi di far coincidere il periodo della cache con la capacità e la domanda. Periodi troppo lunghi sarebbero d'altro canto uno svantaggio, se possibile provate a regolare a seconda dell'URL. Per maggiori informazioni, controllate i server più utilizzati come Harvest, Squid e quello della Netscape.

Posta

Gestire la posta è qualcosa che molte macchine fanno fino ad un certo punto. I grandi server di posta, comunque, fanno gruppo a parte. Questo è un compito su richiesta e un grande server può essere lento anche se connesso a dischi veloci e ad una rete molto efficiente. Nel mondo Linux, il grande server come vger.rutgers.edu è un esempio ben noto. Diversamente da un servizio di news che è distribuito e che può parzialmente ricostruire lo spool utilizzando altre macchine come meccanismo di alimentazione, i server di posta, sono centralizzati. Questo rende la sicurezza molto più importante, quindi per un server principale, potreste considerare una soluzione RAID con enfasi sull'affidabilità. La dimensione è difficile da stabilire, dipende tutto da quante liste fate girare e da quanti iscritti avete.

Notate che in questi giorni si sta passando dall'utilizzare POP per prelevare la posta sulla macchiana locale dal server di posta all'utilizzo di IMAP per servire la posta mantenendo gli archivi di posta centralizzati. Questo vuol dire che la posta non è più accodata nel senso originale ma spesso cresce, richiedendo un'enormità di spazio disco. Inoltre sempre più si (ab)usano i messaggi con allegati per spedire ogni sorta di roba, anche un piccolo documento di un elaboratore testi può facilmente finire sopra il MB. Dimensionate i vostri dischi generosamente e controllate quanto spazio resta.

News

Questo è sicuramente un compito di grande volume e molto dipendente dal gruppo a cui vi iscrivete. Sul Nyx c'è un meccanismo di alimentazione molto completo ed i file di coda occupano circa 17 GB. I gruppi più grandi sono senza dubbio nella gerarchia alt.binary.*, quindi se per qualche ragione decidete di non averli, potete avere un buon servizio forse con 12 GB. In ogni caso altri, che rimarranno senza nome, pensano che 2 GB siano sufficienti per conferirsi il titolo di ISP. In questo caso le news scadono molto velocemente che penso che chiamarli IsP è abbastanza giustificato. Un completo meccanismo di alimentazione per le news significa un traffico di qualche GB ogni giorno e questo è un numero sempre crescente.

Altri

Ci sono molti servizi disponibili sulla rete e nonostante ciò molti sono stati messi nell'ombra dalla rete. Nonostante ciò servizi quali archie, gopher e wais esistono ancora e rimangono strumenti di valore sulla rete. Se state pensando in maniera coscienziosa di iniziare a creare un server principale, dovreste anche considerare questo servizio. Determinare lo spazio necessario è difficile, dipende tutto dalla popolarità e dalla domanda. Fornire un buon servizio ha inevitabilmente i suoi costi, lo spazio disco è solamente uno di essi.

Raccomandazioni sul Server

I server oggi richiedono molti dischi per funzionare in maniera soddisfacente per le impostazioni commerciali. Visto che il tempo medio tra i fallimenti (MTBF) diminuisce rapidamente con l'aumentare dei componenti, è consigliabile utilizzare RAID per protezione ed utilizzare un numero di dischi di media grandezza piuttosto che uno singolo ed enorme. Inoltre guardate anche nell progetto High Availability (HA) per maggiori informazioni.

10.3 Trappole

I pericoli di dividere ogni cosa su partizioni separate sono brevemente menzionati nella sezione riguardante la gestione del volume. Comunque, molte persone mi hanno chiesto di enfatizzare questo punto più fermamente: quando una partizione si riempie, non può crescere di più, non importa se c'è un mare di spazio su altre partizioni.

In particolare tenete d'occhio la crescita esplosiva nella coda delle news (/var/spool/news). Per macchine multi utente con le quote tenete sotto controllo /tmp e /var/tmp visto che c'è qualcuno che cerca di nascondere i propri file lì, basta controllare per i file che finiscono per gif o jpeg...

Praticamente, per singoli dischi fisici questo schema offre guadagni molto piccoli, piuttosto che rendere più facile il controllo della crescita dei file (utilizzando 'df') e del posizionamento fisico delle tracce. Più importante, non c'è possibilità per accesso di disco parallelo. La disponibilità di avere un sistema per la gestione di un volume potrebbe risolvere ciò, ma ciò accadrà in futuro. Comunque, quando file system più specializzati saranno disponibili, anche un disco singolo potrà beneficiare dall'essere diviso in diverse partizioni.


Avanti Indietro Indice