Widerruf: Zeit ist seit 1905 immer noch relativ!

timeisIm Jahre 1905 veröffentlichte Albert Einstein die SRT. Die Theorie befasst sich mit der Beschreibung relativ zueinander bewegter Bezugssysteme und mit der Relativität von Zeitdauern und Längen. Mit der Gravitation kam 1915 in der Allgemeinen Relativitätstheorie ein “weiterer” die Zeit beeinflussender Faktor hinzu.
Auch das subjektive Zeitempfinden ist sicherlich jedem bekannt. Mal kriecht die Zeit vor sich hin und mal rast sie an einem vorbei, so das sich der Doppler-Effekt bemerkbar macht. Ja, auch das ist physikalisch natürlich nicht korrekt…
Auch wenn ich meinem Kollegen hier mit der Überschrift widerspreche, im Kern folgt nun das selbe in Icinga grün, wie Thilo letzte Woche, das Problem der nicht synchron laufenden Zeit für Puppet-Umgebungen beschrieben hat.

Kommt beim Monitoring mit Icinga 2 ein Satelliten-System, Icinga Agenten oder auch die HA-Funktionalität zur Lastverteilung zum Einsatz, ist das selbe Bezugssystem oder gleich laufende Zeit erforderlich. Die Kommunikation zwischen unterschiedlichen Icinga Instanzen nimmt keine Korrektur der Zeitstempel von Ereignissen vor. Ein Beispiel: Ein Agent läuft in Bezug auf seinen Icinga Server 10min in der Zukunft, schon klappt z.B. kein “force reschedule”, da der Event für den Agenten in der Vergangenheit liegt. Ein Zeitserver muss her. Dieser gehört natürlich mittels check_ntp_peer überprüft. Zusätzlich muss auf jedem Host mit einer laufenden Icinga Instanz, mit check_ntp_time auf Unix- und check_time.vbs auf Windows-Systemen, die Zeitdifferenz der eigenen Zeit gegen die des eingetragenen Zeitservers überwacht werden.

Lennart Betz

Autor: Lennart Betz

Der diplomierte Mathematiker arbeitet bei NETWAYS im Bereich Consulting und bereichert seine Kunden mit seinem Wissen zu Icinga, Nagios und anderen Open Source Administrationstools. Im Büro erleuchtet Lennart seine Kollegen mit fundierten geschichtlichen Vorträgen die seinesgleichen suchen.

Icinga Web 2 – Du kommst hier net rein

Icinga LogoInzwischen wisst ihr wie man ein neues Icinga Web 2 Modul anlegt und welche Möglichkeiten euch für die Navigation innerhalb eines Icinga Web 2 Moduls offen stehen. Heute möchte ich euch nun vorstellen wie es möglich ist, den Zugriff darauf zu kontrollieren.

Eine kleiner Hinweis vorweg: Da wir im folgenden keine neuen Elemente im UI einfügen werden, müsst ihr leider auf eine bebilderte Führung verzichten und euch mit hartem Code zufrieden geben. Dafür gibt es am Ende dieses Eintrags einen tarball mit dem daraus resultierenden aktuellem Stand des “Hello World” Moduls.
(more…)

Johannes Meyer

Autor: Johannes Meyer

Johannes ist seit 2011 bei uns und hilft bei der Entwicklung zukünftiger Knüller (Icinga2, Icinga Web 2, ...) aus dem Hause NETWAYS.

OSBConf 2015: Es ist 5 vor 12

osbconf_logo_transparent_500

Ja genau, es wird Zeit: Zeit sich noch eines der begehrten Tickets für die diesjährige Open Source Backup Conference on Bareos zu ergattern.

Von unserem Rundum-Sorglos Paket mit Übernachtung, besser bekannt als Buchungspaket Gold sind nämlich mittlerweile nicht mehr allzu viele zu haben. Sie kümmern sich lieber selbst um Ihre Übernachtung oder kommen direkt aus Köln? Dann zögern Sie nicht, sich eines unserer Silber Tickets zu sichern.

Auch in diesem Jahr bieten wir wieder den Hacking Workshop sowie die Bareos Introduction an. Und die sind sogar schon im Ticketpreis enthalten. Schnell anmelden lohnt sich dennoch: für die Workshops haben wir nur eine limitierte Anzahl von Plätzen!

Wenn Sie sich jetzt denken: nur noch wenige Tickets, sich beeilen, wozu überhaupt? Welchen Grund sollte es dafür geben? Ich glaube unser Programm sollte doch Grund genug sein, oder nicht?

