View a markdown version of this page

Modifier un service - AWS Proton

Avis de fin de support : le 7 octobre 2026, AWS le support pour AWS Proton. Après le 7 octobre 2026, vous ne pourrez plus accéder à la AWS Proton console ni aux AWS Proton ressources. Votre infrastructure déployée restera intacte. Pour plus d'informations, consultez le Guide AWS Proton de dépréciation et de migration des services.

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.

Modifier un service

Vous pouvez apporter les modifications suivantes à un AWS Proton service.

  • Modifiez la description du service.

  • Modifiez un service en ajoutant et en supprimant des instances de service.

Modifier la description du service

Vous pouvez utiliser la console ou le AWS CLI pour modifier la description d'un service.

Console de gestion AWS

Modifiez un service à l'aide de la console comme décrit dans les étapes suivantes.

Dans la liste des services.
  1. Dans la AWS Proton console, choisissez Services.

  2. Dans la liste des services, cliquez sur le bouton radio situé à gauche du service que vous souhaitez mettre à jour.

  3. Choisissez Modifier.

  4. Sur la page Configurer le service, remplissez le formulaire et choisissez Suivant.

  5. Sur la page Configurer les paramètres personnalisés, choisissez Suivant.

  6. Vérifiez vos modifications et choisissez Enregistrer les modifications.

Sur la page détaillée du service.
  1. Dans la AWS Proton console, choisissez Services.

  2. Dans la liste des services, choisissez le nom du service que vous souhaitez modifier.

  3. Sur la page détaillée du service, choisissez Modifier.

  4. Sur la page Configurer le service, remplissez le formulaire et choisissez Suivant.

  5. Sur la page Configurer les paramètres personnalisés, remplissez le formulaire et choisissez Suivant.

  6. Vérifiez vos modifications et choisissez Enregistrer les modifications.

AWS CLI

Modifiez une description comme indiqué dans l'exemple de commande et de réponse de la CLI suivant.

Commande :

$ aws proton update-service \ --name "MySimpleService" \ --description "Edit by updating description"

Réponse :

{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService", "branchName": "main", "createdAt": "2021-03-12T22:39:42.318000+00:00", "description": "Edit by updating description", "lastModifiedAt": "2021-03-12T22:44:21.975000+00:00", "name": "MySimpleService", "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "repositoryId": "my-repository/myorg-myapp", "status": "ACTIVE", "templateName": "fargate-service" } }

Modifier un service pour ajouter ou supprimer des instances de service

Pour un AWS Proton service, vous pouvez ajouter ou supprimer des instances de service en soumettant une spécification modifiée. Les conditions suivantes doivent être remplies pour que la demande soit acceptée :

  • Votre service et votre pipeline ne sont pas déjà en cours de modification ou de suppression lorsque vous soumettez la demande de modification.

  • Votre spécification modifiée n'inclut pas les modifications qui modifient le pipeline de services ni les modifications apportées aux instances de service existantes qui ne doivent pas être supprimées.

  • Votre spécification modifiée ne supprime aucune instance de service existante associée à un composant. Pour supprimer une telle instance de service, vous devez d'abord mettre à jour le composant afin de le détacher de son instance de service. Pour plus d'informations sur les composants, consultezAWS Proton components.

Deletion-failed les instances sont des instances de service dans l'DELETE_FAILEDÉtat. Lorsque vous demandez une modification de service, AWS Proton tente de supprimer pour vous les instances dont la suppression a échoué, dans le cadre du processus de modification. Si l'une de vos instances de service n'a pas pu être supprimée, certaines ressources sont peut-être toujours associées à ces instances, même si elles ne sont pas visibles depuis la console ou AWS CLI. Vérifiez les ressources de l'infrastructure de votre instance dont la suppression a échoué et nettoyez-les afin de AWS Proton pouvoir les supprimer pour vous.

Pour connaître le quota d'instances de service pour un service, consultezAWS Proton quotas. Vous devez également gérer au moins une instance de service pour votre service après sa création. Au cours du processus de mise à jour, AWS Proton comptabilise les instances de service existantes et les instances à ajouter ou à supprimer. Deletion-failed les instances sont incluses dans ce décompte et vous devez en tenir compte lorsque vous modifiez votrespec.

