Development

Interview mit Lee Atchison

Serverless im Jahr 2020: „Die Möglichkeiten von Observability, wie etwa Tracing, gewinnen wesentlich an Bedeutung“
Keine Kommentare

Wie wird sich der Hype um Serverless wohl in den kommenden Monaten entwickeln? Wird Serverless Container-Technologien obsolet machen? Wir haben mit Lee Atchison, Senior Director, Cloud Architecture bei New Relic, über die Zukunft von Serverless, die Veränderungen im DevOps-Sektor und den Status Quo der Technologie gesprochen. Dabei stand insbesondere die Frage im Fokus, wie man Serverless-Anwendungen via Observability richtig überwacht.

Entwickler: Der Begriff Serverless ist ein kontroverses Modewort: Server werden noch immer genutzt. Darüber hinaus scheint jeder etwas anderes unter Serverless zu verstehen (z.B. FaaS oder BaaS). Was bedeutet Serverless für Sie persönlich?

Lee Atchison: Für mich ist die beste Definition von Serverless die Folgende: Jeder Service, der auf Plattformebene angeboten wird, der seinen Kunden Funktionen bietet, ohne dass die Kunden die zugrundeliegende Infrastruktur kennen oder verstehen müssen, auf der der Service läuft, ist Serverless.

Auf Grundlage dieser Definition würden sicherlich FaaS-Angebote wie AWS Lambda darunterfallen, aber gleichzeitig würde auch Amazon S3 als Serverless-Angebot betrachtet werden. Amazon S3 bietet Speicherkapazitäten als Service, ohne dass der Verbraucher die zugrundeliegende Infrastruktur verstehen muss, die den Service betreibt.

Am besten lässt sich die Unterscheidung von serverbasierten und serverlosen Diensten verstehen, wenn man den Unterschied zwischen Amazon DynamoDB und Amazon RDS näher betrachtet. Beides sind Datenbankangebote: DynamoDB ist serverlos, da keine Kenntnis über die zugrunde liegende Serverarchitektur nötig ist. Amazon RDS ist serverbasiert, da man die Server, auf denen der Dienst läuft, kennen und verstehen muss. Mit diesem Verständnis muss alles konfiguriert werden, um die Server richtig zu dimensionieren und entsprechende Redundanzen und Backups einzubauen. Diese beiden Dienste sind eine gute Möglichkeit, serverbasierte und serverlose Dienste zu vergleichen.

Beispiele für AWS Serverless-Dienste:

  • AWS Lambda
  • DynamoDB
  • SNS/SQS
  • CloudFront

Beispiele für AWS serverbasierte Dienste:

  • RDS
  • ElastiCache
  • ECS/EKS
  • Elastic Beanstalk

Insgesamt ist es einfacher, serverlose Dienste als serverbasierte Dienste zu konfigurieren und skalieren.

Entwickler: Aus Entwicklersicht hat Serverless viele Vorteile. Einer davon ist, dass man sich über die Infrastruktur nun praktisch keine Gedanken mehr machen muss. Wie verändert sich Ihrer Meinung nach der Alltag von Entwicklern durch Serverless?

Entwickler, die mit DevOps-Methoden Services erstellen, bereitstellen und betreiben, profitieren sehr von Cloud-basierten Infrastrukturdiensten.

Lee Atchison: Entwickler, vor allem diejenigen, die mit DevOps-Methoden Services erstellen, bereitstellen und betreiben, profitieren sehr von Cloud-basierten Infrastrukturdiensten. Gerade durch Serverless-Technologien kann der typische Entwickler Infrastrukturdienste effizienter nutzen und skalieren. Darüber hinaus können Entwickler nun von Managed Services profitieren: Sie können, ohne die Feinheiten des Server-Betriebs zu verwalten, alles von einfachen ereignisbasierten Workloads bis hin zu komplexen Videopipelines erstellen. Durch die mühelose Nutzung dieser Dienste und den minimalen Aufwand für den Aufbau und die Erhaltung der Produktionsauslastung können Softwareentwickler Innovationen beschleunigen.

Dadurch lösen sich aber nicht alle Probleme der Entwickler in Luft auf. Anwender von AWS Lambda müssen beispielsweise immer noch auf die Performance und Skalierung achten, da die Leistungsmerkmale einer bestimmten AWS-Lambda-Funktion je nach Nutzungsmuster der Funktion und Arbeitsumfang variieren können. Diese Abweichungen können einen negativen Einfluss auf die Benutzerfreundlichkeit und den Betriebskomfort von Serverless-basierten Infrastrukturen haben. Einfach gesagt: Nur weil man die Server nicht skalieren muss, heißt das nicht, dass man sich nicht mit Skalierungsproblemen beschäftigen muss.

API Conference 2019

Oliver Drotbohm

REST Beyond the Obvious – API Design for Ever Evolving Systems

mit Oliver Drotbohm (Pivotal Software, Inc.)

Arne Limburg

API-Kompatibilität durch Consumer-Driven Contracts

mit Arne Limburg (OPEN KNOWLEDGE GmbH)

 

Entwickler: Entwickler sind nicht die einzigen Betroffenen des neuen Modells, vor allem, wenn man an DevOps denkt. Welche Konsequenzen hat der Serverless-Ansatz für Anwender/Systemadministratoren?

