28.04.16

Ansible, lookups und Listen...

...oder auch, wir brauchen keine Doku, wir haben doch Code.

Es kommt vor, dass ich für ein Deployment Wissen aus externen Systemen benötige. Ansible kennt dafür das Konzept der Lookups. So weit, so gut. Spannend wird es immer dann, wenn ich den Editor anwerfe und feststelle, dass es zwar irgendwelche Konzepte gibt, die Doku allerdings auf einem Stand der Sorte: "Ja, geht, irgendwie da lang, und hier mal noch ein paar halbgare Brocken, komm klar" ist.

Beispiel? Klar doch: "Plugins are loaded from both Python's site_packages (those that ship with ansible) and a configured plugins directory, which defaults to /usr/share/ansible/plugins, in a subfolder for each plugin type: [...] In addition, plugins can be shipped in a subdirectory relative to a top-level playbook, in folders named the same as indicated above."

Heißt was genau? Ich hätte für mein Plugin gern ein Python-Egg, dass ich vernünftig testen und dann releases kann, damit auch andere was davon haben. Klingt nach Doku nicht ganz abwegig. Loaded from site_packages, subfolder for each plugin type...

Einfach mal so bauen, einbinden, nix. Kaputt. Plugin nicht gefunden. Komisch, wenn ich in den Ansible-Code schaue, ist die Ordnerstruktur ganz anders. Also Debugger anwerfen und mal schauen, wie die Plugins geladen werden. Breakpoint wird gefunden, Debugger aufgerufen ... und direkt von Ansible wieder gekillt. Suuper, ganz tolle Idee, Ansible! Mit print() weiter, kotz.

Am Ende stellt sich raus: "Plugins are loaded from both Python's site_packages (those that ship with ansible)" Ja, das soll heißen "ONLY those that ship with ansible". Warum schreibt ihr es dann in die Doku??? Das euere eigenen Plugins funktionieren und geladen werden, darf ich ja wohl erwarten! Thirdparty-Plugins werden eben NICHT aus den site_packages geladen. Und damit kann auch niemand Plugins mit Standard-Werkzeugen erstellen und veröffentlichen.

Also nach Doku einfach nen Python-File nach "./lookup_plugins" werfen. Gebaut, Liste zurück gegeben, eingebunden, was passiert? Nein, in Ansible kommt nicht ['one', 'two', 'three'] zurück, sondern 'one, two, three'.

WHAAAT?

Ich hab dann nochmal 2 Stunden drangehangen und viel Code gelesen, bis ich die Stelle gefunden habe. Ja, das heißt, dass ich bei einem Lookup

{{ lookup('MY_LOOKUP', [...], wantlist=True) }}

schreiben muss, damit Ansible nicht versucht clever zu sein und ich eine Liste in die Hand bekomme. Und siehe da, das steht so ähnlich sogar in der Doku: "Since 1.9 you can pass wantlist=True to lookups to use in jinja2 template "for" loops." Ja, unter anderem brauche ich Listen, damit ich in jinja2 loopen kann.

Danke für die Info.

8.02.16

Server-Panik

Mein Server ist heute abgeschmiert. RAM alle. Kommt vor. Dabei ist irgendwie das Dateisystem nach read-only gekippt. Kommt auch vor. Neustarten hilft, denke ich mir. SSH auf die Kiste, reboot.

5 Minuten später bekomme ich eine E-Mail von meinem Provider:

Details zu dieser Operation:

Filesystem manual check
Date 2016-02-08 18:19:35, **** made Filesystem manual check:
 Here are the details of the performed operation:
 The server has completed a file system check  (fsck)
 The server was blocked when checking files with the message:
 (Ctrl-D to continue...)

 Actions:
 "ctrl+d" done

 Result:
 Login to server. Ping OK, services started.

Ich so: Äh, whoooooooot?

Antwort an den Provider per Mail: Spannende Reaktion, nen FS-Check zu killen. Ja, der Server ist online, aber...

8.020835] EXT4-fs (sda1): warning: mounting fs with errors, running e2fsck is recommended

Echt jetzt? Ist das euer Ernst, den erwarteten FS-Check nach nem Reboot zu killen und damit ggf. den Server wirklich zu grillen?

Gerade kommt die Antwort rein:

Can you give me result of:
smartctl -a -d ata /dev/sda
in order to check the disk?

