

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.

# Containerisieren Sie Mainframe-Workloads, die von Blu Age modernisiert wurden
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age"></a>

*Richard Milner-Watts, Amazon Web Services*

## Zusammenfassung
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-summary"></a>

[Dieses Muster bietet ein Beispiel für eine Container-Umgebung zum Ausführen von Mainframe-Workloads, die mithilfe des Blu Age-Tools modernisiert wurden.](https://www.bluage.com/) Blu Age konvertiert ältere Mainframe-Workloads in modernen Java-Code. Dieses Muster bietet einen Wrapper für die Java-Anwendung, sodass Sie sie mithilfe von Container-Orchestrierungsdiensten wie [Amazon Elastic Container Service (Amazon ECS) oder Amazon Elastic](https://aws.amazon.com/ecs/) [Kubernetes Service (Amazon](https://aws.amazon.com/eks/) EKS) ausführen können.

Weitere Informationen zur Modernisierung Ihrer Workloads mithilfe von Blu Age- und AWS-Services finden Sie in den folgenden Publikationen zu AWS Prescriptive Guidance:
+ [Ausführung modernisierter Blu-Age-Mainframe-Workloads auf einer serverlosen AWS-Infrastruktur](https://docs.aws.amazon.com/prescriptive-guidance/latest/run-bluage-modernized-mainframes/)
+ [Stellen Sie mithilfe von Terraform eine Umgebung für containerisierte Blu Age-Anwendungen bereit](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-an-environment-for-containerized-blu-age-applications-by-using-terraform.html)

[Wenn Sie Unterstützung bei der Nutzung von Blu Age zur Modernisierung Ihrer Mainframe-Workloads benötigen, wenden Sie sich an das Blu Age-Team, indem Sie auf der Blu Age-Website auf **Kontaktieren Sie unsere Experten klicken**.](https://www.bluage.com/) Wenn Sie Unterstützung bei der Migration Ihrer modernisierten Workloads zu AWS, ihrer Integration mit AWS-Services und ihrer Umstellung auf die Produktion benötigen, wenden Sie sich an Ihren AWS-Kundenbetreuer oder füllen Sie das [AWS Professional](https://pages.awscloud.com/AWS-Professional-Services.html) Services-Formular aus.

## Voraussetzungen und Einschränkungen
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-prereqs"></a>

**Voraussetzungen**
+ Eine modernisierte Java-Anwendung, die von Blu Age erstellt wurde. Zu Testzwecken bietet dieses Muster eine Java-Beispielanwendung, die Sie als Machbarkeitsnachweis verwenden können.
+ Eine [Docker-Umgebung](https://aws.amazon.com/docker/), mit der Sie den Container erstellen können.

**Einschränkungen**

Je nachdem, welche Container-Orchestrierungsplattform Sie verwenden, sind die Ressourcen, die dem Container zur Verfügung gestellt werden können (wie CPU, RAM und Speicher), möglicherweise begrenzt. Wenn Sie beispielsweise Amazon ECS mit AWS Fargate verwenden, finden Sie in der [Amazon ECS-Dokumentation](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/AWS_Fargate.html) Einschränkungen und Überlegungen.

## Architektur
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-architecture"></a>

**Quelltechnologie-Stack**
+ Blaues Zeitalter
+ Java

**Zieltechnologie-Stack**
+ Docker

**Zielarchitektur**

Das folgende Diagramm zeigt die Architektur der Blu Age-Anwendung in einem Docker-Container.

![\[Blu Age-Anwendung im Docker-Container\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/images/pattern-img/c1747094-357b-4222-b4eb-b1336d810f83/images/0554332d-eff5-49ca-9789-da39b5a10045.png)


1. Der Einstiegspunkt für den Container ist das Wrapper-Skript. Dieses Bash-Skript ist dafür verantwortlich, die Laufzeitumgebung für die Blu Age-Anwendung vorzubereiten und die Ausgaben zu verarbeiten.

1. Umgebungsvariablen innerhalb des Containers werden verwendet, um Variablen im Wrapper-Skript zu konfigurieren, wie z. B. die Bucket-Namen und Datenbankanmeldeinformationen von Amazon Simple Storage Service (Amazon S3). Umgebungsvariablen werden entweder von AWS Secrets Manager oder Parameter Store, einer Funktion von AWS Systems Manager, bereitgestellt. Wenn Sie Amazon ECS als Container-Orchestrierungsservice verwenden, können Sie die Umgebungsvariablen auch in der Amazon ECS-Aufgabendefinition hartcodieren.

1. Das Wrapper-Skript ist dafür verantwortlich, alle Eingabedateien aus dem S3-Bucket in den Container zu ziehen, bevor Sie die Blu Age-Anwendung ausführen. Die AWS-Befehlszeilenschnittstelle (AWS CLI) ist im Container installiert. Dies bietet einen Mechanismus für den Zugriff auf Objekte, die in Amazon S3 gespeichert sind, über den Gateway-Endpunkt der Virtual Private Cloud (VPC).

1. Die Java-Archivdatei (JAR) für die Blu Age-Anwendung muss möglicherweise mit anderen Datenquellen wie Amazon Aurora kommunizieren.

1. Nach Abschluss liefert das Wrapper-Skript die resultierenden Ausgabedateien zur weiteren Verarbeitung (z. B. durch Amazon CloudWatch Logging Services) in einen S3-Bucket. Das Muster unterstützt auch die Übermittlung komprimierter Protokolldateien an Amazon S3, wenn Sie eine Alternative zur CloudWatch Standardprotokollierung verwenden.

## Tools
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-tools"></a>

**AWS-Services**
+ [Amazon Elastic Container Registry (Amazon ECR)](https://docs.aws.amazon.com/AmazonECR/latest/userguide/what-is-ecr.html) ist ein verwalteter Container-Image-Registry-Service, der sicher, skalierbar und zuverlässig ist.
+ [Amazon Elastic Container Service (Amazon ECS)](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html) ist ein hoch skalierbarer, schneller Container-Management-Service, der das Ausführen, Beenden und Verwalten von Containern in einem Cluster vereinfacht.

**Tools**
+ [Docker](https://aws.amazon.com/docker/) ist eine Softwareplattform zum Erstellen, Testen und Bereitstellen von Anwendungen. Docker packt Software in standardisierte Einheiten, sogenannte [Container](https://aws.amazon.com/containers/), die alles enthalten, was die Software zum Ausführen benötigt, einschließlich Bibliotheken, Systemtools, Code und Laufzeit. Sie können Docker verwenden, um Anwendungen in jeder Umgebung bereitzustellen und zu skalieren.
+ [Bash](https://www.gnu.org/software/bash/manual/) ist eine Befehlssprachenschnittstelle (Shell) für das GNU-Betriebssystem.
+ [Java](https://www.java.com/) ist die Programmiersprache und Entwicklungsumgebung, die in diesem Muster verwendet werden.
+ [Blu Age](https://www.bluage.com/) ist ein AWS-Mainframe-Modernisierungstool, das ältere Mainframe-Workloads, einschließlich Anwendungscode, Abhängigkeiten und Infrastruktur, in moderne Workloads für die Cloud umwandelt.

**Code-Repository**

Der Code für dieses Muster ist im GitHub [Blu Age-Beispielcontainer-Repository](https://github.com/aws-samples/aws-blu-age-sample-container) verfügbar.

## Best Practices
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-best-practices"></a>
+ Externalisieren Sie die Variablen, um das Verhalten Ihrer Anwendung mithilfe von Umgebungsvariablen zu ändern. Diese Variablen ermöglichen es der Container-Orchestrierungslösung, die Laufzeitumgebung zu ändern, ohne den Container neu erstellen zu müssen. Dieses Muster enthält Beispiele für Umgebungsvariablen, die für Blu Age-Anwendungen nützlich sein können.
+ Überprüfen Sie alle Anwendungsabhängigkeiten, bevor Sie Ihre Blu Age-Anwendung ausführen. Stellen Sie beispielsweise sicher, dass die Datenbank verfügbar und die Anmeldeinformationen gültig sind. Schreiben Sie Tests in das Wrapper-Skript, um Abhängigkeiten zu überprüfen, und schlagen Sie frühzeitig fehl, wenn sie nicht erfüllt werden.
+ Verwenden Sie eine ausführliche Protokollierung innerhalb des Wrapper-Skripts. Die direkte Interaktion mit einem laufenden Container kann je nach Orchestrierungsplattform und Dauer der Aufgabe eine Herausforderung sein. Stellen Sie sicher, dass nützliche Informationen geschrieben werden, `STDOUT` um Probleme diagnostizieren zu können. Die Ausgabe kann beispielsweise den Inhalt des Arbeitsverzeichnisses der Anwendung sowohl vor als auch nach der Ausführung der Anwendung enthalten.

## Epen
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-epics"></a>

### Besorgen Sie sich eine JAR-Datei für die Blu-Age-Anwendung
<a name="obtain-a-blu-age-application-jar-file"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Option 1 — Arbeiten Sie mit Blu Age zusammen, um die JAR-Datei Ihrer Anwendung zu erhalten. | Der Container in diesem Muster erfordert eine Blu Age-Anwendung. Alternativ können Sie die Java-Beispielanwendung, die mit diesem Muster geliefert wird, für einen Prototyp verwenden.Arbeiten Sie mit dem Blu Age-Team zusammen, um eine JAR-Datei für Ihre Anwendung zu erhalten, die in den Container integriert werden kann. Wenn die JAR-Datei nicht verfügbar ist, lesen Sie die nächste Aufgabe, um stattdessen die Beispielanwendung zu verwenden. | Cloud-Architekt | 
| Option 2 — Erstellen oder verwenden Sie die mitgelieferte JAR-Datei der Beispielanwendung. | Dieses Muster stellt eine vorgefertigte Beispiel-JAR-Datei bereit. Diese Datei gibt die Umgebungsvariablen der Anwendung an aus, `STDOUT` bevor sie 30 Sekunden lang in den Ruhemodus wechselt und dann beendet wird.Diese Datei hat einen Namen `bluAgeSample.jar` und befindet sich im [Docker-Ordner](https://github.com/aws-samples/aws-blu-age-sample-container/tree/main/docker) des GitHub Repositorys.[Wenn Sie den Code ändern und Ihre eigene Version der JAR-Datei erstellen möchten, verwenden Sie den Quellcode unter. /java\$1 sample/src/sample \$1java\$1app.java im Repository](https://github.com/aws-samples/aws-blu-age-sample-container/tree/main/java_sample/src). GitHub [Sie können das Build-Skript unter verwenden. ](https://github.com/aws-samples/aws-blu-age-sample-container/tree/main/java_sample)/java\$1sample/build.sh, um den Java-Quellcode zu kompilieren und eine neue JAR-Datei zu erstellen. | App-Developer | 

### Erstellen Sie den Blue Age-Container
<a name="build-the-blu-age-container"></a>


| Aufgabe | Description | Erforderliche Fähigkeiten | 
| --- | --- | --- | 
| Klonen Sie das GitHub Repository. | Klonen Sie das Beispielcode-Repository mit dem folgenden Befehl:<pre>git clone https://github.com/aws-samples/aws-blu-age-sample-container</pre> | AWS DevOps | 
| Verwenden Sie Docker, um den Container zu erstellen. | Verwenden Sie Docker, um den Container zu erstellen, bevor Sie ihn in eine Docker-Registry wie Amazon ECR pushen:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/containerize-mainframe-workloads-that-have-been-modernized-by-blu-age.html) | AWS DevOps | 
| Testen Sie den Blu Age-Container. | (Optional) Testen Sie den Container bei Bedarf lokal mit dem folgenden Befehl:<pre>docker run -it <tag> /bin/bash</pre> | AWS DevOps | 
| Authentifizieren Sie sich bei Ihrem Docker-Repository. | Wenn Sie Amazon ECR verwenden möchten, folgen Sie den Anweisungen in der [Amazon ECR-Dokumentation](https://docs.aws.amazon.com/AmazonECR/latest/userguide/getting-started-cli.html), um die AWS-CLI zu installieren und zu konfigurieren und die Docker-CLI bei Ihrer Standardregistrierung zu authentifizieren.[Wir empfehlen, den Befehl zur Authentifizierung zu verwenden. get-login-password ](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/ecr/get-login-password.html)  Die [Amazon ECR-Konsole](https://console.aws.amazon.com/ecr/) bietet eine vorausgefüllte Version dieses Befehls, wenn Sie die Schaltfläche „**Push-Befehle anzeigen**“ verwenden. Weitere Informationen finden Sie in der [Amazon ECR-Dokumentation](https://docs.aws.amazon.com/AmazonECR/latest/userguide/getting-started-console.html).<pre>aws ecr get-login-password --region <region> | docker login --username AWS --password-stdin <account>.dkr.ecr.<region>.amazonaws.com</pre>Wenn Sie Amazon ECR nicht verwenden möchten, folgen Sie den Anweisungen für Ihr Container-Registrierungssystem. | AWS DevOps | 
| Erstellen Sie ein Container-Repository. | Erstellen Sie ein Repository in Amazon ECR. Anweisungen finden Sie im Muster [Bereitstellen einer Umgebung für containerisierte Blu Age-Anwendungen mithilfe von Terraform](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-an-environment-for-containerized-blu-age-applications-by-using-terraform.html).Wenn Sie ein anderes Container-Registrierungssystem verwenden, folgen Sie den Anweisungen für dieses System. | AWS DevOps | 
| Markieren Sie Ihren Container und übertragen Sie ihn in das Ziel-Repository. | Wenn Sie Amazon ECR verwenden:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/de_de/prescriptive-guidance/latest/patterns/containerize-mainframe-workloads-that-have-been-modernized-by-blu-age.html)Weitere Informationen finden Sie unter [Pushing a Docker-Image](https://docs.aws.amazon.com/AmazonECR/latest/userguide/docker-push-ecr-image.html) im *Amazon ECR-Benutzerhandbuch*. | AWS DevOps | 

## Zugehörige Ressourcen
<a name="containerize-mainframe-workloads-that-have-been-modernized-by-blu-age-resources"></a>

**AWS-Ressourcen**
+ [AWS Blu Age Age-Probencontainer-Repository](https://github.com/aws-samples/aws-blu-age-sample-container)
+ [Ausführung modernisierter Blu-Age-Mainframe-Workloads auf einer serverlosen AWS-Infrastruktur](https://docs.aws.amazon.com/prescriptive-guidance/latest/run-bluage-modernized-mainframes/)
+ [Stellen Sie mithilfe von Terraform eine Umgebung für containerisierte Blu Age-Anwendungen bereit](https://docs.aws.amazon.com/prescriptive-guidance/latest/patterns/deploy-an-environment-for-containerized-blu-age-applications-by-using-terraform.html)
+ [Verwenden von Amazon ECR mit der AWS-CLI](https://docs.aws.amazon.com/AmazonECR/latest/userguide/getting-started-cli.html) (*Amazon ECR-Benutzerhandbuch*)
+ [Authentifizierung in privaten Registern](https://docs.aws.amazon.com/AmazonECR/latest/userguide/registry_auth.html) (*Amazon ECR-Benutzerhandbuch*)
+ [Amazon ECS-Dokumentation](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html)
+ [Amazon EKS-Dokumentation](https://docs.aws.amazon.com/eks/latest/userguide/what-is-eks.html)

**Weitere Ressourcen**
+ [Blu Age-Webseite](https://www.bluage.com/)
+ [Docker-Webseite](https://docker.com/)