Cloud Deployment

Fünf Tools, die Sie zu Ihrem Cloud Deployment brauchen

Sie haben es endlich geschafft, Ihre Software-Anwendung in Gang zu bringen. Sie läuft perfekt. Sie sind zufrieden und Ihre Kunden sind es auch.

Eines morgens wachen Sie auf und stellen fest, dass Ihre Inbox voll von wütenden Kunden-Emails und Ihr Twitter Feed voll von Beschwerden ist. Als Sie geschlafen haben ist etwas kaputtgegangen und Sie haben es nicht mitbekommen, bis Sie Ihre E-Mails durchgegangen sind.

Schnell greifen Sie auf Ihren Laptop zu und versuchen, den Fehler zu beheben. Nach 20 Minuten ist alles in Ordnung und wieder in Betrieb. Es war etwas Einfaches. Es waren nur wenige Minuten notwendig, um den Fehler zu beheben, nachdem Sie das Basisproblem gefunden haben. Der höchste Zeitaufwand war, das eigentliche Problem zu identifizieren.

Obwohl wir uns alle wünschen, dass so etwas nie passiert – in der Realität wird das durchaus vorkommen. Die Frage ist, was wir machen können, um die Folgen abzuschwächen und falls es geschieht, den Neustart zu beschleunigen.

In diesem Blog Post habe ich eine kurze Liste von Top Tools und Services aufgestellt, die unsere Kunden in unserer Cloud nutzen, um ihnen in diesen Situationen zu helfen. Die Tools sind natürlich kein Ersatz für eine redundante Infrastruktur. Jedoch werden sie Ihnen helfen, wenn Probleme auftreten und Ihre Infrastruktur schnell wieder funktionieren muss. In manchen Fällen, z.B. wenn ein Server zu wenig Speicherplatz hat, können diese Tools sogar gegen einen Ausfall schützen, indem sie Ihnen proaktiv eine Benachrichtigung senden.

Monitoring: Munin

Während Tools wie top (or htop) für die Darstellung der aktuellen Belastung auf einem System sehr geeignet sind, würde man häufig ebenfalls gerne die Belastung auf einem Server über den Zeitverlauf sehen können. Hier kommt Munin ins Spiel. Munin ist ein Server-Client-Tool, das man selbst betreiben kann. Jeder Server, den man monitoren will, braucht einen installierten Munin-Agent. Der Munin-Server wird sich dann mit jedem Client vernetzen und die spezifizierten Metriken sammeln.

Standardmäßig kommt Munin mit vielen Plug-ins zum Monitoring, wie Systemressourcen (CPU, RAM Speicherplatz, Temperatur usw.), aber auch mit einer Reihe von Leistungen, wie MySQL, Postfix usw.
Eine der Stärken von Munin ist, dass man sehr einfach eigene Plug-ins schreiben kann. Man kann diese Plug-ins in mehr oder weniger jeder Sprache schreiben, die von der Konsole betrieben werden kann und Text als Output ausgibt (die meisten Plug-ins sind in Bash, Perl oder Python geschrieben).

Munin kann auch konfiguriert werden, um Alarme basiert auf Schwellenwerten in den Plug-ins zu senden. Im Vergleich zu Nagios (siehe unten) ist jedoch diese Alarmierungsfunktion sehr limitiert.

munin

Warnungen: Nagios

  • In Kürze: man wird alarmiert, wenn kritische Ressourcen versagen.
  • Typ: selbst gehostet
  • Webseite: nagios.org
  • Alternative: Zabbix

Ähnlich wie Munin ist Nagios ein Server-Client-Tool (obwohl der Client nur für bestimmten Leistungen erforderlich ist). Es kann auch einige Zeit dauern, bis man sich an die Konfigurationssyntax und an die Struktur von Nagios gewöhnt. Kriegt man es jedoch einmal in den Griff, dann ist es relativ einfach damit zu arbeiten.

Eine einfache Nagio-Konfiguration kann sicherstellen, dass alle Server über Ping, SSH und aus dem Netz erreichbar sind. Allerdings steht eine Unmenge von Plug-ins für Nagios zum Monitoring aller Arten von Services zur Verfügung.

