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.
Plateformes personnalisées Elastic Beanstalk (retirées)
Note
Le 18 juillet 2022, Elastic Beanstalk a défini le statut de toutes les branches de la plateforme basées sur Amazon AMI Linux () comme étant retirées. AL1 Cela inclut les plateformes personnalisées. Elastic Beanstalk ne prend pas en charge les plateformes personnalisées. Pour plus d'informations sur le retrait d'Amazon Linux AMI par Elastic Beanstalk, consultez. FAQ sur le retrait de la plateforme
Cette rubrique reste dans ce document comme référence pour tout client ayant utilisé la fonctionnalité de plateforme personnalisée d'Elastic Beanstalk avant son retrait. Dans le passé, les plateformes personnalisées d'Elastic Beanstalk permettaient de créer et de créer AMI un compte à partir d'AMIAmazon RHEL Linux, RHEL 7, 6 ou Ubuntu 16.04 (base). AMIs Ces systèmes d'exploitation ne sont plus pris en charge par Elastic Beanstalk. Pour en savoir plus sur la fonctionnalité des plateformes personnalisées, qui n'est plus prise en charge, consultez la rubrique suivante.
Une plateforme personnalisée est à plusieurs titres une personnalisation plus avancée qu'une image personnalisée. Une plateforme personnalisée vous permet de développer une plateforme entièrement nouvelle avec un système d'exploitation personnalisé, des logiciels supplémentaires et des scripts exécutés par Elastic Beanstalk sur les instances de la plateforme. Cette souplesse vous permet de construire une plateforme pour une application qui utilise un langage ou d'autres logiciels d'infrastructure pour lesquels Elastic Beanstalk ne fournit pas de plateforme gérée. Comparez cela aux images personnalisées, dans lesquelles vous modifiez une image Amazon Machine (AMI) pour l'utiliser avec une plateforme Elastic Beanstalk existante, et Elastic Beanstalk fournit toujours les scripts de la plateforme et contrôle la pile logicielle de la plateforme. Par ailleurs, avec les plateformes personnalisées, vous créez et tenez à jour vos personnalisations de façon automatisée et scriptée, alors qu'avec les images personnalisées, vous apportez les modifications manuellement sur une instance en cours d'exécution.
Pour créer une plate-forme personnalisée, vous devez en créer une AMI à partir de l'un des systèmes d'exploitation pris en chargeRHEL, Ubuntu ou Amazon Linux (voir l'flavor
entrée Format de fichier platform.yaml pour les numéros de version exacts), puis ajouter des personnalisations supplémentaires. Vous créez votre propre plateforme
Elastic Beanstalk gère Packer comme une plateforme intégrée distincte. Autrement dit, vous n'avez pas besoin de vous soucier de la configuration et des versions de Packer.
Vous créez une plate-forme en fournissant à Elastic Beanstalk un modèle Packer, ainsi que les scripts et les fichiers que le modèle invoque pour créer un. AMI Ces composants sont fournis avec un fichier de définition de plate-forme, qui spécifie le modèle et les métadonnées, dans une ZIP archive, connue sous le nom d'archive de définition de plate-forme.
Lorsque vous créez une plateforme personnalisée, vous lancez un environnement d'instance unique sans aucune adresse IP élastique pour exécuter Packer. Packer lance alors une autre instance pour générer une image. Vous pouvez réutiliser cet environnement pour plusieurs plateformes et plusieurs versions de chaque plateforme.
Note
Les plateformes personnalisées sont spécifiques à chaque AWS région. Si vous utilisez Elastic Beanstalk dans plusieurs régions, vous devez créer vos plateformes séparément dans chaque région.
Dans certaines circonstances, les instances lancées par Packer ne sont pas nettoyées et doivent être mises hors service manuellement. Pour savoir comment nettoyer manuellement ces instances, consultez Nettoyage des instances Packer.
Les utilisateurs de votre compte peuvent utiliser vos plateformes personnalisées en spécifiant une plate-forme ARN lors de la création de l'environnement. Ils ARNs sont renvoyés par la eb platform create commande que vous avez utilisée pour créer la plateforme personnalisée.
Chaque fois que vous créez votre plateforme personnalisée, Elastic Beanstalk crée une nouvelle version de la plateforme. Les utilisateurs peuvent spécifier une plateforme par son nom pour obtenir uniquement la dernière version de la plateforme, ou inclure un numéro de version pour obtenir une version spécifique.
Par exemple, pour déployer la dernière version de la plate-forme personnalisée avec, par exemple ARNMyCustomPlatformARN
, la version 3.0, votre ligne de CLI commande EB devrait ressembler à ceci :
eb create -p MyCustomPlatformARN
Pour déployer la version 2.1, votre ligne de CLI commande EB ressemblera à ceci :
eb create -p MyCustomPlatformARN --version 2.1
Vous pouvez appliquer des balises à une version de plateforme personnalisée lorsque vous la créez, et modifier des balises de versions de plateforme personnalisée existantes. Pour plus de détails, consultez Étiquette des versions de plateforme personnalisée.
Création d'une plateforme personnalisée
Pour créer une plateforme personnalisée, la racine de votre application doit inclure un fichier de définition de plateforme platform.yaml
, qui définit le type de générateur utilisé pour la création de la plateforme personnalisée. Le format de ce fichier est décrit dans Format de fichier platform.yaml. Vous pouvez créer une plateforme personnalisée entièrement nouvelle ou reposant sur l'un des exemples de plateforme personnalisée.
Utilisation d'un exemple de plateforme personnalisée
Une alternative à la création de votre propre plateforme personnalisée consiste à utiliser l'un des exemples d'archive de définition de plateforme pour amorcer votre plateforme personnalisée. Les seuls éléments que vous devez configurer dans les exemples avant de pouvoir les utiliser sont une source AMI et une région.
Note
N'utilisez pas d'exemple de plateforme personnalisée non modifié en production. L'objectif des exemples vise à illustrer certaines des fonctionnalités disponibles pour une plateforme personnalisée, mais qui n'ont pas été renforcées à des fins de production.
- NodePlatform_Ubuntu.zip
-
Cette plateforme personnalisée est basée sur Ubuntu 16.04 et prend en charge Node.js 4.4.4. Nous allons utiliser cette plateforme personnalisée pour les exemples de cette section.
- NodePlatform_ RHEL .zip
-
Cette plate-forme personnalisée est basée sur la RHELversion 7.2 et prend en charge Node.js 4.4.4.
- NodePlatform_ AmazonLinux .zip
-
Cette plateforme personnalisée est basée sur Amazon Linux 2016.09.1 et prend en charge Node.js 4.4.4.
- TomcatPlatform_Ubuntu.zip
-
Cette plateforme personnalisée est basée sur Ubuntu 16.04 et prend en charge Tomcat 7/Java 8.
- CustomPlatform_ NodeSampleApp .zip
-
Exemple Node.js qui utilise express et ejs pour afficher une page web statique.
- CustomPlatform_ TomcatSampleApp .zip
-
Exemple Tomcat qui affiche une page web statique lors de son déploiement.
Téléchargez l'exemple d'archive de définition de plateforme : NodePlatform_Ubuntu.zip
. Ce fichier contient un fichier de définition de plateforme, un modèle Packer, des scripts exécutés par Packer lors de la création de l'image, et des scripts et des fichiers de configuration que Packer copie sur l'instance de générateur lors de la création de la plateforme.
Exemple NodePlatform_Ubuntu.zip
|-- builder Contains files used by Packer to create the custom platform
|-- custom_platform.json Packer template
|-- platform.yaml Platform definition file
|-- ReadMe.txt Briefly describes the sample
Le fichier de définition de plateforme, platform.yaml
, indique à Elastic Beanstalk le nom du modèle Packer, custom_platform.json
.
version: "1.0"
provisioner:
type: packer
template: custom_platform.json
flavor: ubuntu1604
Le modèle Packer indique à Packer comment créer le AMIs pour la plate-forme, en utilisant un Ubuntu AMI comme base pour l'image de la plate-forme pour les types d'HVMinstances. La section provisioners
demande à Packer de copier tous les fichiers dans le dossier builder
au sein de l'archive vers l'instance et d'exécute le script builder.sh
sur l'instance. Lorsque les scripts sont terminés, Packer crée une image à partir de l'instance modifiée.
Elastic Beanstalk crée trois variables d'environnement qui peuvent être utilisées pour baliser dans Packer : AMIs
- AWS_EB_ _ PLATFORM ARN
-
Celui ARN de la plateforme personnalisée.
- AWS_EB_ _ PLATFORM NAME
-
Le nom de la plateforme personnalisée.
- AWS_EB_ _ PLATFORM VERSION
-
La version de la plateforme personnalisée.
L'exemple de fichier custom_platform.json
utilise ces variables pour définir les valeurs suivantes qu'il utilise dans les scripts :
-
platform_name
, qui est définie parplatform.yaml
-
platform_version
, qui est définie parplatform.yaml
-
platform_arn
, qui est définie par le script de génération principal,builder.sh
, qui s'affiche à la fin de l'exemple de fichiercustom_platform.json
.
Le fichier custom_platform.json
contient deux propriétés pour lesquelles vous devez préciser une valeur : source_ami
et region
. Pour plus de détails sur le choix des bonnes valeurs AMI et des bonnes valeurs de région, voir Mettre à jour le modèle Packer
Exemple custom_platform.json
{
"variables": {
"platform_name": "{{env `AWS_EB_PLATFORM_NAME`}}",
"platform_version": "{{env `AWS_EB_PLATFORM_VERSION`}}",
"platform_arn": "{{env `AWS_EB_PLATFORM_ARN`}}"
},
"builders": [
{
...
"region": "",
"source_ami": "",
...
}
],
"provisioners": [
{...},
{
"type": "shell",
"execute_command": "chmod +x {{ .Path }}; {{ .Vars }} sudo {{ .Path }}",
"scripts": [
"builder/builder.sh"
]
}
]
}
Les scripts et les autres fichiers que vous incluez dans votre archive de définition de plateforme varient considérablement selon les modifications que vous souhaitez apporter à l'instance. L'exemple de plateforme inclut les scripts suivants :
-
00-sync-apt.sh
– Mis en commentaire :apt -y update
. Nous avons mis la commande en commentaire parce qu'elle demande à l'utilisateur une entrée, ce qui rompt la mise à jour automatique du package. Cela peut être un problème Ubuntu. Cependant, l'exécution d'apt -y update
est toujours recommandée comme bonne pratique. Pour cette raison, nous avons laissé la commande dans l'exemple de script à titre de référence. -
01-install-nginx.sh
– Installe nginx. -
02-setup-platform.sh
– Installewget
,tree
etgit
. Copie les hooks et les configurations de journalisation sur l'instance, et crée les répertoires suivants :-
/etc/SampleNodePlatform
– Emplacement de chargement du fichier de configuration de conteneur pendant le déploiement. -
/opt/elasticbeanstalk/deploy/appsource/
– Emplacement où le script00-unzip.sh
charge le code source de l'application pendant le déploiement (pour plus d'informations sur ce script, consultez la section Outils de script de plateforme pour vos environnements Elastic Beanstalk). -
/var/app/staging/
– Emplacement de traitement du code source de l'application pendant le déploiement. -
/var/app/current/
– Emplacement d'exécution du code source de l'application après le traitement. -
/var/log/nginx/healthd/
– Emplacement où l'agent amélioré de vérification de l'état écrit les journaux. -
/var/nodejs
– Emplacement de chargement des fichiers Node.js pendant le déploiement.
-
Utilisez l'EB CLI pour créer votre première plate-forme personnalisée à l'aide de l'exemple d'archive de définitions de plate-forme.
Pour créer une plateforme personnalisée
-
Créez un répertoire dans lequel l'exemple de plateforme personnalisée sera extrait.
~$
mkdir ~/custom-platform
-
Extrayez
NodePlatform_Ubuntu.zip
dans le répertoire, puis modifiez le répertoire extrait.~$
cd ~/custom-platform
~/custom-platform$unzip ~/NodePlatform_Ubuntu.zip
~/custom-platform$cd NodePlatform_Ubuntu
-
Modifiez le fichier
custom_platform.json
et fournissez les valeurs des propriétéssource_ami
etregion
. Pour plus d'informations, consultez Updating Packer template(Mise à jour du modèle Packer). -
Exécutez eb platform init et suivez les instructions pour initialiser un référentiel de plateforme.
Vous pouvez raccourcir eb platform en ebp.
Note
Windows PowerShell l'utilise ebp comme alias de commande. Si vous exécutez l'EB CLI sous Windows PowerShell, utilisez la forme longue de cette commande : eb platform
~/custom-platform$
eb platform init
Cette commande crée également le répertoire
.elasticbeanstalk
dans le répertoire actuel et ajoute le fichier de configurationconfig.yml
au répertoire. Ne modifiez ou ne supprimez pas ce fichier, car Elastic Beanstalk l'utilise pour créer la plateforme personnalisée.Par défaut, eb platform init utilise le nom du dossier actuel comme nom de plateforme personnalisée,
custom-platform
dans cet exemple. -
Exécutez eb platform createpour lancer un environnement Packer et profiter ARN de la plateforme personnalisée. Vous aurez besoin de cette valeur plus tard lorsque vous créerez un environnement en utilisant la plateforme personnalisée.
~/custom-platform$
eb platform create
...Par défaut, Elastic Beanstalk crée le profil d'instance
aws-elasticbeanstalk-custom-platform-ec2-role
pour les plateformes personnalisées. Si vous préférez utiliser un profil d'instance existant, ajoutez l'option-ip
à la commande eb platform create.INSTANCE_PROFILE
Note
Packer ne parvient pas à créer de plateforme personnalisée si vous utilisez le profil d'instance Elastic Beanstalk par défaut,
aws-elasticbeanstalk-ec2-role
.L'EB CLI affiche le résultat des événements de l'environnement Packer jusqu'à ce que la construction soit terminée. Vous pouvez quitter la vue des événements en appuyant sur Ctrl+C.
-
Vous pouvez consulter les erreurs d'utilisation de la commande eb platform logs dans les journaux.
~/custom-platform$
eb platform logs
... -
Vous pouvez vérifier le processus ultérieurement avec eb platform events.
~/custom-platform$
eb platform events
... -
Vérifiez l'état de votre plateforme avec eb platform status.
~/custom-platform$
eb platform status
...
Lorsque l'opération est terminée, vous disposez d'une plateforme que vous pouvez utiliser pour lancer un environnement Elastic Beanstalk.
Vous pouvez utiliser la plateforme personnalisée lors de la création d'un nouvel environnement à partir de la console. Consultez Assistant de création d'un environnement.
Pour lancer un environnement sur votre plateforme personnalisée
-
Créez un nouveau répertoire pour votre application.
~$
mkdir custom-platform-app
~$cd ~/custom-platform-app
-
Initialisez un référentiel d'application.
~/custom-platform-app$
eb init
... -
Téléchargez l'exemple d'application NodeSampleApp.zip.
-
Procédez à l'extraction de l'exemple d'application.
~/custom-platform-app$
unzip
~/
NodeSampleApp.zip -
Courezeb create -p
CUSTOM-PLATFORM-ARN
, oùCUSTOM-PLATFORM-ARN
est ARN renvoyé par une eb platform create commande, pour lancer un environnement exécutant votre plateforme personnalisée.~/custom-platform-app$
eb create -p
...CUSTOM-PLATFORM-ARN
Contenu de l'archive de définition de plateforme
Une archive de définition de plateforme est l'équivalent plateforme d'un bundle de fichiers source d'application. L'archive de définition de plate-forme est un ZIP fichier qui contient un fichier de définition de plate-forme, un modèle Packer, ainsi que les scripts et fichiers utilisés par le modèle Packer pour créer votre plate-forme.
Note
Lorsque vous utilisez l'EB CLI pour créer une plate-forme personnalisée, l'EB CLI crée une archive de définition de plate-forme à partir des fichiers et des dossiers du référentiel de votre plate-forme. Vous n'avez donc pas besoin de créer l'archive manuellement.
Le fichier de définition de plate-forme est un fichier YAML au format -formaté qui doit être nommé platform.yaml
et se trouver à la racine de votre archive de définition de plate-forme. Pour obtenir la liste des clés obligatoires et facultatives prises en charge dans un fichier de définition de plateforme, consultez Création d'une plateforme personnalisée.
Vous n'avez pas besoin d'attribuer un nom spécifique au modèle Packer, mais le nom du fichier doit correspondre au modèle de fournisseur spécifié dans le fichier de définition de plateforme. Consultez la documentation Packer
Les autres fichiers de votre archive de définition de plate-forme sont des scripts et des fichiers utilisés par le modèle pour personnaliser une instance avant d'en créer uneAMI.
Hooks de plateforme personnalisée
Elastic Beanstalk utilise une structure de répertoires normalisée pour les hooks sur les plateformes personnalisées. Il s'agit de scripts exécutés au cours d'événements du cycle de vie et en réponse à des opérations de gestion : lorsque des instances dans votre environnement sont lancées, ou lorsqu'un utilisateur initie un déploiement ou utilise la fonctionnalité de redémarrage de serveur d'application.
Placez les scripts que vous souhaitez voir déclenchés par les hooks dans l'un des sous-dossiers du dossier /opt/elasticbeanstalk/hooks/
.
Avertissement
L'utilisation de hooks de plateforme personnalisée sur des plateformes gérées n'est pas prise en charge. Les hooks de plateforme personnalisée sont conçus pour les plateformes personnalisées. Sur les plateformes Elastic Beanstalk gérées, ils peuvent fonctionner différemment ou présenter quelques problèmes, et le comportement peut varier d'une plateforme à l'autre. Sur les AMI plateformes Amazon Linux (antérieures à Amazon Linux 2), ils peuvent toujours fonctionner de manière utile dans certains cas ; utilisez-les avec prudence.
Les hooks de plateforme personnalisés sont une fonctionnalité héritée des AMI plateformes Amazon Linux. Sur les plateformes Amazon Linux 2, les hooks de plateforme personnalisés qui figurent dans le dossier /opt/elasticbeanstalk/hooks/
sont complètement obsolètes. Elastic Beanstalk ne les lit ou ne les exécute pas. Les plateformes Amazon Linux 2 prennent en charge un nouveau type de hook de plateforme, spécialement conçu pour étendre les plateformes Elastic Beanstalk gérées. Vous pouvez ajouter des scripts et des programmes personnalisés directement dans un répertoire hooks de votre bundle de fichiers source d'application. Elastic Beanstalk les exécute au cours des différentes étapes de provisionnement d'instance. Pour plus d'informations, développez la section Platform Hooks dans Extension des plateformes Linux Elastic Beanstalk.
Les hooks sont organisés dans les dossiers suivants :
-
appdeploy
&endash; Scripts exécutés lors d'un déploiement d'application. Elastic Beanstalk effectue un déploiement d'application lorsque de nouvelles instances sont lancées et quand un client initie un déploiement de nouvelle version. -
configdeploy
— Scripts exécutés lorsqu'un client effectue une mise à jour de configuration qui affecte la configuration logicielle sur l'instance, par exemple, en définissant des propriétés d'environnement ou en activant la rotation des journaux sur Amazon S3. -
restartappserver
&endash; Scripts exécutés lorsqu'un client effectue une opération de redémarrage de serveur d'application. -
preinit
&endash; Scripts exécutés lors de l'amorçage d'une instance. -
postinit
&endash; Scripts exécutés après l'amorçage d'une instance.
Les dossiers appdeploy
, configdeploy
et restartappserver
contiennent les sous-dossiers pre
, enact
et post
. Lors de chaque phase d'une opération, tous les scripts du dossier pre
sont exécutés par ordre alphabétique, puis viennent ceux du dossier enact
, puis ceux du dossier post
.
Lorsqu'une instance est démarrée, Elastic Beanstalk exécute preinit
, appdeploy
et postinit
. Sur les déploiements suivants sur des instances en cours d'exécution, Elastic Beanstalk exécute les hooks appdeploy
. Les hooks configdeploy
sont exécutés lorsqu'un utilisateur met à jour des paramètres de configuration de logiciel d'instance. Les hooks restartappserver
sont exécutés uniquement lorsque l'utilisateur lance un redémarrage de serveur d'application.
Lorsque vos scripts détectent des erreurs, ils peuvent quitter avec un état différent de zéro et écrire sur stderr
pour faire échouer l'opération. Le message que vous écrivez dans stderr
apparaîtra dans l'événement qui est généré lorsque l'opération échoue. Elastic Beanstalk capture également ces informations dans le fichier journal /var/log/eb-activity.log
. Si vous ne voulez pas que l'opération échoue, renvoyez 0 (zéro). Les messages que vous écrivez dans stderr
ou stdout
apparaissent dans les journaux de déploiement, mais pas dans le flux d'événements, sauf si l'opération échoue.
Nettoyage des instances Packer
Dans certaines conditions, par exemple la suppression du processus du générateur Packer avant sa fin, les instances lancées par Packer ne sont pas nettoyées. Ces instances ne font pas partie de l'environnement Elastic Beanstalk et ne peuvent être consultées et résiliées qu'en utilisant le service Amazon. EC2
Pour nettoyer manuellement ces instances
-
Ouvrez la EC2console Amazon
. -
Assurez-vous que vous vous trouvez dans la même AWS région que celle dans laquelle vous avez créé l'instance avec Packer.
-
Sous Ressources, sélectionnez
N
Instances en cours d'exécution, oùN
indique le nombre d'instances en cours d'exécution. -
Dans la zone de texte de la requête.
-
Sélectionnez la balise Name.
-
Saisissez packer.
La requête doit se présenter comme suit : tag:Name: packer
-
Sélectionnez les instances qui correspondent à la requête.
-
Si État de l'instance est en cours d'exécution, sélectionnez Actions, État de l'instance, Arrêter, puis Actions, État de l'instance, Résilier.
Format de fichier platform.yaml
Le fichier platform.yaml
a le format suivant :
version: "version-number
"
provisioner:
type: provisioner-type
template: provisioner-template
flavor: provisioner-flavor
metadata:
maintainer: metadata-maintainer
description: metadata-description
operating_system_name: metadata-operating_system_name
operating_system_version: metadata-operating_system_version
programming_language_name: metadata-programming_language_name
programming_language_version: metadata-programming_language_version
framework_name: metadata-framework_name
framework_version: metadata-framework_version
option_definitions:
- namespace: option-def-namespace
option_name: option-def-option_name
description: option-def-description
default_value: option-def-default_value
option_settings:
- namespace: "option-setting-namespace
"
option_name: "option-setting-option_name
"
value: "option-setting-value
"
Remplacez les espaces réservés par les valeurs suivantes :
version-number
-
Obligatoire. Version de la YAML définition. Doit indiquer
1.0
. provisioner-type
-
Obligatoire. Le type de générateur utilisé pour créer la plateforme personnalisée. Doit indiquer
packer
. provisioner-template
-
Obligatoire. Le JSON fichier contenant les paramètres pour
provisioner-type
. provisioner-flavor
-
Facultatif. Le système d'exploitation de base utilisé pourAMI. L'un des éléments suivants :
- amazon (valeur par défaut)
-
Amazon Linux. Si la version n'est pas spécifiée, il s'agit de la dernière version d'Amazon Linux disponible au moment de la création de la plateforme.
Amazon Linux 2 n'est pas une version de système d'exploitation prise en charge.
- ubuntu1604
Ubuntu 16.04 LTS
- rhel7
RHEL7
- rhel6
RHEL6
metadata-maintainer
-
Facultatif. Informations de contact pour la personne qui possède la plateforme (100 caractères).
metadata-description
-
Facultatif. Description de la plateforme (2 000 caractères).
metadata-operating_system_name
-
Facultatif. Nom du système d'exploitation de la plateforme (50 caractères). Cette valeur est disponible lors du filtrage de la sortie pour le ListPlatformVersionsAPI.
metadata-operating_system_version
-
Facultatif. Version du système d'exploitation de la plateforme (20 caractères).
metadata-programming_language_name
-
Facultatif. Langage de programmation pris en charge par la plateforme (50 caractères).
metadata-programming_language_version
-
Facultatif. Langue de la version de la plateforme (20 caractères).
metadata-framework_name
-
Facultatif. Nom de l'infrastructure web utilisée par la plateforme (50 caractères).
metadata-framework_version
-
Facultatif. Version de l'infrastructure web de la plateforme (20 caractères).
option-def-namespace
-
Facultatif. Un espace de noms sous
aws:elasticbeanstalk:container:custom
(100 caractères) option-def-option_name
-
Facultatif. Nom de l'option (100 caractères). Vous pouvez définir jusqu'à 50 options de configuration personnalisées que la plateforme fournit aux utilisateurs.
option-def-description
-
Facultatif. Description de l'option (1 024 caractères).
option-def-default_value
-
Facultatif. Valeur par défaut utilisée lorsque l'utilisateur n'en spécifie pas.
L'exemple suivant crée l'option
NPM_START
.options_definitions: - namespace: "aws:elasticbeanstalk:container:custom:application" option_name: "NPM_START" description: "Default application startup command" default_value: "node application.js"
option-setting-namespace
-
Facultatif. Espace de noms de l'option.
option-setting-option_name
-
Facultatif. Nom de l'option. Vous pouvez spécifier jusqu'à 50 options fournies par Elastic Beanstalk.
option-setting-value
-
Facultatif. Valeur utilisée lorsque l'utilisateur n'en spécifie pas.
L'exemple suivant crée l'option
TEST
.option_settings: - namespace: "aws:elasticbeanstalk:application:environment" option_name: "TEST" value: "This is a test"
Étiquette des versions de plateforme personnalisée
Vous pouvez appliquer des balises aux versions AWS Elastic Beanstalk personnalisées de votre plateforme. Les balises sont des paires clé-valeur associées à des AWS ressources. Pour plus d'informations sur l'étiquette des ressources Elastic Beanstalk, les cas d'utilisation, les contraintes de clé et de valeur d'identification, et les types de ressources pris en charge, consultez Étiquette des ressources d'application Elastic Beanstalk.
Vous pouvez spécifier des identifications lorsque vous créez une version de plateforme personnalisée. Dans une version de plateforme personnalisée, vous pouvez ajouter ou supprimer des identifications, ainsi que mettre à jour les valeurs des identifications existantes. Vous pouvez ajouter jusqu'à 50 identifications à chaque version de plateforme personnalisée.
Ajout d'identifications lors de la création de versions de plateforme personnalisée
Si vous utilisez l'EB CLI pour créer la version personnalisée de votre plateforme, utilisez l'--tags
option avec eb
platform create pour ajouter des balises.
~/workspace/my-app$ eb platform create --tags mytag1
=value1
,mytag2
=value2
Avec les clients API basés sur le AWS CLI ou d'autres, ajoutez des balises à l'aide du --tags
paramètre de la create-platform-version commande.
$ aws elasticbeanstalk create-platform-version \
--tags Key=mytag1
,Value=value1
Key=mytag2
,Value=value2
\
--platform-name my-platform
--platform-version 1.0.0
--platform-definition-bundle S3Bucket=amzn-s3-demo-bucket
,S3Key=sample.zip
Gestion des identifications d'une version de plateforme personnalisée existante
Vous pouvez ajouter, mettre à jour et supprimer des identifications dans une version existante de la plateforme personnalisée Elastic Beanstalk.
Si vous utilisez l'EB CLI pour mettre à jour la version personnalisée de votre plateforme, eb tags utilisez-le pour ajouter, mettre à jour, supprimer ou répertorier des balises.
Par exemple, la commande suivante répertorie les identifications dans une version de plateforme personnalisée.
~/workspace/my-app$ eb tags --list --resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id
:platform/my-platform
/1.0.0
"
La commande suivante met à jour l'identification mytag1
et supprime l'identification mytag2
.
~/workspace/my-app$ eb tags --update mytag1
=newvalue
--delete mytag2
\
--resource "arn:aws:elasticbeanstalk:us-east-2:my-account-id
:platform/my-platform
/1.0.0
"
Pour obtenir une liste complète des options et d'autres exemples, consultez eb tags
.
Avec les clients API basés sur le AWS CLI ou d'autres, utilisez la list-tags-for-resource commande pour répertorier les balises d'une version de plate-forme personnalisée.
$ aws elasticbeanstalk list-tags-for-resource --resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id
:platform/my-platform
/1.0.0
"
Utilisez la commande update-tags-for-resource pour ajouter, mettre à jour ou supprimer des identifications dans une version de plateforme personnalisée.
$ aws elasticbeanstalk update-tags-for-resource \
--tags-to-add Key=mytag1
,Value=newvalue
--tags-to-remove mytag2
\
--resource-arn "arn:aws:elasticbeanstalk:us-east-2:my-account-id
:platform/my-platform
/1.0.0
"
Spécifiez les identifications à ajouter et les identifications à mettre à jour dans le paramètre --tags-to-add
de update-tags-for-resource. Une identification inexistante est ajoutée et la valeur d'une identification existante est mise à jour.
Note
Pour utiliser certains EB CLI et certaines AWS CLI commandes avec une version de plateforme personnalisée d'Elastic Beanstalk, vous avez besoin de la version personnalisée de la plateforme. ARN Vous pouvez les récupérer à ARN l'aide de la commande suivante.
$ aws elasticbeanstalk list-platform-versions
Utilisez l'option --filters
pour filtrer la sortie vers le nom de votre plateforme personnalisée.