

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Migrer une application Web Go sur site vers AWS Elastic Beanstalk à l'aide de la méthode binaire
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method"></a>

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

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

Ce modèle décrit comment migrer une application Web Go sur site vers AWS Elastic Beanstalk. Une fois l'application migrée, Elastic Beanstalk crée le binaire du bundle source et le déploie sur une instance Amazon Elastic Compute Cloud (Amazon). EC2

En tant que stratégie de migration de réhébergement, l'approche de ce modèle est rapide et ne nécessite aucune modification de code, ce qui réduit le temps de test et de migration. 

## Conditions préalables et limitations
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-prereqs"></a>

**Conditions préalables**
+ Un compte AWS actif.
+ Une application Web Go sur site.
+ Un GitHub référentiel qui contient le code source de votre application Go. Si vous ne l'utilisez pas GitHub, il existe d'autres moyens de [créer un bundle de sources d'applications pour Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/applications-sourcebundle.html).

**Versions du produit**
+ La version de Go la plus récente prise en charge par Elastic Beanstalk. Pour plus d'informations, consultez la documentation d'[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>

**Pile technologique source**
+ Une application Web Go sur site 

**Pile technologique cible**
+ AWS Elastic Beanstalk
+ Amazon CloudWatch

**Architecture cible****

![Architecture pour la migration d'une application Go vers Elastic Beanstalk](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/images/pattern-img/cd8d660d-5621-4ea7-8f97-7a1e321c57d3/images/1df543d9-7073-43d8-abd3-f1f7e57278eb.png)


## Outils
<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) déploie et gère rapidement des applications dans le cloud AWS sans que les utilisateurs aient à se renseigner sur l'infrastructure qui exécute ces applications. Elastic Beanstalk réduit la complexité inhérente à la gestion sans pour autant sacrifier le choix ou le niveau de contrôle.
+ [GitHub](https://github.com/)est un système de contrôle de version distribué open source.

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

### Créez le fichier .zip du bundle source de l'application Web Go
<a name="create-the-go-web-application-source-bundle-zip-file"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Créez le bundle source pour l'application Go.  | Ouvrez le GitHub référentiel qui contient le code source de votre application Go et préparez le bundle source. Le bundle source contient un fichier `application.go` source dans le répertoire racine, qui héberge le package principal de votre application Go. Si vous ne l'utilisez pas GitHub, consultez la section *Prérequis* plus haut dans ce modèle pour découvrir d'autres méthodes de création du bundle de sources de votre application. | Administrateur système, développeur d'applications | 
| Créez un fichier de configuration. | Créez un `.ebextensions` dossier dans votre ensemble de sources, puis créez un `options.config` fichier dans ce dossier. Pour plus d'informations, consultez la documentation d'[Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html). | Administrateur système, développeur d'applications | 
|  Créez le fichier .zip du bundle source. | Exécutez la commande suivante.<pre>git archive -o ../godemoapp.zip HEAD</pre><br />Cela crée le fichier .zip du bundle source. Téléchargez et enregistrez le fichier .zip en tant que fichier local. Le fichier .zip ne peut pas dépasser 512 Mo et ne peut pas inclure de dossier parent ou de répertoire de premier niveau. | Administrateur système, développeur d'applications | 

### Migrer l'application Web Go vers Elastic Beanstalk
<a name="migrate-the-go-web-application-to-elastic-beanstalk"></a>


| Sous-tâche | Description | Compétences requises | 
| --- | --- | --- | 
| Choisissez l'application Elastic Beanstalk. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html)[Pour savoir comment créer une application Elastic Beanstalk, consultez la documentation Elastic Beanstalk.](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.CreateApp.html) | Administrateur système, développeur d'applications | 
| Lancez l'environnement du serveur Web Elastic Beanstalk.  | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html) | Administrateur système, développeur d'applications | 
| Téléchargez le fichier .zip du bundle source sur Elastic Beanstalk. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/fr_fr/prescriptive-guidance/latest/patterns/migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method.html) | Administrateur système, développeur d'applications | 
| Testez l'application Web Go déployée. | Vous serez redirigé vers la page de présentation de l'application Elastic Beanstalk. En haut de l'aperçu, à côté de **Environment ID**, choisissez l'URL qui se termine par `elasticbeanstalk.com` pour accéder à votre application. Votre application doit utiliser ce nom dans son fichier de configuration en tant que variable d'environnement et l'afficher sur la page Web. | Administrateur système, développeur d'applications | 

## Résolution des problèmes
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-troubleshooting"></a>


| Problème | Solution | 
| --- | --- | 
| Impossible d'accéder à l'application via un Application Load Balancer. | Vérifiez le groupe cible qui contient votre application Elastic Beanstalk. S'il ne fonctionne pas correctement, connectez-vous à votre instance Elastic Beanstalk et `nginx.conf` vérifiez la configuration du fichier pour vérifier qu'il est acheminé vers l'URL d'état de santé correcte. Vous devrez peut-être modifier l'URL de vérification de l'état du groupe cible. | 

## Ressources connexes
<a name="migrate-an-on-premises-go-web-application-to-aws-elastic-beanstalk-by-using-the-binary-method-resources"></a>
+ [Versions de la plateforme Go prises en charge par Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/platforms/platforms-supported.html#platforms-supported.go)
+ [Utilisation de fichiers de configuration avec Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html)
+ [Création d'un exemple d'application dans Elastic Beanstalk](https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/GettingStarted.CreateApp.html) 