Archives For Events

Heute schreibe ich ein wenig über die Python Bibliothek pyinotify, welche das Inotify Kernel Feature aufsetzt. Inotify ist ein Mechanismus welcher seit demKernel release 2.6.13 in den Vanilla Kernel Quellen vorhanden ist. Welcher eine permanente Überwachung von Dateien und Verzeichnissen ermöglicht. Ändert sich eine überwachte Datei oder Verzeichnis gibt Inotify eine Meldung aus, welche andere Programme zu bestimmten Tätigkeiten veranlassen kann. Quelle:Wikipedia.

Im folgenden wird Benutzung von pyinotify anhand eines kleinen Skriptes erklärt, welches Änderungen an der Datei “/proc/net/arp” überwacht. Sobald sich der Inhalt der Datei ändert wird ein Prozess des “arp” Tools gespawnt das die Änderung in die Arp-Tabelle einträgt. Das Skript benutzt scapy2.2.0 so wie den Pyinotify wrapper zum Skripten der Events.

Bei den neuesten Ubuntu Versionen sollte ein

sudo apt-get install python-scapy python-pyinotify

seinen Zweck erfüllen.

Auf älteren Systemen (Lucid Lynx) rate ich dazu Scapy aus dem Netz zu laden und selber zu Installieren.Das Skript auf welches ich mich hier beziehe besteht im Grunde aus zwei simplen Methoden und dem Konstruktor. Fangen wir mit der Erklärung des Konstruktors an:

class secMyass(object):
 
        def __init__(self):
               self.router = conf.route.routes[-1][-3]
	       self.mask = pyinotify.IN_MODIFY | pyinotify.IN_OPEN

Wie man sieht gestaltet sich der Konstruktor ziemlich simpel, self.router ruft conf.route.routes auf. Dies stellt ein Zweidimensionales Array da welches die Routen der Kernel-routingtabelle abbildet. Der Zweck des Aufrufes ist den Standard Gateway für des lokalen Netzwerkes zu ermitteln. Die self.mask Zuweisung gibt an auf welche notify Ereignisse später Überwacht werden soll. Die Methode set_gw_mac beschreibt das setzen des Gateway Eintrags. Entscheidend ist die erste Zeile nach dem Funktionskopf:

def set_gw_mac(self):
                child = pexpect.spawn("arp -s %s %s " % (self.router,getmacbyip(self.router)))
                child.logfile = sys.stderr
                child.readline()
                child.expect(pexpect.EOF)

child ist eine Zuweisung auf den Aufruf der pexpect Methode spawnt, welche das arp Programm im Hintergrund als Prozess spawnt. Der Formatstring formatiert die erste Stelle zu self.router welche die Standard Gateway IP zurück gibt. Die Zweite Stelle ruft die getmacbyip() Methode von scapy auf der nochmals self.router übergeben wird, was in der Rückgabe der Gateway MAC Adresse endet. Die übrigen drei Zeilen der Methode sollten relativ selbst sprechend sein.

Nun der interessante Teil welcher die Benutzung von pyinotify beschreibt:

        def fileWatcher(self):
                wm = pyinotify.WatchManager()
                notifier = pyinotify.ThreadedNotifier(wm)
                wm.add_watch('/proc/net/arp', self.mask,rec=False)
                if notifier.check_events():
                        self.set_gw_mac()
                        print "Gateway Mac changed!"

wm ist eine Zuweisung des Methoden Aufrufers WatchManager() die Operationen und Optionen anbietet für die Überwachung von Dateien und Verzeichnissen. Notifier ruft den ThreadedNotiefier auf und übergibt WachManager an diesen. Der ThreadedNotifier Klasse werden von Threading und der Notifier Klasse Methoden und Objekte vererbt. Die folgende Zeile welche über WatchManager die add_watch Methode aufruft definiert den eigentlichen Watchevent. Welcher das zu überwachende Verzeichnis übergeben bekommt und self.mask des Konstruktors, in dem die Events angegeben wurden auf die Überwacht werden sollen. Die if Verzweigung ruft über den Notifier die check_events Methode auf und geht den darauf folgenden Anweisungs Block durch wenn check_events “True” zurück gibt. Der Anweisungsblock startet den Überwachungsprozess. Und im Falle des Auftretens eines der im Konstruktor definierten Events, wird die set_gw_mac Methode ausgeführt sowie eine kurze Nachricht über die Änderung ausgegeben.