Ist das die berühmte Kernel-Panic, von der immer alle reden? Alle rasten aus und rennen wild im Kreis? Hab die Kiste jetzt nochmal durchgestartet. Mal sehen, ob am Ende des Tages die Festplatte noch drin ist...

29.09.12

Tar der Woche

Der Quelltext für xz kommt gepackt als xz.

xz-5.0.4.tar.xz (Original Download)

Wir halten kurz inne und gedenken andächtig den Zeiten, als CD-ROM-Treiber auf CD-ROM beigelegt wurden.

21.06.12

1blu macht sprachlos

Ich schreibe regelmäßig in einem Server-Forum. Was man da zum Teil über den Umgang mit Servern zu lesen bekommt, ist, gelinde gesagt, gruselig. Der Beginn der Ferienzeiten korreliert auffällig mit der Qualität der dortigen Postings. Von Gamer-Kids und Möchtegern-Wohnzimmerprovidern ist man eine Menge unterirdischer Statements gewohnt.

Heute hat es der Provider 1blu geschafft, sich in diese Liga einzureihen. Ein Forenteilnehmer behauptet, es sei ihm nicht möglich sein Ubuntu 8.04 mit Plesk9 zu updaten. Auf meine Frage, was ihn daran hindere, die Sicherheitslücken eines 4 Jahre alten Systems zu flicken und sich in Folge dutzender ungepatchter Löcher über ungewöhnliches Verhalten seines Servers zu wundern, präsentierte er folgenden Auszug aus der 1blu-FAQ:

ACHTUNG: Ab Plesk-Version 9.3 ist jedere weitere Version (9.4, 9.5 etc.) ein eigenes Release, wodurch ein neuer Lizenzkey erforderlichist. Ein Update wird daher unsererseits nicht empfohlen.

Ein großer deutscher Provider und Anbieter von dedizierten Server empfiehlt also seinen Kunden, keine Sicherheitsupdates einzuspielen, weil das Updaten von Servern eben Arbeit macht. Herzlichen Glückwunsch! Ich rate allen Autofahrern, ab morgen auf den TÜV zu verzichten. Es könnten Reparaturkosten und Stress anfallen, und das kann ich meinerseits nicht empfehlen.

Um so interessanter, dass 1blu (wie andere Anbieter von Servern auch) die Haftung für alle Folgen solch hanebüchener Tipps weit von sich weist. Zitat aus den AGB:

Abschnitt III: Sonderregeln für Server

1. Administration und Benutzung

1.1. Bei bestimmen Servern hat der Kunde allein Administratorrechte. 1blu kann den Server nicht verwalten. Der Kunde ist daher für die Sicherheit seines Servers allein verantwortlich. Es obliegt ihm, Sicherheitssoftware zu installieren, sich regelmäßig über bekannt werdende Sicherheitslücken zu informieren und bekannte Sicherheitslücken zu schließen. Die Installation von Wartungsprogrammen oder sonstiger Programme, die 1blu zur Verfügung stellt oder empfiehlt, entbindet den Kunden nicht von dieser Pflicht.

1.2. Jeder Kunde ist verpflichtet, seinen Server so einzurichten und zu verwalten, dass die Sicherheit, Integrität und Verfügbarkeit der Netze, anderer Server, Software und Daten Dritter nicht gefährdet wird.


Fazit: Folge ich den Tipps von 1blu, bin ich auf dem besten Weg, gegen die AGB von 1blu zu verstoßen und dafür in die volle Haftung zu geraten. Na Danke auch.

28.05.12

Hardware-Backdoors

Ich bin eben via fefe auf einen Bericht zu Hardware-Backdoors gestoßen. Im Detail geht es darum, dass viele Low-Cost-Chips, die aus China kommen, mit Hintertüren ausgeliefert werden. Also nicht ein Gerät an sich oder die Software darauf, sondern eben die Chips selbst. Diese Chips werden dann in die verschiedensten Geräte gebaut.

Wenn ihr euch mal überlegt, wo heutzutage Chips verbaut sind, vom Fahrkartenautomat über die Waschmaschine zu solchen Dingen wie ABS im Auto aber eben auch sowas wie Waffensteuerung, dann ist die Vorstellung schon mehr als gruselig, dass die Chinesen im Ernstfall hintenrum Zugriff haben könnten.

Ihr findet den Bericht hier. Ganz unten ist eine Liste mit betroffenen Herstellern, die ich an dieser Stelle ungekürzt zitieren möchte:

