Redundantes Live-Monitoring#

In der Folge des MonitoringLove-Sprints im Juni 2013 haben wir begonnen, unser Monitoring nach und nach umzustellen um in Echtzeit relevante Informationen zu erhalten. Ein Problem des damaligen Setups war jedoch, dass es Lücken in der Aufzeichnung gab sobald ein Monitoring-Node ausfiel.

Apache Cassandra Logo

Nun haben wir mit Apache Cassandra eine Möglichkeit gefunden, diese Lücken zu schließen da sich Cassandra ggf. resynchronisiert sofern auch nur ein Node immer erreichbar ist.

Zukünftig wird an jedem der beiden Rechenzentrumsstandorte einen Monitoring-Node betrieben. Durch ein entsprechendes Resource Record-Set kann eine einfache Verteilung auf die beiden Standorte gewährleistet werden. Zudem wird jeder Admin einen Monitoring-Client auf seinem Notebook oder PC haben, der auf einen der Monitoring-Nodes zugreift.

Im Einzelnen setzen wir nun folgende Toolchain ein:

  1. collectd zur Erfassung der Daten

  2. riemann zur Aggregation der Events

  3. cyanite zur persistenten und redundanten Speicherung mittels Apache Cassandra und Elasticsearch.

  4. graphite-api zur Abfrage von Clients mit dem Graphite-Protokoll.

Dabei erfolgt die Netzwerkkommunikation von allen Systemen zu den Riemann-Instanzen via stunnel und von den Clients zum REST-Service mit HTTPS.