Seite wählen

NETWAYS Blog

Hier erfährst Du alles was uns bewegt. Technology, Hardware, das Leben bei NETWAYS, Events, Schulungen und vieles mehr.

SMSEagle Revision 2: Einführung gelungen!

Wie unter unseren Kunden bekannt, haben wir die Produkte des polnischen Herstellers Proximus, den SMSEagle seit mehr als 1,5 Jahren im Portfolio. Das linuxbasierte SMS Gateway gibt es in 2 verschiedenen Versionen. Der Unterschied: Beim SMSEagle NXS-9700 3G handelt es...

Benutzername und Kennwort war gestern: SSH-Key

Heute möchten wir euch zeigen wie man die Authentifizierung gegen ein OpenSSH-Server mittels SSH-Key realisiert. Unser Schlüsselpärchen erzeugen wir mit dem Befehl ssh-keygen und übergeben die Option -t rsa und -b 4096.  Die Option -t definiert welcher Algorithmus und...

Serveradministration mit ISPConfig 3

Für Administratoren die sich nicht viel mit der CLI (Command Line Interface) beschäftigen wollen, gibt es die Administrationssoftware ISPConfig 3, eine Open-Source Software für Linux. Dieses Tool ermöglicht eine umfangreiche Verwaltung von einem oder mehreren Server...

Lösungen & Technology

Konfiguration mit Lsyncd synchronisieren

Hallo! Heute möchte ich euch ein Tool vorstellen mit dem man relativ einfach, sicher und in nahezu realzeit Konfiguration auf andere Systeme und umgekehrt synchronisieren kann. Das Tool hoert auf den Namen Live Syncing (Mirror) Daemon, oder kurz gefasst Lsyncd. Als...

Konfiguration mit Lsyncd synchronisieren

Hallo! Heute möchte ich euch ein Tool vorstellen mit dem man relativ einfach, sicher und in nahezu realzeit Konfiguration auf andere Systeme und umgekehrt synchronisieren kann. Das Tool hoert auf den Namen Live Syncing (Mirror) Daemon, oder kurz gefasst Lsyncd. Als...

Windows 8 – Wieso ausgerechnet die Kacheln!

In dem ganzen Cebit-Trubel schiebe ich ganz still und leise ein Thema dazwischen, dass von vielen nur müde beschmunzelt oder gar abgrundtief verachtet wird. Bei Windows teilen sich ohnehin bereits die Meinungen vieler Entwickler, hinzu kommt dass jedes zweite...

CeBIT 2013: Newsflash von der Front

Gerade kam ein Anruf aus Hannover mit einem Newsflash vom NETWAYS-Stand (Halle 6, Stand F16 (330)) . Wie unser Außendienstreporter Markus berichtet ist nach hervorragendem Frühstück und noch ein paar kleinerer Vorbereitungen unser Stand inzwischen ziemlich gut...

Team CeBIT auf Reisen.

Fast ganz pünktlich um 10:30 ging es für den ersten Teil des CeBIT-Teams heute gen Hannover los. Während Markus mir noch im Gang in den Aufzug in Richtung CeBIT-Mobil entgegenrief: „Und schreib noch nen Blogpost zur Messe!“, lauerte einige Bürotüren weiter schon das...

Events & Trainings

Letzte Tickets für die DevOpsDays in Berlin erhältlich!

Nächste Woche, genauer gesagt am 18. und 19. Oktober, dreht sich in der Kalkscheune Berlin wieder alles um Themen wie Softwareentwicklung, Systemadministration, IT-Infrastruktur-Operationen sowie deren Schnittstellen. Das Vortragsprogramm beginnt mit der Präsentation...

Keine Ergebnisse gefunden

Die angefragte Seite konnte nicht gefunden werden. Verfeinern Sie Ihre Suche oder verwenden Sie die Navigation oben, um den Beitrag zu finden.

Web Services

Keine Ergebnisse gefunden

Die angefragte Seite konnte nicht gefunden werden. Verfeinern Sie Ihre Suche oder verwenden Sie die Navigation oben, um den Beitrag zu finden.

Keine Ergebnisse gefunden

Die angefragte Seite konnte nicht gefunden werden. Verfeinern Sie Ihre Suche oder verwenden Sie die Navigation oben, um den Beitrag zu finden.

Keine Ergebnisse gefunden

Die angefragte Seite konnte nicht gefunden werden. Verfeinern Sie Ihre Suche oder verwenden Sie die Navigation oben, um den Beitrag zu finden.

Keine Ergebnisse gefunden

Die angefragte Seite konnte nicht gefunden werden. Verfeinern Sie Ihre Suche oder verwenden Sie die Navigation oben, um den Beitrag zu finden.

Unternehmen

NETWAYS Web Services Raffle

