Usa contenedores en Amazon EC2 para Amazon ECS y Amazon EKS - AWS Modernización de mainframe

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Usa contenedores en Amazon EC2 para Amazon ECS y Amazon EKS

En este tema se explica cómo configurar e implementar la aplicación de PlanetsDemo ejemplo utilizando AWS Blu Age Runtime (no gestionado) en Amazon EC2 como contenedor.

Requisitos previos

Antes de comenzar, asegúrese de que cumple los requisitos previos que se indican a continuación:

Configuración

Para configurar la aplicación de PlanetsDemo muestra, complete los siguientes pasos.

  1. Prepare un Dockerfile para crear su imagen personalizada a partir de los binarios de tiempo de ejecución proporcionados y los binarios del servidor Apache Tomcat. Consulta el siguiente ejemplo de Dockerfile. El objetivo es instalar Apache Tomcat 10, seguido de AWS Blu Age Runtime (en AmazonEC2), extraído de la raíz del directorio de instalación de Apache Tomcat 10, y luego instalar la aplicación modernizada de ejemplo denominada. PlanetsDemo Los install-app.sh scripts install-gapwalk.sh y scripts que se utilizan en este ejemplo de Dockerfile aparecen después del Dockerfile.

    FROM --platform=linux/x86_64 amazonlinux:2 RUN mkdir -p /workdir/apps WORKDIR /workdir COPY install-gapwalk.sh . COPY install-app.sh . RUN chmod +x install-gapwalk.sh RUN chmod +x install-app.sh # Install Java and AWS CLI v2-y RUN yum install sudo java-17-amazon-corretto unzip tar -y RUN sudo yum remove awscli -y RUN curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip" RUN sudo unzip awscliv2.zip RUN sudo ./aws/install #·Installation dir RUN mkdir -p /usr/local/velocity/installation/gapwalk # Copy PlanetsDemo archive to a dedicated apps dir COPY PlanetsDemo-v1.zip /workdir/apps/ # Copy resources (tomcat, blu age runtime) to installation dir COPY tomcat.tar.gz /usr/local/velocity/installation/tomcat.tar.gz COPY aws-bluage-runtime-4.x.x.tar.gz /usr/local/velocity/installation/gapwalk/gapwalk.tar.gz # run relevant installation scripts RUN ./install-gapwalk.sh RUN ./install-app.sh EXPOSE 8080 EXPOSE 8081 # ... WORKDIR /bluage/tomcat.gapwalk/velocity # Run Command to start Tomcat server CMD ["sh", "-c", "sudo bin/catalina.sh run"]

    A continuación se muestra el contenido de. install-gapwalk.sh

    #!/bin/sh # Vars TEMP_DIR=/bluage/tomcat.gapwalk/temp # Install echo "Installing Gapwalk and Tomcat" sudo rm -rf /bluage mkdir -p ${TEMP_DIR} # Copy Blu Age runtime and tomcat archives to temporary extraction dir sudo cp /usr/local/velocity/installation/gapwalk/gapwalk-bluage.tar.gz ${TEMP_DIR} sudo cp /usr/local/velocity/installation/tomcat.tar.gz ${TEMP_DIR} # Create velocity dir mkdir -p /bluage/tomcat.gapwalk/velocity # Extract tomcat files tar -xvf ${TEMP_DIR}/tomcat.tar.gz -C ${TEMP_DIR} # Copy all tomcat files to velocity dir cp -fr ${TEMP_DIR}/apache-tomcat-10.x.x/* /bluage/tomcat.gapwalk/velocity # Remove default webapps of Tomcat rm -f /bluage/tomcat.gapwalk/velocity/webapps/* # Extract Blu Age runtime at velocity dir tar -xvf ${TEMP_DIR}/gapwalk-bluage.tar.gz -C /bluage/tomcat.gapwalk # Remove temporary extraction dir sudo rm -rf ${TEMP_DIR}

    Los siguientes son los contenidos deinstall-app.sh.

    #!/bin/sh APP_DIR=/workdir/apps TOMCAT_GAPWALK_DIR=/bluage/tomcat.gapwalk unzip ${APP_DIR}/PlanetsDemo-v1.zip -d ${APP_DIR} cp -r ${APP_DIR}/webapps/* ${TOMCAT_GAPWALK_DIR}/velocity/webapps/ cp -r ${APP_DIR}/config/* ${TOMCAT_GAPWALK_DIR}/velocity/config/
  2. Proporcione la información de conexión de la base de datos que creó como parte de los requisitos previos en el siguiente fragmento del application-main.yml archivo, que se encuentra en la carpeta. {TOMCAT_GAPWALK_DIR}/config Para obtener más información, consulte Creación y conexión a un clúster de base de datos Aurora PostgreSQL.

    datasource: jicsDs: driver-class-name : url: username: password: type :
  3. Crea y envía la imagen a tu ECR repositorio de Amazon. Para obtener instrucciones, consulte Cómo insertar una imagen de Docker en la Guía del usuario de Amazon Elastic Container Registry. A continuación, en función de tu situación, crea un EKS pod de Amazon o una definición de ECS tarea de Amazon con tu ECR imagen de Amazon e impleméntala en tu clúster. Por ejemplo, consulte Crear una definición de tarea mediante la consola en la Guía para desarrolladores de Amazon Elastic Container Service e Implementar una aplicación de muestra en la Guía del EKS usuario de Amazon.

Pruebe la aplicación implementada

Para ver un ejemplo de cómo probar la PlanetsDemo aplicación, consultePrueba la PlanetsDemo aplicación.