Motorola, Microchip, Atmel, Hitachi, NEC, Xilinx, Lattice, Actel, Cypress, Zilog, Dallas, Mitsubishi, Freescale, Renesas, Altera, Texas Instruments, Intel, Scenix, Fujitsu, STMicroelectronics, Winbond, Holtek, Philips, Temic, Cygnal, Toshiba, Samsung, Ubicom, Siemens, Macronix, Elan, National Semiconductor, NXP


Also eigentlich alle.

Nachtrag: Heise nimmt die Chinesen in Schutz.

5.05.12

100% sicher!

Gerade bei Tagesschau24:"Das setzen von MAC-Adress-Filtern ist die einzig 100% sichere Möglichkeit, fremde Nutzer im WLAN auszusperren."

Autsch!

Nachtrag: Das hier scheint die Primärquelle zu sein http://www.wdr.de/tv/aks/sendungsbeitraege/2012/kw18/0504/angeklickt.jsp ganz unten. (Danke an Falko)

3.05.12

Witzisch

Es kommt ja selten vor, dass eine Sendung im Fernsehen inhaltlich so schmerzt, dass ich wegschalten muss (private Sender sehe ich mir nicht an, daher droht von der Front keine Gefahr). Gestern ist es dann doch wieder einmal passiert. Mangels Alternativen bin ich bei der Satire-Sendung Extra3 gelandet, die sich in Niveau-Belangen leider seit einigen Jahren im anhaltenden Abwärts-Trend befindet.

Die Macher hatten sich nun einfallen lassen, eine junge Dame durch die Nerd-Reihen des Bundesparteitag der Piratenpartei zu schicken. Mit einem Notebook in der Hand schaute diese hilflos drein und bat die Anwesenden, ihr bei einem Problem mit ihrem Gerät zu helfen. Internet und so. Der grandiose "Gag" bestand jetzt darin, dass keiner der Angesprochenen es schaffte, in Sekunden vor laufender Kamera die PC-Probleme zu lösen. Fazit: Die Piraten sind sogar in ihrer angeblichen Kernkompetenz zu doof.

Was soll ich dazu sagen? Überraschung!

Und nun zu euch, liebe Techies, Nerds und Geeks. Ihr kennt das: Ihr könnt mit Technik umgehen, habt gelernt die Prozesse von IT zu verstehen und baut eure Computer selbst. Ihr habt den Laden einigermaßen im Griff und wisst, wie Netzkultur funktioniert. Und weil ihr euch ja so gut "mit Computern" auskennt, kommt jeder entfernte Verwandte, dem ihr sonst nur auf der goldenen Hochzeit von Oma und Opa über den Weg lauft, bei jedem noch so seltenen PC-Problem angerannt und erwartet, dass ihr das mal eben schnell fixt. Da funktioniert eine Tabelle in Excel nicht, das Spiel das Filius läuft nicht Rund und das Update das Grafiktreibers ging schief, irgendwas mit einem Virus war, Google geht nicht mehr, Ausnahmefehler an Adresse 0X0782000, ... Und natürlich müsst ihr euch hinsetzen und erst einmal ganz in Ruhe checken, was da eigentlich schief geht. Oft genug stellt sich am Ende nach langer Suche heraus, dass der Fehler von einer ganz unbedachten Seite herrührt. Sogar die Textil-Industrie hat sich dieser Thematik bereits angenommen.

Die wahre Expertise besteht eben gerade nicht darin, jedes Programm, jedes noch so esoterische Problem und jede Fehlermeldung auswendig gelernt zu haben (wie immer das bei Millionen und Milliarden Zeilen Programmcode auch gehen sollte), sondern im Verständnis des Zusammenspiels. Auch ohne jede Erfahrung in Excel wissen wir Nerds, wie wir einem auftretenden Problem mit Hilfe von Google & Co. auf die Schliche kommen können.

Nur, erklärt das mal der Verwandtschaft. Oder Extra3.

Es ist, liebe Extra3-Mitarbeiter, auch nicht so, dass jeder Computermensch zwangsläufig mit einer Ladung Netzwerkkabel in der Handtasche durch die Prärie reitet. Oder fändet ihr es bemerkenswert, dass ein KFZ-Mechaniker abends an der Bar kein Radkreuz dabei hat? Oder ein Malermeister keine Pinsel zum Wochenendausflug in den Park mitnimmt? Man nennt so etwas Vorurteile. Kann man witzisch finden, muss man aber nicht.

