OpenStack 자원 검색

  • 릴리스 버전: Yokohama
  • 업데이트 날짜 2025년 01월 30일
  • 읽기15분
  • ServiceNow 디스커버리 애플리케이션은 OpenStack 자원 검색 패턴을 사용하여 REST API 호출을 통해 OpenStack 자원을 찾습니다. 이러한 자원을 검색하려면 디스커버리 및 서비스 매핑 패턴 에서 애플리케이션을 ServiceNow Store업데이트해야 합니다.

    디스커버리는 OpenStack 자원 검색 패턴을 사용하여 가로 검색을 실행합니다.

    디스커버리 및 서비스 매핑 패턴 2024년 8월 스토어 릴리스부터 OpenStack 자원 검색 패턴은 프라이빗 및 퍼블릭 클라우드 검색을 모두 지원합니다.

    스토어에서 앱 요청

    ServiceNow Store 웹 사이트를 방문하면 사용 가능한 모든 앱을 확인하고 스토어에 요청을 제출하는 방법에 대한 정보를 참조할 수 있습니다. 출시된 모든 앱의 누적 릴리스 정보는 ServiceNow Store 버전 기록 릴리스 정보를 참조하십시오.

    필수 구성요소

    OpenStack 요구 사항
    • OpenStack Identity 서비스 카탈로그에서 OpenStack ID 서비스 엔드포인트로 사용되는 접근 URL을 찾습니다. (예: https://<openstack dns>: <port>)
    • 프로젝트 범위 토큰을 생성할 수 있는 권한이 있는 OpenStack 사용자를 구성합니다. 토큰을 생성하려면 도메인 ID, 사용자 이름, 프로젝트 이름, 암호 값을 설정해야 합니다.
    MID 서버 요구 사항

    클라우드 검색 전용 MID 서버를 배포하고 연결합니다.

    전용 MID 서버는 각 OpenStack 서비스를 검색할 수 있도록 OpenStack과 오픈 포트에 접근할 수 있어야 합니다.

    자격 증명
    Now Platform에서 ServiceNow 클라우드 서비스 계정에 대한 OpenStack 자격 증명을 생성합니다. OpenStack 요구 사항에서 구성한 도메인 ID, 사용자 이름, 프로젝트 이름 및 암호 값을 입력합니다. 자세한 내용은 Create and test your credentials 문서를 참조하십시오.
    서비스 계정
    Now Platform에서 생성된 OpenStack 자격 증명과 OpenStack 데이터센터 상세 정보를 사용하여 ServiceNow 클라우드 서비스 계정을 구성합니다. 계정 ID 필드에 검색할 OpenStack 프로젝트의 프로젝트 ID를 입력합니다.
    검색 일정 생성

    자세한 내용은 클라우드 디스커버리 작업 공간에서 검색 일정 생성 문서를 참조하십시오.

    OpenStack 서비스 계정에 대한 자동 검색 일정 생성(프라이빗 클라우드 전용)
    OpenStack - 서비스 계정 검색 패턴을 사용하여 OpenStack 서비스 계정에 대해 서버리스 자동 검색 일정을 생성합니다. 자세한 내용은 Now Support 지식베이스에서 오픈 스택에 대한 자동 클라우드 검색 일정[KB1638685]을 참조하십시오.

    가로 검색 중 디스커버리에서 수집하는 데이터

    디스커버리는 OpenStack 자원 검색 패턴을 실행할 때 CMDB에 데이터를 채웁니다.

    표 1. 가상 머신 인스턴스 [cmdb_ci_vm_instance]
    필드 설명
    객체 ID [object_id] 서버 UUID입니다.
    이름 [name] 서버 이름입니다.
    상태 [status] 서버 상태입니다.
    설명 [short_description] (선택 사항) 서버 설명입니다.
    CPU [cpus] VM 인스턴스가 프로비저닝되는 Flavor의 가상 CPU(vCPU) 수입니다.
    디스크 [disks] VM 인스턴스에서 반환되는 Cinder의 모든 관리 볼륨 수입니다.
    디스크 크기(GB) [disk_size] VM 인스턴스에서 사용하는 Cinder에서 관리하는 모든 볼륨의 총 양(GB)으로 측정됩니다.
    메모리(MB) [memory] VM 인스턴스가 프로비저닝되는 Flavor의 RAM 값으로, 메가바이트(MB)로 측정됩니다.
    네트워크 어댑터 [nics] VM 인스턴스에 구성된 고유 인터페이스 수입니다.
    상태 [state]
    VM 인스턴스에 대해 반환된 매핑된 상태 값입니다. OpenStack Server 상태 및 관련 ServiceNow 상태 값은 다음과 같습니다.
    • ACTIVE: 켜짐
    • RESCUED: 켜짐
    • PAUSED: 일시 중지됨
    • SUSPENDED: 꺼짐
    • STOPPED: 꺼짐
    • SOFT_DELETED: 종료됨
    • HARD_DELETED: 종료됨
    • RESIZED: 꺼짐
    • ERROR: 오류
    • INITIALIZED: 시작 중
    나열되지 않은 상태 값의 경우 기본값은 꺼짐입니다.
    표 2. 클라우드 키 쌍 [cmdb_ci_cloud_key_pair]
    필드 설명
    객체 ID [object_id] 키 쌍 UUID입니다.
    이름 [name] 참조하는 데 사용되는 키 쌍 이름입니다.
    지문 [finger_print] Keypair 지문입니다.
    표 3. 클라우드 부하 분산 장치 [cmdb_ci_cloud_load_balancer]
    필드 설명
    객체 ID [object_id] 부하 분산 장치 ID입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 자원 설명입니다.
    설치 상태 [install_status] 자원 프로비저닝 상태입니다.
    운영 상태 [operational_status] 자원 운영 상태입니다.
    표 4. 부하 분산 장치 수신기 [cmdb_ci_lb_listener]
    필드 설명
    객체 ID [object_id] 수신기 ID입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    설치 상태 [install_status] 자원의 프로비저닝 상태입니다.
    수신기 프로토콜 [listener_protocol] 자원에 대한 프로토콜입니다. HTTP, HTTPS, TCP, TERMINATED_HTTPS 또는 UDP 중 하나입니다.
    수신기 포트 [listener_port] 자원에 대한 프로토콜 포트 번호입니다.
    운영 상태 [operational_status] 자원 운영 상태입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 자원 설명입니다.
    표 5. 부하 분산 장치 풀 [cmdb_ci_lb_pool]
    필드 설명
    객체 ID [object_id] 풀 ID입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    설치 상태 [install_status] 자원 프로비저닝 상태입니다.
    운영 상태 [operational_status] 자원 운영 상태입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 자원 설명입니다.
    부하 분산 방법 [load_balancing_method] 풀에 대한 부하 분산 알고리즘입니다. LEAST_CONNECTIONS, ROUND_ROBIN, SOURCE_IP 또는 SOURCE_IP_PORT 값 중 하나입니다.
    표 6. 부하 분산 장치 풀 구성원 [cmdb_ci_lb_pool_member]
    필드 설명
    객체 ID [object_id] 풀 구성원 ID 입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    설치 상태 [install_status] 자원 프로비저닝 상태입니다.
    IP 주소 [ip_address] 백엔드 구성원 서버 IP 주소입니다.
    표 7. 스토리지 볼륨 [cmdb_ci_storage_volume]
    필드 설명
    객체 ID [object_id] 볼륨 UUID입니다.
    이름 [name] 볼륨 이름입니다.
    상태 [status] 볼륨 상태입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    저장소 유형 [storage_type] 연결된 볼륨 유형입니다.
    표 8. 스토리지 볼륨 스냅샷 [cmdb_ci_storage_vol_snapshot]
    필드 설명
    객체 ID [object_id] 볼륨 UUID입니다.
    이름 [name] 볼륨 이름입니다.
    상태 [status] 볼륨 상태입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    표 9. 이미지 [cmdb_ci_os_template]
    필드 설명
    객체 ID [object_id] 사용자 정의 이미지 UUID입니다.
    이름 [name] 이미지 이름입니다. 값은 null(JSON Null 데이터 형식)일 수 있습니다.
    상태 [status] 이미지 상태입니다.
    표 10. 클라우드 네트워크 [cmdb_ci_network]
    필드 설명
    객체 ID [object_id] 네트워크 ID입니다.
    이름 [name] 사람이 읽을 수 있는 네트워크 이름입니다.
    운영 상태 [operational_status] 네트워크 상태입니다. 가능한 값은 활성, 다운, 빌드 또는 오류입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    표 11. 클라우드 서브넷 [cmdb_ci_cloud_subnet]
    필드 설명
    객체 ID [object_id] 서브넷 ID입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    DHCP 사용 설정 [is_dhcp_enabled] 서브넷에 DHCP가 사용 설정되어 있는지 여부입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    표 12. 컴퓨팅 보안 그룹 [cmdb_ci_compute_security_group]
    필드 설명
    객체 ID [object_id] 보안 그룹 ID입니다.
    이름 [name] 사람이 읽을 수 있는 자원 이름입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    표 13. 보안 그룹 규칙 [cmdb_ci_compute_security_group_rule]
    필드 설명
    이름 [name] 이 필드의 값은 object_id 필드와 같습니다.
    객체 ID [object_id] 보안 그룹 규칙 ID입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    Ethertype [ethertype] Ethertype입니다. IPv4 또는 IPv6여야 합니다. CIDR에 표시되는 주소가 수신 또는 발신 규칙과 일치해야 합니다.
    포트 범위 최댓값 [port_range_max] 규칙이 적용되는 범위의 마지막 포트입니다. 이 값은 보안 그룹 규칙과 일치하는 범위의 최대 포트 번호입니다.
    • 프로토콜이 TCP, UDP, DCCP, SCTP 또는 UDP-Lite인 경우 이 값은 port_range_min 속성 값 이상이어야 합니다.
    • 프로토콜이 ICMP인 경우 이 값은 ICMP 코드여야 합니다.
    포트 범위 최솟값 [port_range_min] 규칙이 적용되는 범위의 첫 번째 포트입니다. 이 값은 보안 그룹 규칙과 일치하는 범위의 최소 포트 번호입니다.
    • 프로토콜이 TCP, UDP, DCCP, SCTP 또는 UDP-Lite인 경우 이 값은 port_range_max 속성 값 이하여야 합니다.
    • 프로토콜이 ICMP인 경우 이 값은 ICMP 유형이어야 합니다.
    표 14. OpenStack 도메인 [cmdb_ci_cloud_openstack_domain]
    필드 설명
    객체 ID [object_id] 도메인 ID입니다.
    이름 [name] 도메인 이름입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    사용 설정 [enabled] 도메인이 활성화되는지 비활성화되는지 정의합니다.
    • True - 도메인이 사용 설정됩니다.
    • False - 도메인이 사용 중지됩니다.
    표 15. OpenStack 서비스 [cmdb_ci_cloud_openstack_service]
    필드 설명
    객체 ID [object_id] 서비스 ID입니다.
    이름 [name] 서비스 이름입니다.
    설명 [short_description] (선택 사항) 사람이 읽을 수 있는 설명입니다.
    유형 [type] 서비스 유형입니다. 서비스가 구현하는 API에 대한 설명입니다. 가능한 값은 Compute, ec2, id, image, network 또는 volume입니다.
    카탈로그 사용 설정 [enabled] 서비스 카탈로그에 서비스 및 엔드포인트가 나타나는지 여부를 정의합니다.
    • True - 서비스 카탈로그에 서비스 및 엔드포인트가 나타납니다.
    • False - 서비스 카탈로그에 서비스 및 엔드포인트가 나타나지 않습니다.
    표 16. OpenStack 엔드포인트 [cmdb_ci_cloud_openstack_service]
    필드 설명
    객체 ID [object_id] 엔드포인트 ID입니다.
    이름 [name] 서비스 이름입니다.
    인터페이스 [interface] 엔드포인트의 가시성을 설명하는 인터페이스 유형입니다. 가능한 값:
    • Public - 공개적으로 사용 가능한 네트워크 인터페이스에서 최종 사용자에게 표시됩니다.
    • Internal - 측정되지 않는 내부 네트워크 인터페이스에서 최종 사용자에게 표시됩니다.
    • Admin - 보안 네트워크 인터페이스에서 관리자에게 표시됩니다.
    카탈로그 사용 설정 [enabled] 서비스 카탈로그에 서비스 및 엔드포인트가 나타나는지 여부를 정의합니다.
    • True - 서비스 카탈로그에 서비스 및 엔드포인트가 나타납니다.
    • False - 서비스 카탈로그에 서비스 및 엔드포인트가 나타나지 않습니다.
    표 17. 클라우드 하드웨어 유형[cmdb_ci_cloud_hardware]
    필드 설명
    이름 [name] OpenStack Flavor의 이름 필드입니다.
    객체 ID [object_id] OpenStack Flavor의 id 필드입니다.
    vCPU [vcpus] OpenStack Flavor의 vcpus 필드입니다.
    메모리 MB [memory_mb] OpenStack Flavor의 ram 필드입니다.
    로컬 스토리지 GB [local_storage_gb] OpenStack Flavor의 디스크 필드입니다.
    검색된 데이터에는 OpenStack 하이퍼바이저 뷰 [cmdb_ci_openstack_hypervisor_view] 테이블과 프라이빗 클라우드 전용 필드가 포함됩니다.
    표 18. OpenStack 하이퍼바이저 뷰 [cmdb_ci_openstack_hypervisor_view] 테이블 필드
    필드 설명
    이름 [name] hypervisor_typehypervisor_hostname 필드의 연결된 값입니다. 예: QEMU@host.acmecorp.com.
    IP 주소 [ip_address] host_ip 필드의 값입니다.
    하이퍼바이저 기술 [hypervisor_technology] hypervisor_type 필드의 값입니다.
    객체 ID [object_id] id 필드의 값입니다.
    상태 [state] state 필드의 값입니다.
    버전 [version] hypervisor_version 필드의 값입니다.
    의존성 뷰 맵에는 REST API 호출을 통해 사용 가능한 조직에서 검색된 모든 OpenStack 자원 CI와 해당 자원 간의 관계가 표시됩니다.
    그림 1. OpenStack 네트워크 의존성


    그림 2. OpenStack VM Dependency


    CI 관계

    다음 테이블에 나열된 관계는 OpenStack 자원 검색을 지원하기 위해 생성됩니다.
    CI 관계 CI
    cmdb_ci_openstack_datacenter Hosted on::Hosts cmdb_ci_cloud_service_account
    cmdb_ci_cloud_openstack_service Hosted on::Hosts cmdb_ci_cloud_service_account
    cmdb_ci_cloud_openstack_endpoint Use endpoint to::Use endpoint from cmdb_ci_cloud_openstack_service
    cmdb_ci_cloud_openstack_endpoint Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_cloud_openstack_domain Owns::Owned by cmdb_ci_cloud_service_account
    cmdb_ci_network Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_network Contains::Contained by cmdb_ci_cloud_subnet
    cmdb_ci_compute_security_group Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_compute_security_group Contains::Contained by cmdb_ci_compute_security_group_rule
    cmdb_ci_cloud_load_balancer Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_cloud_load_balancer Contains::Contained by cmdb_ci_lb_listener
    cmdb_ci_lb_pool Hosted on::Hosts cmdb_ci_cloud_load_balancer
    cmdb_ci_lb_pool Owns::Owned by cmdb_ci_lb_pool_member
    cmdb_ci_storage_volume Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_vm_instance Uses::Used by cmdb_ci_storage_volume
    cmdb_ci_storage_vol_snapshot Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_storage_vol_snapshot Provisioned from::Provisioned cmdb_ci_storage_volume
    cmdb_ci_vm_instance Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_cloud_key_pair Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_os_template Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_vm_instance Provisioned from::Provisioned cmdb_ci_os_template
    cmdb_ci_vm_instance Virtualized by::Virtualizes cmdb_ci_server
    다음 테이블에 나열된 관계는 프라이빗 클라우드에서만 OpenStack 자원 검색을 지원하기 위해 생성됩니다.
    CI 관계 CI
    cmdb_ci_vm_instance Registered on::Has registered cmdb_ci_openstack_hypervisor_view
    cmdb_ci_openstack_hypervisor_view Hosted on::Hosts cmdb_ci_openstack_datacenter
    cmdb_ci_openstack_hypervisor_view Uses::Hosts Used by cmdb_ci_server