Nagios kommt auch mit einer Reihe von Warnmethoden. Die einfachste Warnung ist die Sendung einer E-Mail, jedoch kann man auch eine Vielzahl an weiteren Warnkanälen konfigurieren wie SMS (mithilfe externer Services).

nagios

Externes Monitoring: Pingdom

  • In Kürze: stellt sicher, dass Ihre Services global erreichbar sind.
  • Typ: SaaS
  • Alternative: StatusCake
  • Webseite: pingdom.com

Nagios ist klasse für das Monitoring interner Ressourcen, allerdings sagt Ihnen dieses Tool nicht, ob Ihre Webseite aufgrund eines vorgelagerten Problems unerreichbar ist. Hier zeichnet sich Pingdom aus. Mit Pingdom ist es möglich, eine Reihe von unterschiedlichen Überprüfungen anzulegen, aber das Einfachste ist es, einen Test durchzuführen, um sicherzustellen, dass eine Webseite reagiert (z.B. sendet sie einen 200 HTTP Status zurück).

Dank der weltweit aufgestellten Server-Flotte von Pingdom können Sie ungestört schlafen, da Sie wissen, dass Ihre Webseite verfügbar ist und was für eine Reaktionszeit sie aufweist.

pingdom

APM: New Relic APM

  • In Kürze: Einblicke in die Leistung Ihrer Software-Anwendung gewinnen sowie Engpässe feststellen.
  • Typ: SaaS
  • Alternative: Rollbar
  • Webseite: newrelic.com

Die meisten Teams geraten früher oder später in eine Situation, in der ihre Webseite oder Anwendung schlecht performt. Man merkt, dass die Ladezeit extrem gestiegen ist, weiß aber nicht, wo der Engpass herrührt. Es gibt viele Ursachen, die zu demselben Verhalten führen können.

Hier kommt das Tool Performance Monitor (APM) von New Relic ins Spiel. Mit diesem installierten Agenten kann man schnell die genaue Ursache feststellen.

Da das APM Tool von New Relic einen Zugang innerhalb Ihrer Applikation erfordert, werden Sie es in Ihre Applikation integrieren müssen. Die meisten bekannten Applikationsframeworks werden unterstützt.

Durch unsere Partnerschaft mit dem Unternehmen können Sie sich zu New Relic direkt innerhalb unserer Webapp anmelden und Zugriff auf einige Features bekommen, die Sie nicht erhalten würden, falls Sie sich direkt auf derer Webseite anmelden.

new_relic

Alarm-Management: Big Panda

  • In Kürze: Warnmeldungen überschaubarer innerhalb Ihres Teams machen.
  • Typ: SaaS
  • Webseite: bigpanda.io
  • Alternative: PagerDuty

Falls Sie eine One Man Show sind, könnte es ausreichend sein, lediglich E-Mail-Warnmeldungen zu bekommen. Wenn etwas schief geht können Sie mehrere bekommen, aber Sie haben trotzdem alles im Griff.

Wenn Sie jedoch in einem Team mit mehreren Kollegen arbeiten, dann kommt Big Panda ins Spiel. Sie können die meisten der oben genannten Tools über ein einheitliches Dashboard von Big Panda konfigurieren sowie Aufgaben zuordnen, um schneller arbeiten und vorliegende Probleme lösen zu können.

bigpanda

Zusammenfassung

Ich hoffe, dass die oben beschriebenen Tools Ihnen einen guten Überblick über die komplementären Services geben, um ihre Cloud-Aufstellung zu unterstützen. Es gibt natürlich viele weitere Tools, die ähnlich zu den in diesem Artikel genannten sind. Die Hauptidee ist jedoch, dass Sie wahrscheinlich jeweils ein Tool in jeder von der oben genannten Kategorien brauchen werden.

Sie könnten vielleicht auch Interesse an dem folgenden Artikel haben: (…) “An introduction to failover in the cloud” leitet Sie durch die Einrichtung eines einfachen Anwendungs-Failover..

C770b64f01d6b9360b59e8470c2754f4?s=80&r=g

About Viktor Petersson

Former VP of Business Development at CloudSigma. Currently CEO at WireLoad and busy making a dent in the Digital Signage industry with Screenly. Viktor is a proud geek and loves playing with the latest technologies.