Welche Auswirkungen hat PaaS auf APM?
Da PaaS-Anwendungen mit gängigen Standards und Tools erstellt werden können, sollte dies theoretisch auch für den Aufbau von Funktionen zur Überwachung dieser Anwendungen gelten. Mit weniger Anpassung sollte die Überwachung einfacher sein, oder? Nun, wenn der Inhalt des Artikels "Study:PaaS Market to Top $6.94B by 2018" von Chris Talbot in Talkin’ Cloud Es stimmt, Unternehmen möchten eigentlich genau prüfen, ob ihre APM-Tools in einer PaaS-Umgebung bestehen. Hier ist der Grund:
1. PaaS-Plattformen sind in der Regel auf eine bestimmte Programmiersprache spezialisiert. Wenn also eine APM-Lösung diese Sprache nicht überwacht, kann sie niemandem in dieser PaaS-Umgebung helfen. Wenn der Support dort nicht so gut ist wie der eines Mitbewerbers, werden sie in dieser Umgebung wirklich nicht in der Lage sein, mitzuhalten, selbst wenn sie die Integrationsarbeit leisten. Wenn eine APM-Lösung diese Sprache jedoch unterstützt und sie gut unterstützt, sind alle Erkenntnisse, die sie speziell für diese PaaS-Umgebung hinzufügt, äußerst nützlich.
2. PaaS-Plattformen haben viele Abstraktionen und versteckte Schichten, daher gibt es Bereiche in diesen Umgebungen, in denen eine Überwachungslösung keine Erkenntnisse gewinnen kann:
- Routing: Das Routing-System von Heroku ist einer dieser Bereiche, dennoch ist es sehr wichtig, seine Leistung zu überwachen, wie im Artikel „Zähmung der Warteschlange“ erläutert.
- Maschinenkonfiguration: Ein weiterer Bereich, den eine APM-Lösung möglicherweise nicht überwachen kann, ist die Konfiguration der Dateisynchronisierung, da sie keinen vollständigen Zugriff auf den Computer erhält. Es hat möglicherweise Zugriff auf die darin ausgeführte Programmiersprache, aber nicht auf alles, was auf den Servern passiert.
- proprietäre Erweiterungen: Eine PaaS-Umgebung kann proprietäre Komponenten aufweisen – benutzerdefinierte Versionen des Servers und benutzerdefinierte Erweiterungen einer Sprache. Bei PaaS-Anbietern besteht eine gewisse Geheimhaltung hinsichtlich ihrer Komponenten, da sie auf diese Weise in der Lage sind, diese Umgebung zu skalieren und sich keine Sorgen um Konkurrenten machen müssen. Daher kann ein APM-Anbieter diese Komponenten nicht überwachen, es sei denn, er kann mit dem PaaS-Anbieter zusammenarbeiten.
- Mandantenfähige Dienste: Viele PaaS-Umgebungen enthalten Shared Services, was für bestimmte Arten von Überwachungstools ein Problem darstellen kann. Multi-Tenant-Datenbankinstanzen sind ziemlich häufig. Wenn der Agent des Überwachungstools mit der Datenbank kommunizieren muss, um Daten daraus abzurufen, und diese mehrinstanzenfähig ist, hat das Tool möglicherweise nicht den Zugriff, um dies zu tun. Wenn es keine andere Möglichkeit hat, diese Datenbankinformationen in dieser PaaS-Umgebung abzurufen, wird es nie in der Lage sein, Datenbankmetriken bereitzustellen.
- Externe Dienste: Eine PaaS-Umgebung verwendet außerdem in der Regel eine Reihe externer APIs, ein weiterer Bereich, in dem ein Überwachungstool Daten verpassen könnte. Entwickler entscheiden sich für PaaS, weil es bequem ist, und sie wenden sich einer API zu, weil die Server und PaaS in der Regel kleiner und weniger leistungsstark sind – es ist eine gute Möglichkeit, ihnen die Arbeit abzuverlangen. Wenn eine APM-Lösung nicht über die Fähigkeit verfügt, APIs zu überwachen, oder ihre Fähigkeit nicht sehr stark ist, wird dies ein Schwachpunkt in einer PaaS-Umgebung sein.
Der Fall für die Überwachung Ihres PaaS
Es gibt überzeugende Argumente für die interne Überwachung, wenn Sie auf einem PaaS arbeiten. Jeder der einzelnen Dienste auf dem PaaS wird von der Plattform erstellt und skaliert, aber die Anwendung selbst liegt nicht in ihrer Verantwortung. Egal wie stark Sie standardisieren, es wird immer Leistungsprobleme geben, die Sie überwachen müssen, und Sie benötigen dafür ein Tool.
Auch intern haben PaaS-Anbieter ihre eigene Komplexität. Sie verfügen über mehrere Dienste – ein Kontosystem und eine Web-GUI für die Abrechnung des PaaS, ein weiteres Web-GUI-System zur Verwaltung konfigurierter Add-Ons und einen Dienst zur Verwaltung der Konfiguration auf den PaaS-Servern. Selbst wenn die Server laufen und keine neuen Konfigurationseinstellungen übertragen werden können, kommt es zu einer Verschlechterung des Dienstes. Möglicherweise nutzt das Unternehmen sogar einen Dienst, um auf seine Leistungsdaten zuzugreifen. Es gibt viele Dienste im PaaS-Ökosystem, deren Überwachung sinnvoll ist. Es gibt also den internen Anwendungsfall, alle Server am Laufen zu halten, aber auch alle Infrastrukturteile zu optimieren, die PaaS so benutzerfreundlich machen.
PaaS der nächsten Generation
Mit Blick auf die Zukunft geht der Trend dahin, dass PaaS-Server immer kleiner werden, aber Sie müssen all diese Server überwachen. Wenn das Überwachungstool Ihres Unternehmens nicht darauf ausgerichtet ist, viele kleine Umgebungen zu unterstützen, kann es weniger kosteneffektiv sein oder Skalierungsprobleme aufweisen. Außerdem sind einzelne Server viel vergänglicher als früher. Sie können nur stundenlang oder sogar weniger als eine Stunde existieren, anstatt wie früher tagelang. Wenn sich Ihr Monitoring-Tool also an der Idee eines schon lange existierenden Servers orientiert, kommen Sie möglicherweise nicht sehr gut mit einer Umgebung zurecht, in der Server einfach verschwinden und wieder auftauchen, ohne dass dies jemals ausdrücklich gesagt wird.
Unabhängig davon, wie Sie sie aufteilen, entwickelt sich jede Anwendung ständig weiter und erfordert eine sorgfältige Planung, um effektiv zu skalieren. PaaS-Anbieter können helfen, aber das bedeutet nicht, dass Monitoring keinen Platz hat.
Cloud Computing
- Eisen vs. Stahl:Was ist der Unterschied?
- Fräsen vs. Schleifen:Was ist der Unterschied?
- Was ist eine neue Plattform in der Cloud?
- Was mache ich mit den Daten?!
- Was ist die Kreislaufwirtschaft?
- Gleichstrom- und Wechselstrommotor:Was ist der Unterschied?
- Was gehört zum Herstellungsprozess?
- Was ist die Druckindustrie?
- Was ist die Farbenindustrie?
- Was ist eine Schlagleiste?