Utilisez la console ou AWS CLI pour ajouter ou supprimer des instances de service

Console de gestion AWS

Modifiez votre service pour ajouter ou supprimer des instances de service à l'aide de la console.

Dans la AWS Proton console

  1. Dans le panneau de navigation, choisissez Services.

  2. Sélectionnez le service que vous souhaitez modifier.

  3. Choisissez Modifier.

  4. (Facultatif) Sur la page Configurer le service, modifiez le nom ou la description du service, puis choisissez Suivant.

  5. Sur la page Configurer les paramètres personnalisés, choisissez Supprimer pour supprimer une instance de service et choisissez Ajouter une nouvelle instance pour ajouter une instance de service et remplir le formulaire.

  6. Choisissez Suivant.

  7. Vérifiez votre mise à jour et choisissez Enregistrer les modifications.

  8. Un modal vous demande de vérifier la suppression des instances de service. Suivez les instructions et choisissez Oui, supprimer.

  9. Sur la page détaillée du service, consultez les détails de l'état de votre service.

AWS CLI

Ajoutez et supprimez des instances de service à l'aide d'une modification, spec comme indiqué dans les AWS CLI exemples de commandes et de réponses suivants.

Lorsque vous utilisez la CLI, vous spec devez exclure les instances de service à supprimer et inclure à la fois les instances de service à ajouter et les instances de service existantes que vous n'avez pas marquées pour suppression.

La liste suivante présente l'exemple spec avant la modification et une liste des instances de service déployées selon la spécification. Cette spécification a été utilisée dans l'exemple précédent pour modifier une description de service.

Spécification :

proton: ServiceSpec pipeline: my_sample_pipeline_optional_input: "abc" my_sample_pipeline_required_input: "123" instances: - name: "my-instance" environment: "simple-env" spec: my_sample_service_instance_optional_input: "def" my_sample_service_instance_required_input: "456" - name: "my-other-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "789"

L'exemple de list-service-instances commande et de réponse CLI suivant montre les instances actives avant l'ajout ou la suppression d'une instance de service.

Commande :

$ aws proton list-service-instances \ --service-name "MySimpleService"

Réponse :

{ "serviceInstances": [ { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService/service-instance/my-other-instance", "createdAt": "2021-03-12T22:39:42.318000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2021-03-12T22:39:43.109000+00:00", "lastDeploymentSucceededAt": "2021-03-12T22:39:43.109000+00:00", "name": "my-other-instance", "serviceName": "example-svc", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "fargate-service" }, { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService/service-instance/my-instance", "createdAt": "2021-03-12T22:39:42.318000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2021-03-12T22:39:43.160000+00:00", "lastDeploymentSucceededAt": "2021-03-12T22:39:43.160000+00:00", "name": "my-instance", "serviceName": "example-svc", "serviceTemplateArn": "arn:aws:proton:region-id:123456789012:service-template/fargate-service", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "fargate-service" } ] }

La liste suivante montre l'exemple modifié spec utilisé pour supprimer et ajouter une instance. L'instance existante nommée my-instance est supprimée et une nouvelle instance nommée yet-another-instance est ajoutée.

Spécification :

proton: ServiceSpec pipeline: my_sample_pipeline_optional_input: "abc" my_sample_pipeline_required_input: "123" instances: - name: "my-other-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "789" - name: "yet-another-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "789"

Vous pouvez les utiliser "${Proton::CURRENT_VAL}" pour indiquer les valeurs de paramètres à conserver par rapport à l'originalspec, si ces valeurs existent dans lespec. Utilisez get-service cette option spec pour afficher l'original d'un service, comme décrit dansAfficher les données de service.

La liste suivante indique comment vous pouvez vous "${Proton::CURRENT_VAL}" assurer que vous n'incluez spec pas les modifications des valeurs de paramètres pour que les instances de services existantes puissent être conservées.

Spécification :

proton: ServiceSpec pipeline: my_sample_pipeline_optional_input: "${Proton::CURRENT_VAL}" my_sample_pipeline_required_input: "${Proton::CURRENT_VAL}" instances: - name: "my-other-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "${Proton::CURRENT_VAL}" - name: "yet-another-instance" environment: "simple-env" spec: my_sample_service_instance_required_input: "789"

