Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Stellen Sie Java-Microservices auf Amazon ECS mithilfe von Amazon ECR und Load Balancing bereit - AWS Prescriptive Guidance

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Stellen Sie Java-Microservices auf Amazon ECS mithilfe von Amazon ECR und Load Balancing bereit

Erstellt von Durga Prasad Cheepuri () AWS

Übersicht

Dieses Muster beschreibt die Schritte zur Bereitstellung einer containerisierten Java-Microservices-Architektur auf Amazon Elastic Container Service (AmazonECS), um die Skalierung zu vereinfachen und die Entwicklung Ihrer Anwendungen zu beschleunigen. Dies trägt dazu bei, Innovationen zu ermöglichen und die Einführung neuer Funktionen time-to-market zu beschleunigen. 

Das Muster verwendet außerdem Amazon Elastic Container Registry (AmazonECR) zum Speichern und Verwalten der Docker-basierten Container sowie eine AWS CloudFormation Vorlage mit einem Python-Skript, um die Einrichtung Ihrer Infrastruktur zu automatisieren. Das Muster basiert auf dem Beitrag Deploying Java Microservices on Amazon Elastic Container Service, der im AWS Compute-Blog veröffentlicht wurde.

Microservices bieten einen architektonischen und organisatorischen Ansatz für die Softwareentwicklung, bei dem Software aus kleinen, unabhängigen Diensten besteht, die über klar definierte Anwendungsprogrammierschnittstellen kommunizieren (). APIs Kleine, in sich geschlossene Teams sind Eigentümer dieser Dienste. 

Amazon ECS ist ein hoch skalierbarer, leistungsstarker Container-Orchestrierungsservice. Er unterstützt Docker-Container und ermöglicht es Ihnen, containerisierte Anwendungen schnell auszuführen und zu skalieren. AWS Mit Amazon ECS müssen Sie Ihre Container-Orchestrierungssoftware nicht mehr installieren und betreiben, einen Cluster von virtuellen Maschinen (VMs) verwalten und skalieren oder Container auf diesen VMs planen.

Mit einfachen API Aufrufen können Sie Docker-fähige Anwendungen starten und beenden, den vollständigen Status Ihrer Anfrage abfragen und auf viele natürliche Funktionen wie AWS Identity and Access Management (IAM) -Rollen, Sicherheitsgruppen, Load Balancer, Amazon CloudWatch Events, AWS CloudFormation Vorlagen und Protokolle zugreifen. AWS CloudTrail

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives Konto AWS  

  • Java-Microservices-Quellcode mit Java Development Kit Version 1.7 oder höher

  • Ein Zugriffsschlüssel und ein geheimer Zugriffsschlüssel für einen Benutzer im Konto

  • AWSBefehlszeilenschnittstelle (AWSCLI)

  • Java, AWS Software Development Kit (SDK) für Python (Boto3) und Docker-Software

  • Vertrautheit mit der Verwendung der vorherigen Technologien

  • Vertrautheit mit AWS Services wie Amazon ECS und Elastic Load Balancing AWS CloudFormation

Architektur

Quelltechnologie-Stack

  • Microservices, die in Java implementiert und auf Apache Tomcat in einer lokalen Umgebung bereitgestellt werden

Zieltechnologie-Stack

  • Der Application Load Balancer, der die Client-Anfrage überprüft. Basierend auf Routing-Regeln leitet der Load Balancer die Anfrage an eine Instanz und einen Port der Zielgruppe weiter, die dem Status entsprechen.

  • Eine Zielgruppe für jeden Microservice. Die Zielgruppen werden von den entsprechenden Diensten verwendet, um verfügbare Container-Instances zu registrieren. Jede Zielgruppe hat einen Pfad. Wenn Sie also den Weg für einen bestimmten Microservice aufrufen, wird er der richtigen Zielgruppe zugeordnet. Auf diese Weise können Sie einen Application Load Balancer verwenden, um alle Microservices bereitzustellen, auf die über den Pfad zugegriffen wird. Beispielsweise würde https:///owner/ * dem Owner-Microservice zugeordnet und zu diesem weitergeleitet.

  • Ein ECS Amazon-Cluster, der die Container für jeden Microservice hostet.

  • Ein Amazon Virtual Private Cloud (AmazonVPC) -Netzwerk zum Hosten des ECS Amazon-Clusters und der zugehörigen Sicherheitsgruppen.

  • Ein Amazon Elastic Container Registry (AmazonECR) -Repository für jeden Microservice.

  • Eine Service- oder Aufgabendefinition für jeden Microservice, der Container auf den Instances des ECS Amazon-Clusters hochfährt.

Zielarchitektur

Schritte zur Bereitstellung einer containerisierten Java-Microservices-Architektur auf Amazon. ECS

