Apple Wireless Keyboard

Apple Wireless Keyboard

Heute habe ich eine Funktastatur — ein Apple Wireless Keyboard A1255 — vor der Tonne gerettet. Das Problem war, dass es sich nach einem Batteriewechsel nicht mehr einschalten ließ.
Den Fehler würde ich als Sollbruchstelle bezeichnen: in die Tastatur kommen drei Mignon-Zellen. Wie üblich ist im Batteriefach eine Feder. Eher unüblich für so ein Batteriefach ist, dass die Feder nicht am Deckel befestigt ist, sondern tief unten im Fach. Die drückt auch nicht gegen die flache Seite der Batterie, sondern gegen den „Nippel“ am Pluspol. Da das Gehäuse metallisch ist und quasi den Minuspol darstellt muss die Feder gegen Kontakt mit dem Gehäuse geschützt werden. Das Problem wurde in Cupertino mit einer kleinen Plastikhaube gelöst die auf den Kontakt an der Feder geklebt wurde. In der Mitte hat das Ding ein Loch, damit der „Nippel“ der Batterie an den Kontakt kommt.
Jetzt ist es offenbar so dass der Kleber nicht ewig hält. Die Kappe hat sich gelöst, und beim Batteriewechsel praktisch verkehrtherum wieder angeklebt. So schützt das Ding den Pluspol der Batterie effektiv vor Kontakt mit der Feder.
Da das Teil tief in dem Batteriefach steckt ist es praktisch nicht möglich das wieder da abzufummeln, man muss die Tastatur wirklich weitestgehend zerlegen. Apple hat offenbar kein Interesse an einer Reparatur, ohne den Teardown bei iFixit (das sind die mit dem Manifest der eigenständigen Reparatur) hätte ich das vermutlich nicht zerstörungsfrei hingekriegt. Mit den Bildern hat es aber geklappt, und eine Mate-Flasche später war das Hackbrett wieder funktionstüchtig. :-)
Ich nehme nicht an dass man dies in Cupertino liest, aber der Kunde hätte durchaus länger Spaß an seinem teuer erworbenen Designerstück — immerhin kostet so eine Tastatur um die 70 Euro — haben können:

  • Wäre die Kappe gerastet und nicht geklebt wäre sie nicht abgefallen.
  • Wäre die Kappe einfach ein paar Millimeter länger würde sie sich nicht im Fach drehen und falschrum auf dem Kontakt landen.
  • Würde man die Batterien andersherum einlegen (Minuspol voraus ins Fach) könnte man eine Feder einbauen die von vornherein nicht die Seitenwände berühren würde. Das würde auch das Plastikteil und die Metallkappe auf der Feder komplett überflüssig machen, da können sicher ein oder zwei Cent gespart werden.
  • Wäre die Feder — wie eigentlich meistens üblich — am Batteriefachdeckel müsste man die Tastatur nicht zerlegen um sie zu reparieren. Ausserdem hätte man die oben genannten Vorteile und könnte ein paar Cent sparen.

Warum das nicht so gemacht wird… Naja, eine Ahnung habe ich schon, aber da würde ich mich nur wieder aufregen… ;-)
Ach, nochwas: ich habe die Tastatur mit Platz für drei AA-Zellen. Der Nachfolger arbeitet mit zwei Zellen, und laut Wikipedia ist ein Feature des Nachfolgers dass er auch im Zusammenhang mit Windows funktioniert. Das kann ich hier nicht testen, aber zumindest für die drei-Zellen-Version kann ich unter Linux keine Probleme feststellen.

Im Bau und aus Fahrersicht

Im Bau und aus Fahrersicht

