

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à.

# Esegui la migrazione di un'applicazione web Go locale su AWS Elastic Beanstalk utilizzando il metodo binario
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method"></a>

*Suhas Basavaraj e Shumaz Mukhtar Kazi, Amazon Web Services*

## Riepilogo
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-summary"></a>

Questo modello descrive come migrare un'applicazione web Go locale su AWS Elastic Beanstalk. Dopo la migrazione dell'applicazione, Elastic Beanstalk crea il file binario per il bundle di origine e lo distribuisce su un'istanza Amazon Elastic Compute Cloud (Amazon). EC2

Trattandosi di una strategia di migrazione rehost, l'approccio di questo pattern è rapido e non richiede modifiche al codice, il che significa meno tempo di test e migrazione. 

## Prerequisiti e limitazioni
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-prereqs"></a>

**Prerequisiti**
+ Un account AWS attivo.
+ Un'applicazione web Go locale.
+ Un GitHub repository che contiene il codice sorgente dell'applicazione Go. Se non lo utilizzi GitHub, esistono altri modi per [creare un bundle di sorgenti dell'applicazione per Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-sourcebundle.html).

**Versioni del prodotto**
+ La versione Go più recente supportata da Elastic Beanstalk. Per ulteriori informazioni, consulta la documentazione di [Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.go).

## Architecture
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-architecture"></a>

**Stack tecnologico di origine**
+ Un'applicazione web Go locale 

**Stack tecnologico Target**
+ AWS Elastic Beanstalk
+ Amazon CloudWatch

**Architettura Target****

![Architettura per la migrazione di un'applicazione Go su Elastic Beanstalk](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/images/pattern-img/cd8d660d-5621-4ea7-8f97-7a1e321c57d3/images/1df543d9-7073-43d8-abd3-f1f7e57278eb.png)


## Tools (Strumenti)
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-tools"></a>
+ [AWS Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.html) distribuisce e gestisce rapidamente le applicazioni nel cloud AWS senza che gli utenti debbano conoscere l'infrastruttura che esegue tali applicazioni. Elastic Beanstalk riduce la complessità della gestione senza limitare le scelte o il controllo.
+ [GitHub](https://github.com/)è un sistema di controllo delle versioni distribuito open source.

## Epiche
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-epics"></a>

### Crea il file.zip del pacchetto sorgente dell'applicazione web Go
<a name="create-the-go-web-application-source-bundle-zip-file"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Crea il pacchetto sorgente per l'applicazione Go.  | Apri il GitHub repository che contiene il codice sorgente dell'applicazione Go e prepara il pacchetto sorgente. Il pacchetto sorgente contiene un file `application.go` sorgente nella directory principale, che ospita il pacchetto principale dell'applicazione Go. Se non lo utilizzate GitHub, consultate la precedente sezione *Prerequisiti* di questo schema per scoprire altri modi per creare il bundle di sorgenti dell'applicazione. | Amministratore di sistema, sviluppatore di applicazioni | 
| Creazione di un file di configurazione. | Crea una `.ebextensions` cartella nel tuo pacchetto sorgente, quindi crea un `options.config` file all'interno di questa cartella. Per ulteriori informazioni, consulta la documentazione di [Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html). | Amministratore di sistema, sviluppatore di applicazioni | 
|  Crea il file.zip del pacchetto sorgente. | Eseguire il seguente comando seguente.<pre>git archive -o ../godemoapp.zip HEAD</pre><br />Questo crea il file.zip del bundle di origine. Scaricate e salvate il file.zip come file locale. Il file.zip non può superare i 512 MB e non può includere una cartella principale o una directory di primo livello. | Amministratore di sistema, sviluppatore di applicazioni | 

### Esegui la migrazione dell'applicazione web Go su Elastic Beanstalk
<a name="migrate-the-go-web-application-to-elastic-beanstalk"></a>


| Operazione | Description | Competenze richieste | 
| --- | --- | --- | 
| Scegli l'applicazione Elastic Beanstalk. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html)[Per istruzioni su come creare un'applicazione Elastic Beanstalk, consulta la documentazione di Elastic Beanstalk.](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.CreateApp.html) | Amministratore di sistema, sviluppatore di applicazioni | 
| Avvia l'ambiente del server web Elastic Beanstalk.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html) | Amministratore di sistema, sviluppatore di applicazioni | 
| Carica il file.zip del bundle sorgente su Elastic Beanstalk. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/it_it/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html) | Amministratore di sistema, sviluppatore di applicazioni | 
| Prova l'applicazione web Go distribuita. | Verrai reindirizzato alla pagina di panoramica dell'applicazione Elastic Beanstalk. Nella parte superiore della panoramica, accanto a **Environment ID**, scegli l'URL che termina con `elasticbeanstalk.com` per accedere all'applicazione. L'applicazione deve utilizzare questo nome nel file di configurazione come variabile di ambiente e visualizzarlo sulla pagina Web. | Amministratore di sistema, sviluppatore di applicazioni | 

## risoluzione dei problemi
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-troubleshooting"></a>


| Problema | Soluzione | 
| --- | --- | 
| Impossibile accedere all'applicazione tramite un Application Load Balancer. | Controlla il gruppo target che contiene l'applicazione Elastic Beanstalk. Se non è integro, accedi all'istanza di Elastic Beanstalk e `nginx.conf` controlla la configurazione del file per verificare che venga indirizzato all'URL corretto dello stato di integrità. Potrebbe essere necessario modificare l'URL del controllo dello stato del gruppo target. | 

## Risorse correlate
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-resources"></a>
+ [Versioni della piattaforma Go supportate da Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.go)
+ [Utilizzo dei file di configurazione con Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html)
+ [Creazione di un'applicazione di esempio in Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.CreateApp.html) 