Alias de machine à états - AWS Step Functions

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.

Alias de machine à états

Un alias est un pointeur pour un maximum de deux versions d'une même machine à états. Vous pouvez créer plusieurs alias pour vos machines d'état. Chaque alias possède un Amazon Resource Name (ARN) unique. L'ARN de l'alias est une combinaison de l'ARN de la machine à états et du nom de l'alias, séparés par deux points (:). L'exemple suivant montre le format d'un alias ARN de machine à états.

arn:partition:states:region:account-id:stateMachine:myStateMachine:aliasName

Vous pouvez utiliser un alias pour acheminer le trafic entre l'une des deux versions de machine à états. Vous pouvez également créer un alias pointant vers une version unique. Les alias ne peuvent pointer que vers les versions des machines à états. Vous ne pouvez pas utiliser un alias pour pointer vers un autre alias. Vous pouvez également mettre à jour un alias pour qu'il pointe vers une autre version de la machine à états.

Schéma d'un alias de machine à états. Cet alias envoie 80 % des demandes à une machine d'état vers la version 1 et 20 % des demandes vers la version 2.

Création d'un alias de machine à états (console)

Vous pouvez créer jusqu'à 100 alias pour chaque machine à états à l'aide de la console Step Functions ou en appelant l'action CreateStateMachineAliasAPI. Pour demander une augmentation de cette limite souple, utilisez la page Support Center du AWS Management Console. Supprimez les alias non utilisés de la console ou en invoquant l'action DeleteStateMachineAliasAPI.

Pour créer un alias de machine à états
  1. Ouvrez la console Step Functions, puis choisissez une machine à états existante.

  2. Sur la page détaillée de State machine, choisissez l'onglet Alias.

  3. Choisissez Créer un nouvel alias.

  4. Sur la page Create alias (Créer un alias), procédez de la manière suivante :

    1. Entrez un nom d'alias.

    2. (Facultatif) Renseignez le champ Description de l'alias.

  5. Pour configurer le routage sur l'alias, consultez la section Configuration du routage de l'alias.

  6. Choisissez Créer un alias.

Gestion des alias avec les opérations de l'API Step Functions

Step Functions fournit les opérations d'API suivantes que vous pouvez utiliser pour créer et gérer des alias de machine à états ou obtenir des informations sur les alias :

Pour créer un alias nommé PROD qui pointe vers la version 1 d'une machine à états nommée à myStateMachine l'aide de AWS Command Line Interface, utilisez la create-state-machine-alias commande.

aws stepfunctions create-state-machine-alias --name PROD --routing-configuration "[{\"stateMachineVersionArn\":\"arn:aws:states:us-east-1:123456789012:stateMachine:myStateMachine:1\",\"weight\":100}]"

Configuration du routage d’alias

Vous pouvez utiliser un alias pour acheminer le trafic d'exécution entre deux versions d'une machine à états. Supposons, par exemple, que vous souhaitiez lancer une nouvelle version de votre machine d'état. Vous pouvez réduire les risques liés au déploiement de la nouvelle version en configurant le routage sur un alias. En configurant le routage, vous pouvez envoyer la majeure partie de votre trafic vers une version antérieure et testée de votre machine à états. La nouvelle version peut alors recevoir un pourcentage inférieur, jusqu'à ce que vous puissiez confirmer que vous pouvez la transférer en toute sécurité.

Pour définir la configuration du routage, assurez-vous de publier les deux versions de machine à états vers lesquelles pointe votre alias. Lorsque vous lancez une exécution à partir d'un alias, Step Functions choisit aléatoirement la version de la machine d'état à exécuter parmi les versions spécifiées dans la configuration de routage. Il base ce choix sur le pourcentage de trafic que vous attribuez à chaque version dans la configuration de routage des alias.

Pour configurer la configuration du routage sur un alias
  • Sur la page Créer un alias, sous Configuration du routage, procédez comme suit :

    1. Pour Version, choisissez la première version de machine à états vers laquelle pointe l'alias.

    2. Cochez la case Répartir le trafic entre deux versions.

      Astuce

      Pour pointer vers une seule version, décochez la case Répartir le trafic entre deux versions.

    3. Dans Version, choisissez la deuxième version vers laquelle l'alias doit pointer.

    4. Dans les champs Pourcentage de trafic, spécifiez le pourcentage de trafic à acheminer vers chaque version. Par exemple, entrez 60 et 40 acheminez 60 % du trafic d'exécution vers la première version et 40 % du trafic vers la deuxième version.

      Les pourcentages de trafic combinés doivent être égaux à 100 %.

Exécution d'une machine à états à l'aide d'un alias (console)

Vous pouvez démarrer des exécutions de machines à états avec un alias depuis la console ou en appelant l'action d'StartExecutionAPI avec l'ARN de l'alias. Step Functions exécute ensuite la version spécifiée par l'alias. Par défaut, si vous ne spécifiez pas de version ou d'alias lorsque vous lancez l'exécution d'une machine à états, Step Functions utilise la version la plus récente.

Pour démarrer l'exécution d'une machine à états à l'aide d'un alias
  1. Ouvrez la console Step Functions, puis choisissez une machine à états existante pour laquelle vous avez créé un alias. Pour plus d'informations sur la création d'un alias, consultezCréation d'un alias de machine à états (console).

  2. Sur la page détaillée de State machine, choisissez l'onglet Alias.

  3. Dans la section Alias, procédez comme suit :

    1. Sélectionnez l'alias avec lequel vous souhaitez démarrer l'exécution.

    2. Choisissez Start execution (Démarrer l'exécution).

  4. (Facultatif) Dans la boîte de dialogue Démarrer l'exécution, entrez le nom de l'exécution.

  5. Si nécessaire, entrez l'entrée d'exécution, puis choisissez Démarrer l'exécution.