Naja, zugegeben: der Begriff ‚Bordcomputer‘ ist übertrieben. Masslos. :-)
Vor ein paar Wochen bin ich fahrzeugtechnisch von einem praktisch neuen VW Golf Plus mit exzellenter Ausstattung auf einen 16 Jahre alten VW Passat Variant umgestiegen. Ich mag den Wagen, aber die Ausstattung kann mit einem modernen Auto kaum mithalten. Aber ein paar Annehmlichkeiten kann man ja nachrüsten.
So zum Beispiel eine Funkfernbedienung für die Zentralverriegelung. Der Nachrüstsatz hat samt Klappschlüssel nicht mal 20 Euro gekostet, das konnte ich mir nicht verkneifen.
Das Blaupunkt Cassettenradio musste weichen. Auch wenn, wie ich erst beim Ausbau festgestellt habe, ein zehnfach CD-Wechsler dran hing — der nicht mal dem Vorbesitzer des Autos bekannt war. :-)
Stattdessen habe ich jetzt ein JVC KD-X50BT eingebaut, und damit bin ich sehr zufrieden. Kein CD-Laufwerk mehr, dafür AUX, Bluetooth und USB-Funktion. Erfreulich wenige Kirmes-Effekte. Lediglich die Farbe der Beleuchtung lässt sich anpassen. So ist die bei mir tagsüber blau-weiss, sobald ich die Scheinwerfer einschalte wird sie grün, passend zur restlichen Instrumentenbeleuchtung. Ach ja, und mit <80 Euro ist das Gerät auch echt erschwinglich.
Die Bluetooth-Funktion war mir wichtig. So kann ich zum einen auf Anrufe reagieren, zum anderen — wie damals im Golf — Podcasts vom Handy hören.
Aber das Telefon will auch ordentlich untergebracht werden: Für ein paar Euro habe ich eine alte Handykonsole ersteigert. Fehlt nur noch eine Befestigung für mein HTC Desire. Käuflich habe ich nichts passendes gefunden. Also selbst ans Werk(-zeug): ein Stück Buchenleimholz lag noch vom Bau der Küche im Keller. Da habe ich so lange Fräse, Säge, Schleifteller und Bohrmaschine drangehalten bis der Rohling vor mir lag der links im Bild zu sehen ist.
Gehalten wird das Telefon darin über den USB-Stecker. So lange sich das Auto nicht überschlägt hält das auch erstaunlich sicher. Am anderen Ende des Kabels hängt ein USB-Adapter der ursprünglich mal mehr schlecht als recht in den Zigarettenanzünder gepasst hat. Den habe ich seines Gehäuses beraubt und stattdessen mit einem Kabel versehen. Das ist an die Stromversorgung für die Heckscheibenheizung angeschlossen. So wird das Handy geladen während der Motor läuft, ansonsten ist — anders als beim Zigarettenanzünder — alles aus.
Abschließend noch ein paar App-Empfehlungen im Zusammenhang mit dem Auto: FuelLog hilft die Kosten und den Verbrauch im Blick zu halten. Navigation mache ich noch über Google Maps, der Anschaffungswiderstand schreckt mich noch von Navigon oder TomTom ab. Das Ulysse Speedometer ist eine nette Spielerei, lenkt aber auf Dauer zu sehr vom Fahren ab. Praktisch ist wieder Meine Tracks, um nachträglich zu sehen wo man gewesen ist und ob man sinnvoll gefahren ist. Habt Ihr noch Empfehlungen für mich?

