Creación de la primera pila de Node.js - AWS OpsWorks

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.

Creación de la primera pila de Node.js

importante

El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

En este ejemplo, se describe cómo se crea una pila de Linux compatible con un servidor de aplicaciones de Node.js y cómo se implementa una aplicación sencilla. La pila consta de los componentes siguientes:

Requisitos previos

Este tutorial parte de los siguientes supuestos:

  • Tienes una AWS cuenta y un conocimiento básico de cómo usar AWS OpsWorks Stacks.

    Si eres nuevo en AWS OpsWorks Stacks o en élAWS, aprende los conceptos básicos completando el tutorial introductorio que se encuentra en. Introducción a las pilas de Linux en Chef 11

  • Entiende los aspectos básicos para implementar una aplicación de Node.js.

    Si es la primera vez que utiliza Node.js, familiarícese con los aspectos básicos siguiendo un tutorial de introducción como Node: puesta en marcha.

  • Ya has creado al menos una pila en la AWS región que piensas usar para este ejemplo.

    Al crear la primera pila en una región, AWS OpsWorks Stacks crea un grupo de seguridad de Amazon Elastic Compute Cloud (AmazonEC2) para cada tipo de capa. Necesita estos grupos de seguridad para crear la instancia de RDS base de datos (DB) de Amazon. Si eres nuevo en AWS OpsWorks Stacks, te recomendamos que utilices para este ejemplo la misma región que utilizaste cuando seguiste el tutorial enIntroducción a las pilas de Linux en Chef 11. Si desea utilizar otra región, cree una nueva pila en la región; la pila no precisa capas ni instancias. En cuanto crees la pila, AWS OpsWorks Stacks añadirá automáticamente un conjunto de grupos de seguridad a la región.

  • Crearás tu pila de forma predeterminada VPC.

    Puedes usar EC2 -Classic para este tutorial, pero algunos de los detalles diferirán ligeramente. Por ejemplo, con EC2 -Classic, se especifica la zona de disponibilidad (AZ) de una instancia en lugar de su subred.

  • Tu IAM usuario tiene permisos de acceso total a Stacks. AWS OpsWorks

    Por motivos de seguridad, recomendamos encarecidamente que no utilice las credenciales raíz de la cuenta en este tutorial. En su lugar, crea un usuario con los permisos de acceso total de AWS OpsWorks Stacks y usa esas credenciales con Stacks. AWS OpsWorks Para obtener más información, consulte Creación de un usuario administrativo de .

Implementación de la aplicación

En este tutorial se utiliza una sencilla aplicación Express que se conecta a la RDS instancia de base de datos de Amazon y muestra las bases de datos de la instancia.

Para implementar la aplicación, cree un directorio llamado nodedb en una ubicación apropiada en la estación de trabajo y agregue los tres archivos siguientes.

El descriptor del paquete

Para crear el descriptor del paquete de la aplicación, añada un archivo llamado package.json con el contenido siguiente al directorio nodedb. package.json es necesario para las aplicaciones Express y debe ubicarse en el directorio raíz de la aplicación.

{ "name": "Nodejs-DB", "description": "Node.js example application", "version": "0.0.1", "dependencies": { "express": "*", "ejs": "*", "mysql": "*" } }

Este ejemplo de package.json es bastante minimalista. Define los atributos name y version necesarios y lista los paquetes dependientes:

  • express hace referencia al paquete Express.

  • ejshace referencia al EJSpaquete, que la aplicación utiliza para insertar texto en un archivo de HTML diseño.

  • mysqlhace referencia al paquete node-mysql, que la aplicación utiliza para conectarse a la RDS instancia.

Para obtener más información acerca de los archivos de descriptores de paquetes, consulte package.json.

El archivo de diseño

Para crear el archivo de diseño de la aplicación, añada un directorio views al directorio nodedb y, a continuación, añada un archivo a views llamado index.html con el siguiente contenido:

<!DOCTYPE html> <html> <head> <title>AWS Opsworks Node.js Example</title> </head> <body> <h1>AWS OpsWorks Node.js Example</h1> <p>Amazon RDS Endpoint: <i><%= hostname %></i></p> <p>User: <i><%= username %></i></p> <p>Password: <i><%= password %></i></p> <p>Port: <i><%= port %></i></p> <p>Database: <i><%= database %></i></p> <p>Connection: <%= connectionerror %></p> <p>Databases: <%= databases %></p> </body> </html>

