View a markdown version of this page

QuickStart: distribuzione di un' Node.js applicazione su Elastic Beanstalk - AWS Elastic Beanstalk

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

QuickStart: distribuzione di un' Node.js applicazione su Elastic Beanstalk

Questo QuickStart tutorial illustra il processo di creazione di un' Node.js applicazione e di distribuzione in un ambiente. AWS Elastic Beanstalk

Non per uso in produzione

Gli esempi sono solo a scopo dimostrativo. Non utilizzare applicazioni di esempio in produzione.

Vostro AWS account

Se non sei già AWS cliente, devi creare un AWS account. La registrazione ti consente di accedere a Elastic Beanstalk AWS e ad altri servizi di cui hai bisogno.

Se hai già un AWS account, puoi passare a. Prerequisiti

Iscriviti per un Account AWS

Per iniziare AWS, hai bisogno di un Account AWS. Per informazioni sulla creazione di un Account AWS, vedi Guida introduttiva a un Account AWS nella Guida Gestione dell'account AWS di riferimento.

Prerequisiti

Per seguire le procedure in questa guida, devi usare un terminale a riga di comando o una shell per eseguire i comandi. I comandi vengono visualizzati in elenchi preceduti da un simbolo di prompt ($) e dal nome della directory corrente, se appropriato.

~/eb-project$ this is a command this is output

Su Linux e macOS usa la tua shell e il tuo programma di gestione dei pacchetti preferiti. Su Windows puoi installare il sottosistema Windows per Linux per ottenere una Windows-integrated versione di Ubuntu e Bash.

CLI EB

Questo tutorial utilizza l'interfaccia a riga di comando di Elastic Beanstalk (CLI EB). Per istruzioni dettagliate su come configurare e utilizzare la CLI EB, consulta Installa EB CLI con lo script di configurazione (consigliato) e Configurazione dell'interfaccia a riga di comando EB.

Node.js

Installa Node.js sul tuo computer locale seguendo la procedura di installazione Node.js sul Node.js sito Web.

Verifica l' Node.js installazione eseguendo il comando seguente.

~$ node -v

Fase 1: Creare un' Node.js applicazione

Crea una directory di progetto.

~$ mkdir eb-nodejs ~$ cd eb-nodejs

Successivamente, crea un'applicazione che distribuirai utilizzando Elastic Beanstalk. A questo proposito, creeremo un servizio Web RESTful "Hello World".

Esempio~/eb- .js nodejs/server
const http = require('node:http'); const hostname = '127.0.0.1'; const port = 8080; const server = http.createServer((req, res) => { res.statusCode = 200; res.setHeader('Content-Type', 'text/plain'); res.end('Hello Elastic Beanstalk!\n'); }); server.listen(port, hostname, () => { console.log(`Server running at http://${hostname}:${port}/`); });

Questa applicazione apre un listener sulla porta 8080. Elastic Beanstalk inoltra le richieste all'applicazione sulla porta 8080 per impostazione predefinita per. Node.js

Passaggio 2: Esegui l'applicazione localmente

Esegui il comando seguente per eseguire l'applicazione localmente.

~/eb-nodejs$ node server.js

Dovresti vedere il testo seguente.

Server running at http://127.0.0.1:8080/

Inserisci l'indirizzo URL http://127.0.0.1:8080/ nel tuo browser web. Il browser dovrebbe mostrare «Hello Elastic Beanstalk!».

Fase 3: Implementazione Node.js dell'applicazione con l'EB CLI

Esegui i seguenti comandi per creare un ambiente Elastic Beanstalk per questa applicazione.

Per creare un ambiente e distribuire l'applicazione Node.js
  1. Inizializza il repository della CLI EB con il comando eb init.

    ~/eb-nodejs$ eb init -p node.js nodejs-tutorial --region us-east-2

    Questo comando crea un'applicazione denominata nodejs-tutorial e configura il repository locale per creare ambienti con la versione più recente Node.js della piattaforma.

  2. (Facoltativo) Esegui nuovamente eb init per configurare una coppia di chiavi predefinite e connetterti all'istanza EC2 che esegue l'applicazione.

    ~/eb-nodejs$ eb init Do you want to set up SSH for your instances? (y/n): y Select a keypair. 1) my-keypair 2) [ Create new KeyPair ]

    Seleziona una coppia di chiavi se ne hai già una, oppure segui le istruzioni per creare una nuova. Se il prompt non è visualizzato o devi modificare le impostazioni in seguito, esegui eb init -i.

  3. Crea un ambiente e distribuisci in esso l'applicazione con eb create: Elastic Beanstalk crea automaticamente un file zip per l'applicazione e lo distribuisce su un'istanza EC2 nell'ambiente. Dopo aver distribuito l'applicazione, Elastic Beanstalk la avvia sulla porta 8080.

    ~/eb-nodejs$ eb create nodejs-env

    Elastic Beanstalk impiega circa cinque minuti per creare l'ambiente.

