---
sourceDocument: 호주 IT Operations Management
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/ko-KR/it-operations-management

 Release :

    - australia

ft:locale :

    - ko-KR

ft:publication_title :

    - 호주 IT Operations Management

ft:clusterId :

    - itom

bundleId :

    - itom

workflow :

    - Technology


---

# 가상 서버 응답 프로세서 예시

# 가상 서버 응답 프로세서 예시 {#ariaid-title1}

* 릴리스 버전: Australia
* 
* 업데이트 날짜 2026년 03월 12일
* 
* ![](https://www.servicenow.com/docs/portal-asset/ico-clock) 소요 시간: 5분

에서 기본적으로 클라우드 프로비저닝 및 거버넌스사용할 수 있는 스크립트는 Create_Virtual_Server_Response_Processor AWS 가상 머신 CI 생성을 처리하는 응답 프로세서입니다.

## 가상 서버 만들기 {#response-processor-example__section_q5y_xt3_v2b}

Create_Virtual_Server_Response_Processor 자원 프로세서 스크립트는 가상 서버 자원 블록에서 기본적으로 사용할 수 있습니다. 이 작업은 새 가상 서버를 구축할 때 가상 머신 인스턴스\[cmdb_ci_vm_instance\] 테이블에 가상 서버 기록을 만드는 것입니다.  
모든 응답 프로세서에는 다음과 같은 공통 매개변수가 포함된 이 첫 번째 줄이 있습니다.

    function processResponse(response, cloudServiceAccountId, ldc, correlationId,step, requestorContext) {

클라우드 제공자로부터 응답을 가져오며 시스템에서 만들 수 있는 새 CI에 필요한 계정 ID와 같은 중요한 정보를 가져옵니다. 이러한 모든 매개변수는 모든 응답 프로세서에 필요합니다.

10번 줄은 시스템에서 처리할 수 있도록 응답을 JSON으로 구문 분석합니다. 이 정보는 vmResponse 변수에 보관됩니다.  


    var vmResponse = global.JSON.parse(response);

응답 프로세서를 만들거나 편집할 때마다 CI 유형에 필요한 입력 사항을 알고 있어야 합니다. 라인 11은 CMDB 기록에 필요한 필수 입력 중 하나인 하드웨어 ID를 처리합니다.  


    var hardwareId = vmResponse.hardwareId;

39번 줄은 시스템에서 새 가상 서버와 관련 CI를 식별하는 데 필요한 정보를 보여주므로 정보를 CMDB에 넣을 수 있습니다. 이 경우 서비스 계정 개체 ID는 가상 서버와 연결된 계정을 식별하고, 데이터센터 개체 ID는 가상 서버가 있는 데이터센터를 식별하고, 가상 머신 인스턴스 개체 ID는 가상 서버를 식별합니다. 이 식별 코드 블록은 중복 CI를 만들지 못하게 합니다.  


    var vmInfo = {
        "cmdb_ci_vm_instance": {
          "validator": "virtual_machine_create_update_validator",
          "validator_overrides": {},
          "identification": {
            "cmdb_ci_cloud_service_account": {
              "criterion": {
                "object_id": cloudServiceAccountId
              }
            },
            "cmdb_ci_aws_datacenter": {
              "criterion": {
                "object_id": ldc
              }
            },
            "cmdb_ci_vm_instance": {
              "criterion": {
                "object_id": vmResponse.nodeId
              }
            }
          },

속성은 cmdb_ci_vm_instance 테이블의 필드에 채워집니다. 이러한 속성은 61번 줄에 정의되어 있습니다.  


    "attributes": {
      "name": vmResponse.nodeName,
      "object_id": vmResponse.nodeId,
      "state": status_map[vmResponse.state],
      "dns_suffix": vmResponse.dnsSuffix,
      "cpus": vmCPUs,
      "memory": vmMemory,
      "disks": vmResponse.volumes.length,
      "disks_size": "",
      "nics": vmResponse.networkInterfaces.length,
      "terminated_on": "",
      "termination_protection": "",
      "ip_address": vmPubIPAddr,
      "assigned_to": reqContext.userId,
      "assignment_group": reqContext.groupId
    },

다른 CI에 대한 참조도 응답 프로세서에 포함할 수 있습니다. 이 경우 가상 서버의 기반이 되는 OS 템플릿은 먼저 실제 OS 템플릿과 함께 서비스 계정의 개체 ID와 데이터센터를 식별하여 식별됩니다.  


    "references": {
      "cmdb_ci_os_template": {
        "identification": {
          "cmdb_ci_cloud_service_account": {
            "criterion": {
              "object_id": cloudServiceAccountId
            }
          },
          "cmdb_ci_aws_datacenter": {
            "criterion": {
              "object_id": ldc
            }
          },
          "cmdb_ci_os_template": {
            "criterion": {
              "object_id": imageIdTrim
            }
          }
        },

다음 코드 블록은 이 정보를 가상 서버 CMDB 기록에 채울 수 있도록 OS 이미지의 객체 ID를 속성 목록에 추가합니다.  


    "attributes": {
      "object_id": imageIdTrim
    }

이 코드 블록은 계산 템플릿(하드웨어 종류)에서 추가 식별을 수행한 다음 속성에 추가합니다.  


    "cmdb_ci_compute_template": {
      "identification": {
        "cmdb_ci_cloud_service_account": {
          "criterion": {
            "object_id": cloudServiceAccountId
          }
        },
        "cmdb_ci_aws_datacenter": {
          "criterion": {
            "object_id": ldc
          }
        },
        "cmdb_ci_compute_template": {
          "criterion": {
            "object_id": vmResponse.hardwareId
          }
        }
      },
      "attributes": {
        "object_id": vmResponse.hardwareId,
        "name": vmResponse.hardwareId
      }
    }

추가 코드 섹션은 네트워크 인터페이스와의 관계를 만들고 가상 서버에 연결된 모든 저장소를 식별합니다.

이 필수 코드 블록은 데이터를 CMDB에 푸시하고 JSON 문자열을 반환합니다.  


    cloudModelString.push(vmInfo);
    return global.JSON.stringify(cloudModelString);


