Você pode gerenciar implantações expiradas e seus recursos usando a ação Expire juntamente com tópicos de eventos existentes.

Após a expiração de uma concessão de implantação no seu ambiente, você poderá usar tópicos de eventos de extensibilidade para realizar tarefas, como interromper o backup ou monitorar qualquer recurso de implantação. Para realizar essas operações de dia 2, a API do vRealize Automation usa uma ação Expire em nível de sistema. Essa ação é disparada automaticamente pelo sistema sempre que uma concessão de implantação na sua organização expira. O gatilho da ação Expire precede o evento de desligamento para todos os recursos associados a essa implantação.
Observação: Em versões anteriores do produto, o evento de desligamento era disparado no nível de implantação após a expiração da concessão. Agora, o evento de desligamento é disparado no nível do recurso para cada recurso de implantação que está no estado ligado.
A ação Expire está incluída na payload de eventos existentes, como Ação de implantação solicitada e Ação de implantação concluída, e usa o parâmetro deploymentid para realizar as tarefas pré-expiração e pós-expiração associadas aos recursos de implantação.
Observação: A ação Expire é disparada aproximadamente de 10 a 15 minutos após a expiração da concessão de implantação. O sistema não aciona eventos de expiração de concessão antes da expiração real da concessão. Expire é uma ação no nível do sistema, e os usuários não podem disparar os eventos associados a ela manualmente.

Para o caso de uso atual, você está usando o tópico de evento Ação de implantação solicitada junto com a ação Expire para fazer backup de uma máquina virtual na sua implantação como um modelo. Para esse caso, o backup é realizado usando um fluxo de trabalho do vRealize Orchestrator, mas a mesma tarefa também pode ser realizada usando uma ação de extensibilidade como o item executável da assinatura.

Procedimento

  1. Navegue até Extensibilidade > Assinaturas e clique em Nova Assinatura.
  2. Insira um nome para a assinatura.
  3. Em Status, verifique se a assinatura está ativada.
  4. Em Tópico de Evento, selecione o tópico de evento Ação de implantação solicitada.
  5. Ative a opção Condição e adicione um filtro para a ação de expiração:
    event.data.actionName == 'Expire'
    Observação: O tópico de evento Ação de implantação solicitada pode ser acionado por diferentes operações de implantação de dia 2, como alterar a duração da concessão da implantação. Adicionar o filtro de ação de expiração de concessão garante que a assinatura seja disparada apenas para eventos de expiração.
  6. Em Ação/fluxo de trabalho, adicione o fluxo de trabalho do vRealize Orchestrator.
    O esquema desse fluxo de trabalho de amostra inclui uma tarefa programável por script e um elemento de fluxo de trabalho que inclui o fluxo de trabalho Clonar máquina virtual, sem personalização, que vem pré-configurado com o vRealize Orchestrator. O elemento de tarefa programável por script inclui o seguinte script de amostra:
    System.log("Lease expiry action triggered to clone a VM...")
    
    System.log("Deployment Id is: " + inputProperties.deploymentId);
    inputHeaders = new Properties();
    deploymentId = inputProperties.deploymentId;
    pathUriVariable = "/deployment/api/deployments/" +deploymentId +"/resources"; 
    var restClient = vRAHost.createRestClient();
    var request = restClient.createRequest("GET", pathUriVariable, null);
    var keys = inputHeaders.keys;
    for(var key in keys){
        request.setHeader(keys[key], inputHeaders.get(keys[key]));
    }
    var response = restClient.execute(request);
    System.log("Content as string: " + response.contentAsString);
    var content = response.contentAsString;
    var obj = JSON.parse(content);
    
    var object = new Properties(obj);
    var contentJson = object.content;
    for (var i = 0; i < contentJson.length; i++) {
        var resources = contentJson[i];
        
        var resourceProperties = resources.properties;
        System.log("Resource name is: " + resourceProperties.resourceName)
        resourceName = resourceProperties.resourceName;
    }
    
    var query = "xpath:name='" + resourceName + "'"; 
          var vms=Server.findAllForType("VC:VirtualMachine", query); 
          vcVM=vms[0]; 
         
          System.log("VM input is: " + vcVM);
          dataStoreOutput = datastore
          template= true;
          name="test-vm-name"
    
  7. Decida se deseja definir a assinatura como com bloqueio ou sem bloqueio.
    Observação: Tornar a assinatura com bloqueio significa que o evento de desligamento para os recursos de implantação é disparado somente depois que o item executável, neste caso, o fluxo de trabalho de expiração de concessão, conclui sua execução com êxito. Tornar a assinatura sem bloqueio significa que o evento de desligamento é acionado para os recursos de implantação, independentemente do status da execução do fluxo de trabalho.
  8. Para concluir a edição da assinatura, clique em Salvar.

O que Fazer Depois

Depois que a assinatura de extensibilidade for acionada pelo evento de expiração de concessão e a execução do fluxo de trabalho for bem-sucedida, navegue até o vSphere Web Client e valide se a sua máquina virtual foi convertida em um modelo.