Cloud-Migration bei Evernote

Drei Petabyte in die Google-Wolke

Florian beschäftigt sich mit vielen Themen rund um Technologie und Management. Daneben betätigt er sich auch in sozialen Netzen.
70 Tage, fünf Milliarden Notes, 12 Milliarden Files - klingt nach jeder Menge Arbeit für den Softwareanbieter Evernote? War es auch.

Im vergangenen Jahr hat sich der Software-Hersteller Evernote dazu entschlossen, seine selbst betriebenen Datacenter abzustoßen. Stattdessen wollte man künftig für den Betrieb des populären Notizen-Services auf die Cloud setzen - die Public Cloud genauer gesagt. Inzwischen ist das Mega-Projekt Cloud-Migration so gut wie abgeschlossen.

Ein Blick in ein Google Data Center in den USA.
Ein Blick in ein Google Data Center in den USA.
Foto: Google / Connie Zhou

Warum in die Cloud?

Evernote hat sich dabei für Google als Cloud-Provider entschieden. Angesichts des nicht alltäglichen Projektumfangs schickte der Internet-Gigant kurzerhand ein ganzes Team von Spezialisten (mit Donuts im Gepäck), um den Migrationsprozess zu begleiten und um sicherzustellen, dass das Vorhaben ein Erfolg wird. Der Umstieg erforderte zwar jede Menge Arbeitsaufwand und Anpassungen - laut Evernote stand Google dabei aber stets mit Rat und Tat zur Seite.

Die Entscheidung der Evernote-Verantwortlichen passt in den allgemeinen Trend: Viele Unternehmen hieven ihre Workloads inzwischen vom hauseigenen Datacenter in diePublic Cloud. Dort will Evernote die Vorteile der Cloud nutzen - insbesondere in Sachen Machine Learning, einem Gebiet auf dem das Unternehmen zuletzt selbst geforscht und entwickelt hat. Natürlich wollte man durch die Migration in die Google-Cloud auch die Flexibilität auf ein neues Level hieven - maßgeblich dadurch, dass man kein eigenes Datacenter mehr am Laufen halten muss.

Einige der Gründe für den Wechsel von Evernote in die Public Cloud dürften durchaus bekannt vorkommen. Die eigenen Mitarbeiter mussten in der alten Welt zum Beispiel viel Zeit für die Pflege der Datacenter aufwenden, etwa für das Wechseln von Festplatten, Verkabelungen oder die Prüfung neuer Infrastruktur-Optionen. Diese Maßnahmen hielten zwar das Datacenter - und damit auch den Betrieb beiEvernote - am Laufen, boten aber für die Kunden keinerlei Mehrwert, wie Ben McCormack, Vice President of Operations preisgibt: "Wir waren einfach nur realistisch: Mit einem Operations-Team in dieser Größe konnten wir mit den Cloud-Providern nicht mithalten - egal ob es dabei um Beschaffung oder das Management der Systeme ging. Wir wären stets auf Aufholjagd gewesen - in vielerlei Hinsicht keine besonders schöne Situation."

Eigenes Datacenter - Zukunft ungewiss

Als sich die Evernote-Mitarbeiter Gedanken um einen Refresh für das Datacenter machten, ist ihnen besonders ein Punkt aufgefallen: Sie wussten nicht, wofür das eigeneRechenzentrum in fünf Jahren stehen sollte. Also machte sich der Software-Hersteller auf die Suche nach einem geeigneten Public-Cloud-Provider. Dabei schaute man sich auch Angebote von Amazon Web Services und Microsoft an. Bei der Entscheidung für Google hat laut McCormack letztlich den Ausschlag gegeben, dass der aktuelle Fokus von Evernote sich mit den Expertise-Feldern von Google überschneidet. Schließlich hält Evernote riesige Mengen unstrukturierter Daten vor und möchte sein Angebot an Softwareservices künftig vor allem durch maschinelles Lernen aufrüsten.

