Vous devez configurer vos workflows vRealize Orchestrator pour qu'ils prennent en charge le message de service IaaS.

Schéma des rubriques d'événements de provisionnement et de cycle de vie

Les rubriques d'événements de provisionnement et de cycle de vie d'une machine utilisent le même schéma de cycle de vie. Les différences résident dans les états de déclenchement. Le provisionnement de la machine reçoit des messages en fonction des états et des événements du provisionnement, tandis que le cycle de vie de la machine reçoit des messages en fonction des états et des événements actifs. Certains états du provisionnement incluent BuildingMachine et Disposing. Certains états du cycle de vie incluent InstallTools et Off.

Le message d'événement correspond à la charge utile des données de l'événement. La structure de la charge utile des données d'événement est présentée ci-dessous.

{
  machine : {
      id                : STRING,      /* IaaS machine ID */
      name              : STRING,      /* machine name */
      externalReference : STRING,      /* machine ID on the hypervisor */
      owner             : STRING,      /* machine owner */ 
      type              : INTEGER,     /* machine type: 0 - virtual machine; 1 - physical machine; 2 - cloud machine */ 
      properties        : Properties   /* machine properties, see notes below how to expose virtual machine properties */            
  },
  blueprintName   : STRING,      /* blueprint name */
  componentId     : STRING,      /* component id */
  componentTypeId : STRING,      /* component type id */
  endpointId      : STRING,      /* endpoint id */
  requestId       : STRING,      /* request id */
  lifecycleState  : {												/* see Life Cycle State Definitions*/
      state : STRING,
      phase : STRING,
      event : STRING
  },
  virtualMachineEvent                 : STRING,     /* fire an event on that machine - only processed by Manager Service as consumer */
  workflowNextState                   : STRING,     /* force the workflow to a specific state - only processed by Manager Service as consumer */
  virtualMachineAddOrUpdateProperties : Properties, /* properties on the machine to add/update - only processed by Manager Service as consumer */
  virtualMachineDeleteProperties      : Properties  /* properties to remove from the machine - only processed by Manager Service as consumer */
}

Les paramètres vRealize Orchestrator sont mappés à la charge utile de l'événement par nom et par type.

Lorsque vous utilisez virtualMachineEvent et workflowNextState comme paramètres de sortie, les valeurs que vous fournissez doivent représenter un état ou un événement du flux de travail qui a déclenché l'événement et démarré le flux de travail vRealize Orchestrator actuel. Pour vérifier les états et les événements possibles du cycle de vie, reportez-vous à États du cycle de vie du workflow maître VMPS et à Provisionnement des états de cycle de vie par type de machine.

Utilisation des propriétés personnalisées d'extensibilité

Les propriétés personnalisées de la machine virtuelle ne sont pas incluses dans la charge utile de l'événement, sauf si elles sont spécifiées comme propriétés personnalisées d'extensibilité de l'état du cycle de vie. Vous pouvez ajouter ces propriétés aux points de terminaison, aux réservations, aux Blueprints, aux demandes et aux autres objets IaaS qui prennent en charge les propriétés personnalisées.

Le format de la propriété personnalisée que vous ajoutez à un objet est le suivant : Extensibility.Lifecycle.Properties.{workflowName}.{stateName}.

Par exemple, si vous souhaitez inclure des propriétés masquées et toutes les propriétés commençant par « Virtual » lorsque l'état de la machine virtuelle est BuildingMachine, ajoutez les propriétés personnalisées à la machine dans le Blueprint. Dans cet exemple, le nom de la propriété personnalisée est Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine, et les valeurs (séparées par des virgules) sont __* et Virtual*.

Le trait de soulignement double (__*) inclut les propriétés masquées. La valeur Virtual* inclut toutes les propriétés qui commencent par « Virtual ». L'astérisque (*) est un caractère générique qui peut être utilisé comme valeur unique, mais l'utilisation d'un caractère générique de cette manière entraîne le transfert de grandes quantités de données.

Si vous avez plusieurs abonnements au workflow déclenchés à la suite qui incluent des propriétés personnalisées, vous devez inclure les entrées appropriées dans les workflows pour vous assurer que la vérification de la charge utile conserve les propriétés personnalisées.

Tableau 1. Entrées de la tâche afin de préserver les propriétés personnalisées

État

Entrées de la tâche

Propriétés personnalisées ajoutées ou mises à jour

virtualMachineAddOrUpdateProperties = payload.virtualMachineAddOrUpdateProperties || new Properties();

Propriétés personnalisées supprimées

virtualMachineDeleteProperties = payload.virtualMachineDeleteProperties || new Properties();

Création d'un workflow vRealize Orchestrator sur la base du schéma de provisionnement ou de cycle de vie

Le workflow personnalisé que vous créez doit disposer d'un paramètre d'entrée correspondant à payload dont le type est Properties. La charge utile des données d'événements de provisionnement ou de cycle de vie est indiquée dans ce paramètre lors de l'exécution du workflow dans vRealize Orchestrator. Vous pouvez également inclure des paramètres d'entrée distincts correspondant au nom et au type des champs de la charge utile de l'événement.