Tools

  • Amazon ECS — ECS Mit Amazon können Sie containerbasierte Anwendungen mit einfachen API Aufrufen starten und beenden, den Status Ihres Clusters über einen zentralen Service abrufen und erhalten Zugriff auf viele vertraute Funktionen von Amazon Elastic Compute Cloud (AmazonEC2).

  • Amazon ECR — Amazon Elastic Container Registry (AmazonECR) ist eine vollständig verwaltete Registry, die es Entwicklern erleichtert, Docker-Container-Images zu speichern, zu verwalten und bereitzustellen. Amazon ECR ist in Amazon integriertECS, um Ihren development-to-production Arbeitsablauf zu vereinfachen. Amazon ECR hostet Ihre Images in einer hochverfügbaren und skalierbaren Architektur, sodass Sie Container für Ihre Anwendungen zuverlässig bereitstellen können. Die Integration mit AWS Identity and Access Management (IAM) ermöglicht die Kontrolle jedes Repositorys auf Ressourcenebene.

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie eine Amazon EC2 Linux-Instance bereit, installieren Sie Docker und erstellen Sie eine Docker-Datei für jeden Microservice.

Ops

Richten Sie Docker-Images bei Amazon ECR ein.

Verwenden Sie das Dockerfile für das Image, um es zu pushen, zu erstellen und es für Ihr neues Repository zu taggen. Machen Sie dasselbe für jeden Microservice. Schieben Sie die neu markierten Bilder in das Repository.

Ops

Erstellen Sie eine AWS CloudFormation Vorlage.

Erstellen Sie eine AWS CloudFormation Vorlage für die Bereitstellung der Virtual Private Cloud (VPC), des ECS Amazon-Clusters und des Amazon Relational Database Service (AmazonRDS).

Ops

Erstellen Sie eine AWS CloudFormation Vorlage für die Einrichtung eines ECS Amazon-Clusters zum Hosten der Java-Microservices

AufgabeBeschreibungErforderliche Fähigkeiten

Stellen Sie eine Amazon EC2 Linux-Instance bereit, installieren Sie Docker und erstellen Sie eine Docker-Datei für jeden Microservice.

Ops

Richten Sie Docker-Images bei Amazon ECR ein.

Verwenden Sie das Dockerfile für das Image, um es zu pushen, zu erstellen und es für Ihr neues Repository zu taggen. Machen Sie dasselbe für jeden Microservice. Schieben Sie die neu markierten Bilder in das Repository.

Ops

Erstellen Sie eine AWS CloudFormation Vorlage.

Erstellen Sie eine AWS CloudFormation Vorlage für die Bereitstellung der Virtual Private Cloud (VPC), des ECS Amazon-Clusters und des Amazon Relational Database Service (AmazonRDS).

Ops
AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie die AWS Infrastruktur mithilfe der CloudFormation Vorlage, die Sie zuvor erstellt haben.

Verwenden Sie das Python-Skript unter https://github.com/awslabs/ amazon-ecs-java-microservices blob/master/2_ECS_Java_Spring_PetClinic_Microservices/setup /.py, um die zuvor erstellte AWS CloudFormation Vorlage aufzurufen. Diese Vorlage erstellt die AWS Infrastruktur, die Sie für die Zielumgebung benötigen.

Ops

Erstellen Sie ECR Amazon-Repositorys, Aufgaben, Services, den Application Load Balancer und Zielgruppen.

Das Python-Skript liest die Ausgaben der AWS CloudFormation Vorlage und verwendet BOTO3 API Aufrufe, um ECR Amazon-Repositorys, Aufgaben, Services, den Application Load Balancer und Zielgruppen zu erstellen.

Ops

AWSBereitstellungsdienste

AufgabeBeschreibungErforderliche Fähigkeiten

Erstellen Sie die AWS Infrastruktur mithilfe der CloudFormation Vorlage, die Sie zuvor erstellt haben.

Verwenden Sie das Python-Skript unter https://github.com/awslabs/ amazon-ecs-java-microservices blob/master/2_ECS_Java_Spring_PetClinic_Microservices/setup /.py, um die zuvor erstellte AWS CloudFormation Vorlage aufzurufen. Diese Vorlage erstellt die AWS Infrastruktur, die Sie für die Zielumgebung benötigen.

Ops

Erstellen Sie ECR Amazon-Repositorys, Aufgaben, Services, den Application Load Balancer und Zielgruppen.

Das Python-Skript liest die Ausgaben der AWS CloudFormation Vorlage und verwendet BOTO3 API Aufrufe, um ECR Amazon-Repositorys, Aufgaben, Services, den Application Load Balancer und Zielgruppen zu erstellen.

Ops

Zugehörige Ressourcen

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.