We wanted to do a big raffle. A very special one. You can win 3 amazing prices and how this works will be described below. But first of all, what are the prices? First place: Our incredible @gethash for one day at your office* Second place: One NWS app for free. A...

NETWAYS Web Services Raffle

We wanted to do a big raffle. A very special one. You can win 3 amazing prices and how this works will be described below. But first of all, what are the prices? First place: Our incredible @gethash for one day at your office* Second place: One NWS app for free. A...

NETWAYS Web Services Raffle

NETWAYS Web Services Raffle

We wanted to do a big raffle. A very special one. You can win 3 amazing prices and how this works will be described below. But first of all, what are the prices? First place: Our incredible @gethash for one day at your office* Second place: One NWS app for free. A...

Jasper Reporting – Eine Einführung

Reporting & Business Intelligence - Ein ungeliebtes Thema? Gerade der zweite Begriff erklärt schon recht gut, wo eigentlich die Wurzeln dieser Technologien liegen. Natürlich im Business Feld, denn noch vor einigen Jahen wurden mit den entsprechenden Tools...

Inhaltsverzeichnis 08/2009

Twitter Weekly Updates for 2009-08-02 Weekly snap: SMS alerts and Sysadmin perks Nagios USB Ampel Twitter Development – Friends und Followers I Nürnberg Startup Weekend klopft an der Tür Nagios Benachrichtigungen direkt an iPhone pushen World of Errors I Twitter...

Blogroll

Da hast Du einiges zu lesen …

Elasticsearch Gadgets

Neue Tools auszuprobieren bedeutet auch, erst mal viel Dokumentation zu lesen. Im Falle von Elasticsearch ist das nicht viel anders. So liest man über Indizes und Shards, über Replika und Cluster. Die Installation ist relativ straight-forward, denn es stehen für alle großen Distributionen fertige Pakete zur Verfügung, die nur darauf warten genutzt zu werden. Doch eines fällt nach der Installation sofort auf: Man ist blind. Von den ganzen tollen Features die in der Dokumentation versprochen wurden, ist erst mal nichts zu sehen. Ich möchte heute ein paar Methoden und Plugins vorstellen, die das gesamte Konstrukt Elasticsearch durch Visualisierung etwas durchsichtiger und greifbarer machen.
API
Die API ist eine der mit am wichtigsten Bestandteile von Elasticsearch. Ohne sie würden viele Plugins wohl nicht existieren. Ich erwähne die API hier aber mit unter deswegen, um zu vermitteln was diese Plugins im Hintergrund eigentlich machen. So viel Magie steckt nämlich gar nicht dahinter. Bei dieser API handelt es sich nicht, wie oft fälschlicherweise behauptet, um eine REST API, sondern um eine CRUD API. Der kleine aber feine Unterschied besteht darin, dass die CRUD API direkt auf die Datenobjekte zugreift und nicht großartig abstrahiert. Man kann sie aber genauso über verschiedene URLs ansprechen. Ein Aufruf, um einen allgemeinen Status über einen Elasticsearch Server zu erhalten, würde zum Beispiel lauten curl localhost:9200/_status. Als Ergebnis erhält man einen guten Überblick über den aktuellen Stand, die Anzahl der Indizes und nähere Infos zu diesen. Die Ausgabe ist sogar im JSON Format, lässt sich also sehr gut verarbeiten. Solche Statusberichte gibt es auch für Cluster einen einzelnen Index.