Para este ejemplo, el archivo de diseño es un HTML documento sencillo que muestra algunos datos de AmazonRDS. Cada elemento <%= ... => representa el valor de una variable que se define en el archivo de código de la aplicación, que vamos a crear a continuación.

El archivo de código

Para crear el archivo de código de la aplicación, agregue un archivo server.js al directorio nodedb con el siguiente contenido.

importante

Con AWS OpsWorks Stacks, el archivo de código principal de una aplicación de Node.js debe tener un nombre server.js y estar ubicado en la carpeta raíz de la aplicación.

var express = require('express'); var mysql = require('mysql'); var dbconfig = require('opsworks'); //[1] Include database connection data var app = express(); var outputString = ""; app.engine('html', require('ejs').renderFile); //[2] Get database connection data app.locals.hostname = dbconfig.db['host']; app.locals.username = dbconfig.db['username']; app.locals.password = dbconfig.db['password']; app.locals.port = dbconfig.db['port']; app.locals.database = dbconfig.db['database']; app.locals.connectionerror = 'successful'; app.locals.databases = ''; //[3] Connect to the Amazon RDS instance var connection = mysql.createConnection({ host: dbconfig.db['host'], user: dbconfig.db['username'], password: dbconfig.db['password'], port: dbconfig.db['port'], database: dbconfig.db['database'] }); connection.connect(function(err) { if (err) { app.locals.connectionerror = err.stack; return; } }); // [4] Query the database connection.query('SHOW DATABASES', function (err, results) { if (err) { app.locals.databases = err.stack; } if (results) { for (var i in results) { outputString = outputString + results[i].Database + ', '; } app.locals.databases = outputString.slice(0, outputString.length-2); } }); connection.end(); app.get('/', function(req, res) { res.render('./index.html'); }); app.use(express.static('public')); //[5] Listen for incoming requests app.listen(process.env.PORT);

En el ejemplo se muestra la información de conexión de la base de datos, se consulta el servidor de bases de datos y se muestran las bases de datos que contiene. Es fácil generalizarlo para interactuar con la base de datos según sea necesario. Las siguientes notas se refieren a los comentarios numerados en el código anterior.

[1] Incluir datos de conexión de la base de datos

Esta declaración require incluye los datos de conexión de la base de datos. Como se describe más adelante, cuando adjuntas una instancia de base de datos a una aplicación, AWS OpsWorks Stacks coloca los datos de conexión en un archivo con un nombre opsworks.js similar al siguiente:

exports.db = { "host":"nodeexample.cdlqlk5uwd0k.us-west-2.rds.amazonaws.com", "database":"nodeexampledb", "port":3306, "username":"opsworksuser", "password":"your_pwd", "reconnect":true, "data_source_provider":"rds", "type":"mysql"}

opsworks.js está en el directorio shared/config de la aplicación, /srv/www/app_shortname/shared/config. Sin embargo, AWS OpsWorks Stacks coloca un enlace simbólico a opsworks.js en el directorio raíz de la aplicación, por lo que puedes incluir el objeto usando solo. require 'opsworks'

[2] Obtener datos de conexión de la base de datos

Este conjunto de instrucciones muestra los datos de conexión de opsworks.js asignando los valores del objeto db a un conjunto de propiedades app.locals, cada una de las cuales se asocia a uno de los elementos <%= ... %> en el archivo index.html. El documento generado sustituye los elementos <%= ... %> con los valores de propiedad correspondientes.

[3] Conéctese a la RDS instancia de Amazon

En este ejemplo se utiliza node-mysql para obtener acceso a la base de datos. Para conectarse a la base de datos, se crea un objeto connection pasando los datos de conexión a createConnection y, a continuación, se llama a connection.connect para establecer la conexión.

[4] Consultar la base de datos

Después de establecer una conexión, en el ejemplo se llama a connection.query para consultar la base de datos. En este ejemplo simplemente se consultan los nombres de las bases de datos del servidor. query devuelve una matriz de objetos results, uno por cada base de datos, con el nombre de la base de datos asignado a la propiedad Database. El ejemplo concatena los nombres y los asigna, app.locals.databases, lo que muestra la lista en la página renderizada. HTML

Para este ejemplo, hay cinco bases de datos, la nodeexampledb base de datos que especificó al crear la RDS instancia y otras cuatro que Amazon crea automáticamenteRDS.