Ich mag Schiffe. Insbesondere mag ich Segelschiffe. Gerne würde ich mal auf einem mitfahren.
Erschreckend und traurig finde ich, dass ein Sturm im Jahr 2012 immer noch solche Bilder hervorbringen kann. :-(
Das war die Bounty. Nicht die originale Bounty, deren Reise bekanntermassen bei Pitcairn endete sondern der 1960 für den bekannten Film entstandene Nachbau.
Das Schiff ist am 29. Oktober zu nah an den Hurrikan Sandy geraten und gesunken. Dabei sind zwei der 16 Besatzungsmitglieder ums Leben gekommen. :-(
Den oben erwähnten Film habe ich komischerweise noch nicht im Regal. Dann muss ich die Tage wohl nochmal Fluch der Karibik sehen und nach der Bounty ausschau halten…

Proxmox' Weboberfläche

Proxmox‘ Weboberfläche

In der Regel habe ich keine Angst vor ‚großer‘ Software. Naja, Angst hatte ich auch nicht vor Opennebula. Aber trotzdem habe ich kapituliert. :-(
Ich habe da jetzt ein paar Abende drauf verwendet, aber das scheint doch nicht die richtige Waffe für mein Ziel zu sein. Und der Aufwand das Ding einfach nur zum Spaß zum laufen zu bringen schien mir dann irgendwann zu hoch zu sein. Eigentlich bin ich auf der Suche nach etwas in der Art eines VMware ESX-Servers — nur halt in Open Source. Etwas womit man sich schnell mal bei Bedarf eine virtuelle Maschine klicken kann um irgendwas auszuprobieren.
Nach meinem Eindruck ist Opennebula eher dazu geeignet, sich schnell mal eben 20 oder 50 Maschinen zu klicken. Allerdings scheint es da nötig zu sein die Maschinen vorher als Abbild vorzubereiten. Mal eben das ISO einer neuen Distribution ziehen und booten ist da nicht im Fokus.
Heute habe ich mir ein Proxmox VE installiert, und ich muss sagen: bis jetzt bin ich begeistert!
Die Installation war ein Kinderspiel: auf dem ISO ist ein Debian Squeeze mit fertig installiertem Proxmox. Während der Installation werden nur die Einstellungen für das Netzwerk, ein Hostname und ein Root-Passwort erfragt. Danach kann man die vergebene IP ansurfen und hat eine übersichtliche Weboberfläche in der man sich die Maschinen zusammenklicken kann.
Viel habe ich damit noch nicht gemacht, daher hier nur ein paar Stichworte die ich bis jetzt nennen kann:

  • Wahlweise Virtualisierung mit KVM (um nicht-Linux-Systeme zu betreiben) oder OpenVZ (um Ressourcen zu schonen). Beides geht parallel!
  • Bedienung vollständig über die Webschnittstelle
  • Für OpenVZ gibt es eine Menge Templates mit vorkonfigurierten Systemen, bspw. mit fertig installierten (Web-)Anwendungen. Es scheint nicht allzu schwer zu sein, eigene Templates zu bauen.
  • Eingebaute Backup-Funktionalität: man kann schnell einen Snapshot einer Maschine anlegen, oder auch regelmäßige Sicherungen planen.

Sicher gibt es da noch viel zu entdecken. Ich werde mich da auf jeden Fall noch eingehend mit beschäftigen. Als nächstes sollte ich versuchen rauszufinden wie ich meinen laufenden Debian-Server virtualisieren kann, und wie ich die bestehenden virtuellen Maschinen Proxmox-kompatibel machen kann. Bis jetzt sieht das nach einer echt vielversprechenden Basis für mein Heimnetz aus.

Das Zabbix-Item

Das Zabbix-Item

Lange Zeit habe ich die Überwachung meines Netzwerkes Nagios anvertraut. Vor einiger Zeit habe ich das durch ein Icinga ersetzt, einfach nur um mal zu sehen inwiefern der Fork besser oder anders ist. Seit einigen Wochen beschäftige ich mich aber aus verschiedenen Gründen mit Zabbix, und das ist auf dem besten Wege sowohl Nagios als auch Icinga zu verbannen. Zabbix kann einfach viel mehr als Nagios/Icinga, und wenn man sich an die Konzepte gewöhnt hat ist es absolut nicht schwieriger zu beherrschen.

Eine der letzten Überwachungen die Nagios und Icinga bei mir gemacht haben, Zabbix aber noch nicht, war der Test auf aktualisierte Softwarepakete. Da die meisten Systeme unter meiner Fuchtel unter Debian laufen ist das nicht allzu schwer. Bislang habe ich regelmäßig durch den Nagios Remote Plugin Executor (NRPE) ein apt-get update && apt-get upgrade ausgeführt und rausgeparst wie viele Pakete aktualisiert würden. Das hat mehrere Nachteile: zum einen sind die Prozesse — gerade bei meiner schmalen Internetanbindung — teilweise recht lange unterwegs, und das führt zu Timeouts. Zum anderen bekommt das Monitoring erst beim nächsten Test mit dass ein System aktualisiert wurde, und da ich meine Kisten nicht unnötig stressen will teste ich nur zweimal täglich. Das bedeutet, dass ein Alarm unter Umständen knapp zwölf Stunden weiter besteht, obwohl die Situation schon bereinigt wurde.

Das geht besser.

Ich vermute dass das auch mit Nagios/Icinga besser ginge, aber ich gestehe dass ich damals nicht die Zeit investiert habe. Für Zabbix habe ich jetzt eine Lösung die mir gut gefällt:

Im nebenstehenden Bild sieht man den Parameter (Zabbix-Sprech: ‚das Item‘) das ich dazu angelegt habe. Das ist in meiner Konfiguration das erste Item vom Typ Zabbix-Trapper, daher stelle ich das hier mal vor. Zabbix-Trapper bedeutet, dass der Parameter nicht aktiv gepollt wird. Zabbix wartet passiv darauf, dass jemand mittels zabbix_sender einen Wert in das System schießt. Das funktioniert natürlich sowohl direkt bei Übergabe an den Zabbix-Server, als auch bei Übergabe an einen Zabbix-Proxy (ja, auch so einen habe ich zu Hause… ;-) ).

Nur wer sagt jetzt beim Zabbix Bescheid ob Pakete zu aktualisieren sind? Keine schlechte Idee ist, regelmäßig ein apt-get update auszuführen, um den Katalog aufzufrischen. Das erledigt Cron gerne, dem könnte man dann auch direkt sagen dass er den aktuellen Wert an Zabbix schicken soll. Das würde aber bedeuten, dass das Problem mit der Verzögerung nach einer Auffrischung des Systems immer noch bestünde. Also habe ich mir Apt mal etwas näher angesehen.

Im Verzeichnis /etc/apt/apt.conf.d/ kann man Hooks ablegen die vor oder nach bestimmten Aktionen des Paketmanagements ausgeführt werden. Bei mir gibt es da jetzt eine Datei namens 99zabbix, die hat einen Inhalt in dieser Form:

APT::Update::Post-Invoke-Success { "zabbix_sender -z zabbix.intern -s $(hostname -s).intern -k debian.updates -o $(apt-get -s upgrade | sed -ne 's/^\([0-9][0-9]*\) .*/\1/p') > /dev/null" };
DPkg::Post-Invoke { "zabbix_sender -z zabbix.intern -s $(hostname -s).intern -k debian.updates -o $(apt-get -s upgrade | sed -ne 's/^\([0-9][0-9]*\) .*/\1/p') > /dev/null" };

Das Kommando ist in beiden Fällen das gleiche. Mit APT::Update::Post-Invoke-Success wird festgelegt was nach einem erfolgreichen apt-get update passieren soll. So bekommt Zabbix nach jedem Update mit ob es etwas neues gibt, unabhängig davon ob Cron das angestossen hat oder ob ich das manuell war. Der Eintrag DPkg::Post-Invoke sagt nach jeder Änderung an den installierten Paketen noch einmal Bescheid wie der Stand der Dinge ist. So wird also nach einem apt-get upgrade der Wert direkt wieder auf 0 zurückgesetzt.

Dazu habe ich folgenden Trigger gebaut:

{Template OS Linux:debian.updates.last(0)}>0

Der meldet bislang nur, wenn der letzte Wert in dem Item debian.updates größer ist als 0. Da muss ich aber noch einmal Hand anlegen, so dass der auch aktiv wird wenn seit einer gewissen Zeit kein aktueller Wert gesetzt wurde. Dann ist davon auszugehen dass der Cron-Job kaputt ist der das apt-get update ausführt, oder dass an der Paketverwaltung grundsätzlich etwas schief läuft. Aber wie das geht muss ich mir noch genauer ansehen…

Systemstartprotokoll

Systemstartprotokoll

Ich fühle mich gerade wie ein Kind vor einer Schüssel voll Süßigkeiten an die es nicht ran darf. :-(

Ich glaube für ein Heimnetzwerk habe ich hier eine vergleichsweise komplexe Umgebung. Beim Aufbau habe ich versucht, den Stromverbrauch der Teile nicht aus den Augen zu verlieren. Mein Server hat aktuell eine Intel Core2Duo CPU mit 2,8GHz (E7400), dazu 4GB RAM und zwei Platten im RAID1. Unter Vollast zieht das Ding knapp 130W, wenn er vor sich hin idled begnügt er sich mit knapp 100W. Zumindest wenn ich meinem Messgerät trauen darf.

Jetzt habe ich einen etwas betagten professionellen Server zum Spielen bekommen. Das ist ein Dell 1950. Zwei Xeon mit 3GHz (X5450), 8GB RAM und wieder zwei Platten im RAID. Im Gegensatz zum Eigenbau-Server mit PC-Hardware hat das Ding aber ein paar wirklich nette Features. Allen Voran DRAC. Das ist ein Modul mit einem eigenen Netzwerk-Anschluss, völlig unabhängig von den beiden GBit-Interfaces auf dem Board. Darauf läuft ein Embedded Linux, und damit kann ich selbst bei ausgeschaltetem Server Sachen machen für die ich sonst in den Keller gehen müsste. Ein- und ausschalten, den Status der verbauten Komponenten ermitteln, und was mich besonders beeindruckt: das Teil zeigt mir im Webbrowser die Ausgabe der letzten Power-on Self-Tests (POST), und die der letzten Bootvorgänge. Also das was man gesehen hätte wenn man zum Zeitpunkt des Boots vor dem Rechner gestanden hätte.

Für mich als jemanden der Monitoring als sein Steckenpferd betrachtet bietet das Gerät ein Eldorado: völlig unabhängig vom installierten Betriebssystem kann ich mich per SNMP, IPMI, SSH oder Web über den Zustand des Servers erkundigen.

Der Haken an der ganzen Geschichte: der Dell zieht etwa 80W aus der Steckdose. Ausgeschaltet. Wenn er läuft macht er nicht nur einen Höllenlärm — immerhin toben da 16 kleine aber kräftige Lüfter — sondern nimmt sich locker 250W, wenn volles Rohr gekühlt wird auch gerne mal deutlich ueber 300W. :-(

So sehr es mich reizt, und so viel Spaß auch das Spiel mit professioneller Technik macht: ich glaube das Teil wird hier kein Dauerläufer…

Einer der letzten Punkte an denen mir unter Linux eine Software für einen bestimmten Zweck gefehlt hat war, wenn ich mal ein ordentliches Ablauf- oder Netzwerk-Diagramm malen wollte. Das ist vorbei: yED ist zwar nicht frei, aber kostenlos. Und ehrlich gesagt gefällt es mir besser als das Windows-Pendant auf das ich bislang immer geschielt habe…