기존 이벤트 항목과 함께 Expire 작업을 사용하여 만료된 배포 및 해당 리소스를 관리할 수 있습니다.

환경의 배포 리스가 만료된 후 확장성 이벤트 항목을 사용하여 백업 중지 또는 배포 리소스 모니터링과 같은 작업을 수행할 수 있습니다. 이러한 2일차 작업을 수행하기 위해 vRealize Automation API는 시스템 수준 Expire 작업을 사용합니다. 이 작업은 조직의 배포 리스가 만료될 때마다 시스템에서 자동으로 트리거됩니다. Expire 작업 트리거는 해당 배포와 연결된 모든 리소스에 대한 전원 끄기 이벤트보다 먼저 발생합니다.
참고: 이전 제품 릴리스에서는 리스 만료 후 배포 수준에서 전원 끄기 이벤트가 트리거되었습니다. 이제는 전원이 켜진 상태에 있는 각 배포 리소스의 리소스 수준에서 전원 끄기 이벤트가 트리거됩니다.
Expire 작업은 배포 작업 요청됨배포 작업 완료됨과 같은 기존 이벤트 항목의 페이로드에 포함되며 deploymentid 매개 변수를 사용하여 배포 리소스와 연결된 만료 전 및 만료 후 작업을 수행합니다.
참고: Expire 작업은 배포 리스가 만료되고 약 10~15분 후에 트리거됩니다. 시스템은 실제 리스 만료 전에 리스 만료 이벤트를 트리거하지 않습니다. Expire 작업은 시스템 수준 작업이며 이와 연결된 이벤트를 사용자가 수동으로 트리거할 수 없습니다.

현재 사용 사례에서는 Expire 작업과 함께 배포 작업 요청됨 이벤트 항목을 사용하여 배포의 가상 시스템을 템플릿으로 백업합니다. 이 경우 vRealize Orchestrator 워크플로를 사용하여 백업이 수행되지만 확장성 작업을 구독의 실행 가능 항목으로 사용하여 동일한 작업을 수행할 수도 있습니다.

프로시저

  1. 확장성 > 구독으로 이동한 후 새 구독을 클릭합니다.
  2. 구독의 이름을 입력합니다.
  3. 상태에서 구독이 사용되도록 설정되어 있는지 확인합니다.
  4. 이벤트 항목에서 배포 작업 요청됨 이벤트 항목을 선택합니다.
  5. 조건 옵션을 켜고 만료 작업에 대한 필터를 추가합니다.
    event.data.actionName == 'Expire'
    참고: 배포 작업 요청됨 이벤트 항목은 배포 리스 기간 변경과 같은 다른 배포 2일차 작업에 의해 트리거될 수 있습니다. 리스 만료 작업 필터를 추가하면 만료 이벤트에 대해서만 구독이 트리거됩니다.
  6. 작업/워크플로에서 vRealize Orchestrator 워크플로를 추가합니다.
    이 샘플 워크플로의 스키마에는 스크립팅 가능한 작업과 워크플로 요소가 포함되며, 여기에는 vRealize Orchestrator로 미리 구성된 가상 시스템 복제, 사용자 지정 없음 워크플로가 포함됩니다. 스크립팅 가능한 작업 요소에는 다음과 같은 샘플 스크립트가 포함됩니다.
    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. 구독을 차단 또는 비차단 중 무엇으로 설정할지 결정합니다.
    참고: 구독을 차단으로 설정하면 실행 가능 항목(이 경우 리스 만료 워크플로)이 실행을 성공적으로 마친 후에만 배포 리소스에 대한 전원 끄기 이벤트가 트리거됩니다. 구독을 비차단으로 설정하면 워크플로 실행 상태에 관계없이 배포 리소스에 대해 전원 끄기 이벤트가 트리거됩니다.
  8. 구독 편집을 완료하려면 저장을 클릭합니다.

다음에 수행할 작업

리스 만료 이벤트에 의해 확장성 구독이 트리거되고 워크플로 실행이 성공하면 vSphere Web Client로 이동하여 가상 시스템이 템플릿으로 변환되었는지 확인합니다.