[5] Escucha de solicitudes entrantes

La declaración final escucha las solicitudes entrantes en un puerto especificado. No tiene que especificar un valor de puerto explícitamente. Cuando agregas la aplicación a tu pila, especificas si la aplicación admite HTTP o HTTPS solicita. AWS OpsWorks Luego, Stacks establece la variable de PORT entorno en 80 (HTTP) o 443 (HTTPS), y puedes usar esa variable en tu aplicación.

Es posible escuchar en otros puertos, pero el grupo de seguridad integrado en la capa Node.js App Server, AWSOpsWorks-NodeJS-App-Server, permite el tráfico de usuarios entrante solo a los puertos 80, 443 y 22 (). SSH Para permitir el tráfico de usuario de entrada a otros puertos, cree un grupo de seguridad que tenga las reglas de entrada apropiadas y asígnelo a la capa del servidor de aplicaciones Node.js. No modifique las reglas de entrada editando el grupo de seguridad integrado. Cada vez que crea una pila, AWS OpsWorks Stacks sobrescribe los grupos de seguridad integrados con la configuración estándar, por lo que se perderán todos los cambios que realice.

nota

Puede asociar las variables de entorno personalizadas a su aplicación cuando cree o actualice la aplicación asociada. También puedes transferir datos a tu aplicación mediante una receta personalizada JSON y una receta personalizada. Para obtener más información, consulte Transferir datos a aplicaciones.

Creación del servidor de bases de datos y el balanceador de carga

En este ejemplo, se utilizan el servidor RDS de bases de datos Amazon y las instancias del balanceador de carga de Elastic Load Balancing. Debe crear cada instancia de forma independiente y después incluirla en la pila. En esta sección se describe cómo crear nuevas instancias de bases de datos y de balanceador de carga. También puede utilizar las instancias existentes, pero le recomendamos que lea el procedimiento para garantizar que están correctamente configuradas.

A continuación, se describe cómo crear una RDS instancia de base de datos con una configuración mínima que sea suficiente para este ejemplo. Para obtener más información, consulta la Guía del RDS usuario de Amazon.

Para crear la instancia de RDS base de datos
  1. Abra la consola de .

    Abre la RDSconsola de Amazon y establece la región en US West (Oregon). En el panel de navegación, elija RDSDashboard y, a continuación, seleccione Launch DB Instance.

  2. Especifique el motor de base de datos.

    Elija My SQL Community Edition como motor de base de datos.

  3. Rechace el despliegue Multi-AZ.

    Elija No, this instance... (No, esta instancia...) y, a continuación, elija Next (Siguiente). No lo necesita en este ejemplo.

  4. Configure los ajustes básicos.

    En la página DB Instance Details (Detalles de la instancia de base de datos), especifique las opciones siguientes:

    • DB Instance Class (Clase de instancia de base de datos): db.t2.micro

    • Multi-AZ Deployment (Implementación Multi-AZ): No

    • Allocated Storage (Almacenamiento asignado): 5 GB

    • DB Instance Identifier (Identificador de instancia de base de datos): nodeexample

    • Master Username (Nombre de usuario maestro): opsworksuser

    • Master Password (Contraseña maestra): una contraseña de su elección

    Registre el identificador, el nombre de usuario y la contraseña de la instancia para un uso posterior, acepte la configuración predeterminada para el resto de opciones y elija Next (Siguiente).

  5. Ajuste las opciones de configuración avanzada.

    En la página Configure Advanced Settings (Configurar configuración avanzada), especifique las opciones siguientes:

    • Database Name (Nombre de la base de datos): nodeexampledb

    • Grupo (s) de seguridad de base de datos: AWS- OpsWorks -DB-Master-Server

    nota

    El grupo de seguridad AWS- OpsWorks -DB-master-server permite que solo las instancias de su pila accedan a la base de datos. Si desea acceder directamente a la base de datos, adjunte un grupo de seguridad adicional a la RDS instancia de base de datos con las reglas de entrada adecuadas. Para obtener más información, consulte Amazon RDS Security Groups. También puede controlar el acceso colocando la instancia en unVPC. Para obtener más información, consulte Cómo ejecutar una pila en un VPC.

    Registre el nombre de la base de datos para su uso posterior, acepte los valores predeterminados para el resto de la configuración y elija Launch DB Instance (Lanzar instancia de base de datos).