Das wirklich bittere an der ganzen Story ist aber, dass der ach so tolle "Gag" der Extra3-Redaktion vor allem eins beweist: Die Macher haben nicht im Ansatz begriffen, wie IT funktioniert. Sie repräsentieren mit ihrer Denkrichtung genau die Fraktion Mitmenschen, die in Nerds und Geeks nur "machen irgendwas mit Computer" sehen. Offliner eben, die das auch noch wahnsinnig witzisch finden. Leider ist das im Ergebnis dann eher peinlich. Klassischer Fall von Dunning-Kruger-Effekt

Das ganze Drama ist in der Mediathek anzusehen. Leider nur bis ganz kurz nach gestern verfügbar, aber das ist ein anderes Thema.

1.05.12

I know what I am doing

Ich hab hier 'nen angestaubten Rechner mit 'ner frischen Gentoo-Installation. Da wollte ich gerade eclipse drauf bügeln. Bekomme ich folgende Meldung:

krasnojarsk stefan# emerge eclipse-sdk

Calculating dependencies... done!

>>> Verifying ebuild manifests
>>> Running pre-merge checks for dev-util/eclipse-sdk-3.7.1-r7
 * Checking for at least 1280 mebibytes RAM ...                          [ !! ]
 * There is NOT at least 1280 mebibytes RAM
 * Checking for at least 1536 mebibytes disk space at "/var/tmp/portage/dev-util/eclipse-sdk-3.7.1-r7/temp" ...                                          [ ok ]
 *
 * Space constrains set in the ebuild were not met!
 * The build will most probably fail, you should enhance the space
 * as per failed tests.
 *
 * ERROR: dev-util/eclipse-sdk-3.7.1-r7 failed (pretend phase):
 *   Build requirements not met!
Es gibt ja hier und da Linux-Distributionen, die einem an der Stelle im Regen stehen lassen. Aber Gentoo wäre nicht Gentoo, wenn es nicht einen Weg gäbe, als User seinen Willen durchzusetzen. Ich musste eine Weile suchen, aber die ganze Nummer hat doch seinen Charme:

krasnojarsk stefan# I_KNOW_WHAT_I_AM_DOING=yes emerge eclipse-sdk
Jetzt läuft's durch.

6.04.11

Coden

Ich liebe Momente, in denen ich solche Dinge sage: "weil ich im development kein 404 bekomme, sondern ne exception"

10.11.10

Stress mit Linux

Ich mag Linux. Eigentlich. Die Netzwerkeigenschaften sind super, Server unter Linux machen Spaß. Auch auf meiner Workstation verzichte ich auf Windows und arbeite seit Jahren mit Gentoo-Linux. Das funzt im Alltag auch ganz super. Nur manchmal ist meine Stirn zu klein, um so dagegen zu schlagen, wie ich das gerne tun würde.

Heute ist manchmal!

Im Moment baue ich an Flyern. Dafür nutze ich, wie immer, wenn ich mit Grafikbearbeitung zu tun habe, Inkscape und Gimp. Das Ergebnis geht dann an eine Online-Druckerei und in ein paar Tagen stehen die Flyer unter'm Schreibtisch. Die Online-Druckerei erwartet von mir Dateien mit CMYK-Farbformat.

Soweit so normal. Druckereien arbeiten mit CMYK. Alle. Weil sie eben drucken. Und gedruckt wird CMYK.

Und weil das eben so ist, haben Grafikprogramme die Möglichkeit von RGB-Farbformat für Bildschirme auf CMYK für Druck umzuschalten. Nicht alle. Gimp nicht.

An dieser Stelle frage ich mich ernsthaft, wer so bescheuert sein kann Gimp ohne CYMK auszuliefern! Linux will auf den Desktop, das ist gut. So lange aber grundlegende Dinge nicht funktionieren, welche im professionellem Umfeld für das Tagesgeschäft unersetzlich sind, muss sich niemand wundern, wenn freie Software auf dem Desktop nicht ernst genommen wird.

Was bleibt mir, wenn mich in Zukunft jemand nach einer OpenSource-Lösung für seinen Grafik- oder Designer-Laden fragt? So schön das Arbeiten mit Gimp von der Hand geht, es ist leider professionell nicht einsetzbar. Und das alles wegen einer Kleinigkeit.

Ich habe mir letztendlich mit einem PlugIn ausgeholfen. Die Installation lief über ein Portage-Overlay, also auch alles Andere als schmerzfrei und intuitiv.