Die durch Splunk ermöglichte Observability hat uns entscheidend vorangebracht. Mit als Erstes haben wir Tracing und Telemetrie aktiviert, weil wir verstehen wollten, wie die vielen Puzzleteile zusammenpassen.
Mit dem Ziel, Überwachungs- und Telemetriedaten zu zentralisieren, benötigte Care.com eine Observability-Lösung, die granulare Transparenz bietet, um seine monolithische Architektur und disparaten Systeme in Microservices zu verwandeln.
Mit Splunk als einziger Plattform und Source-of-Truth für alle Observability-Anforderungen versteht Care.com seine gesamte Umgebung ganzheitlich, um Fehler schneller zu finden und zu beheben, die Anwendungsarchitektur zu verbessern und die Veröffentlichung von Funktionen zu beschleunigen.
Die Antwort: Care.com, die weltweit führende Plattform für die Suche und Koordination qualitativ hochwertiger Betreuungsanbieter für Familien. Nach dem Motto „Betreuung für deine Liebsten“ vermittelt diese Plattform Betreuungspersonal für Familien mit Bedarf an Kinder- und Seniorenbetreuung, Tiersitting und mehr. Care.com bietet sogar Unterstützung bei der Steuererklärung, sodass Kosten für Betreuungskräfte und Haushaltshilfen steuerlich angesetzt und legale Beschäftigungsverhältnisse geschaffen werden können.
Millionen von Familien und Pflegekräften in mehr als 20 Ländern verlassen sich auf Care.com. Die Plattform muss also rund um die Uhr verfügbar, skalierbar und zuverlässig sein. Nach der Übernahme von Care.com durch IAC Anfang 2020 bestand die unmittelbare Priorität darin, den IT-Stack und die Infrastruktur von Care.com-Stack zu modernisieren und zu zentralisieren. Dazu mussten seit 13 Jahren bestehende monolithische System aufgebrochen und in agile Microservices umgewandelt werden.
Für den Erfolg benötigte Care.com eine leistungsstarke Observability-Lösung, die für Transparenz bei der Architektur sorgt, Probleme effizient aufzeigt und genügend Flexibilität für Experimente bietet. Aus diesem Grund entschied sich das Team für die Splunk Observability Cloud.
Die Zentralisierung der Infrastruktur von Care.com bietet Vorteile in vielen Bereichen des Unternehmens, von der verbesserten Skalierbarkeit und aufgelösten Silostrukturen bis hin zur Bereitstellung einer flexiblen, testgesteuerten Erfahrung für Endbenutzer.
Doch die Architektur des Unternehmens umfasste 13 Jahre lang einen komplexen Flickenteppich aus unterschiedlichen Systemen, die bei zahlreichen Übernahmen übernommen wurden. Um die Architektur erfolgreich zu durchblicken und in Microservices umzuwandeln, waren versierte Technologieexperten und erstklassige Tools erforderlich. „Die durch Splunk mögliche Observability war ausschlaggebend“, sagt Sean Schade, Hauptarchitekt des für die Kernarchitektur von Care.com zuständigen Teams. „Eine unserer ersten Maßnahmen bestand darin, Tracing und Telemetrie zu aktivieren, um zu verstehen, wie die Teile dieses riesigen Puzzles ineinandergreifen.“
Als „Early Adopter“ profitierte Care.com bei diesem Projekt in dieser Größenordnung enorm von OpenTelemetry. „Wegen der Erkenntnisse, die es bereitstellt, ist OpenTelemetry einer der Leitsterne unserer Architektur“, sagt Schade. „Da Splunk der Hauptförderer von OpenTelemetry ist und damit einen Riesenvorsprung hat, konnten wir als Splunk-Kunde OpenTelemetry ab dem ersten Tag in unsere Architektur einbauen.“
Dank OpenTelemetry konnte Care.com auch gemeinsame Standards etablieren, um die Zusammenarbeit, Datendemokratisierung und Produktivität bei Ingenieuren und Entwicklern zu verbessern. Schade meint, “Wir haben jetzt ein Standardformat für Daten, das erleichtert Export- und Integrationsprozesse deutlich. Wir müssen uns nicht mehr mit fünf verschiedenen Anbietern mit fünf verschiedenen Formaten befassen, um die Daten zu erfassen, sondern haben alles ganz zentral, an einem Ort.“
Die durch Splunk ermöglichte Observability hat uns entscheidend vorangebracht. Mit als Erstes haben wir Tracing und Telemetrie aktiviert, weil wir verstehen wollten, wie die vielen Puzzleteile zusammenpassen.
Zentralisierung ist für die Teams von Care.com von entscheidender Bedeutung, und daher war die Verwendung der Splunk Observability Cloud als zentrale Plattform für alle Observability-Anforderungen der Schlüssel zum Erfolg.
„Wenn wir im Blindflug arbeiten, kann dies richtig teuer werden. Splunk macht mir die Arbeit als Systemarchitekt leichter, da ich Einblick in die Funktionsweise unseres Systems erhalte“, sagt Schade. „Eine Microservice-Architektur ist an sich schon schwierig, doch ohne APM oder Observability kann man sich richtig festfahren und ohne Ende Arbeitsstunden und Ressourcen verbraten. Mit Splunk Observability Cloud verfügen wir über die nötige Transparenz bei unseren Microservices. Es gibt uns eine zentrale Sicht auf sämtliche Abläufe und ermöglicht uns zu korrelieren – das ist von unschätzbarem Wert.“
„Wenn Systeme immer komplexer werden, fängt man an, Fragen zu stellen. Diese kann man aber nicht beantworten, weil man beispielsweise vergessen hat, eine Metrik zu erfassen. Genau hier setzt moderne Observability an“, erklärt Senior Director of Devops Engineering Matt Coddington, Leiter des DevOps-Teams bei Care.com. „Einer der wichtigsten Pluspunkte für mein Team ist, dass die Splunk-Plattform kurzlebige Infrastrukturen wirklich gut handelt – das macht es einfach, Metriken zu beobachten, wenn Container und Server hoch- oder heruntergefahren werden. Splunk Observability Cloud erfasst sämtliche Logs, Metriken und Traces auf eine Weise, durch die wir jegliches Event innerhalb unserer gesamten Plattform verstehen und damit wirklich auf jede Frage eine Antwort erhalten.“
Care.com arbeitet schon seit einiger Zeit daran, all diese Daten zu erfassen – aber erst dank dem Full-Fidelity Tracing von Splunk war das auch möglich. „Man benötigt 100 % seiner Daten, damit Observability wirklich effektiv ist“, meint Schade. „Ich habe keine Ahnung, wie hier irgendwer mit Splunk und seinem No Sampling-Ansatz mithalten soll. Das Thema Stichproben war nämlich das größte Problem bei allen APM-Produkten, mit denen ich in den letzten sieben oder acht Jahren gearbeitet habe.“
Splunk Observability Cloud erfasst sämtliche Logs, Metriken und Traces auf eine Art und Weise, durch die wir jegliche Events innerhalb unserer gesamten Plattform verstehen und damit eine Antwort auf wirklich jede Frage erhalten.
Dank Splunk Observability Cloud konnte Care.com die durchschnittliche Zeitdauer bis zur Identifizierung und Behebung eines Problems verkürzen. Dauerte das Troubleshooting vor Splunk eine Stunde oder länger, findet und behebt das Team Probleme jetzt innerhalb von Minuten durch einzigartige Splunk APM-Funktionen wie Tag Spotlight. „Tag Spotlight ist für die Fehlersuche enorm wichtig, da wir verschiedene Dimensionen in Echtzeit filtern können, um Fragen zu Fehlern und Latenzen zu beantworten“, sagt Coddington.
Eine solche Frage kam auf, als das Care.com-Team feststellte, dass die Antwortzeiten bei speziellen Seiten der Website zu bestimmten Tageszeiten enorm anstiegen. Coddington und sein Team setzten ganz auf Splunk APM, um zu verstehen, welche Teile des Systems überlastet waren und welche Gemeinsamkeiten sie hatten. Nachdem festgestellt wurde, dass mobile Push-Benachrichtigungen im Hintergrund die Übeltäter waren, arbeitete das Team zusammen mit seinem Provider daran, die Durchsatzrate zu begrenzen und zum normalen Betrieb zurückzukehren.
Full-Fidelity-Daten erwiesen sich als besonders wertvoll als Care.com letzten Herbst während der Schulanfangsphase neue Funktionen veröffentlichen wollte. „Wir hatten eine harte Deadline, eine brandneue Architektur und jede Menge Premieren, wie etwa unsere allererste Veröffentlichung auf Kubernetes und die allererste Nutzung von GRPC-Services“, sagt Schade. „Ich glaube, ohne Splunk APM hätten wir es nicht geschafft, unsere Features zu veröffentlichen, weil es nicht möglich gewesen wäre, das reibungslose Funktionieren des Produkts zu prüfen und unvorhergesehene Probleme zu beheben.“
Ganz gleich, ob es darum geht, eine Haushaltshilfe oder Kinderbetreuung für eine Familie zu finden oder Hilfestellung bei der Erstellung eines Haushaltsplans zu leisten – Care.com bemüht sich immer, eine außergewöhnliche User Experience zu bieten. Durch den Einsatz von Splunk Real User Monitoring (RUM) für die Registrierungsanwendung kann das Team von Care.com die Performance beim Abschluss von Transaktionen messen, die von Webbrowsern im Front-End bis hin zu Service-Abhängigkeiten im Back-End reichen. Das ermöglichte dem Team, schlechte Website-Performance zu identifizieren – verursacht durch Abhängigkeiten von Drittanbietern und deren geringe Geschwindigkeit – und die Seiten zu optimieren.
„Wir können nun Back-End-Traces von APM mit Front-End-Traces von RUM korrelieren. Das ist ein riesiger Vorteil, denn genau dieses Bindeglied hat uns bisher gefehlt“, sagt Schade. „Die Korrelationen sind sehr aufschlussreich und haben versteckte Ineffizienzen aufgedeckt, die wir jetzt angehen können.“
Als Nächstes plant das Team, Splunk RUM auf weitere Flows im Unternehmen anzuwenden, um die Seitenladezeiten weiter zu optimieren und die Benutzererfahrung zu verbessern. „Wir bekommen viele Fragen aus dem Unternehmen, zum Beispiel woher die Benutzer kommen oder wie lange sie bei einer Seite oder einem Angebot bleiben“, erklärt Schade. „Wir freuen uns darauf, RUM zur Beantwortung dieser Fragen einzusetzen.“ Coddington betont erneut: „Splunk RUM ist das Produkt, das unsere ganze restliche Telemetrie einbindet, und das eröffnet völlig neue Möglichkeiten.“
Während der Corona-Pandemie verzeichnete Care.com eine deutliche höhere Nachfrage, und auch zukünftig rechnet die Plattform mit hohen Wachstums- und Nachfragewerten. Wenn das Thema Zentralisierung erfolgreich abgeschlossen ist, möchte Coddington als nächstes Ziel eine Verzehnfachung der Release-Häufigkeit erreichen. Dazu werden seine DevOps-Teams Splunk nutzen, um Probleme zu erkennen, sobald sie auftreten, automatische Warnmeldungen einzurichten und Release-Events im Zeitverlauf zu verfolgen. Beim eigentlichen Release-Vorgang werden die Teams dann die Live Tail-Funktion von Splunk Log Observer nutzen, um in Echtzeit zu sehen, ob ein Service richtig funktioniert.
Schade sagt: „Die Partnerschaft zwischen Splunk und Care.com ist wirklich gut. Splunk hat uns geholfen, viele Ziele im Zusammenhang mit unserer Architektur umzusetzen und zu beschleunigen, die wir sonst nie erreicht hätten – und wir freuen uns auf das, was noch kommt.“