Implementar IronSecureDoc en AWS con una instancia de contenedor C

This article was translated from English: Does it need improvement?
Translated
View the article in English

Amazon Elastic Container Service (Amazon ECS) es un servicio de gestión de contenedores altamente escalable y rápido que facilita el trabajo, detención y gestión de tus contenedores. Puedes alojar tus contenedores en una infraestructura sin servidor que es gestionada por Amazon ECS al lanzar tus servicios o tareas en AWS Fargate. Para más información sobre Fargate, consulta AWS Fargate for Amazon ECS.

Paso 1: Iniciar sesión en la cuenta de AWS

Inicia sesión en el portal de AWS.

Si no tienes una cuenta de AWS, entonces registra una nueva cuenta de AWS.

Paso 2: Crear una nube privada virtual

Puedes usar Amazon Virtual Private Cloud (Amazon VPC) para lanzar recursos de AWS en una red virtual que hayas definido. Recomendamos encarecidamente que lances tus instancias de contenedor en una VPC.

Si tienes una VPC predeterminada, puedes omitir esta sección y pasar a la siguiente tarea, Crear un grupo de seguridad. Para determinar si tienes una VPC predeterminada, consulta las Plataformas soportadas en la Consola Amazon EC2 en la Guía del usuario de Amazon EC2. De lo contrario, puedes crear una VPC no predeterminada en tu cuenta utilizando los pasos a continuación.

Para información sobre cómo crear una VPC, consulta Crear una VPC solo en la Guía del usuario de Amazon VPC, y usa la siguiente tabla para determinar qué opciones seleccionar.

Opción Value
Recursos a crear Solo VPC
Nombre Opcionalmente, proporciona un nombre para tu VPC
Bloque CIDR IPv4 Entrada manual de CIDR IPv4
El tamaño del bloque CIDR debe tener un tamaño entre /16 y /28
Bloque CIDR IPv6 Sin bloque CIDR IPv6
Tenencia Predeterminado

Para más información sobre Amazon VPC, consulta ¿Qué es Amazon VPC? en la Guía del usuario de Amazon VPC.

Paso 3: Crear un grupo de seguridad

Los grupos de seguridad actúan como un firewall para las instancias de contenedor asociadas, controlando tanto el tráfico entrante como el saliente a nivel de instancia de contenedor. Puedes agregar reglas a un grupo de seguridad que te permitan conectarte a tu instancia de contenedor desde tu dirección IP usando SSH. También puedes agregar reglas que permitan el acceso HTTP y HTTPS entrante y saliente desde cualquier lugar. Agrega cualquier regla para abrir puertos que necesiten tus tareas. Las instancias de contenedor requieren acceso de red externo para comunicarse con el punto final del servicio Amazon ECS.

Para información sobre cómo crear un grupo de seguridad, consulta Crear un grupo de seguridad en la Guía del usuario de Amazon EC2 y utiliza la siguiente tabla para determinar qué opciones seleccionar.