"Google ist auf diesen Gebieten derzeit der unangefochtene Marktführer. Im Endeffekt haben wir eine strategische Entscheidung getroffen und eine strategische Wette darauf abgeschlossen, dass die Focus Points von Evernote auch diejenigen sind, in denen die Zukunft liegt und in denen zeitgleich auch Google wachsen will".

Für Anirban Kundu, CTO von Evernote, ist Machine Learning eines der Highlights der Google-Plattform. Darüber hinaus seien aber auch einige der ‚high-level services‘, die Google anbietet, eine Bereicherung für aktuelle und künftige Evernote-Features. Ganz konkret etwa hilft dem Unternehmen die Cloud Machine Learning API von Google - schließlich plant man selbst mit neuen Möglichkeiten auf Basis maschinellen Lernens.

Obwohl in aller Regel der Kostenfaktor als Vorteil der Public Cloud angeführt wird, spielte dieser laut McCormack bei der Entscheidung zur Migration in die Google Cloud keine Rolle. Die Entscheidung für Google und gegen die Wettbewerber wie AWS oder Microsoft, wurde vom Technologie-Team von Evernote maßgeblich beeinflusst. Erst nachdem die Entscheidung gefallen war, wurde Evernote-CEO Chris O’Neill hinzugezogen. Dieser war vor seiner Zeit bei Evernote circa zehn Jahre lang bei Google angestellt und half bei der Verhandlungsführung.

So lief der Migrations-Prozess ab

Nachdem der Vertrag mit Google im Oktober 2016 in trockenen Tüchern war, tickte die Uhr: Laut McCormack sollte die Migration noch vor dem Neujahrstag 2017 abgeschlossen sein. In Zahlen ausgedrückt: fünf Milliarden Notes und fünf Milliarden Dateianhänge mussten migriert werden. Wegen der Metadaten - etwa Thumbnails bei den Dateianhängen - stieg die Zahl laut McCormack schlussendlich auf 12 Milliarden Anhänge. Dazu kam für das Team aber noch die Herausforderung, dabei keinerlei Daten verlieren zu dürfen. Ach ja - der Evernote-Service musste natürlich über die gesamte Zeit weiterlaufen.

Laut McCormack überlegte man sich zunächst, welche Teile der Applikation in Gänze in die Google-Cloud übertragen werden können, und welche angepasst werden müssen. Ein Teil der Transformation bestand dabei auch darin, die Art und Weise des Netzwerkbetriebs bei Evernote neu aufzusetzen. Zuvor kam UDP Multicast zum Einsatz, um Teile des Bilderkennungs-Workflows zu handeln. Das funktionierte im hauseigenen Datacenter, wo man die Kontrolle über die Netzwerk-Router innehatte - allerdings war diese Technologie in der Google Cloud nicht verfügbar. Deswegen, so CTO Kundu, sei es nötig gewesen, die Applikation auf ein queue-basiertes Verfahren umzustellen.

Evernote konnte bei diesem Projekt jedoch nicht einfach all seine User-Daten migrieren und dann einen Knopf drücken, um den Traffic von den On-premise Servern auf die Google Cloud umzuleiten. Stattdessen mussten die Backend-Applikationen von Evernote neu konstruiert werden, um eine schrittweise Migration zu ermöglichen. Die gute Nachricht dabei: Die Umstellung erforderte keine Änderungen am Client selbst. Das war nach Ansicht von Technikchef Kundu der Schlüssel für den Erfolg der Migration, da nicht alle Evernote-Kunden zeitnah ihre Software upgraden würden.

McCormack war hingegen positiv überrascht von der Zusammenarbeit mit den Google-Mitarbeitern. Insbesondere vom kollaborativen Spirit der Google-Mannschaft zeigte er sich beeindruckt: "Das Team hat - sowohl remote, als auch vor Ort - rund um die Uhr bei Fragen und Problemen zur Verfügung gestanden. Google wollte, dass wir erfolgreich sind."

Ab der Vertragsunterzeichnung dauerte es letztendlich ungefähr 70 Tage, um die komplette Migration der Daten in die Cloud abzuschließen. Dabei sei der wesentliche Teil der Migration im Dezember in nur zehn Tagen über die Bühne gegangen, wie McCormack verriet.