0x1b - ESCAPE
HTML PDF Postscript
 Kreativ 
Computer Geschrieben von Beat Rubischon (Link) am Mittwoch, 21. Januar 2009, 19:49
aus dem *tipp-tipp-tipp* dept.

Die letzten zweieinhalb Tage hatte ich eine überaus kreative Arbeit - auch wenn durchschnittliche Menschen das Tippen am Computer kaum als kreativ bezeichnen würden :-) Auf speziellen Kundenwunsch baute ich meinen ersten Cluster auf Basis von Ubuntu.

Selbstverständlich sollte das System dasselbe Look & feel aller unserer Cluster haben - schliesslich soll der zukünftige Support des Kunden nicht in einen Alptraum ausarten.

Die erste Knacknuss war der Debian Installer mit seinem Preseeding. Man merkt gut, dass das Programm nie und nimmer dazu gebaut wurde, automatisiert zu werden. Ganz im Gegensatz zu RedHat's Anaconda, welches von Beginn weg dafür designet wurde. Auch hat das Debian Team nie die Ressourcen wie die Leute von SuSE, die ihrem YaST mit AutoYaST eine entsprechende Warze ausprogrammiert haben.

Entsprechend bleibt nur Basteln übrig. Es gibt keine automatisierte Variante, die entsprechenden Konfigurationsfiles zu erzeugen... Google hilft.

Dann ist da der upstart. Die Entwickler finden ihn das Tollste unter der Sonne, haben aber meine Bedürfnisse nicht erkannt. Ich benutze typischerweise /etc/initscript um die elend tiefen ulimits aufzublasen. Gut kann man dem Grub einen alternativen Init mitgeben - in meinem Fall ein Script, dass die limits setzt und dann den upstart Init startet. Hässlich, aber funktionell.

Der ufw war auch einen Versuch wert. Auch wenn ich ihn nach kurzem aufgegeben habe. Das Tool mag nett sein, ist aber noch immer massiv komplexer als eine SuSE-Firewall oder die RedHat Firewall, bei der man mit zwei Klicks ein Masquerading erstellen kann. Der alte Weg, mit einem eigenen Initscript und zwei, drei Zeilen iptables erledigt den Job.

Viel ekliger ist die dash. Sie zickt und ist bei vielen Programmen nicht das, was der Programmierer wollte. Vor allem startet sie Bash Scripte, die als solche markiert sind, mit sich selbst - entsprechend funktionieren all meine Bashismen natürlich nicht. Ein Script der Grid Engine habe ich geflickt, meine beiden eigenen Installationsscripte rufe ich nun mit einem /bin/bash mein-script.sh auf.

Ansonsten sieht die Kiste gut aus. Ich war vor allem fasziniert darüber, dass heutzutage selbst Intel ihre Compiler so einpackt, dass sie sich reibungslos auf einem Ubuntu installieren lassen. Die Jungs von Ubuntu haben etwas geschaffen, dass einem SLES oder RHEL durchaus gewachsen ist.

Leider bringt ein Job in der Privatwirtschaft auch die Verpflichtung mit sich, dem geistigen Eigentum der Firma Sorge zu tragen. Entsprechend kann ich Euch nicht schreiben, wie ich solche Dinge erschlage, sondern nur dass. Aber falls jemand wirklich Interesse hat - man kann mich durchaus auch mieten ;-)

Permalink

Das Kleingedruckte: Der Besitzer der folgenden Kommentare ist wer immer sie eingeschickt hat. Wir sind in keiner Weise für sie verantwortlich.

  • Re: Kreativ
    Geschrieben von mirabilos (Link) am Mittwoch, 21. Januar 2009, 21:39

    Uaah, hoert sich partiell echt eklig an, mein
    Beileid. Aber nimm doch mal die mksh. Ist echt gut.

    • beat@0x1b.ch Re: Kreativ
      Geschrieben von Beat Rubischon (Link) am Donnerstag, 22. Januar 2009, 10:12

      Aber nimm doch mal die mksh. Ist echt gut.

      Naja, solches scheitert an der Tatsache, dass ich auf mehreren tausend Systemen unterwegs bin - und nicht immer root bin :-) Entsprechend habe ich mich an den kleinsten gemeinsamen Nenner gewöhnen müssen: bash, in der Konfig von RedHat, SuSE und Debian. Ab und zu auch tcsh. Zum Glück keine "echte" Bourne Shell oder AT&T ksh mehr. Das als interaktive Shell.

      Programmieren tue ich meistens in Perl, mit einigen Ausnahmen, die in Shell einfach einfacher sind. Ein Feature aus der Bash ist mir dabei ganz besonders an Herz gewachsen:
      #/bin/bash
      
      exec >& /pfad/zum/logfile
      set -x -v
      
      blabla...
      
      Damit bekommt man ein wunderbares Logfile mit dem gesamten Output, ohne irgendwelche Murkes mit Subshells zu basteln. Doch leider geht das nur unter einer echten Bash - und nicht unter dem, was die dash von Ubuntu als solches betrachtet.