IaaS 서비스 메시지를 지원하려면 vRealize Orchestrator 워크플로를 구성해야 합니다.

프로비저닝 및 수명 주기 이벤트 항목 스키마

시스템 프로비저닝 및 시스템 수명 주기 이벤트 항목은 동일한 수명 주기 스키마를 사용합니다. 차이점은 트리거 상태에 있습니다. 시스템 프로비저닝은 프로비저닝 상태 및 이벤트를 기반으로 메시지를 수신하고 시스템 수명 주기는 활성 상태 및 이벤트를 기반으로 메시지를 수신합니다. 일부 프로비저닝 상태에는 BuildingMachine 및 Disposing이 포함됩니다. 일부 수명 주기 상태에는 InstallTools 및 Off가 포함됩니다.

이벤트 메시지는 이벤트 데이터 페이로드입니다. 다음은 이벤트 데이터 페이로드의 구조입니다.

{
  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 */
}

vRealize Orchestrator 매개 변수는 이름 및 유형별로 이벤트의 페이로드에 매핑됩니다.

virtualMachineEventworkflowNextState를 출력 매개 변수로 사용할 때, 제공하는 값은 이벤트를 트리거하고 현재 vRealize Orchestrator 워크플로를 시작한 워크플로의 상태 또는 이벤트를 나타내야 합니다. 가능한 수명 주기 상태 및 이벤트를 검토하려면 VMPS 마스터 워크플로 수명 주기 상태시스템 유형별 프로비저닝 수명 주기 상태 항목을 참조하십시오.

확장성 사용자 지정 속성 사용

가상 시스템 사용자 지정 속성은 수명 주기 상태에 대해 확장성 사용자 지정 속성으로 지정된 경우가 아니면 이벤트 페이로드에 포함되지 않습니다. 이러한 속성을 IaaS 끝점, 예약, Blueprint, 요청 및 사용자 지정 속성을 지원하는 기타 개체에 추가할 수 있습니다.

개체에 추가하는 사용자 지정 속성의 형식은 Extensibility.Lifecycle.Properties.{workflowName}.{stateName}입니다.

예를 들어 가상 시스템 상태가 BuildingMachine일 때 숨겨진 속성과 "Virtual"로 시작하는 모든 속성을 포함시키려면 Blueprint의 시스템에 사용자 지정 속성을 추가합니다. 이 예의 사용자 지정 속성 이름은 Extensibility.Lifecycle.Properties.VMPSMasterWorkflow32.BuildingMachine이고, 값은__*Virtual*입니다(쉼표로 구분됨).

두 마디의 밑줄(__*)에는 숨겨진 속성이 포함됩니다. Virtual* 값에는 'virtual'로 시작하는 모든 속성이 포함됩니다. 별표(*)는 와일드카드로, 단독 값으로 사용할 수 있지만 이런 식으로 와일드카드를 사용하면 대량의 데이터가 전송됩니다.

사용자 지정 속성이 포함된 나중에 트리거되는 여러 개의 워크플로 구독이 있는 경우 페이로드 확인에서 사용자 지정 속성이 유지되도록 워크플로에 적절한 항목을 포함시켜야 합니다.

표 1. 사용자 지정 속성을 유지하기 위한 작업 항목

상태

작업 항목

추가되거나 업데이트된 사용자 지정 속성

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

삭제된 사용자 지정 속성

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

수명 주기 또는 프로비저닝 스키마를 기반으로 vRealize Orchestrator 워크플로 생성

생성하는 사용자 지정 워크플로에는 Properties 유형을 가진 payload인 입력 매개 변수가 있어야 합니다. 워크플로가 vRealize Orchestrator에서 실행될 때 프로비저닝 또는 수명 주기 이벤트 데이터 페이로드가 이 매개 변수에 위치합니다 . 또한 이벤트의 페이로드에 있는 필드의 이름 및 유형과 일치하는 개별 입력 매개 변수를 포함할 수도 있습니다.