[...]
"_shards" : {
"total" : 622,
"successful" : 462,
"failed" : 0
},
"indices" : {
"logstash-2014.06.27" : {
"index" : {
"primary_size_in_bytes" : 435,
"size_in_bytes" : 435
}
[...]

ElasticHQ

elastichq plugin index

ElasticHQ Plugin – Index Übersicht


Das ElasticHQ Plugin hilft dabei, den Einstieg zu finden. In einem aufgeräumten Webinterface erhält man Informationen über die Last und den Ressourcenverbrauch der einzelnen Server. Indexe werden aufgelistet und Operationen wie „Optimize“, „Refresh“ und „Delete“ können auf sie angewendet werden.
 
Mit einem Interface für Queries kann man seine Daten durchsuchen und dabei gezielt einzelne Indexe ausschließen. Die Übersicht über Mappings hilft vor allem, wenn man für einzelne Felder das Mapping ändern muss, wie zum Beispiel im Zusammenhang mit Kibana, wo manche Operationen nur durchgeführt werden können, wenn sie numerische Felder erhalten.
elastichq cluster

ElasticHQ Plugin – Cluster


Ein besonderes Augenmerk gilt der Cluster Ansicht. Mit vielen Indizes wird es zwar schnell unübersichtlich, einen guten Überblick bekommt man aber dennoch, wenn man sich einen Einzelnen ansieht. Die Verteilung der Shards wird schnell klar und ob wirklich Replika existieren, lässt sich auch nachvollziehen.
 
Head
elasticsearch head plugin

Head Plugin


Wobei ElasticHQ seine Schwierigkeiten hat, das macht das Head Plugin umso besser. Eine Übersicht aufgeteilt auf Nodes die darstellt, wieviele Shards es pro Index gibt und wie diese aktuell verteilt sind. Die Master Node wird klar markiert und Operationen kann man auch durchführen. So lassen sich ganze Server ausschalten oder Indexe löschen, flushen, refreshen etc. Wie in ElasticHQ auch, gibt es Bereiche in denen man Queries durchführen kann und noch mal alle Indizes aufgelistet bekommt.
Bei den beiden Plugins handelt es sich um so genannte ’site-plugins‘. Das bedeutet, dass sie lediglich einen statischen Inhalt ausliefern und Elasticsearch nach der Installation nicht neu gestartet werden muss. Möglich macht das die Kommunikation über die API, die für die Plugins alle nötigen Informationen abliefert.

Blerim Sheqa
Blerim Sheqa
COO

Blerim ist seit 2013 bei NETWAYS und seitdem schon viel in der Firma rum gekommen. Neben dem Support und diversen internen Projekten hat er auch im Team Infrastruktur tatkräftig mitgewirkt. Hin und wieder lässt er sich auch den ein oder anderen Consulting Termin nicht entgehen. Inzwischen ist Blerim als COO für Icinga tätig und kümmert sich dort um die organisatorische Leitung.

OSMC 2014: Der Countdown läuft – nur noch 141 Tage

Starreferent Michael Medin ist wie immer mit in unserem Countdown vertreten. Diesmal gibt’s was zum Thema NSClient++ um die Ohren!

OSMC? Was soll das denn sein und wer sind die netten Menschen in diesen Videos? Die Open Source Monitoring Conference (kurz: OSMC) ist die internationale Plattform für alle an Open Source Monitoring Lösungen Interessierten, speziell Nagios und Icinga. Jedes Jahr gibt es hier die Möglichkeit sein Wissen über freie Monitoringsysteme zu erweitern und sich mit anderen Anwendern auszutauschen. Die Konferenz richtet sich besonders an IT-Verantwortliche aus den Bereichen System- und Netzwerkadministration, Entwicklung und IT-Management. Und die netten Menschen, die Ihr in unseren Videos zur OSMC seht, gehören dazu. 2014 wird die OSMC zum 9. Mal in Nürnberg stattfinden.

Weekly Snap: PHP SPL Heaps, OpenNebula Fog Provider & RPM Packaging

weekly snap30 June – 4 July offered tips for the PHP developer, cloud operator and sys admin.
Eva started the week by counting 148 days down to OSMC, with Oliver Tatzmann’s talk on “Target Group Oriented IT Service Monitoring”.
Meanwhile, Marius showed how to sort heaps of data with PHP SPL and Dirk started a new blog series on RPM packaging, beginning with the source code.
Lastly, Georg added new Argon 100 bundles to our hardware store range as Achim added our Fog provider for OpenNebula to the upstream master.

RPM-Packaging: Der Quelltext

RPM-Icon from www.softicons.com used under LGPL
Nachdem es mich in letzter Zeit immer öfter trifft, dass ein Kunde die Installation aus Paketen bevorzugt und es eigentlich auch mein bevorzugter Weg der Installation ist, wollte ich eine lockere Serien anfangen rund um das Thema.
Starten möchte ich mit dem Thema mit dem auch ein Paket startet und dass oftmals schon die ersten Hindernisse bereithält, dem Quelltext.
Ein RPM-Paket besteht prinzipiell aus zwei Dingen: dem Quelltext (wenn nötig mit Patches) und einer Bauanleitung, dem Spec-File. Im Spec-File wird angegeben von wo der Quelltext bezogen wird, wie dieser vorzubereiten, zu übersetzen und zu installieren ist, aber auch solche Themen wie die Lizenz unter der er veröffentlicht ist spielen eine Rolle.
Der Quelltext bleibt hierbei unverändert außer es müssen Dateien entfernt werden,die es lizenzrechtlich nicht erlauben sie zu verteilen. Daher muss alles was an Änderungen notfalls wichtig ist in Form eines Patches eingebracht werden. Warum dies leider oft notwendig ist, möchte ich im folgenden erläutern.
Mein Hauptgrund einen Patch hinzuzufügen ist die vorgesehene Installationsroutine. Diese besteht meist aus dem üblichen ./configure, make, make install, welche sich auch zum Paketieren eignet. Andere Optionen sind natürlich auch möglich, aber nur solang sie keine Interaktion erfordern. Wenn dies der Fall ist, schreibe ich diese üblicherweise gleich auf den Standard um.
Aber auch die übliche Make-Routine muss nicht immer eine gute Ausgangsbasis sein. Viele Entwickler sehen leider nur eine Installation in die von ihnen gewählten Standard-Pfade vor, meist /usr/local/bin oder ähnliches. Hierbei werden zur Sicherheit diese Verzeichnisse auch üblicherweise noch mittels install erstellt. Leider führt beides zu Problemen, denn bei der Erstellung eines RPM wird der Installationsvorgang von einem unpriviligierten Benutzer unterhalb eines speziellen Verzeichnisses durchgeführt, dem sogenannten Buildroot. Pfade außerhalb können also nicht angelegt werden und Dateien auch nicht anderen Benutzern übereignet werden.
Die Lösung hierfür sind mit configure konfigurierbare Pfade, da diese aber auch so in Konfigurationsdateien oder ähnlichem referenziert werden, muss noch ein weiterer Mechanismus genutzt werden um in die Buildroot zu installieren. Hierfür wird eine Variable DESTDIR genutzt, diese wird in den Makefiles dem eigentliche Zielpfad vorangestellt. Somit stehen in Konfigurationsdateien die echten Pfade wie beim Konfigurieren angegeben und die Installation erfolgt in diese Pfade relativ zur Buildroot.
Nun haben wir nach das Problem der Dateirechte. Werden diese beim install festangegeben, muss gepatcht werden. Guter Stil ist es diese als Variable INSTALL_OPTS zu hinterlegen, so dass diese auch in unserer Bauanleitung einfach überschrieben werden können.
Dies sind die üblichen Probleme. Patches um eine Hotfix einzupflegen solang noch kein Release erfolgt ist, sind dank git überhaupt kein Problem mehr. Fehlende Lizenzangaben finden sich ebenso immer seltener wie schlecht gepackter Quelltext, also ohne übergeordnetes Verzeichnis oder mit falscher Dateiendung.
Wenn sich nun Entwickler angesprochen fühlen und ihre Installationsroutine umschreiben wollen, habe ich ein paar Beispiele hierfür:
EDBC (Make-Routine für Systempfade umgebaut
Icinga-Cronk BP-Addon (phing durch make ersetzt)
Interfacetable_v3t (Make-Routine um DESTDIR ergänzt)
Und wenn nun jemand nach unseren Paketen fragt, kann ich leider nur weiter um Geduld bitten, aber wir arbeiten daran. Versprochen!

Dirk Götz
Dirk Götz
Principal Consultant

Dirk ist Red Hat Spezialist und arbeitet bei NETWAYS im Bereich Consulting für Icinga, Puppet, Ansible, Foreman und andere Systems-Management-Lösungen. Früher war er bei einem Träger der gesetzlichen Rentenversicherung als Senior Administrator beschäftigt und auch für die Ausbildung der Azubis verantwortlich wie nun bei NETWAYS.

PHP SPL: Heaps

Viele Daten im Nachhinein zu sortieren kostet Zeit. Seit PHP Version 5.3 gibt es in der SPL die Heap Klassen welche eine Sortierung on-the-fly erlauben. PHP stellt eine generische Heap Klasse bereit (hier im unteren Beispiel) um eigenen Datentypen zu vergleichen. Es gibt aber auch eigene Klassen für Min- und Max-Heaps.
Heap Strukturen eignen sich im Allgemeinen erst bei einer größeren Menge an Daten. So ist ein Max-Heap mit 1.000.000 Einträgen fast um ein drittel schneller als ein konventionelles Array welches anschließend eine absteigende Sortierung erfährt.

class TimestampMaxHeap extends SplHeap
{
    public function compare($array1, $array2)
    {
        if ($array1[0] === $array2[0]) {
            return 0;
        }
        return $array1[0] < $array2[0] ? -1 : 1;
    }
}
$heap = new TimestampMaxHeap();
$heap->insert(array(new DateTime('2014-01-04'), 4));
$heap->insert(array(new DateTime('2014-01-01'), 1));
$heap->insert(array(new DateTime('2014-01-06'), 6));
$heap->insert(array(new DateTime('2014-01-03'), 3));
$heap->insert(array(new DateTime('2014-01-05'), 5));
$heap->insert(array(new DateTime('2014-01-02'), 2));
foreach ($heap as $entry) {
    echo $entry[1] . ' ';
}
echo PHP_EOL;
Marius Hein
Marius Hein
Head of IT Service Management

Marius Hein ist schon seit 2003 bei NETWAYS. Er hat hier seine Ausbildung zum Fachinformatiker absolviert und viele Jahre in der Softwareentwicklung gearbeitet. Mittlerweile ist er Herr über die interne IT und als Leiter von ITSM zuständig für die technische Schnittmenge der Abteilungen der NETWAYS Gruppe. Wenn er nicht gerade IPv6 IPSec Tunnel bohrt, sitzt er daheim am Schlagzeug und treibt seine Nachbarn in den Wahnsinn.