Schließlich sind in diesem Jahr wieder ganz tolle Vorträge und Referenten mit von der Partie. Das Backup von VMware Snapshots mittels Bareos wird bei Phillip Storz, einem der Köpfe des Bareos-Projekts sowie Stephan Dühr, dem hauptverantwortlichen Developer des Plugins Thema sein. Sie halten den Vortrag nämlich zu zweit. Ein weiteres Highlight wird es sein, wenn Alberto Giménez, SysOps Engineer beim spanischen Systems Engineering Dienstleister CAPSiDE, erklären wird, wie man eine AWS Virtual Tape Library nutzt, um Bacula Backups lokal zu cachen und sogar auf S3 und Glacier zwischenzuspeichern. Außerdem werden in einer Live Demo git, salt und Bareos miteinander verknüpft: und zwar von keinem Geringeren als Marco Weiss, dem CEO der Kessler GmbH.

Und? Neugierig geworden? Dann sollten Sie allerspätestens jetzt das komplette Programm begutachten und dabei natürlich die Anmeldung zur OSBConf nicht vergessen.

Daniela Schwarz

Autor: Daniela Schwarz

Daniela ist seit 2012 unser Designprofi und verantwortlich dafür, dass all unsere Grafiken unverwechselbare Unikate sind. Sie sorgt bei den Logos auf unserer Website, den Schulungsprintanzeigen bis zu den Menükarten auf den Abendveranstaltungen unserer Konferenzen für den richtigen optischen Schliff. Privat äußert sich ihre Kreativität beim Basteln mit Fimo.

Powerline Shell Visual Guide

Üblicherweise posten wir selten zweimal über das gleiche Thema, aber diesmal gibt es gleich zwei kleine Videos zum Anschauen und Mitmachen. Warum also nochmal ein Post zu dem Thema?

Ich hatte ein paar Anfragen, wie man die Powerline Shell korrekt installiert. Anscheinend gibt es bei dem Ablauf ein paar kleine Fallstricke, die ich mit den Videos auszumerzen versuche. Ansonsten bleibt die Vorgehensweise die selbe wie in der Anleitung, wie wir bereits gebloggt hatten.

Um das Ganze noch etwas zu vereinfachen, habe ich eine Anleitung für Mac OS X und Ubunut gemacht. So könnt ihr auch nochmal kurz innehalten und die ausgeführten Schritte in Ruhe nachvollziehen.

YouTube Preview Image YouTube Preview Image

Wer jetzt noch Fragen hat, hinterlässt mir doch einfach einen Kommentar und dann kriegen wir das gemeinsam hin.

David Okon

Autor: David Okon

Weltenbummler David hat aus Berlin fast den direkten Weg zu uns nach Nürnberg genommen. Bevor er hier anheuerte, gab es einen kleinen Schlenker nach Irland, England, Frankreich und in die Niederlande. Alles nur, damit er sein Know How als IHK Geprüfter DOSenöffner so sehr vertiefen konnte, dass er vom Apple Consultant den Sprung in unser Managed Service-Team wagen konnte. Er ist stolzer Papa eines Sohnemanns und bei uns mit der Mission unterwegs, unsere Kunden zu glücklichen Menschen zu machen.

Developing Icinga 2 on Windows 10 using Visual Studio 2015

Using Linux or MacOSX you’ll sometimes have to deal with shortcomings of non-portable software at work. Luckily we’ll have Windows licenses available for our virtual platforms in order to

  • use Internet Explorer and ActiveX voodoo
  • connect to customer VPNs and Webex sessions
  • develop Icinga 2 on Windows using Visual Studio

Windows 10

icinga2_windows10_loginMost recently I did break my Visual Studio environment, and was looking into the free upgrade to Windows 10. Since popup from the app “get Windows 10” did not appear after installing all the requirements, I had to reschedule the check task manually and by some magic script. I don’t know which method won, the pc did run all night.

Though, the next bugger – the VirtualBox CPU is not compatible, the upgrade application tried to convince me. There are several tweaks required to run Windows 8.x+ but still it did fail on me. The solution is simple – don’t use the app, but instead the MediaCreation tool (open the link on Windows, otherwise it will redirect you to the ISO-download!) which also allows you to download the setup files for Windows 10 and install it right away.

Once the update was completed (fairly took some hours), Windows 10 greeted shiny and also it felt super-fast. Note: In case you’ll need to resize your primary partition, wondering about the recovery partition – use Gparted LiveCD to move partitions around.

So, what else would I need to compile Icinga 2 on Windows?

 

Requirements

 

Chocolatey

Similar to using packages on Linux, this nifty package repository is available for Windows as well. We’ll need that later on for some additional tools which we do not want to download/compile ourselves.

Open an administrative command prompt (Win key, type “cmd”, right-click and “run as administrator”) and paste the following instructions:

@powershell -NoProfile -ExecutionPolicy Bypass -Command "iex ((new-object net.webclient).DownloadString('https://chocolatey.org/install.ps1'))" && SET PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin

icinga2_windows10_chocolatey

 

Visual Studio IDE

