Ein Container wird verladen

CONTAINER-ORCHESTRIERUNG IN DER AWS CLOUD ‒ EINE ORIENTIERUNGSHILFE

Dennis Kögel, AWS Certified Solutions Architect, 18.12.2020

Container-Virtualisierung ist heutzutage ein sehr beliebtes Mittel, um kürzere Entwicklungszyklen zu erreichen. Nicht ganz so beliebt ist jedoch die dazu notwendige Container-Orchestrierung. Doch keine Angst: Die passenden Orchestrierungsdienste können direkt aus der Cloud bezogen werden. AWS bietet mit Amazon ECS und Amazon EKS gleich zwei ausgeklügelte Services an, die sich mit der Orchestrierung von Containern in der Cloud befassen. Eine Orientierungshilfe.

SO FUNKTIONIEREN AWS CONTAINER-SERVICES

Container-Virtualisierung (unter anderem auf AWS) hat in den letzten Jahren das Entwickeln, Verteilen und Betreiben von Anwendungen stark geprägt. Deshalb baut heutzutage jede moderne IT-Organisation ihre Abläufe entweder bereits darauf auf – oder arbeitet gerade daran. Statt großer monolithischer Applikationen nutzt man hier kleine spezialisierte Programme, die in zugehörigen Containern betrieben werden (Microservice-Architektur). Eine Software zur Container-Orchestrierung sorgt dann für das reibungslose Zusammenspiel der verschiedenen Microservices. Sie kümmert sich um die Verwaltung, Skalierung, Überwachung, Fehlerbehandlung und Vernetzung der Container.

AWS stellt zur Container-Orchestrierung zwei Dienste mit unterschiedlichen Ausrichtungen bereit. Die beiden AWS Container Services heißen Amazon Elastic Container Service (kurz: ECS) und Amazon Elastic Kubernetes Service (kurz: EKS). Wir Cloud Mates haben uns beide für Sie angesehen.

DAS IST ECS: AMAZON ELASTIC CONTAINER SERVICE

Amazon ECS (nicht zu verwechseln mit EC2) ist Amazons Eigenentwicklung zur Container-Orchestrierung. Bereits 2014 ging ECS an den Start und ist damit der älteste Container-Orchestrierungsdienst eines renommierten Public Cloud-Anbieters.

VORTEILE

 kostenlos: Amazon ECS ein kostenloser Dienst. Nur die eigentlichen Compute-Ressourcen für die AWS Cloud Container – primär Arbeitsspeicher und Rechenleistung – werden nach dem Pay as you go-Modell berechnet.

 harmoniert mit anderen AWS-Diensten: Ein großer Vorteil von ECS ist die tiefe Verflechtung mit dem Ökosystem der AWS-Dienste, beispielsweise mit den Autoscaling-, Loadbalancing- und Sicherheitsdiensten. So können bei der Container-Orchestrierung unter anderem Aktualisierungen von Anwendungen ohne Ausfall gewährleistet werden.

 leichter Einstieg: Die Konfiguration von Diensten und Containern kann vollständig über die graphische AWS Console erfolgen; das Konfigurieren eines produktionsreifen Container-Dienstes ist dadurch auch ohne tiefe ECS-Vorkenntnisse möglich. Weitere AWS-Dienste wie CloudWatch (Protokollierung und Metriken), Load Balancing oder CloudMap (Service Discovery) können durch wenige Klicks hinzugefügt werden. Außerdem gibt es viele Ressourcen für Entwickler, beispielsweise den AWS Co-Pilot.

NACHTEILE

 AWS-spezifisch: ECS ist ein von Amazon entwickelter Dienst und mit anderen AWS-Diensten verflochten. Bei einem Umzug von AWS zu einem anderen Cloud-Anbieter wäre dies eine zusätzliche (wenn auch vergleichsweise kleine) Hürde.

DAS IST EKS: AMAZON ELASTIC KUBERNETES SERVICE

Amazon EKS stellt einen durch AWS verwalteten Kubernetes-Cluster bereit. Kubernetes stammt ursprünglich von Google und hat sich inzwischen zum de facto Standard für Container-Orchestrierung entwickelt. Im Laufe der Zeit hat sich um Kubernetes herum ein riesiges Ökosystem an verschiedenen Services und Anwendungen gebildet.

VORTEILE

 hohe Flexibilität für komplexe Anforderungen: Fluch und Segen von Kubernetes ist seine Vielseitigkeit.

 höhere Unabhängigkeit von AWS: Amazon EKS bietet eine größere Unabhängigkeit von den anderen AWS-Diensten. So kann eine kubernetesbasierte Container-Orchestrierung leichter bei mehreren Anbietern betrieben werden – und natürlich im eigenen Rechenzentrum. Falls die IT-Strategie dies verlangt, ist AWS EKS also das Mittel der Wahl.

 kostengünstig: Amazon EKS stellt eine verwaltete Kubernetes Control Plane zur Verfügung und liegt bei ca. $75 pro Monat und Cluster. Die Kosten für Compute-Ressourcen kommen (wie bei ECS) nach dem AWS Pay as you go-Modell hinzu.

NACHTEILE

 schwerer mit anderen AWS-Diensten zu integrieren: Kubernetes’ Stärke ist die Standardisierung. Das bedeutet, dass Konfigurationen bei allen Kubernetes-Anbietern – oder im eigenen Rechenzentrum – mit vergleichsweise wenigen Anpassungen funktionieren. Für viele Standarddienste auf AWS ist es daher notwendig, bei der Container-Orchestrierung alternative Lösungen in Kubernetes zu finden und diese selbst zu betreiben (beispielsweise Prometheus statt CloudWatch, Consul statt CloudMap etc.)

 höhere Investition (Wissensaufbau): Für Firmen bedeutet die Komplexität von Amazon EKS ein hohes Investment in Kubernetes-spezifische Kenntnisse und Erfahrungen, vom Anwendungsentwickler bis zum Betrieb.

DAS CLOUD MATES-FAZIT: WELCHER AWS CONTAINER SERVICE IST DER RICHTIGE FÜR IHRE IT?

Eine goldene Regel im Leben und besonders in der IT lautet: keep it simple! Entsprechend ist Amazon ECS für die meisten Anwendungsfälle ausreichend und fügt sich außerdem elegant in das Ökosystem der AWS-Services ein. Jedoch gibt es für Unternehmen auch gute Gründe, sich für Amazon EKS als Container-Orchestrierungsdienst zu entscheiden. Dies gilt vor allem, wenn Kubernetes bereits im Einsatz ist. Grundlegend für die Entscheidung sind der Status quo sowie die konkreten Ziele der IT-Strategie eines Unternehmens.

Letzten Endes spielen bei der Entscheidung für den einen oder anderen Services zur AWS Container-Orchestrierung viele individuelle Faktoren eine Rolle. Als Cloud Mates stehen wir Ihnen gerne beratend zur Seite, um gemeinsam die Anforderungen Ihrer IT zu bewerten und die passende Architektur zu finden!