La liste suivante présente la commande et la réponse de la CLI permettant de modifier le service.

Commande :

$ aws proton update-service --name "MySimpleService" \ --description "Edit by adding and deleting a service instance" \ --spec "file://spec.yaml"

Réponse :

{ "service": { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService", "branchName": "main", "createdAt": "2021-03-12T22:39:42.318000+00:00", "description": "Edit by adding and deleting a service instance", "lastModifiedAt": "2021-03-12T22:55:48.169000+00:00", "name": "MySimpleService", "repositoryConnectionArn": "arn:aws:codestar-connections:region-id:123456789012:connection/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "repositoryId": "my-repository/myorg-myapp", "status": "UPDATE_IN_PROGRESS", "templateName": "fargate-service" } }

La list-service-instances commande et la réponse suivantes confirment que l'instance existante nommée my-instance est supprimée et qu'une nouvelle instance nommée yet-another-instance est ajoutée.

Commande :

$ aws proton list-service-instances \ --service-name "MySimpleService"

Réponse :

{ "serviceInstances": [ { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService/service-instance/yet-another-instance", "createdAt": "2021-03-12T22:39:42.318000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2021-03-12T22:56:01.565000+00:00", "lastDeploymentSucceededAt": "2021-03-12T22:56:01.565000+00:00", "name": "yet-another-instance", "serviceName": "MySimpleService", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "fargate-service" }, { "arn": "arn:aws:proton:region-id:123456789012:service/MySimpleService/service-instance/my-other-instance", "createdAt": "2021-03-12T22:39:42.318000+00:00", "deploymentStatus": "SUCCEEDED", "environmentName": "simple-env", "lastDeploymentAttemptedAt": "2021-03-12T22:39:43.109000+00:00", "lastDeploymentSucceededAt": "2021-03-12T22:39:43.109000+00:00", "name": "my-other-instance", "serviceName": "MySimpleService", "templateMajorVersion": "1", "templateMinorVersion": "0", "templateName": "fargate-service" } ] }

Que se passe-t-il lorsque vous ajoutez ou supprimez des instances de service ?

Après avoir soumis une modification de service pour supprimer et ajouter des instances de service, AWS Proton effectue les actions suivantes.

  • Définit le service surUPDATE_IN_PROGRESS.

  • Si le service possède un pipeline, définit son statut sur IN_PROGRESS et bloque les actions du pipeline.

  • Définit toutes les instances de service qui doivent être supprimées surDELETE_IN_PROGRESS.

  • Bloque les actions de service.

  • Bloque les actions sur les instances de service marquées pour suppression.

  • Crée de nouvelles instances de service.

  • Supprime les instances que vous avez répertoriées pour suppression.

  • Tentatives de suppression des instances dont la suppression a échoué.

  • Une fois les ajouts et les suppressions terminés, réapprovisionnez le pipeline de services (le cas échéant), configurez votre service sur et activez les actions de service ACTIVE et de pipeline.

AWS Proton tente de remédier aux modes de défaillance comme suit.

  • Si une ou plusieurs instances de service n'ont pas pu être créées, AWS Proton essaie de déprovisionner toutes les instances de service nouvellement créées et revient spec à l'état précédent. Il ne supprime aucune instance de service et ne modifie en aucune façon le pipeline.

  • Si une ou plusieurs instances de service n'ont pas pu être supprimées, AWS Proton reprovisionnez le pipeline sans les instances supprimées. Le spec est mis à jour pour inclure les instances ajoutées et exclure les instances qui ont été marquées pour suppression.

  • Si le provisionnement du pipeline échoue, aucune tentative de restauration n'est effectuée et le service et le pipeline indiquent tous deux un état de mise à jour ayant échoué.

Balisage et modifications des services

Lorsque vous ajoutez des instances de service dans le cadre de votre modification de service, les balises AWS gérées se propagent vers les nouvelles instances et les ressources provisionnées et sont automatiquement créées pour celles-ci. Si vous créez de nouvelles balises, celles-ci ne sont appliquées qu'aux nouvelles instances. Les balises gérées par les clients du service existantes se propagent également aux nouvelles instances. Pour de plus amples informations, veuillez consulter AWS Proton ressources et balisage.