Opción Valor
Región La misma Región en la que creaste tu par de claves
Nombre Un nombre que te sea fácil de recordar, como ecs-instances-default-cluster
VPC La VPC predeterminada (marcada con "(predeterminado)"
Nota
Si su cuenta es compatible con Amazon EC2 Classic, seleccione la VPC que creó en la tarea anterior

Paso 4: Crear un clúster ECS

En la página de inicio del portal de AWS, buscar "ECS" en el cuadro de búsqueda y seleccionar "Elastic Container Service". O abre la consola en https://console.aws.amazon.com/ecs/v2.

Search ECS

Selecciona "Crear clúster".

Create cluster

Ingresa el "Nombre del clúster". Selecciona solo "AWS Fargate (sin servidor)" en la sección de Infraestructura.

Create cluster values

Deja los otros valores como predeterminados, luego selecciona Crear.

Paso 5: Crear una definición de tarea

Después de que el clúster esté creado, selecciona Definiciones de Tarea.

Create task definition

Selecciona "Crear nueva definición de tarea", luego selecciona "Crear nueva definición de tarea".

Create new task definition

En la sección Configuración de definición de tarea, ingresa el valor para Familia de definición de tarea.

Task definition configuration section

En la sección Requisitos de infraestructura, ingresa los siguientes valores para Tipo de lanzamiento, CPU, Memoria, Rol de tarea y Rol de ejecución de tarea.

  • Tipo de lanzamiento: Solo AWS Fargate
  • CPU: 1 vCPU
  • Memoria: 2 GB
  • Rol de tarea: ecsTaskExecutionRole
  • Rol de ejecución de tarea: ecsTaskExecutionRole

Infrastructure requirements

En la sección Contenedor - 1, ingresa los siguientes valores para Nombre, URI de imagen, Puerto de contenedor, Nombre del puerto y Variables de entorno.

  • Nombre: mycontainer
  • URI de imagen: Usa ironsoftwareofficial/ironsecuredoc para la última versión o especifica por etiqueta ironsoftwareofficial/ironsecuredoc:2024.7.1
  • Puerto de contenedor: 8080
  • Nombre del puerto: 8080
  • Agregar variables de entorno:
    • ENVIRONMENT: Production
    • HTTP_PORTS: 8080
    • IronSecureDoc_LicenseKey: YOUR-LICENSE-KEY

Para IronSecureDoc_LicenseKey, no se recomienda agregar directamente en Variables de entorno por seguridad. Se recomienda recuperar el archivo de entorno de un bucket cifrado de Amazon S3, consulta Pasar datos sensibles a un contenedor de Amazon ECS.

Container section

Deja los otros valores como predeterminados, luego selecciona Crear.

Paso 6: Crear un servicio

Regresa a la página de Clústeres > Selecciona tu clúster (IronSecureDoc).

Select your cluster

Selecciona la pestaña "Servicio" > luego selecciona "Crear".

Create service

En la sección Entorno, ingresa los siguientes valores para Opciones de cómputo y Tipo de lanzamiento.

  • Opciones de cómputo: Selecciona Tipo de lanzamiento
  • Tipo de lanzamiento: Selecciona FARGATE

Service environment

En la sección Configuración de despliegue, ingresa los siguientes valores para Tipo de aplicación, Familia, Revisión, Nombre del servicio y Tareas deseadas.

  • Tipo de aplicación: Selecciona Servicio
  • Definición de tarea:
    • Familia: Selecciona la definición de tarea creada ironsecuredoc
    • Revisión: Selecciona la revisión de definición de tarea 1 (LATEST)
  • Nombre del servicio: myservice
  • Tareas deseadas: 1

Service deployment configuration

Por favor ten en cuenta que para la red puede que necesites crear una VPC y un Grupo de seguridad si no existen.

Deja los otros valores como predeterminados, luego selecciona Crear.

Cuando el despliegue comienza, aparece una notificación que indica que el despliegue está en progreso. Se muestra otra notificación cuando el servicio ha sido desplegado.

Ver tu servicio > luego abre la tarea.

Open created task

En Configuración de Tarea, puedes usar la IP Pública para ejecutar un comando curl para verificar si la API está funcionando correctamente, lo cual debería devolver pong.

curl http://18.118.166.206:8080/v1/document-services/ping
curl http://18.118.166.206:8080/v1/document-services/ping
SHELL

Public IP

¡Felicitaciones! Al configurar solo algunas configuraciones, has desplegado una aplicación accesible públicamente en Amazon Elastic Container Service.

Preguntas Frecuentes

¿Cómo puedo configurar AWS para la seguridad de documentos?

Para configurar AWS para la seguridad de documentos, puede implementar instancias de contenedor a través de Amazon ECS. Esto implica crear una nube privada virtual (VPC), configurar un grupo de seguridad y utilizar AWS Fargate para infraestructura sin servidor. IronSecureDoc se puede integrar para garantizar una gestión segura de documentos.

¿Cuál es el propósito de crear una nube privada virtual (VPC) en AWS?

Crear una VPC en AWS le permite lanzar recursos de AWS en una red virtual que está lógicamente aislada. Esta configuración proporciona control sobre su entorno de red y es crucial para gestionar la seguridad de documentos a través de servicios como IronSecureDoc.

¿Por qué es importante configurar un grupo de seguridad para las implementaciones de ECS?

Configurar un grupo de seguridad es vital para controlar el tráfico entrante y saliente a sus instancias de contenedor de ECS. Actúa como un cortafuegos virtual, asegurando que solo el tráfico autorizado llegue a los servicios de IronSecureDoc implementados en AWS.

¿Cómo implemento una instancia de contenedor usando AWS Fargate?

Para implementar una instancia de contenedor usando AWS Fargate, primero debe crear un clúster ECS. Luego, defina una definición de tarea especificando los requisitos como CPU, memoria y configuraciones del contenedor. Finalmente, cree un servicio dentro del clúster ECS para gestionar la implementación de IronSecureDoc.

¿Qué rol juega una definición de tarea en Amazon ECS?

En Amazon ECS, una definición de tarea sirve como un plano de la aplicación. Describe los requisitos para ejecutar sus contenedores, como tipo de lanzamiento, CPU, memoria y definiciones de contenedor. Esto es crucial para implementar aplicaciones como IronSecureDoc.

¿Cómo puedo gestionar las variables de entorno de manera segura en AWS?

Puede gestionar las variables de entorno de forma segura en AWS recuperando datos sensibles, como la clave de licencia de IronSecureDoc, de cubos de Amazon S3 cifrados. Este enfoque ayuda a proteger la información sensible de accesos no autorizados.

¿Cómo puedo verificar la implementación exitosa de mi servicio ECS?

Puede verificar la implementación de su servicio ECS utilizando la IP pública para ejecutar un comando curl. Por ejemplo, ejecutar curl http://:8080/v1/document-services/ping debería devolver 'pong', indicando que el servicio de IronSecureDoc está funcionando correctamente.

¿Necesito crear una nueva VPC y Grupo de Seguridad para cada implementación?

Si no existe un VPC y Grupo de Seguridad predeterminados, debe crearlos para garantizar configuraciones de red y seguridad adecuadas para sus implementaciones de ECS. Esta configuración es esencial para el funcionamiento seguro de aplicaciones como IronSecureDoc.

Curtis Chau
Escritor Técnico

Curtis Chau tiene una licenciatura en Ciencias de la Computación (Carleton University) y se especializa en el desarrollo front-end con experiencia en Node.js, TypeScript, JavaScript y React. Apasionado por crear interfaces de usuario intuitivas y estéticamente agradables, disfruta trabajando con frameworks modernos y creando manuales bien ...

Leer más
¿Listo para empezar?
Version: 2024.10 recién lanzado