Natürlich gibt es noch zahllose andere Möglichkeiten was mit Inotify noch alles möglich ist, doch das würde den Rahmen dieses Artikels sprengen.

In diesem Sinne viel Spaß noch am Gerät…

Weblinks:

Pyinotify Homepage
Pyinotify Developer Repository
Bitbucket Repo Link zum Arp-Entry watch Skript

Der zweite Tag der Konferenz ist bereits in vollem Gange und in der Zwischenzeit sind nahezu alle Teilnehmer wieder im Vortragsbereich zu finden. Die Anstrengungen des gestrigen Tages sind zwar vereinzelt noch zu erkennen, weichen aber langsam der Vorfreude auf die kommenden Vorträge. Das Vortragsprogramm bietet auch am zweiten Tag in einem englischen und deutschen Track vielfältige Möglichkeiten sich zu Themen rund um Nagios, Icinga und deren Addons und Plugins zu informieren.

Besonderes Highlight des gestrigen Tages war natürlich die Abendveranstaltung über den Dächern des Nürnberg Christkindlesmarktes. Von Glühwein gestärkt hielten sich einige Teilnehmer tapfer den ganzen Abend unter freiem Himmel und blieben tapfer bis zum Schluss.

Hier noch einige Impressionen des ersten Tages, welche in den kommenden Tagen natürlich ausführlich im Teilnehmerbereich zur Verfügung gestellt.

Allen Teilnehmern wünschen wir einen spannenden zweiten Tag und viele interessante Gespräche.

Wichtig ist natürlich jetzt schon der Termin fürs nächste Jahr: 17. und 18. Oktober 2012 in Nürnberg.

Wir sehen uns!

14.thumbnail OSMC 2011   Der zweite Tag

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen Schaschlik-Kultur.

Da einige Diskussionen nach der Abendveranstaltung am 06.04. im Hotel noch intensiviert wurden, war es für einige Teilnehmer eine kurze Nacht geworden. Zum Eröffnungsvortrag von Dr. George Kolomvos hatten sich trotzdem viele Zuhörer im großen Raum eingefunden. In seinem Vortrag zur “Open Source Observatory and Repository” gab er einen Überblick über das noch recht junge Projekt und die Möglichkeiten zum Austausch von Open Source Software in dieser europäischen Open Source Plattform. Einzige Voraussetzung ist ein möglicher Nutzen für einen potentiellen öffentlichen Interessenten.

Thomas brachte uns die Grundlagen von Puppet näher. Um den Einstieg zu finden bekamen wir an dieser Stelle auch noch eine kleine Einführung in die italienische Politiklandschaft. So wurden Facts und vor allem der Einsatz von “Ruby” völlig klar. Bei Puppet werden über eine Deklarationssprache Änderungen an die Clients geschickt wo sie entsprechend vom Puppetagenten umgesetzt werden. An praktischen Beispielen zeigte Tom, wie man mit Anweisungen den sogenannten Manifests Konfigurationsänderungen durchführt.

Martin Loschwitz von LINBIT gab parallel eine Einführung in Pacemaker. Beginnend mit der Historie von Linux HA bis hin zum aktuellen Stand und mit Ausblick auf die Zukunft. Corosync ist bisher die Grundlage für die Clusterkommunikation. Doch Corosync kann leider kein Ringrecovery. Das heisst im Falle eines Ausfalls der Kommunikationsschicht habe ich Probleme mit meinem Cluster auch noch nachdem die Kommunikation wieder läuft. Kronosnet als Multipoint-to-Multipoint, Layer 2 Kommunikationsschicht und neuer Unterbau für Corosync und Pacemaker wird hier wohl noch 2011 für Abhilfe sorgen. Matahari wird als Neuerung und Ersatz für den Local Resource Management Daemon (lrmd) derzeit entwickelt. Auch noch in 2011 wird Pacemaker 1.2 erwartet. Unter anderem sollen ACLs unterstützt werden um Zugriffsberechtigungen für Cluster-Operatoren/Administratoren zu ermöglichen.