Thanks to Microsoft they’ll now provide their Professional Edition of Visual Studio 2015 as community version, free for usage for open source projects such as Icinga. The installation will require ~9GB disk space. Download the web installer and start the installation. Make sure to remove the web developer section, and only tick “C++” (entire section!) and “Git on Windows”. After a while, Visual Studio will be ready.

 

Flex and Bison

Install it using chocolatey (thanks to this guide):

choco install winflexbison

icinga2_windows10_flex_bison

Chocolatey will install these tools into a hidden directory tree named “C:\ProgramData\chocolatey\lib\winflexbison\tools”.

icinga2_windows10_flex_bison_programdata

 

 

OpenSSL

Icinga 2 requires the OpenSSL library (cluster, api). We’re building 32bit applications only so download the Win32 version and install it into the default path.

 

Boost

In order to use the boost development header and library files we’ll need to download boost and then extract it to e.g. “C:\boost_1_59_0”.

For integrating boost into Visual Studio 2015, open the “Developer Command Prompt from the start menu, and navigate to “C:\boost_1_59_0”. Then execute “bootstrap.bat” first. Once finished, run “b2 –toolset=msvc-14.0” to compile boost locally for Visual Studio 2015 whose internal version is msvc-14.0 (this takes quite some time).

C:\boost_1_59_0
bootstrap.bat
b2 --toolset=msvc-14.0

icinga2_windows_vs2015_cmd_boost_integration_01_bootstrap icinga2_windows_vs2015_cmd_boost_integration_01_b2_msvc14_finished icinga2_windows_vs2015_cmd_boost_integration_01_b2_msvc14

 

TortoiseGit

Next to the Git binary, we’ll also want a graphical integration. TortoiseGit works perfectly for that.

icinga2_windows_git_ssh_keysIn case you’re a developer with SSH Git push access, you’ll also need to create a new directory called “.ssh” inside your users home. Therefore open a command prompt (win key, type “cmd”, enter) and run “mkdir .ssh”. Then add your id_rsa private key and id_rsa.pub public key files into that directory.

 

Verify it working by cloning the icinga2.git inside the Visual Studio projects directory. Right click and select “Git Clone”. Use “git@git.icinga.org:icinga2.git” for SSH clones, “git://git.icinga.org/icinga2.git” otherwise.

icinga2_windows_git_clone_01 icinga2_windows_git_clone_02

 

 

CMake

Icinga 2 uses CMake to manage the the build environment. Luckily we can generate the Visual Studio project files using cmake as well. Download CMake and tick to add it to PATH for all users.

icinga2_windows_cmake

After installation, open a command prompt and navigate to “C:\Users\<username>\Documents\Visual Studio 2015\Projects\icinga2” and run cmake using the following command. This will generate a new project file called “icinga2.sln”.

  • BOOST_PATH
  • BISON_EXECUTABLE
  • FLEX_EXECUTABLE
  • Disable builds for MySQL and PostgreSQL (for now)

 

C:\Users\michi\Documents\Visual Studio 2015\Projects\icinga2>cmake . -DBOOST_ROOT=C:\boost_1_59_0 -DBISON_EXECUTABLE=C:\ProgramData\chocolatey\lib\winflexbison\tools\win_bison.exe -DFLEX_EXECUTABLE=C:\ProgramData\chocolatey\lib\winflexbison\tools\win_flex.exe -DICINGA2_WITH_MYSQL=OFF -DICINGA2_WITH_PGSQL=OFF

icinga2_windows_cmake_generate_vs2015_project

 

 

Icinga 2 in Visual Studio

Navigate to “C:\Users\michi\Documents\Visual Studio 2015\Projects\icinga2” and double-click on “icinga2.sln”.

icinga2_windows_vs2015_project

Inside Visual Studio 2015, build the “Bin\icinga-app” solution.

icinga2_windows_vs2015_project_build

Inside your command prompt, navigate to “Bin\Release\Debug” and run “icinga2.exe –version”.

icinga2_windows_vs2015_project_icinga2_run

 

Conclusion

Apart from being able to develop Icinga 2 on Windows again, I’m also able to use one of the best C++ IDEs out there – Visual Studio (we are always looking for cross-platform alternatives such as CLion too).

Like what you see? Join us and help evolve Icinga 2 and Icinga Web 2 on all native platforms out there!

Michael Friedrich

Autor: Michael Friedrich

Michael ist Icinga-Core-Developer und im Rahmen des Icinga-Projekts schon viele Jahre mit NETWAYS in Kontakt. Im Dezember 2012 hat er das schöne Wien verlassen und ist nun bei uns in den Bereichen Development und Consulting im Einsatz. Durch seine unglaubliche Aktivität im Monitoring-Portal und auf diversen Mailinglisten ist Michael in den vergangenen Jahren für ca. 20% des österreichischen Webtraffics verantwortlich.