Lee Atchison: Das Betriebspersonal steht vor denselben Herausforderungen, vor denen auch ein Entwickler steht. Die Rollen werden aus DevOps-Sicht immer mehr miteinander verflochten. Der Bedarf nach einem Infrastruktur-Operation-Management wird aber weiterhin essenziell bleiben. Operation-Teams werden auch künftig dafür verantwortlich sein, dass die erstellten Umgebungen auch entsprechende Ausfallrisiken berücksichtigen. Zudem werden Ops-Teams für das Monitoring von Cloud-Diensten verantwortlich sein, die ihnen wichtige Informationen geben, um die künftige Cloud-Service-Nutzung zu optimieren. Operation-Teams sind die beste Vorraussetzung, ihre Unternehmen auf der nächsten Etappe der Serverless Journey zu unterstützen.

Entwickler: Im Rahmen von DevOps sind Observability und Monitoring sehr wichtige Themen. Wie funktioniert Observability in Serverless-Anwendungen, wenn man als Operator nicht mehr für die zugrunde liegende Infrastruktur verantwortlich ist?

Lee Atchison: Observability spielt eine tragende Rolle, sowohl bei End-to-End- und Fullstack-Anwendungsansichten, als auch auf der untersten Ebene der Infrastruktur auf der die Anwendungen laufen. Die Möglichkeiten der Observability, wie etwa Tracing, gewinnen wesentlich an Bedeutung. Zudem werden Möglichkeiten zur Kombination von High-Level-Observability-Funktionen (wie Application Tracing) mit Monitoring-Funktionen niedrigerer Level (wie Server-Monitoring, Kubernetes/Container-Monitoring oder Cloud-Service-Monitoring) in einer einzigen, einheitlichen Ansicht immer bedeutsamer. Denn darin kann man kausale Zusammenhänge sehen und identifizieren.

Beispielsweise kann ein Service seine SLAs durch seine Backend-Abhängigkeit nicht einhalten. Durch Observability können Teams schnell sehen, ob die Abhängigkeit an einem Cloud-Service liegt, der derzeit Probleme aufweist. Diese Fähigkeit ist enorm wichtig, damit Teams ihre Dienste am Laufen halten können.

Entwickler: Simon Wardley hat die These verbreitet, dass Container und Kubernetes nur eine Randerscheinung in der Geschichte der Softwareentwicklung sind und bald obsolet werden könnten, da „Serverless die Welt einnimmt.“ Was denken Sie darüber?

Serverless-Technologien ermöglichen es Softwareentwicklern, moderne Anwendungen mit gesteigerter Agilität und niedrigeren Betriebskosten zu erstellen.

Lee Atchison: Serverless-Technologien ermöglichen es Softwareentwicklern, moderne Anwendungen mit gesteigerter Agilität und niedrigeren Betriebskosten zu erstellen. Die Erstellung serverloser Anwendungen bedeutet also, dass Entwickler mehr Zeit auf die Bereitstellung der Kernprodukte als auf die Verwaltung und den Betrieb von Servern oder Laufzeiten fokussieren können. Durch den geringeren Aufwand bekommen Entwickler wieder mehr Zeit und Energie für die Entwicklung neuer Produkte, die skalierbar und zuverlässig sind. Container-Technologie wird auch künftig ein essenzieller Bestandteil beim Aufbau und der Wartung moderner Applikationen sein.

Entwickler: Abschließend ein Blick in die Kristallkugel: Welche Rolle wird die Serverless-Technologie im Jahr 2020 spielen?

Lee Atchison: Serverless wird ein entscheidender Service sein, der zusammen mit anderen modernen Technologien als „dynamische Infrastrukturen“ bezeichnet werden kann. Allgemein werden dynamische Infrastrukturen zum Aufbau hochskalierbarer, hochverfügbarer, servicebasierter Applikationen genutzt werden, die das Zentrum unserer modernen Welt formen.

Nächstes Jahr wird sich Serverless in Enterprise-Anwendungen etablieren und vermehrt mit anderen Technologien wie Microservices und traditionellen Anwendungsarchitekturen integriert werden. Dazu wird ein deutliches Wachstum bei Kubernetes- und Container-as-a-Service-Modellen zu sehen sein. Dabei wird Serverless die Notwendigkeit traditioneller Berechnungen aber nicht ersetzen.

Lee Atchison ist Senior Director, Cloud Architecture bei New Relic. Während der letzten sieben Jahre half er dabei eine solide servicebasierte Produktarchitektur zu designen und aufzubauen, die sich von einem Startup zu einem hochfrequentierten öffentlichen Unternehmen entwickelte. Lee hat über 32 Jahre Erfahrung in der Branche – darunter sieben Jahre als Senior Manager bei Amazon.com. Bei Amazon leitete er die Gestaltung des ersten Software-Download-Stores des Unternehmens. Er entwarf AWS Elastic Beanstalk und verwaltete die Migration von Amazons Einzelhandelsplattform zu einer neuen servicebasierten Architektur. Lee hat führende Unternehmen bei der Modernisierung ihrer Anwendungsarchitekturen und der maßstabsgetreuen Transformation der Unternehmen beraten. Darunter fielen auch die Optimierung für Cloud-Plattformen, die Nutzung servicebasierter Architekturen, die Implementierung von DevOps-Verfahren und Designs für hohe Verfügbarkeit. Aufgrund dieser Erfahrungen schrieb er das Buch „Architecting for Scale“, das 2016 bei O’Reilly Media erschien. Der Branchenexperte wird häufig in Publikationen wie Diginomica, IT Brief Programmable Web, CIO Review und DZone zitiert. Außerdem ist er ein weltweit gefragter Referent und trat bereits auf Veranstaltungen von London bis Sydney, von Tokio bis Paris und in ganz Nordamerika auf.
Unsere Redaktion empfiehlt:

Relevante Beiträge

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu:
X
- Gib Deinen Standort ein -
- or -