Table of Contents
Zeus Refresh
<HTML> <div style=“float:right; margin-left: 10px”><img src=“/wiki/lib/exe/fetch.php?media=wiki:zeusrefresh_logo.png”></div> </HTML> Het netwerk van Zeus is - zowel op hardware als op software vlak - dringend aan een goed onderhoud nodig. Hieronder staat een lijst van problemen die we willen oplossen en extra features die we willen toevoegen.
De Zeus Refresh-week zal doorgaan vanaf 2 februari tot en met 8 februari. Na 8 februari zou alles weer moeten werken. Tijdens deze periode echter kan je downtime verwachten van mail, maillists, websites en IRC. Er zou normaal geen data of mail mogen verloren gaan. Wij zullen er naar streven om mail en mailinglists zo weinig mogelijk downtime te bezorgen. Je kan ons altijd komen bezoeken tijdens die week in de kelder, waar we zullen zitten te stressen voor dood.
Heb je ideëen of commentaar? Klik “edit” hierboven en aarzel niet om je gedacht te zeggen!
Backup voor de zeus refresh! Gelieve eerst alle mysql (en andere?) databases goed te backuppen voor alles plat te leggen gedurende een week! Ik hoop dat de users zo slim zijn geweest om hun belangrijkste data te backuppen, maar databases backuppen ligt volgens mij een pak moeilijker voor de users zonder root access. Indien mogelijk alle data (dus de /home van cartman) backuppen op bv. een externe hd. Databases draaien volgens mij op zowel cartman als mephisto! UPDATE 01/02/2008 18:20: Ik heb juist mysqldump -u root -p –all-databases > mysqlbackupcartman gedraaid. Dus in de dir /home/aspfreakout staat een backup van de databases, maar gelieve dit proces nog eens te herhalen maandag!
Checklist! <HTML> <div style=“clear:both”></div> </HTML>
Hardware
- Kenny buitensmijten, verbranden, de duivel uitdrijven, en bij de burgies naar binnen smijten.
- netwerk-kaarten van de pc's (of toch minstens gateways en webserver) upgraden om de snelheid van het nieuw UTP netwerk aan te kunnen.
- Alle servers verhuizen naar het donkerste en minst gebruikte hoekje van de kelder, zodat er op andere plaatsen meer volk kan zitten.
- Oplossing vinden voor het teveel aan hardeschijfruimte op de desktops en “te weinig” op Cartman
- Cartman heeft nog meer dan 100 Gig vrij voor /home. Niet echt een probleem dus. Sommige desktops hebben idd wel teveel diskspace. (vb jesus: HD= 40 Gib - 4,6 gebruikt (=enkel OS))
- Ideetje: van de teveel op de dekstops een soort raid systeem maken (aparte partitie voor dit op die hdds) en zo backup probleem oplossen
- vegen, stofzuigen of whatever!
- Bios-check voor keyboard/screen op alle servers nakijken en uitzetten
- Checken wie nu eigenlijk een sleutel heeft van de kelder, bv oud voorzitters enzo. Een systeem met die identiteitskaartlezer uitwerken voor de deur.
Home RAID
cartman heeft nog meer dan 100 GB vrij voor /home. Dit is een harde schijf met een (geformatteerde) grootte van 187 GB. mephisto heeft 2 harde schijven. 1 daarvan wordt volledig niet gebruikt en heeft perfect dezelfde size als die in Cartman. We kunnen die extra HD van Mephisto in Cartman dumpen, en die software RAID'en (mirrored) als eerste verdedigingslinie voor de /home-directories.
-
- Opgelet, niet proberen booten van een raid in ubuntu, dit is momenteel wat https://bugs.launchpad.net/ubuntu/+bug/120375 bugged
- hiervoor kunnen we misschien als 2de linie de teveel aan hddsspace van de desktops gebruiken
- misschien is het handig om in /home/tmp oid een soort van tmpfs aan te maken waar iedereen schrijf/lees-rechten heeft om zo bestanden te kunnen delen zonder met de shit van permissies geconfronteerd te worden.
- Dit zou dan best een submap in /tmp zijn, bijvoorbeeld /tmp/shared die gemount wordt op elke workstation, om /home niet te vervuilen. Dit kunnen we inderdaad gemakkelijk implementeren, maar dan moeten we enkele regels instellen bijvoorbeeld: wanneer worden de bestanden verwijderd? Stellen we een quota in?
Software
Algemeen
Centralized logging (choksondik)- Workload van servers eens deftig te verdelen. We hebben volgende functies: webserver (zeus.ugent.be, latex.ugent.be, usersites), mail, maillists, irc, webcam. We hebben daar geen 4 servers voor nodig.
- Machines documenteren (verantwoordelijkheden die ze hebben / services die ze draaien, IP's, specs, platform, …)
- Mogelijkheid bieden voor op iets te laten installeren op een reeks pcs zonder het te moeten overal door het netwerk te laten sluizen (indien mogelijk). Zo is het LAN gamen simpeler
- Dit is een mooi idee, maar dan enkel voor workstations (obviously). We kunnen dit implementeren door een script te maken die via SSH inlogt op alle (of enkel de geselecteerde) PC's en het ingegeven commando uitvoert (bv 'apt-get install relixGotPwned'). Indien het een gedownload programma betreft is dit geen probleem door dat de /home dir gemount staat overal.
- Overzicht maken van de beschikbare besturingssystemen (welke pc draait wat) en een update-policy bijvoegen (bv. client automatisch laten updaten en servers door admins).
- Op vrees van mijn leven: een MS pc? → virtualization om andere OS'en te testen?
- Zo een programma installeren dat je processortijd geeft aan van die wetenschappelijke projecten. Dan hebben we de schijn dat ons servers ferm werken ;)
- Een programmaatje installeren om de dt-regels te leren. Handig voor Thomas e.d. Een goed alternatief is een kilometersgrote link plaatsen op iedere desktop naar http://www.spelling.tormentil.nl/
Netwerk
- IP-adressen en subdomeins aanvragen bij DICT.
- DNS uitkuisen en de nieuwe machines toevoegen.
- Een deftige gateway configgen die de snelheid van de verbinding kan bijhouden en die altijd deftig heropstart bij stroomuitval.
- Servers aan meest betrouwbare switch hangen.
- Testen wat het netwerk doet bij uitval van een server (alles is beter dan nu).
- Bij stroomuitval moeten de pc's zelf herstarten (zoals elders beschreven), maar gelieve dit te testen (kijk of het netwerk terug operationeel wordt als we letterlijk de stekker uittrekken). Soms loopt dit mis als bepaalde servers sneller heropstarten dan andere.
- Een 2de ssh-server in geval van nood?
- Eens kijken naar Bonjour voor de linuxbakken: http://developer.apple.com/opensource/internet/bonjour.html
Misschien kunnen we zo snel zien welke pc welke services draait (en misschien werkt bebe wat beter samen met de rest).
Ldap
- Combineren met Kerberos tot SingleSignOn-systeem
- Leden in de juiste groep plaatsen. Ex-admins back to user, some trials to user. Delete old and obsolete users.
- Audio groep fixen
<del>Backup</del>
choksondik eens op de rooster leggen (evt. herinstalleren)
plaats disks van choksondik in raid 1.
- deftige backup-software installeren op choksondik. Voorstellen:
- rsync
- rdiff
- rsnapshot
- data waarvan een backup moet genomen worden:
- home-directories
- website-files
- databases: zie database_backup
- repositories
- ldap
rulus adviseert rsnapshot, een set van perl scripts gebaseerd op rsync. De voordelen zijn dat je verschillende “snapshots” ter beschikking kan hebben en dat de de gebruiker zonder hulp van een admin bestanden uit de backup kan terughalen. Dit klinkt ferm aanlokkelijk.
Mail & Mailinglists
Mail eens op een deftig machien zetten. Ik weiger in deze tijd nog een lag tijdens pornomails kijken te aanvaarden.bekijk uw porno dan gewoon online ;)
Migratie naar postfix en courier-imappostfix laten samenwerken met de ldapkomt op mephisto
- Mailinglists uitkuisen1
- Mail laten bekijken via
imapFix folders (relix)Webmail! WEBMAIL! WEEEEBBMAAAAAAAIL! (Madness?)
- howto voor ubuntu (werkt ook wel voor andere distro's)
- automatisch paswoord van mail meeveranderen
deftige SPAM filter
Websites
Apache deftig herconfigureren op mephisto (zie Zeus Refresh: Apache).Maak een degelijke structuur voor de websites, zodat die gemakkelijk met de rest van de data kunnen gebackupped worden, maar de gewone gebruikers niet zomaar in de pagina's van een site kunnen gaan rommelen.(evt voor elke website een group (of aparte user?) met enkel de dev's en www lid van deze group)- ALLE sites op mephisto:
zeus.ugent.be- lists.zeus.ugent.be
endymion.ugent.be (OBSOLETE!)latex.ugent.beuser-sites (onder zeus.ugent.be!)- repositories
webmailZeusWiki (evt. mediawiki behouden in combinatie met LDAP Authenticatie, of plugin voor drupal)
- Git, svn, bzr
Requested Wiki Extensions
- Math
- Citation Needed
Webcams
De Sphere eindelijk eens laten werken met UVC-streamer- De sphere aan een machine met beter uitzicht hangen?
- Een karretje maken en een baan rond de kelder en hem zo laten rondrijden? Zo rond die centrale witte paal:D Of hem horizontaal zetten vanuit het plafond
- Lampjes, lampjes, liefst infrarood, dan zien we eindelijk het monster dat 's nachts rondhangt in de kelder! (Is het Maarten of Thomas?)
- UVC-Streamer aanpassen zodat die video+geluid uitzendt.
- mogelijkheid toevoegen om video en/of geluid af te zetten door een root wanneer vergaderingen gesloten zijn of gewoon privacy
- bijvoorbeeld de kabel uittrekken
- that is sooo 1999! (maar wel doeltreffend) Enkel probleem als je enkel geluid wilt afzetten..
- Waarom zou je bij een gesloten vergadering nog willen dat mensen je kunnen zien, maar niet horen?
- Indien jullie niet willen dat vrouwen afgeschrikt geraken van jullie nogal sekspraten over de vrouwen.. ;) andere oplossing is stoppen met die onzin uit te kramen maar da lukt niet denk ik:D
- Bwa, als we weten dat er vrouwen kijken/luisteren stoppen we dat wel hoor :p
- En hoe gade da weten:P een alarm-protocol ofzo? we kunnen da niet weten:D
- Ook opletten voor vrouwen die kunnen liplezen!
Printserver
- De printer aan een deftig machine hangen zodat deze beschikbaar is in het hele netwerk (cartman?).
Beowulf cluster
- Opzetten van een Beowulf cluster met gelimiteerde resources voor experimentjes?
- Tenzij er tijdens de refresh veel oude machines obsolete worden hebben we hier niet echt veel hardware voor é. 'k Zou daar liever de desktops niet mee bezig houden.
Statistieken
- Webalizer statistieken van de Zeus-site
- MRTG statistieken van alle machines op 1 centrale site
- Mogelijk via snmpd
Distributed compilen
- op elke server/desktop distcc installeren.
- En waarvoor mag dat dan wel goed zijn? Der wordt zelden of nooit iets gecompiled in de kelder…
- 1337ness
- der is weinig 1337ness aan als je er niets mee doet hé ;)
Proxyserver
- Een proxyserver opzetten (indien toegelaten)
- Dit zal wel toegelaten zijn mits dit achter SSH staat. Natuurlijk moeten we het beperken tot “Members Only”, dus SSH lijkt me wel een goede keus. Momenteel runt er al een proxy (Privoxy) op garisson, dit is een snelly proxy die automatisch ads blokkeert en privacy waarborgt. Heeft iemand een voorkeur voor een andere proxy server?
Het is natuurlijk verboden om een directe proxy op te zetten, dus ik stel voor alle data te forwarden naar de ssh-server (dus members-only). Zo'n proxy is altijd handig om vanaf de meest onmogelijke plaatsen naar ons zeusnetwerkje te verbinden. Misschien is TCP over ICMP iets makkelijker op te zetten: http://www.cs.uit.no/~daniels/PingTunnel/
IRC-Bot
Chasca :D
- Dit zal niet voor tijdens de Zeus Refresh zijn, maar is een continue project ;). We zullen er misschien wel aan werken als we met al de rest klaar zijn.
Open project van maken? Dan kan elk lid vrij modules schrijven. Gaan we dan met alles klaar zijn? :D
- Wikilist commando implementeren. Dit is handig voor boekenlijsten bij te houden van must-reads van users. Deze maakt een pagina aan met naam <list> en zet daar een bulleted list die kan aangepast/weergegeven worden op irc met
- !wikilist <list> add <item>
- !wikilist <list> remove <item>
- !wikilist <list> display
Desktop Onderhoud
De desktops kunnen we ook wat kuisen. Iets dat zeker al moet gebeuren is het disablen van alle trackers en indexers die standaard ubuntu infesteren, want anders staan die maar te runnen en traffiek te genereren voor niets op de NFS.
Een mogelijkheid voor trackerd is het aanpassen van
/etc/xdg/autostart/trackerd.desktop
. Daar staat een exec-lijn waar we mogelijk een argument aan kunnen toevoegen bv -e /home. Nog niet getest of da werkt.
Eens open doen en stofzuigen. maar hiervoor hebben we Helena nodig..
Zeus Account
Elk Zeus lid zou zijn Zeus Account moeten kunnen gebruiken om de recentste web-technologieën te kunnen uitproberen. Daarom zouden we, in hoeverre dat mogelijk is, de services moeten uitbreiden tot feitelijk een “shared webhost”. Mod_python/fastcgi/spyce/whatever, ruby on rails (moeilijk stabiel te krijgen?), lisp? haskell? Laat leden weten dat ze zeker dingen kunnen aanvragen. Postgresql en mysql moeten we er ook op smijten, of course.
Zeus Webmail (met postfix blijkbaar gemakkelijk, en http://www.postfix.org/LDAP_README.html)- Gemakkelijk mail kunnen redirecten (bv naar gmail)
- Zeus Webspace (bestaat, public_html)
PHP 5& PHP 6- RoR/Mongrel?
- Python (mod_wsgi/pylons/django/mod_python/spyce/twisted/web.py/sqlobject…)
- Perl (bestaat wel al wss)
- MySQL && PHPMyAdmin
- PostGreSQL && Postgresqlmyadmin
- Automatische repositories voor gebruikers (SVN? Trac?)
- Ticket-systeem om extra applicaties/services aan te vragen
- Automatische mount van eduserv?
- OpenID
- Blog.ugent.be (obviously)
- Veel libraries voor PHP, python, etc. by default
- Een soort van SuperSuper user maken zodat een root niet het root paswoord kan veranderen om zo alleenheerser te zijn en toch kan installen
- Waarom niet een soort user te maken die kan (un)installen maar niet al de rest dit is het enigste waar root eigenlijk voor moet gebruikt worden indien bovenstaande bestaat
- dat zouden dan enkel dingen zijn die in /usr/local/ komen… das ni bepaald de standaard installatieplaats, misschien dat dit probleem oplosbaar is met sudo?
Waarschijnlijk vereist al dit moois een leuke control panel (JEUIJ) en een geavanceerder user-signup.
Op de zeus site/wiki allerhande korte how-to's zetten om het gebruik van deze shiny new toys te stimuleren!