Aus der Tiefe
   


About
Aus der Tiefe, Meldungen des Rechenzentrums in der Cauerstrasse 11

Matthias Bauer und Martin Bayer problems@math.fau.de

Subscribe
Subscribe to a syndicated feed of my weblog, brought to you by the wonders of RSS.

Flavours
There's more than one way to view this weblog; try these flavours on for size.

  • index
  • circa 1993
  • RSS
  • Links

  • Shoestring FoundationMiscellaneous byproducts

  •        
    Mon, 30 Sep 2013


    	Wenn man im laufenden Betrieb die printer.conf von einem cupsd aendert, dann schreibt
    	  der sie stillschweigend noch mal um. Und schmeisst dabei alle "Filter: " Definitionen
    	  raus; d.h. man kann nicht mehr drucken. Kwalitaetssoftware wohin man blickt.
    	Neues facter Plugin geschrieben, dass mittels "lshw -C display" Hersteller und Modellnamen
    	  der Graphikkarte ausliest. Relevant, weil die diversen NVidia Treiber auf manchen Modellen
    	  nur in bestimmten subsubVersionen funktionieren.
    	Der puppetmaster sammelt die facts aller kontrollierten Maschinen. Diese sind auch
    	  ueber Dashboard durchsuchbar (daher wissen wir jetzt wieder, dass zwei cip-Maschinen
    	  gar keine Nvidia Karte haben...). Die Daten liegen in /var/lib/puppet/yaml/$hostname.yaml
    	  (nicht etwa in /var/lib/puppet/client_data, oder .../client_yaml, oder .../facts).
    
    

    [/bauerm] permanent link

    Fri, 27 Sep 2013


    	neubau-133 in Betrieb genommen.
    
    

    [/bauerm] permanent link

    Thu, 26 Sep 2013


    	entdeckt, dass puppet-lint ganz nuetzlich waer, um unsere puppet-config zu testen.
    	  Riesen-Diff am Horizont.
    	
    

    [/bauerm] permanent link

    Wed, 25 Sep 2013


    	Von Herrn Neurath am RRZE gelernt, dass folgendes Shell-Kommando ein AppleMacbook
    	  updatet:
    		softwareupdate -a -i
    	  Scheint zu tun. (Kein Update von Adobe Produkten oder Firefox)
    	Das Printadmin webapp ein bisschen geaendert.
    	Bjoern schraubt an einer L"osung PXE Installationen ohne PXE-faehige Mainboards
    	  zu machen.
    	Castor auf neues Ubuntu gebracht. Fuers PXE Booten muss man _beide_ Interfaces
    	  im BIOS einschalten.
    
    

    [/bauerm] permanent link

    Mon, 23 Sep 2013


    	Bjoern hat rausgefunden, wie man das CUPS web interface auf https zwingt:
    		<Location /admin>
    			Encryption Required
    			...
    		</Location>
    	  Muss man fuer alle Location-URLs wiederholen, wies ausschaut.
    
    

    [/bauerm] permanent link

    Fri, 20 Sep 2013


    	Dem IBZ im H11 geholfen.
    	Studentische Druckabrechnung vorgezogen.
    	Probleme beim puppet-upgrade (der server hatte 3.3, weil in seinem apt-sources das
    	  repos von puppetlabs drin war, die clients hatten 2.7 mit dem ubuntu-repos).
    	  Inzwischen hoffentlich ausgebuegelt.
    		
    

    [/bauerm] permanent link

    Wed, 18 Sep 2013


    	Beide Nexenta Heads auf neuesten Stand gebracht. Mit fmdump die Vehler- und Phaultreports
    	  der letzten Monate angeschaut. Es kippen immer wieder mal Bits um, aber ZFS
    	  repariert das immer automatisch. Warum das alles so langsam geworden ist, laesst
    	  sich AFACS nicht aus den logs lesen.
    	Beide Nexentas ins ILO Netz gehaengt. Kommt aber nix an.
    	Die Nexentas schmeissen wieder die Heartbeat errors. Lieg an dem CoraidHBA Treiber,
    	  der durch den Upgrade einen Downgrade erfahren hat. Also nochmal haendischer
    	  update der Coraid-Driver. Dazu  etherdrive-hba-solaris-6.0.5-R2.tar.gz auspacken,
    	  dann 
    	    pkgadd -d . CORDethdrv
    
    

    [/bauerm] permanent link

    Tue, 17 Sep 2013


    	Wir gehen mit der Zeit! Wallpaperupate
    	puppet war auf dem management auf version 3.3 und auf den clients auf 2.7. In
    	  manchen Faellen fuehrte das dazu, dass der zentrale filebucket nicht ging,
    	  was dazu fuehrte, dass gar keine Dateien mehr auf neuen stand gebracht wurden.
    	  Auch auf den Clients neue puppet version
    	Dabei (wieder) gelernt, dass in /etc/apt/trusted.gpg.d/ keine MIME-codierten
    	  .gpg files liegen duerfen. Wenn doch, dann schlagen _alle_ Signaturchecks
    	  fehl (saudumm).
    	Wieder ein puppet-testnetz eroeffnet, momentan nur mit einer Maschine, aber
    	  fuer kitzelige Aenderungen am Kerberos-Setup vielleicht geschickter.
    	Apropos, der authserver prueft jetzt per cronjob alle 5 Minuten, ob sich
    	  ein Eintrag relevant geaendert hat, und synct dann die DB auf den secondary.
    	Tagesgeschaeft: User angelegt und in die zahlreichen ACLs eingetragen. Zugangskarten
    	  fuer die PC Pools freigeschalten. 
    
    

    [/bauerm] permanent link

    Mon, 16 Sep 2013


    	Kaum hat man das eine am Laufen, faellt das andere zamm. Der puppet "tidy" Type
    	  soll Dateibaeume aufraeumen koennen. Kann er aber nur fuer winzige Baeume mit
    	  ein paar hundert Eintraegen. Auf dem Management, wos 1.x Millionen Eintraege
    	  sind, frisst er statt dessen alles RAM und killt die Maschine. This is
    	  a known bug (http://projects.puppetlabs.com/issues/21249). Weil das der
    	  DHCP Server hier ist, bleiben dann die Arbeitsplaetze ohne Adresse, und damit
    	  kann dann keiner Arbeiten...
    	Duplizierten DHCP Server aufsetzen als Fallback fuer den management..
    
    

    [/bauerm] permanent link

    Fri, 13 Sep 2013


    	Authserver update erfolgreich, wies ausschaut.
    
    

    [/bauerm] permanent link

    Thu, 12 Sep 2013


    	Man sollte bei einem Kerberos Setup mit zwei Servern nicht vergessen, dass manche
    	  Clients sich die Adresse(n) aus dem DNS holen, aus einem
    	     _kerberos._tcp.$derdomain 10 1 88 SRV $derserver
    	  ResourceRecord. Vom DNS Team nachtragen lassen.
    
    

    [/bauerm] permanent link

    Wed, 11 Sep 2013


    	Aus gegebenem Anlass die Apache-Config so geaendert, dass Key-Agreement Protokolle bevorzugt
    	  werden, die Perfect Forward Secrecy ermoeglichen. Die www.ssllabs.com stufen unseren
    	  Server jetzt als A ein. In your face, Moody's!
    	Nikos hat im kompletten Gebaeude bei den Haengetafeln in den Bueros geprueft, ob die auch
    	  fest an der Wand montiert sind (Gebot vom Sicherheitsbeauftragten). In 72 Faellen
    	  waren die Halterungen gebrochen oder locker.
    
    

    [/bauerm] permanent link

    Tue, 10 Sep 2013


    	Nachdem der Fileserver unertraeglich langsam geworden war, haben auf allen
    	  Ebenen Ursachen gesucht. Auffaellig ist, dass besonders die Syscalls
    	  openat und fstatat unglaublich langsam waren, was ein Netzproblem praktisch
    	  ausschliesst. Die Logs der LDAP Server zeigen keine auffaellige Aktivitaet
    	  des Fileservers, sind also wohl auch nicht die Bremse. Letztlich scheint
    	  es der NFSv4 Server selbst zu sein, der immer langsamer wurde. Heute, 10:00,
    	  haben wir per Failover den anderen Head aktiviert und seitdem ist es wieder
    	  ok.
    	Der Webserver hat jetzt ein Zertifikat, das praktisch alle denkbaren Hostnames
    	  in https-URLS zulaesst. Hoffentlich keine Warnungen von Browsern mehr.
    	Patrick hat den Postgresql Server ueberlistet, tatsaechlich Authentisierung
    	  per SSL-Client-Zertifikat zu akzeptieren: Auf der Serverseite in
    	    pg_hba.conf 
    	  folgende Zeile rein
    	    hostssl   $username    $datenbankname   0.0.0.0/0  cert clientcert=1
    	  Der Server private key und sein Cert muessen im $HOME des postgresql users liegen, unter
    	    $postgresversion/main/ 
    	  mit passenden Permissions.
    	  Auf der Clientseite folgendes (offensichtliches) Kommando
    	    psql 'host=$server dbname=$datenbankname user=$username sslmode=verify-ca sslcert=client.crt sslkey=client.key sslrootcert=root.crt'
    	Maple auf neueste Version gebracht.
    	Weitere Tests mit dem LDAP/Kerberos Fallback Setup.
    
    

    [/bauerm] permanent link

    Fri, 06 Sep 2013


    	Und nun die Aufloesung zu der Frage, wie man mit einem SQL Statement den Zustand der Rechner
    	  im Zabbix abfragt:
    	  
    now=`date +"%s"` echo $now cat << EOF | psql -U postgres zabbix SELECT DISTINCT host, t.description, f.triggerid, t.value, i.lastvalue, t.lastchange FROM triggers t INNER JOIN functions f ON ( f.triggerid = t.triggerid ) INNER JOIN items i ON ( i.itemid = f.itemid ) INNER JOIN hosts ON ( i.hostid = hosts.hostid ) INNER JOIN events e ON ( e.objectid = t.triggerid ) WHERE (e.object-0)=0 AND (t.value=1 OR (t.value =0 AND ($now - t.lastchange <60))) AND hosts.status =0 AND i.status =0 AND t.status =0 GROUP BY f.triggerid, hosts.host, t.description, t.value, i.lastvalue, t.lastchange ORDER BY t.lastchange DESC; EOF
    Sehnse, war doch ganz einfach. Backupscript fuer die Auth-daten vom authserver umgebaut und getestet. Tut nach ersten Tests wohl.

    [/bauerm] permanent link

    Thu, 05 Sep 2013


    	Das Problem mit dem slapadd lag daran, dass slapcat (und slapd) automatisch /etc/ldap/slapd.conf
    	  lesen, slapadd aber nicht. Daher kannte er die Schemata nicht, die dort importiert werden.
    	  Man sollte auch nicht vergessen, nach einem slapadd das ganze Verzeichnis mit den OpenLDAP
    	  Datenbanken nach openldap zu chownen :/
    	Die Konfigs vom Kerberos kann man latuernich nicht einfach rueberkopieren, weil das als
    	  ldap://URL noch der authserver drinsteht. XXX sollte man auf beiden auf 127.0.0.1 stellen,
    	  dan hat man das Gefuddel nicht mehr.
    	  Scheint jetzt zu tun.
    	Patrick hat rausgefunden, wie man aus der Zabbix Database per SQL rauskriegen kann, welche
    	  Trigger grad ausgeschlagen haben, auf welchen Rechnern und warum. Aufloesung folgt!
    	Dropbox in seiner Ubuntu Inkarnation hat beim Neustarten (von Dropbox) alle "Shared Folders"
    	  verlassen. Laesst sich durch non-std Installation (von Dropbox.com) loesen.
    	Puppet kann nicht User Gruppen hinzufuegen, ohne die in /etc/passwd anzulegen. Wenn die
    	  User schon im LDAP existieren, koennen sie sich danach nicht mehr einloggen :(
    	  Loesung: Betroffene Gruppen aus /etc/group loeschen, im LDAP anlegen und user dort
    	  hinzufuegen.
    	Ein Skript (ldap2nis.pl) zum Wandeln von LDAP Logindaten nach good-old /etc/{passwd,group} 
    	  so erweitert, dass es jetzt auch die Mitglieder einer Gruppe mit extrahiert. Somit
    	  haben wir ein Fallback, notfalls die passwd/group per Puppet zu verteilen, und den
    	  Kerberos neu aufzusetzen, wenn mit dem Authserver alles schiefgeht.
    	  <knock KnockDirection="on" KnockMaterial="wood" KnockRepetitions="3"/>
    
    

    [/bauerm] permanent link

    Wed, 04 Sep 2013


    	Stellt sich raus, dass Puppet Variablen aus site.pp o.ae. in EmbeddedRuby mit einem @ referenziert
    	  werden muessen(?). Also 
    	      <%= variable %> 
    	  tut, aber 
    	      <% if defined?(variable) %><%= variable %><% end %>
    	  tut nicht, weil es natuerlich
    	      <% if defined?(@variable) %><%= variable %><% end %>
    	  heissen muss. WTF??
    	Patrick verheiratet unser Inventar mit dem Puppet-Dashboard und mit den Zabbix Messwerten,
    	  sehr schoen.
    	Auf den vmhosts noch hingekriegt, dass die nach der Installation nicht dauernd apt-get updates
    	  machen, sobald mal das virtualbox repos in den apt-sources ist.
    	Seltsamerweise kann OpenLDAP seinen eigenen Output (slapcat) nicht lesen (slapadd stirbt
    	  mit str2entry: invalid value for attributeType objectClass ...). Wuergaround fuer ein
    	  backup basteln.
    
    

    [/bauerm] permanent link

    Tue, 03 Sep 2013


    	Der Reboot von management hat nicht funktioniert, weil er noch offene filedeskriptoren
    	  ins NFS hatte, die Prozesse unkillbar machen (bloede Idee, das). Was durchaus gekillt
    	  wurde, ist der DHCP Server. Weil tatsaechlich zwei unserer Server ihre IP per DHCP
    	  kriegen, und Linux lieber eine IP wegschmeisst, wenn der Server nicht antwortet,
    	  sind uns die beiden weggebrochen.
    	Alle Server auf Statische IPs festgenagelt.
    	Neubau-31 ist jetzt offiziell zweiter Authserver.
    	Auch dovecot ist jetzt so konfiguriert, dass es evtl. auf den anderen LDAP server zugreift.
    	Tests mit dem "ausfallsicheren" Setup.
    
    

    [/bauerm] permanent link

    Mon, 02 Sep 2013


    	Nach einigen Tests haben wir jetzt ein Setup, in dem LDAP und Kerberos von zwei Servern
    	  gleichzeitig zur Verfuegung gestellt werden. Damit steht einem Server-Upgrade des
    	  Authservers nicht mehr viel im Weg.
    	Der management haengt in einem apt-mirror, weil er nicht mehr auf das NFS Verzeichnis
    	  schreiben kann. Warum das so ist, bleibt schleierhaft.
    
    

    [/bauerm] permanent link