Die Open Source Data Center Konferenz 2011 war auch dieses Jahr ein voller Erfolg! Mehr dazu in Kürze…

DSC02778 300x225 OSDC 2011   Auch am 2. Tag viel Know How und interessante VorträgeDSC02785 300x225 OSDC 2011   Auch am 2. Tag viel Know How und interessante VorträgeDSC02775 300x225 OSDC 2011   Auch am 2. Tag viel Know How und interessante Vorträge

 

 

 

 

 

14.thumbnail OSDC 2011   Auch am 2. Tag viel Know How und interessante Vorträge

Autor: Bernd Erk

Bernd ist einer der Geschäftsführer der NETWAYS Gruppe und verantwortet das Tagesgeschäft. Da er in einem früheren Leben mit Java und Oracle Datenbanken gearbeitet hat, kümmert er sich immer noch gerne um das Thema Reporting - sowohl bei NETWAYS, als auch im Icinga Team. In seiner knappen Freizeit streitet er sich mit seinem Sohn, wer das iPad gerade benutzen darf und widmet sich der Weiterverbreitung der gehobenen Schaschlik-Kultur.

cb08 logo o rgb CeBIT 2011: Freikarten sichern und Open Source Park besuchen01.-05. März 2011, Hannover

Als weltweit größte Messe zur Darstellung digitaler Lösungen aus der Informations- und Kommunikationstechnik für die Arbeits- und Lebenswelt zieht die CeBIT alljährlich Besucher aus der ganzen Welt an.  Seit 1986 organisiert die Deutsche Messe AG die CeBIT jährlich im Frühjahr in Hannover und bietet damit eine internationale Plattform zum Erfahrungsaustausch über aktuelle Trends der Branche, zum Networking und für Produktpräsentationen.

Zum dritten Mal in Folge greift die CeBIT 2011 den Trend zu quelloffenen Systeme auf und positioniert das Thema “freie und offene Software” als eigenen thematischen Schwerpunkt. Mittlerweile hat die “CeBIT Open Source” ihren Stammplatz in Halle 2 und präsentiert die neuesten und interessantesten freien Software-Entwicklungen noch größer als zuvor.

Auch 2011 ist NETWAYS wieder auf der CeBIT vertreten. Diesmal in Halle 2 im Block D44, Standnummer 121 direkt im Open Source Park. All unsere Kunden bieten wir Freikarten zum Besuch der CeBIT an! Einfach Email an: events@netways.de.

Auch bei den NETWAYS Events, der OSDC und OSMC können Sie sich jetzt schon Tickets sichern!

sosocon Heise Konferenz SOSOCON abgesagtUnter dem Namen SOSOCON (Software Solutions Conference) sollte vom 30.11 bis 2.12 in Hannover die Nachfolgeveranstaltung der OSMB (Open Source Meets Business) stattfinden. Vor 2 Tagen wurde allerdings entschieden die Konferenz auf unbekannte Zeit zu verschieben. So wie es scheint konnten nicht genügend Besucher mobilisiert werden. Leider steht davon immer noch nichts auf der Konferenzwebsite, aber wir wurden inzwischen offiziell per E-Mail über die Verschiebung informiert.

2.thumbnail Heise Konferenz SOSOCON abgesagt

Autor: Julian Hein

Julian ist Gründer und Eigentümer der NETWAYS Gruppe und kümmert sich um die strategische Ausrichtung des Unternehmens. Neben seinem technischen und betriebswirtschaftlichen Background ist Julian häufig auch kreativer Kopf und Namensgeber, beispielsweise auch für Icinga. Darüber hinaus ist er als CPO (Chief Plugin Officer) auch für die konzernweite Pluginstrategie verantwortlich und stösst regelmässig auf technische Herausforderungen, die sonst noch kein Mensch zuvor gesehen hat.

Page 1 of 212