En el siguiente procedimiento se describe cómo crear un equilibrador de carga Elastic Load Balancing para este ejemplo. Para obtener más información, consulte la Guía del usuario de Elastic Load Balancing.

Para crear el equilibrador de carga
  1. Abre la EC2 consola de Amazon.

    Abre la EC2consola de Amazon y asegúrate de que la región esté configurada como US West (Oregon). En el panel de navegación, elija Load Balancers (Balanceadores de carga) y, a continuación, elija Create Load Balancer (Crear balanceador de carga).

  2. Defina el balanceador de carga.

    En la página Define Load Balancer (Definir balanceador de carga), especifique las opciones siguientes.

    • Nombre: Node-LB

    • Crear LB Inside: mi opción predeterminada VPC

    Acepte los valores predeterminados para el resto de opciones y elija Next (Siguiente).

  3. Asigne los grupos de seguridad.

    En la página Assign Security Groups (Asignar grupos de seguridad), especifique los siguientes grupos:

    • grupo VPC de seguridad predeterminado

    • AWS- OpsWorks -Servidor de aplicaciones NodeJS

    Elija Next (Siguiente). En la página Configure Security Settings (Configurar configuración de seguridad), elija Next (Siguiente). No es necesario un agente de escucha seguro para este ejemplo.

  4. Configure la comprobación de estado.

    En la página Configure Health Check (Configurar comprobación de estado), establezca Ping Path (Ruta del ping) en / y acepte los valores predeterminados para el resto de la configuración. Elija Next (Siguiente). En la página Añadir instancias, seleccione Siguiente EC2. En la página Añadir etiquetas, elija Revisar y crear. AWS OpsWorks Stacks se encarga de añadir EC2 instancias al balanceador de cargas y no necesitarás etiquetas para este ejemplo.

  5. Cree el balanceador de carga.

    En la página Review (Revisar), elija Create (Crear) para crear el balanceador de carga.

Creación de la pila

Ahora tiene todos los componentes necesarios para crear la pila.

Para crear la pila
  1. Inicia sesión en la consola de AWS OpsWorks Stacks.

    Inicie sesión en la consola de AWS OpsWorks Stacks y elija Add Stack (Añadir pila).

  2. Cree la pila.

    Para crear una nueva pila, elija Chef 11 stack (Pila de Chef 11) y, a continuación, especifique la configuración siguiente.

    • NodeStack

    • Región: Oeste de EE. UU. (Oregón)

      Puedes crear una pila en cualquier AWS región, pero te recomendamos el uso de US West (Oregón) para los tutoriales.

    Elija Add Stack (Añadir pila). Para obtener más información sobre los valores de configuración, consulte Crear una pila nueva.

  3. Agregue una capa del servidor de aplicaciones Node.js con un equilibrador de carga adjunto.

    En la NodeStackpágina, elija Añadir una capa y, a continuación, especifique los siguientes ajustes:

    • Tipo de capa: Servidor de aplicaciones Node.js

    • Equilibrador de carga elástica: Node-LB

    Acepte los valores predeterminados para el resto de la configuración y después elija Add Layer (Añadir capa).

  4. Añada instancias a la capa e inícielas.

    En el panel de navegación, elija Instances (Instancias) y, a continuación, añada dos instancias a la capa del servidor de aplicaciones de Rails, tal y como se indica a continuación.

    1. En el Servidor de aplicaciones Node.js, elija Agregar instancia.

      Establezca Size (Tamaño) en t2.micro, acepte los valores predeterminados para el resto de la configuración y después elija Add Instance (Añadir instancia).

    2. Elija +Instance (+Instancia) y, a continuación, añada una segunda instancia t2.micro a la capa en otra subred.

      Esto coloca la instancia en una zona de disponibilidad diferente.

    3. Elija Add Instance (Añadir instancia).

    4. Para iniciar ambas instancias, elija Start All Instances (Iniciar todas las instancias).

    Ha asignado un equilibrador de carga Elastic Load Balancing a esta capa. Cuando una instancia entra o sale del estado en línea, AWS OpsWorks Stacks registra o anula el registro automáticamente de la instancia en el balanceador de cargas.

    nota

    Para una pila de producción, te recomendamos que distribuyas las instancias del servidor de aplicaciones entre varias. AZs Si los usuarios no pueden conectarse a una zona de disponibilidad, el balanceador de carga enviará el tráfico entrante a instancias de las demás zonas y el sitio seguirá funcionando.

  5. Registre la RDS instancia de base de datos en la pila.

    En el panel de navegación, elija Recursos y registre la RDS instancia de base de datos con la pila, de la siguiente manera.

    1. Seleccione la RDSpestaña y, a continuación, elija Mostrar RDS instancias de base de datos no registradas.

    2. Elija la instancia nodeexampledb y, a continuación, especifique la configuración siguiente:

      • Usuario: El nombre de usuario maestro que especificó cuando creó la instancia para este ejemplo. opsworksuser.

      • Contraseña: Es la contraseña maestra especificada al crear la instancia de RDS.

    3. Elija Register with Stack para añadir la RDS instancia de base de datos a la pila como capa de RDS servicio de Amazon.

    aviso

    AWS OpsWorks Stacks no valida los valores de usuario o contraseña, simplemente los pasa a la aplicación. Si los escribe de forma incorrecta, la aplicación no podrá conectarse a la base de datos.

    Para añadir la RDS instancia de base de datos a la pila como capa de RDS servicio de Amazon, elija Register with Stack.

