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.
Modernisieren und implementieren Sie Mainframe-Anwendungen mithilfe von Terraform AWS Transform
Mason Cahill, Polaris Jhandi, Prachi Khanna, Sivasubramanian Ramani und Santosh Kumar Singh, Amazon Web Services
Übersicht
AWS Transformkann die groß angelegte Modernisierung von.NET, VMware Mainframe und Workloads beschleunigen. Es setzt spezialisierte KI-Agenten ein, die komplexe Aufgaben wie Bewertungen, Codeanalysen, Refactoring, Zerlegung, Zuordnung von Abhängigkeiten, Validierung und Transformationsplanung automatisieren. Dieses Muster zeigt, wie eine Mainframe-Anwendung modernisiert und anschließend mithilfe AWS Transform von Hashicorp Terraform in der Infrastruktur bereitgestellt wird. AWS Diese step-by-step Anweisungen helfen Ihnen bei der Transformation CardDemo, bei der es sich um eine Open-Source-Mainframe-Beispielanwendung handelt, von COBOL zu einer modernen Java-Anwendung.
Voraussetzungen und Einschränkungen
Voraussetzungen
Einschränkungen
AWS Transform ist nur in einigen verfügbar. AWS-Regionen Eine vollständige Liste der unterstützten Regionen finden Sie unter Unterstützte Regionen für AWS Transform.
Es gibt ein Servicekontingent für Mainframe-Transformationsfunktionen in AWS Transform. Weitere Informationen finden Sie unter Kontingente für AWS Transform.
Um an einem gemeinsamen Arbeitsbereich zusammenzuarbeiten, müssen alle Benutzer registrierte Benutzer derselben Instanz sein AWS IAM Identity Center , die mit Ihrer Instanz der AWS Transform Webanwendung verknüpft ist.
Der Amazon Simple Storage Service (Amazon S3) -Bucket AWS Transform muss sich in derselben AWS-Konto Region befinden.
Architektur
Das folgende Diagramm zeigt die end-to-end Modernisierung der Legacy-Anwendung und deren Bereitstellung für AWS Cloud. Anwendungs- und Datenbankanmeldedaten werden in gespeichert AWS Secrets Manager, und Amazon CloudWatch bietet Überwachungs- und Protokollierungsfunktionen.
Das Diagramm zeigt den folgenden Workflow:
Durch authentifiziert AWS IAM Identity Center sich der Benutzer und greift auf den zu. AWS Transform AWS-Konto
Der Benutzer lädt den COBOL-Mainframe-Code in den Amazon S3 S3-Bucket hoch und initiiert die Transformation in. AWS Transform
AWS Transform modernisiert den COBOL-Code in Cloud-nativen Java-Code und speichert den modernisierten Code im Amazon S3 S3-Bucket.
Terraform erstellt die AWS Infrastruktur für die Bereitstellung der modernisierten Anwendung, einschließlich eines Application Load Balancer, einer Amazon Elastic Compute Cloud (Amazon EC2) -Instance und einer Amazon Relational Database Service (Amazon RDS) -Datenbank. Terraform stellt den modernisierten Code auf der Amazon-Instance bereit. EC2
Die VSAM-Dateien werden auf Amazon hochgeladen EC2 und von Amazon in die Amazon EC2 RDS-Datenbank migriert.
Tools
AWS-Services
Amazon Elastic Compute Cloud (Amazon EC2) bietet skalierbare Rechenkapazität in der AWS Cloud. Sie können so viele virtuelle Server wie nötig nutzen und sie schnell nach oben oder unten skalieren. In diesem Muster werden SQL Server-Failover-Cluster-Instances auf EC2 Amazon-Instances installiert.
AWS IAM Identity Centerhilft Ihnen dabei, den Single Sign-On-Zugriff (SSO) auf Ihre AWS-Konten und Cloud-Anwendungen zentral zu verwalten.
Amazon Relational Database Service (Amazon RDS) unterstützt Sie bei der Einrichtung, dem Betrieb und der Skalierung einer relationalen Datenbank in der. AWS Cloud
Mit AWS Secrets Manager können Sie fest codierte Anmeldeinformationen im Code (einschließlich Passwörter) durch einen API-Aufruf an Secrets Manager ersetzen und das Geheimnis programmgesteuert abrufen.
Amazon Simple Storage Service (Amazon S3) ist ein cloudbasierter Objektspeicherservice, der Sie beim Speichern, Schützen und Abrufen beliebiger Datenmengen unterstützt.
AWS Transformverwendet agentische KI, um Ihnen zu helfen, die Modernisierung älterer Workloads wie .NET, Mainframe und Workloads zu beschleunigen. VMware
Andere Tools
Apache Maven ist ein Open-Source-Software-Projektmanagement- und Build-Automatisierungstool für Java-Projekte.
Apache Tomcat ist ein Open-Source-Servlet-Container und Webserver für Java-Code.
HashiCorp Terraform ist ein IaC-Tool (Infrastructure as Code), mit dem Sie mithilfe von Code Cloud-Infrastruktur und -Ressourcen bereitstellen und verwalten können.
Spring Boot ist ein Open-Source-Framework, das auf dem Spring Framework in Java aufbaut.
Code-Repository
Der Code für dieses Muster ist im GitHub Mainframe Transformation E2E-Repository verfügbar. Dieses Muster verwendet die AWS CardDemoOpen-Source-Mainframe-Anwendung als Beispielanwendung.
Bewährte Methoden
Weisen Sie den vollen Besitz von Code und Ressourcen zu, die für die Migration vorgesehen sind.
Entwickeln und testen Sie einen Machbarkeitsnachweis, bevor Sie auf eine vollständige Migration skalieren.
Sicheres Engagement aller Beteiligten.
Richten Sie klare Kommunikationskanäle ein.
Definieren und dokumentieren Sie die Mindestanforderungen für lebensfähige Produkte (MVP).
Legen Sie klare Erfolgskriterien fest.
Epen
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Erstellen Sie einen Bucket. | Erstellen Sie einen Amazon S3 S3-Bucket in derselben AWS-Konto und Region, in der AWS Transform es aktiviert ist. Sie verwenden diesen Bucket, um den Mainframe-Anwendungscode, Daten und zusätzliche Skripts zu speichern, die für die Erstellung und Ausführung der Anwendung erforderlich sind. AWS Transform verwendet diesen Bucket, um den umgestalteten Code und andere mit der Transformation verknüpfte Dateien zu speichern. Anweisungen finden Sie in der Amazon S3 S3-Dokumentation unter Bucket erstellen. | Allgemein AWS, AWS-Administrator |
Legen Sie die CORS-Berechtigungen für den Bucket fest. | Wenn Sie Ihren Bucket für AWS Transform den Zugriff einrichten, müssen Sie Cross-Origin Resource Sharing (CORS) für den Bucket konfigurieren. Wenn dies nicht korrekt eingerichtet ist, können Sie möglicherweise die Funktionen zum Inline-Anzeigen oder zum Dateivergleich von nicht verwenden. AWS Transform Anweisungen zur Konfiguration von CORS für einen Bucket finden Sie unter Using Cross-Origin Resource Sharing im Amazon S3 S3-Bucket. Informationen zur Richtlinie finden Sie in der Dokumentation unter CORS-Berechtigungen für den S3-Bucket. AWS Transform | Allgemein AWS, AWS-Administrator |
Bereiten Sie den Beispielcode für die Mainframe-Anwendung vor. | Geben Sie den folgenden Befehl ein, um das CardDemoRepository auf Ihre lokale Workstation zu klonen: git clone https://github.com/aws-samples/aws-mainframe-modernization-carddemo.git
Komprimieren Sie den aws-mainframe-modernization-carddemo Ordner in eine ZIP-Datei. Laden Sie die ZIP-Datei in den Amazon S3 S3-Bucket hoch, den Sie erstellt haben. Anweisungen finden Sie unter Objekte hochladen in der Amazon S3 S3-Dokumentation.
| Allgemein AWS, App-Entwickler |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Richten Sie den AWS Transform Job ein. | Greifen Sie auf die AWS Transform Webanwendung zu, indem Sie sich mit Ihren Anmeldeinformationen anmelden. Erstellen Sie einen neuen Workspace, indem Sie den Anweisungen unter Workspace einrichten in der AWS Transform Dokumentation folgen. Wähle auf deiner Workspace-Landingpage die Option Frage, ob du einen Job erstellen AWS Transform möchtest. Wählen Sie als Nächstes Mainframe-Modernisierung als Auftragstyp aus. Geben Sie im Chat-Fenster Transform Code to Java ein. Prüfen Sie den vorgeschlagenen Jobtyp, den Namen und das Ziel. Geben Sie zur Bestätigung Ja ein. Wählen Sie Job erstellen aus.
| App-Entwickler, App-Besitzer |
Richten Sie einen Connector ein. | Richten Sie einen Connector mit dem Amazon S3 S3-Bucket ein, den Sie erstellt haben. Anweisungen finden Sie in der AWS Transform Dokumentation unter Einen Connector einrichten. Wenn Sie dazu aufgefordert werden, geben Sie den Pfad für die aws-mainframe-modernization-carddemo ZIP-Datei im Amazon S3 S3-Bucket ein. Warten Sie, bis die Analyse abgeschlossen ist.
| App-Entwickler, App-Besitzer |
Transformieren Sie den Code. | Überprüfen Sie die Ergebnisse der Codeanalyse gemäß den Anweisungen unter Code analysieren in der AWS Transform Dokumentation. Refaktorieren Sie den Mainframe-Code gemäß den Anweisungen unter Code umgestalten in der Dokumentation. AWS Transform Für die CardDemo Mainframe-Beispielanwendung können Sie die Standardeinstellungen akzeptieren. Warten Sie, bis das Refactoring abgeschlossen ist. Wählen Sie Ergebnisse anzeigen, um den Pfad für den umgestalteten Code im Amazon S3 S3-Bucket zu sehen. Notieren Sie sich diesen Dateipfad. Sie benötigen diese zu einem späteren Zeitpunkt.
| App-Entwickler, App-Besitzer |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Aktualisieren Sie die Vorlagen. | Geben Sie den folgenden Befehl ein, um das Mainframe Transformation E2E-Repository auf Ihre lokale Workstation zu klonen: git clone https://github.com/aws-samples/sample-mainframe-transformation-e2e.git
Geben Sie den folgenden Befehl ein, um Ihre aktuelle öffentliche IP-Adresse abzurufen: curl checkip.amazonaws.com
Geben Sie den folgenden Befehl ein, um zum Infra-Verzeichnis zu navigieren: cd mainframe-transformation-e2e/infra
Öffnen Sie die variables.tf Datei. YOUR_IP_ADDRESS_HEREErsetzen Sie es durch Ihre IP-Adresse.
Wenn Sie eine öffentlich gehostete Zone haben, gehen Sie wie folgt vor: hosted_zone_nameErsetzen Sie es durch den Namen Ihrer gehosteten Zone.
Setzen Sie hosted_zone_enabled auf true.
Wenn Sie keine öffentlich gehostete Zone haben, gehen Sie wie folgt vor: Geben Sie die folgenden Befehle ein, um ein selbstsigniertes Zertifikat zu generieren: openssl genrsa 2048 > my-private-key.pem
openssl req -new -x509 -nodes -sha256 -days 365 -key my-private-key.pem -outform PEM -out my-certificate.pem
Geben Sie den folgenden Befehl ein, um das Zertifikat in AWS Certificate Manager (ACM) zu importieren: aws acm import-certificate \
--certificate fileb://my-certificate.pem \
--private-key fileb://my-private-key.pem
Die Ausgabe dieses Befehls enthält den Amazon-Ressourcennamen (ARN) des importierten Zertifikats. self_signed_cert_arnErsetzen Sie es durch den ARN Ihres Zertifikats.
Setzen Sie hosted_zone_enabled auf false.
Wechseln aws_region Sie zur Zielregion. Der Standardwert ist us-east-1. Speichern und schließen Sie die Datei variables.tf.
| Allgemein AWS, AWS-Administrator |
Stellen Sie die Infrastruktur bereit. | Geben Sie den folgenden Befehl ein, um Terraform zu initialisieren: terraform init
Geben Sie den folgenden Befehl ein, um einen Ausführungsplan zu generieren: terraform plan
Überprüfen Sie den Plan und validieren Sie die Ressourcen und Infrastrukturkomponenten, die erstellt werden sollen. Geben Sie den folgenden Befehl ein, um die Infrastruktur bereitzustellen: terraform apply
Wenn Sie dazu aufgefordert werden, geben Sie Ja ein, um die Bereitstellung zu bestätigen. Warten Sie, bis die Bereitstellung abgeschlossen ist.
| Terraform |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Installieren Sie die erforderliche Software. | Connect zu Ihrer EC2 Amazon-Instance her, indem Sie AWS Systems Manager Session Manager Geben Sie den folgenden Befehl ein, um zum Root-Benutzer zu wechseln: sudo su -
Geben Sie den folgenden Befehl ein, um zum Verzeichnis scripts zu navigieren: cd /opt/scripts
Überprüfen Sie das Skript install_software.sh. Dieses Skript installiert Java 17, Apache Maven und Apache Tomcat 10.0.23. Aktualisieren Sie die Skripts nach Bedarf für Ihren Anwendungsfall. Geben Sie den folgenden Befehl ein, um das Skript ausführbar zu machen: chmod +x install_software.sh
Geben Sie den folgenden Befehl ein, um das Skript auszuführen: ./install_software.sh
| App-Entwickler, Migrationsingenieur |
Überprüfen Sie die Softwareinstallation. | Geben Sie den folgenden Befehl ein, um den Tomcat-Server zu starten: /opt/tomcat/apache-tomcat-10.0.23/bin/startup.sh
Geben Sie den folgenden Befehl ein, um die Antwort des Webservers zu überprüfen: curl http://localhost:8080
Die Ausgabe sollte bestätigen, dass Tomcat eine HTML-Seite bereitstellt.
| App-Entwickler, Migrationsingenieur |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Laden Sie den generierten Code herunter und extrahieren Sie ihn. | Geben Sie den folgenden Befehl ein, um das Skript download_and_extract.sh ausführbar zu machen. Dieses Skript lädt den umgestalteten Code und die Gapwalk-Laufzeitbibliothek herunter, die im Amazon S3 S3-Bucket gespeichert sind: chmod +x /opt/scripts/download_and_extract.sh
Geben Sie den folgenden Befehl ein, um das -Skript auszuführen. <file_path>Ersetzen Sie durch den Pfad zur Datei generated.zip in Ihrem Amazon S3 S3-Bucket: ./download_and_extract.sh <file_path>
Der Dateipfad ist normalerweises3://<bucket-name>/transform_output/<aws_transform_job_id>/codetransformation/generated.zip. Geben Sie den folgenden Befehl ein, um in den shared Ordner zu navigieren: cd /opt/runtime/velocity/shared
Geben Sie den folgenden Befehl ein, um deploy-velocity-runtimedas.sh-Skript zu kopieren: cp /opt/scripts/deploy-velocity-runtime.sh .
Geben Sie den folgenden Befehl ein, um das kopierte Skript ausführbar zu machen: chmod +x deploy-velocity-runtime.sh
Geben Sie den folgenden Befehl ein, um das -Skript auszuführen. Dieses Skript kopiert alle erforderlichen Abhängigkeiten des Web Application Archive (WAR), die in den POM-Dateien (Project Object Model) vorhanden sind, in den Repository-Ordner: ./deploy-velocity-runtime.sh
Überprüfen Sie die erfolgreiche Ausführung, indem Sie überprüfen, ob keine Fehler vorliegen und ob die erforderlichen WAR-Abhängigkeiten in Ihrem lokalen Maven-Repository installiert sind.
| App-Entwickler, Migrationsingenieur |
Erstellen Sie die modernisierte Anwendung. | Geben Sie den folgenden Befehl ein, um zum app-pom Projektverzeichnis zu navigieren: cd /opt/codebase/app-pom/
Geben Sie den folgenden Befehl ein, um Maven zu installieren: mvn clean install
Warten Sie, bis die Installation und der Build abgeschlossen sind. Wenn Sie diesen Befehl für die CardDemo Anwendung ausführen, werden möglicherweise Warnmeldungen für das app-web Projekt angezeigt. Sie können diese Warnungen bedenkenlos ignorieren. Bestätigen Sie nach erfolgreichem Abschluss des Builds das Vorhandensein von app-service/target/app-service-1.0.0.war undapp-web/target/app-web-1.0.0.war. Starten Sie den Tomcat-Server zu diesem Zeitpunkt nicht neu. Dies würde aufgrund des Fehlens der erforderlichen Datenbanken zu Fehlern führen. Sie müssen die Datenbank einrichten, bevor Sie den Server neu starten können.
| App-Entwickler, Migrationsingenieur |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Erstellen Sie die Datenbank und die JICS-Schemas. | Geben Sie den folgenden Befehl ein, um den csd commands Ordner umzubenennen. csd_commands Dadurch werden die Leerzeichen aus dem Ordnernamen entfernt: mv /opt/codebase/extra/csd\ commands/ /opt/codebase/extra/csd_commands
Geben Sie den folgenden Befehl ein, um in das scripts Verzeichnis zu navigieren: cd /opt/scripts
Geben Sie den folgenden Befehl ein, um das Datenbankmigrationsskript ausführbar zu machen: chmod +x database_migration_setup.sh
Geben Sie die folgenden Befehle ein, um die folgenden Variablen als Parameter zu konfigurieren: RDS_ENDPOINT=<database_endpoint>
SECRET_NAME=<secret_name>
JICS_SQL_SCRIPT_DIR=/opt/runtime/velocity/jics/sql/jics.sql
INIT_JICS_SQL_SCRIPT_DIR=/opt/codebase/extra/csd_commands/sql/aws-mainframe-modernization-carddemo-main/app/csd/initJics.sql
Wobei gilt: <database_endpoint>ist der Endpunkt der Amazon RDS-Datenbank, die Sie über Terraform bereitgestellt haben.
<secret_name>ist der Name des AWS Secrets Manager Secrets, das Sie über Terraform bereitgestellt haben.
Geben Sie den folgenden Befehl ein, um das Datenbankmigrationsskript auszuführen: ./database_migration_setup.sh $RDS_ENDPOINT $SECRET_NAME $JICS_SQL_SCRIPT_DIR $INIT_JICS_SQL_SCRIPT_DIR
Geben Sie den folgenden Befehl ein, um von Ihrer EC2 Amazon-Instance aus eine Verbindung zur Datenbank herzustellen: psql -h <Your Amazon RDS Endpoint> -U foo -p 5432 postgres
Wenn Sie dazu aufgefordert werden, geben Sie Ihre Datenbankanmeldedaten ein.
| App-Entwickler, Migrationsingenieur |
Validieren Sie die Datenbankerstellung. | Geben Sie den folgenden Befehl ein, um alle Datenbanken anzuzeigen: \l
Geben Sie den folgenden Befehl ein, um zur jics Datenbank zu wechseln: \c jics
Geben Sie den folgenden Befehl ein, um eine Liste der erstellten Tabellen zu überprüfen: \dt
| App-Entwickler, Migrationsingenieur |
Migrieren Sie Daten in die JICS-Datenbank. | Geben Sie den folgenden Befehl ein, um das Skript execute_listcat_sql.sh ausführbar zu machen: chmod +x execute_listcat_sql.sh
Geben Sie den folgenden Befehl ein, um die PATH_TO_LISTCAT_SQL_FILES Variable zu konfigurieren. Dabei handelt es sich um das Verzeichnis, das Ihre LISTCAT-SQL-Dateien enthält: PATH_TO_LISTCAT_SQL_FILES=/opt/codebase/extra/listcat/sql/cluster/aws-mainframe-modernization-carddemo-main/app/catlg
Stellen Sie sicherRDS_ENDPOINT, dass die PATH_TO_LISTCAT_SQL_FILES VariablenSECRET_NAME, und gemäß den vorherigen Anweisungen richtig gesetzt sind. Geben Sie den folgenden Befehl ein, um das Skript execute_listcat_sql.sh auszuführen: ./execute_listcat_sql.sh $RDS_ENDPOINT $SECRET_NAME $PATH_TO_LISTCAT_SQL_FILES
Dieses Skript aktualisiert die Eigenschaften der VSAM-Datei in der JICS-Datenbank und führt die erforderlichen Abfragen aus, um die Datenbank zu ändern.
| App-Entwickler, Migrationsingenieur |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Installieren Sie die modernisierte Anwendung auf der EC2 Amazon-Instance. | Geben Sie den folgenden Befehl ein, um das Skript application_installer.sh ausführbar zu machen: chmod +x /opt/scripts/application_installer.sh
Geben Sie die folgenden Befehle ein, um die folgenden Variablen als Parameter zu konfigurieren: RDS_ENDPOINT=<database_endpoint>
SECRET_NAME=<secret_name>
AIX_JSON_FILE_PATH=/opt/codebase/extra/csd_commands/json/aws-mainframe-modernization-carddemo-main/jicsFileAix.json
LISTCAT_JSON_FILES_DIR=/opt/codebase/extra/listcat/json/cluster/default/aws-mainframe-modernization-carddemo-main/app/catlg
S3_PATH_FOR_EBCDIC_DATA_FILES=s3://<bucket_name>/transform-output/<job_id>/inputs/aws-mainframe-modernization-carddemo-main/app/data/EBCDIC
Wobei gilt: <database_endpoint>ist der Endpunkt der Amazon RDS-Datenbank, die Sie über Terraform bereitgestellt haben.
<secret_name>ist der Name des AWS Secrets Manager Secrets, das Sie über Terraform bereitgestellt haben.
<bucket_name>ist der Name des Amazon S3 S3-Buckets, der die modernisierte Anwendung enthält.
<job_id>ist die ID des AWS Transform Jobs.
Geben Sie den folgenden Befehl ein, um das Skript application_installer.sh auszuführen: ./application_installer.sh $RDS_ENDPOINT $SECRET_NAME $AIX_JSON_FILE_PATH $LISTCAT_JSON_FILES_DIR $S3_PATH_FOR_EBCDIC_DATA_FILES
Ändern /opt/tomcat/apache-tomcat-10.0.23/workingdir/config Sie im Ordner in der application-utility-pgmYML-Datei den Kodierungsparameter wie folgt: encoding : CP1047
Wenn Sie Anwendungen mithilfe von AWS Blu Age AWS Transform automatisch umgestalten, konfigurieren Sie die Anwendung und ihre Laufzeitumgebung mithilfe von YAML-Dateien. Sie können beispielsweise die Protokollierung in der Datei application-main.yml für die Anwendung konfigurieren. Weitere Informationen zu den verfügbaren Eigenschaften finden Sie unter Eigenschaften für Blu Age Runtime aktivieren. AWS
| App-Entwickler, Cloud-Architekt |
Starten Sie den Tomcat-Server neu. | Geben Sie den folgenden Befehl ein, um in das Arbeitsverzeichnis zu navigieren: cd /opt/tomcat/apache-tomcat-10.0.23/workingdir
Geben Sie die folgenden Befehle ein, um den Tomcat-Server zu beenden und zu starten: /opt/tomcat/apache-tomcat-10.0.23/bin/shutdown.sh
/opt/tomcat/apache-tomcat-10.0.23/bin/startup.sh
Geben Sie den folgenden Befehl ein, um die Startprotokolle des Tomcat-Dienstes zu überwachen: tail -f /opt/tomcat/apache-tomcat-10.0.23/logs/catalina.out
| App-Entwickler, Cloud-Architekt |
Migrieren Sie den VSAM-Datensatz. | Öffnen Sie die EC2 Amazon-Konsole. Klicken Sie im Navigationsbereich auf Load balancers (Load Balancer). Wählen Sie den Load Balancer aus, der über Terraform erstellt wurde. Suchen Sie den DNS-Namen (Domain Name System) Ihres Application Load Balancer, z. B. application-load-balancer-<id>.<region>.elb.amazonaws.com Navigieren Sie in Ihrem Browser zuhttp://<dns_name>/gapwalk-application/scripts/data-load, wo <dns_name> sich der DSN-Name des Application Load Balancer befindet. Dadurch wird das Datenladeskript gestartet. Warten Sie, bis das Skript abgeschlossen ist. Wenn Sie fertig sind, zeigt der Browser FERTIG an. Öffnen Sie auf der EC2 Amazon-Instance ein neues Terminal. Geben Sie den folgenden Befehl ein, um eine Verbindung zur Amazon RDS-Datenbank herzustellen, und <database_endpoint> ersetzen Sie ihn durch Ihren Wert: psql -h <database_endpoint> -U foo -p 5432 postgres
Wenn Sie dazu aufgefordert werden, geben Sie Ihre Anmeldeinformationen ein, um eine Verbindung zur Datenbank herzustellen. Geben Sie den folgenden Befehl ein, um alle Datenbanken anzuzeigen: \l
Geben Sie den folgenden Befehl ein, um zur bluesam Datenbank zu wechseln: \c bluesam
Geben Sie den folgenden Befehl ein, um eine Liste der erstellten Tabellen zu überprüfen: \dt
Geben Sie den folgenden Befehl ein, um das Laden der Daten zu überprüfen: SELECT * FROM public.aws_m2_carddemo_usrsec_vsam_ksds;
In der Ausgabe sollten 10 zurückgegebene Datensätze angezeigt werden.
| App-Entwickler, Migrationsingenieur |
Aktualisieren Sie die Parameter in den Groovy-Skripten. | Geben Sie den folgenden Befehl ein, um in das Skriptverzeichnis zu navigieren: cd /opt/tomcat/apache-tomcat-10.0.23/webapps/workingdir/scripts
Aktualisieren Sie in allen Groovy-Dateien, die Verweise auf Flatfiles enthalten, die folgenden Dateikonfigurationen: Lokaler Dateipfad — Der Pfad zur Flat-Datei im lokalen Verzeichnis Ihrer EC2 Amazon-Instance Dateisystemtyp — Das Dateisystem, das die Flatfiles enthält Datensatzgröße — Die Größe der Flat-Datei
Als Referenz sehen Sie sich das Beispielskript dusrsecj.jcl.Groovy im Code-Repository an. Speichern und schließen Sie die Dateien.
| App-Developer |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Testen Sie die modernisierte Anwendung. | Greifen Sie über den Application Load Balancer (http://<your-load-balancer-dns>) oder über die gehostete Zone (https://myhostedzone.dev/) auf die Online-Anwendung zu. Geben CC00 Sie für die Transaktions-ID ein. Geben Sie für den Benutzernamen einUSER0001. Geben Sie für das Passwort einPASSWORD. Nach erfolgreicher Anmeldung wird das Hauptmenü angezeigt.
| App-Entwickler, Testingenieur |
Überprüfen Sie die Batch-Skripte. | Greifen Sie entweder über den Application Load Balancer (http://<your-load-balancer-dns>/gapwalk-application/scripts) oder über die gehostete Zone (https://myhostedzone.dev/gapwalk-application/scripts) auf die Skriptschnittstelle zu. Wählen Sie ein auszuführendes Skript aus, z. B. das Skript dusrsecj.jcl.Groovy. Stellen Sie sicher, dass das Skript erfolgreich ausgeführt wird. Im Folgenden finden Sie eine Beispielausgabe nach erfolgreicher Ausführung. { "exitCode": 0, "stepName": "STEP03", "program": "IDCAMS", "status": "Succeeded" }
| App-Entwickler, Testingenieur |
| Aufgabe | Beschreibung | Erforderliche Fähigkeiten |
|---|
Bereiten Sie sich darauf vor, die Infrastruktur zu löschen. | Geben Sie den folgenden Befehl ein, um den Löschschutz von der Amazon RDS-Instance zu entfernen: aws rds modify-db-instance \
--db-instance-identifier <your-db-instance-name> \
--no-deletion-protection \
--apply-immediately
Geben Sie den folgenden Befehl ein, um den Löschschutz aus dem Application Load Balancer zu entfernen: aws elbv2 modify-load-balancer-attributes \
--load-balancer-arn <your-load-balancer-arn> \
--attributes Key=deletion_protection.enabled,Value=false
Geben Sie die folgenden Befehle ein, um den Inhalt der Amazon S3 S3-Buckets zu löschen: ACCOUNT_NUMBER=$(aws sts get-caller-identity --query Account --output text)
aws s3 rm s3://mf-carddemo-$ACCOUNT_NUMBER --recursive
aws s3 rm s3://mf-carddemo-logs-$ACCOUNT_NUMBER --recursive
| Allgemeines AWS |
Löschen Sie die Infrastruktur. | Durch diese Schritte werden Ihre Ressourcen dauerhaft gelöscht. Stellen Sie sicher, dass Sie alle wichtigen Daten gesichert haben, bevor Sie fortfahren. Geben Sie den folgenden Befehl ein, um in den infra Ordner zu navigieren: cd /mainframe-transformation-e2e/infra
Geben Sie den folgenden Befehl ein, um die Infrastruktur zu löschen: terraform destroy --auto-approve
| Allgemeines AWS |
Fehlerbehebung
| Problem | Lösung |
|---|
Terraform-Authentifizierung | Stellen Sie sicher, dass die AWS Anmeldeinformationen richtig konfiguriert sind. Stellen Sie sicher, dass Sie das richtige AWS Profil ausgewählt haben. Vergewissern Sie sich, dass Sie über die erforderlichen Berechtigungen verfügen.
|
Fehler im Zusammenhang mit Tomcat | Überprüfen Sie catalina.out auf Ausnahmen. /opt/tomcat/apache-tomcat-10.0.23/logs Geben Sie den folgenden Befehl ein, um den Eigentümer des Tomcat-Ordners auf den Tomcat-Benutzer zu übertragen: chown -R tomcat:tomcat /opt/tomcat/*
|
URL-Name wird nicht geladen | Stellen Sie sicher, dass die Application Load Balancer Balancer-Sicherheitsgruppe Ihre IP-Adresse in der Regel für eingehenden Datenverkehr als Quelle hat. |
Authentifizierungsproblem im Tomcat-Protokoll | Vergewissern Sie sich, dass das geheime Datenbankkennwort in AWS Secrets Manager und das Passwort in server.xml übereinstimmen. |
Zugehörige Ressourcen
AWS Präskriptive Leitlinien
AWS Servicedokumentation
AWS Blog-Beiträge