Fase 4: Esegui l'applicazione su Elastic Beanstalk

Una volta completato il processo di creazione dell'ambiente, apri il sito Web con. eb open

~/eb-nodejs$ eb open

Complimenti! Hai distribuito un' Node.js applicazione con Elastic Beanstalk! Si aprirà una finestra del browser che utilizza il nome di dominio creato per l'applicazione.

Fase 5: rimozione

Puoi chiudere l'ambiente quando hai finito di lavorare con l'applicazione. Elastic Beanstalk AWS interrompe tutte le risorse associate all'ambiente.

Per terminare l'ambiente Elastic Beanstalk con l'EB CLI, esegui il comando seguente.

~/eb-nodejs$ eb terminate

AWS risorse per la tua applicazione

Hai appena creato un'applicazione a istanza singola. Funge da semplice applicazione di esempio con una singola istanza EC2, quindi non richiede il bilanciamento del carico o la scalabilità automatica. Per le applicazioni a istanza singola Elastic Beanstalk crea le seguenti risorse: AWS

  • Istanza EC2: una macchina virtuale di Amazon EC2 configurata per eseguire applicazioni Web sulla piattaforma selezionata.

    Ogni piattaforma esegue un insieme diverso di software, file di configurazione e script per supportare una versione della lingua, un framework, un container Web specifici o una determinata combinazione di tutti questi elementi. La maggior parte delle piattaforme utilizza Apache o nginx come proxy inverso che elabora il traffico web su cui viene eseguita l'app Web, inoltra le richieste all'app, fornisce asset statici e genera log degli accessi e di errore.

  • Gruppo di sicurezza istanze: un gruppo di sicurezza di Amazon EC2 configurato per abilitare il traffico in entrata sulla porta 80. Questa risorsa consente al traffico TTP proveniente dal load balancer di raggiungere l'istanza EC2 in esecuzione sull'app Web. Per impostazione predefinita, il traffico non è consentito su altre porte.

  • Bucket Amazon S3: posizione di storage per il codice sorgente, i log e altri artefatti creati quando si utilizza Elastic Beanstalk.

  • CloudWatch Allarmi Amazon: due CloudWatch allarmi che monitorano il carico sulle istanze nel tuo ambiente e vengono attivati se il carico è troppo alto o troppo basso. Quando viene attivato un allarme, il gruppo Auto Scaling aumenta o diminuisce di conseguenza.

  • CloudFormation stack: Elastic CloudFormation Beanstalk utilizza per avviare le risorse nell'ambiente e propagare le modifiche alla configurazione. Le risorse sono definite in un modello, visualizzabile nella console CloudFormation.

  • Nome di dominio: un nome di dominio che viene indirizzato alla tua app Web nel modulo. subdomain region.elasticbeanstalk.com.

Elastic Beanstalk gestisce tutte queste risorse. Quando arresti l'ambiente, Elastic Beanstalk termina tutte le risorse che contiene.

Fasi successive

Quando disponi di un'applicazione in esecuzione in un ambiente, puoi distribuire una nuova versione dell'applicazione o un'applicazione diversa in qualsiasi momento. La distribuzione di una nuova versione dell'applicazione è molto veloce perché non richiede il provisioning o il riavvio delle istanze EC2. Puoi anche esplorare il tuo nuovo ambiente utilizzando la console Elastic Beanstalk. Per i passaggi dettagliati, consulta Esplora il tuo ambiente nel capitolo Guida introduttiva di questa guida.

Prova altri tutorial

Se desideri provare altri tutorial con diverse applicazioni di esempio, consulta. Altri esempi di applicazioni e tutorial di Elastic Beanstalk per Node.js

Dopo aver distribuito una o due applicazioni di esempio e essere pronti per iniziare a sviluppare ed eseguire Node.js applicazioni localmente, consulta. Configurazione dell'ambiente di sviluppo Node.js per Elastic Beanstalk

Esegui la distribuzione con la console Elastic Beanstalk

Puoi anche utilizzare la console Elastic Beanstalk per avviare l'applicazione di esempio. Per i passaggi dettagliati, consulta Creare un'applicazione di esempio nel capitolo Guida introduttiva di questa guida.