Implementación de la aplicación

Debe almacenar la aplicación en un repositorio remoto. Al implementarla, AWS OpsWorks Stacks despliega el código y los archivos relacionados del repositorio en las instancias del servidor de aplicaciones. Para mayor comodidad, en este ejemplo se utiliza un archivo de Amazon Simple Storage Service (Amazon S3) público como repositorio, pero también se pueden utilizar otros tipos de repositorios, Git y Subversion incluidos. Para obtener más información, consulte Origen de las aplicaciones.

Para implementar la aplicación de
  1. Empaquete la aplicación en un archivo de almacenamiento.

    Genere un archivo .zip con el directorio nodedb y los subdirectorios y llámelo nodedb.zip. También puede utilizar otros tipos de archivos de almacenamiento, como gzip, bzip2 y tarball. Ten en cuenta que AWS OpsWorks Stacks no admite archivos tar sin comprimir. Para obtener más información, consulte Origen de las aplicaciones.

  2. Cargue el fichero de archivo a S3.

    nodedb.zipCárguelo en un bucket de Amazon S3, haga público el archivo y cópielo URL para usarlo más adelante. Para obtener más información acerca de cómo crear buckets y cargar archivos, vaya a Comenzar a utilizar Amazon Simple Storage Service.

    nota

    AWS OpsWorks Los stacks también pueden implementar archivos privados desde un bucket de Amazon S3, pero para simplificar, en este ejemplo se usa un archivo público. Para obtener más información, consulte Origen de las aplicaciones.

  3. Crea una aplicación AWS OpsWorks Stacks.

    Regresa a la consola de AWS OpsWorks Stacks, en el panel de navegación, selecciona Aplicaciones y, a continuación, selecciona Agregar una aplicación. Especifique la configuración siguiente:

    • Nombre: NodeDB.

      Esta cadena es el nombre que se muestra de la aplicación. Para la mayoría de los casos, necesitarás el nombre abreviado de la aplicación, que AWS OpsWorks Stacks genera a partir del nombre mostrado al transformar todos los caracteres a minúsculas y eliminar los signos de puntuación. En este ejemplo, el nombre abreviado es nodedb. Para verificar el nombre abreviado de una aplicación, después de crear la aplicación, elíjala en la página Apps (Aplicaciones) para mostrar su página de detalles.

    • TypeNode.js.

    • Data source typeRDS.

    • Instancia de base de datos: elija la RDS instancia de base de datos de Amazon que registró anteriormente.

    • Database name: especifique el nombre de la base de datos que ha creado anteriormente, nodeexampledb en este ejemplo.

    • Repository typeHttp Archive.

      Debe utilizar este tipo de repositorio público con los archivos públicos de Amazon S3. El tipo S3 Archive se utiliza únicamente con archivos privados.

    • Repositorio URL: el archivo de almacenamiento es Amazon S3URL.

    Utilice la configuración predeterminada para el resto de los valores y haga clic en Add App (Añadir aplicación) para crear la aplicación.

  4. Implemente la aplicación.

    Vaya a la página Apps (Aplicaciones) y, en la columna Actions (Acciones) de la aplicación NodeDB, elija deploy (implementar). A continuación, elija Implementar para implementar la aplicación en las instancias del servidor. AWS OpsWorks Stacks ejecuta las recetas de implementación en cada instancia, lo que descarga la aplicación del repositorio y reinicia el servidor. Cuando todas las instancias presentan una marca de verificación verde y el valor de Status (Estado) es successful (correcto), la implementación se habrá completado y la aplicación estará lista para comenzar a gestionar solicitudes.

    nota

    Si la implementación da error, elija show (mostrar) en la columna Log (Registro) para mostrar el registro de Chef de la implementación. La información sobre errores aparece cerca de la parte final.

  5. Abra la aplicación.

    Para abrir la aplicación, elige Layers, elige el balanceador de cargas y, a continuación, elige el DNS nombre del balanceador de cargas, el cual envía una HTTP solicitud al balanceador de cargas. Debería ver algo parecido a lo siguiente.

    AWS OpsWorks Node.js example showing RDS endpoint, user credentials, and database details.
