Hi ..
Ich gehe mal davon aus, dass du bei der Rechnerzahl auch über eine entsprechende Internetleitung verfügst. Sagen wir mal, es wäre 1mbit SDSL.
Erstmal zu deiner Rechner Dimensionierung:
Bis auf die 9 gig Platten ist alles deutlich zu "schmal". Generell braucht squid im Betrieb zwar nicht viel CPU Power, dafür allerdings beim Starten umso mehr. Die Initialisierung eines vollen 5 gig Cache mit mehreren Millionen Objekten braucht mit einem PIII 1Ghz ca. eine halbe Stunde, in der alles grotten lahm und zäh von squid beantwortet wird.
Ram wird von squid in zweierlei Art und Weise benutzt. Einmal für Objekte, die noch nicht auf die Platte geschrieben wurden und für den gesamten Index der Cache-Objekte, die bekannt sind. Das kann bei falschen Einstellungen jeden Rechner killen. Für jedes Objekt wird die URL, ein expire Datum und ein paar weitere Informationen parat gehalten. Diese sind zwar leicht komprimiert, gehen wir aber mal von einer Größe von 100 Byte (im Schnitt) aus. Bei 10.000.000 Objekten sind das .. *grübel* .. oh .. schon 1GB. Dieser GB wäre also schon nur fürs reine starten notwendig (+ sagen wir 300MB Objekte im RAM). Dein Rechner würde also tierisch anfangen zu swappen und Surfer hätten das Gefühl, sie würden mit einer ISDN Leitung angebunden sein.
Da es bei den heutiegen Leitungen eh wenig Sinn macht, kleine Objekte zu cachen, da diese schnell genug übertragen werden ohne die Leitung zu blockieren, kann man eine etwas andere Strategie einschlagen. Einzig die größeren Downloads stopfen die Leitung.
Mit den Informationionen kann man squid also am besten so konfigurieren, dass nur Objekte die größer als 500KB sind gecached werden. Die Größe am besten experimentel bestimmen -> je größer die Leitung, desto höher die Schwelle. Somit befinden sich nur wenige Objekte in einem grooßen squid cache. Die maximale Objektgröße sollte man dementsprechend auch anheben auf z.b. 500MB (falls du keine ISO's speichern/cachen willst).
Der normale Surfer wird nun durch squid geschleust und man kann ihn entsprechend mit ACL's versorgen bzw. authentifizieren, ohne dass die ganzen Mini-Objekte aufwändig auf Platte geschrieben werden. Alle großen Objekte sind aber gecached und werden direkt von der Platte gesendet.
Bei vielen Onlineupdates (SuSE, Windows, Adobe, etc.) ergeben sich nun deutliche Geschwindigkeitsvorteile.
Fazit:
Langsamer Rechner, mit wenig Ram, der kleine Objekte cached, wirkt als Speeddrossel bei heutigen Internetleitungen. Squid macht Sinn für die Regelung des Internetzugang (Authentifizierung) und das lokale Vorhalten von großen Datenmengen (da Platten immer billiger werden).
Mein Vorschlag wäre daher ein ganz anderer:
Hardware:
- Intel CPU mit HT
- 2 GB Ram (günstig -> muss nich Highperformance sein)
- 1xSystemplatte
- 2x160 gig SATA im Raid für schnelleren Zugriff
-> HT, da squid extrem mit Threads arbeitet
-> 160gig SATA (zb von samsung) fürn Appel und'n Ei
squid:
- Cachegröße 100gig
- minimale Objektgröße 1000KB
- maximale Objectgröße 900MB (ja doch ISO's mitnehmen
)
- logging auf ein minimum im Produktivbetrieb
- ACL's nach belieben und/oder Einsatz von squidGuard
Irgendwas unklar? Bestimmt .. einfach fragen ..