nota

AWS OpsWorks Stacks implementa automáticamente las aplicaciones en las nuevas instancias durante la configuración. La implementación manual es necesaria únicamente con las instancias online. Para obtener más información, consulte Implementación de aplicaciones. Para leer una conversación general sobre implementación, incluidas algunas estrategias de implementación más sofisticadas, consulte Administración e implementación de aplicaciones y libros de recetas.

¿Qué se hace ahora?

importante

El AWS OpsWorks Stacks servicio llegó al final de su vida útil el 26 de mayo de 2024 y se ha desactivado tanto para los clientes nuevos como para los existentes. Recomendamos encarecidamente a los clientes que migren sus cargas de trabajo a otras soluciones lo antes posible. Si tienes preguntas sobre la migración, ponte en contacto con el AWS Support equipo en AWS Re:post o a través de Premium AWS Support.

Este tutorial le ha guiado por los aspectos básicos de la configuración de una pila sencilla para el servidor de aplicaciones de Node.js. A continuación se ofrecen algunas sugerencias sobre qué hacer ahora.

Examinar los libros de recetas integrados de Node.js

Si quieres saber cómo se configuran las instancias en detalle, consulta el libro de cocina integrado en la capa, opsworks_nodejs, que contiene las recetas y los archivos relacionados que AWS OpsWorks Stacks usa para instalar y configurar el software, y el libro de cocina integrado, que contiene las recetas que Stacks usa para implementar las aplicaciones. AWS OpsWorks

Personalizar la configuración del servidor

La pila del ejemplo es bastante básica. Para usarla en producción, probablemente le interese personalizarla. Para obtener más información, consulte Personalización AWS OpsWorks de Stacks.

Añadir compatibilidad con SSL

Puedes habilitar la SSL compatibilidad con tu aplicación y proporcionar a AWS OpsWorks Stacks los certificados correspondientes al crear la aplicación. AWS OpsWorks Luego, Stacks instala los certificados en el directorio correspondiente. Para obtener más información, consulte Uso de SSL.

Añadir almacenamiento de datos a la memoria caché

Los sitios de nivel de producción suelen mejorar el desempeño almacenando en caché datos dentro de un almacén de clave-valor en memoria, como Redis o Memcache. Puedes usar cualquiera de los dos con una pila de AWS OpsWorks Stacks. Para obtener más información, consulte ElastiCache Redis y Memcached.

Usar una estrategia de implementación más sofisticada

En el ejemplo se utiliza una estrategia de implementación sencilla que implementa la actualización en todas las instancias de forma simultánea. Este método es sencillo y rápido, pero no se pueden cometer errores. Si la implementación da error o la actualización tiene algún problema, todas las instancias de la pila de producción podrían verse afectadas, y se alteraría o inhabilitaría el sitio hasta que se solucionara el problema. Para obtener más información acerca de estrategias de implementación, consulte Administración e implementación de aplicaciones y libros de recetas.

Amplíe la capa de servidor de aplicaciones Node.js

Puede ampliar la capa de diversas formas. Por ejemplo, puede implementar recetas para ejecutar scripts en las instancias o implementar enlaces de Chef para personalizar la implementación de aplicaciones. Para obtener más información, consulte Ampliación de una capa.

Definir variables de entorno

Puede transferir datos a la aplicación definiendo variables de entorno para la aplicación asociada. Cuando implementas la aplicación, AWS OpsWorks Stacks exporta esas variables para que puedas acceder a ellas desde tu aplicación. Para obtener más información, consulte Uso de variables de entorno de .