Pivotal Cloud Foundry 검색

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기14분
  • ServiceNow 검색 애플리케이션은 Pivotal Cloud Foundry 패턴을 사용하여 Pivotal Cloud Foundry(PCF) 버전 3 구성요소를 찾습니다. 이러한 자원을 검색하려면 ServiceNow Store에서 검색 및 서비스 매핑 패턴 애플리케이션을 업데이트해야 합니다.

    Now Platform Kingston 버전부터 이 패턴을 사용할 수 있습니다.

    PCF V3 구성요소의 검색은 검색 및 서비스 매핑 패턴 플러그인 버전 1.0.99(2023년 3월)가 설치되어 있을 때 지원됩니다. 이 패턴은 PCF V2 구성요소의 검색을 계속 지원합니다.

    스토어에서 앱 요청

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

    필요 조건

    Pivotal Cloud Foundry 자격 증명
    Pivotal Cloud Foundry 자격 증명을 생성합니다.
    1. 다음으로 이동 디스커버리 > 자격 증명.
    2. 새로 만들기를 선택합니다.
    3. CloudFoundry 자격 증명을 선택합니다.
    4. 양식의 필드에 내용을 입력합니다.
      필드 설명
      이름 자격 증명 이름입니다. 예: pcf_user 자격 증명
      활성 검색에 이 자격 증명을 사용하도록 설정하는 옵션입니다. 검색을 사용하려면 이 확인란을 선택합니다.
      적용 대상 네트워크의 모든 MID Server 또는 하나 이상의 특정 MID Server에 적용하거나 적용하지 않으려는 자격 증명입니다. 특정 MID Server를 선택합니다.
      순서 플랫폼이 장치에 로그인하려고 할 때 이 자격 증명을 시도하는 순서입니다. 숫자가 작을수록 자격 증명이 목록에서 더 위에 나타납니다. 많은 수의 자격 증명을 사용하거나 로그인 시도가 3회 실패하여 보안상 사용자가 잠기는 경우 자격 증명 순서를 설정하십시오. 모든 자격 증명의 순서 번호가 같거나 없으면 인스턴스에서 임의의 순서로 자격 증명을 시도합니다. 기본값은 100입니다.
      사용자 이름 이 자격 증명의 사용자 이름입니다. 사용자 이름에 선행 또는 후행 공백을 넣지 않도록 합니다. 플랫폼이 사용자 이름에서 선행 또는 후행 공백을 탐지하면 경고가 나타납니다. 예: pcf_user JWT 토큰을 생성하는 데 사용되는 client_id를 사용합니다.
      암호 이러한 자격 증명의 사용자에 대한 암호입니다. JWT 토큰을 생성하는 데 사용되는 client_secret을 사용합니다.
      자격 증명 별칭 이 자격 증명의 대체 이름입니다. 예: cf

      이 필드가 닫혀 있으면 잠금 해제 아이콘을 선택하여 필드의 잠금을 해제합니다.

    5. 업데이트를 선택합니다.
    JSON 웹 토큰 자격 증명
    JSON 웹 토큰(JWT)을 확인하려면 다음 토큰 확인 단계를 수행하십시오.

    JWT 토큰의 형식은 다음과 같습니다: https://docs.cloudfoundry.org/api/uaa/version/4.27.0/index.html#jwt-bearer-token-grant

    1. UAA(사용자 계정 및 인증) 서버 API에 대해 다음 cURL 스크립트를 실행하고 결과를 확인합니다.

      curl -s -k https://ip_address:port/oauth/token -X; POST -H ”Content-Type: application/x-www-form-urlencoded” -H “Accept: application/json” -d “client_id=<INSERT_USER_HERE>&client_secret=<INSERT_PASS_HERE>&grant_type=client_credentials&token_format=jwt&response_type=token”

      이 명령이 토큰을 생성하지 않으면 ServiceNow 리포지토리의 자격 증명이 올바른지 확인하고, 그렇지 않으면 2단계로 이동하십시오.

    2. Pivotal Cloud Foundry API에 대해 다음 cURL 스크립트를 실행합니다.

      curl https://ip_address:port/v3/spaces -k -v -H “Accept: application/json” -H “Authorization: bearer<INSERT TOKEN HERE>”

      이 명령이 PCF 공간 정보를 검색하지 않으면 ServiceNow 자격 증명 리포지토리에서 자격 증명을 확인합니다.

    V3 API 요소에 대한 자격 증명
    읽기 전용 사용자에게 다음 API 요소를 사용할 수 있는 권한을 제공합니다.
    • –/v3/organizations
    • –/v3/spaces
    • –/v3/domains
    • –/v3/routes
    • –/v3/organization_quotas
    • –/v3/space_quotas
    • –/v3/apps
    • -/v3/service_offerings
    • -/v3/service_plans
    • -/v3/service_instances
    • -/v3/droplets
    주:
    Pivotal Cloud Foundry 패턴은 PCF V2 API도 지원합니다.
    서버리스 검색 일정 생성
    1. 다음으로 이동 디스커버리 > 디스커버리 일정.
    2. 새로 만들기를 선택합니다.
    3. 양식의 필드에 내용을 입력합니다.
      표 1. 검색 일정 양식
      필드 설명
      이름 검색 일정에 대해 고유하고 설명적인 이름을 입력합니다(예: pcf ).
      검색 검색 유형에 대해 서버리스를 선택합니다.
      MID 서버 자격 증명이 적용되는 MID 서버입니다. 필요한 MID 서버를 지정합니다(예: Discovery_Server ).
      활성 검색에 이 자격 증명을 사용하도록 설정하는 옵션입니다. 검색을 사용하려면 이 확인란을 선택합니다.
      자격 증명 별칭 이 자격 증명의 대체 이름입니다. 앞에서 생성한 Pivotal Cloud Foundry 자격 증명과 관련된 별칭을 사용합니다.
    4. 검색 일정 양식의 헤더를 마우스 오른쪽 버튼으로 클릭하고 저장을 선택합니다.

      서버리스 실행 패턴

    5. 서버리스 실행 패턴 탭을 선택합니다.
    6. 새로 만들기를 선택합니다.
    7. 양식의 필드에 내용을 입력합니다.
      표 2. 서버리스 실행 패턴 양식
      필드 설명
      이름 이 서버리스 실행 패턴에 대한 고유하고 설명적인 이름을 입력합니다(예: pcf1 ).
      패턴 CloudFoundry를 선택합니다.
      프록시 호스트 프록시 서버를 설치할 컴퓨터의 전체 주소 도메인 이름입니다. 전역을 지정합니다.
      활성 검색에 이 일정을 사용하도록 설정하는 확인란입니다. 이 확인란을 선택합니다.
    8. 서버리스 실행 패턴 양식의 헤더를 마우스 오른쪽 버튼으로 클릭하고 저장을 선택합니다.
    9. 서버리스 실행 패턴 탭을 선택합니다.
    10. 제품 설명서에 설명된 대로 서버리스 실행 패턴을 생성하고 정의합니다.
      다음과 같이 Pivotal Cloud Foundry 패턴에 필요한 매개변수를 구성합니다.
      표 3. 검색 패턴 시작 관리자 매개변수
      매개변수 설명
      조직 검색해야 하는 조직의 이름 또는 입력이 "*"인 모든 조직입니다.
      CredentialAlias 이 자격 증명의 대체 이름입니다. 앞에서 생성한 Pivotal Cloud Foundry 자격 증명과 관련된 별칭을 사용합니다.
      URL_CF Pivotal Cloud Foundry에서 정보를 검색하는 데 사용되는 클라우드 컨트롤러의 API URL입니다.
      URL_CF_AUTH 토큰을 생성하는 데 사용되는 UAA 서버 API​입니다. https://uaa.sys.dev.phx.pcf.example.com/oauth/token 형식으로 값을 입력합니다.
    11. 업데이트합니다.
    12. 검색을 시작하려면 서버리스 검색 정의로 이동하고 지금 검색을 선택합니다.
    EVAL 종결 함수

    다음 EVAL 종결 함수를 사용하여 모든 조직을 구분 기호인 ","로 연결합니다.

    var rtrn = ’’;
    var organizations = ${organizations[*].name};
    var beforeReturn = ’’;
    var separator = ’’;
    for (var i = 0; i < organizations.size(); i++)   
    	{
    	beforeReturn += separator + organizations.get(i);  
    	separator = ',';   
    	}
    rtrn = beforeReturn;
    

    다음 EVAL 종결 함수를 사용하여 운영 상태가 활성 상태이면 1을 반환하고 비활성 상태이면 2를 반환합니다.

    var rtrn = '';
    var currentOrgStatus = ${organizations[].operational_status};
    var status = currentOrgStatus.toLowerCase();
    if(status == "active"){  
       rtrn = "1";  
    }
    else { 
       rtrn = "2";
    }
    

    다음 EVAL 종결 함수를 사용하여 운영 상태가 시작됨이면 1을 반환하고 시작되지 않았음이면 2를 반환합니다.

    var rtrn = '';
    var currentAppStatus = ${apps[].state};
    var status = currentAppStatus.toLowerCase();
    if(status == "started"){
       rtrn = "1";  
    }
    else {   
       rtrn = "2";   
    }
    
    CloudFoundry Get Call
    CloudFoundry Get Call 사용자 지정 작업은 토큰 생성을 처리합니다. 또한 자격 증명과 URL_CF_AUTH 컨텍스트 변수를 사용하여 API 호출을 생성하는 데 사용되는 토큰을 생성합니다.

    토큰이 생성될 때 URL_CF는 자원 필드에 정의된 API 호출을 생성하는 데 사용됩니다. 사용자 지정 작업은 응답에 여러 페이지가 있는 페이지 매김도 처리합니다.

    CloudFoundry Get Call은 입력 JSON을 구문 분석하여 테이블과 변수를 채웁니다.

    Cloud Foundry 사용자 지정 작업

    Pivotal Cloud Foundry BOSH 확장 섹션

    Pivotal Cloud Foundry BOSH는 Pivotal Cloud Foundry 패턴의 확장 섹션입니다.

    이 확장은 검색 및 서비스 매핑 패턴 1.6.0 릴리스(2023년 6월)의 ServiceNow® Store에서 사용할 수 있습니다.
    Pivotal Cloud Foundry BOSH에 대한 요구 사항
    주:
    다음 요구 사항은 BOSH 확장 섹션에만 해당됩니다.
    Opsman 인증 URL은 이름이 URL_OPSMAN_AUTH인 패턴 매개변수로 제공되어야 합니다. 예: https://<opsman entry point>/uaa/oauth/token
    추가된 자격 증명에는 다음 API를 실행할 수 있는 권한이 있어야 합니다.
    • /uaa/oauth/token
    • /api/v0/deployed/products
    주:
    사용자 지정 API는 패턴에 anzu Opsman Get API 단계로 추가됩니다.

    가로 검색 중 검색에서 수집하는 데이터

    표 4. 수집된 정보
    필드 설명
    메인 CI: PCF Foundation [cmdb_ci_pcf_foundation]
    이름 Pivotal Cloud Foundry 클러스터 항목 이름

    <name>-<hostCf:<portCf>

    ip_address Pivotal Cloud Foundry 호스트 IP입니다.
    port Pivotal Cloud Foundry 서비스 포트입니다.
    short_description Pivotal Cloud Foundry 서비스 빌드 번호입니다.
    조직 PCF 클러스터에서 관리하는 조직 목록입니다. 항목은 쉼표 구분 기호인 ","로 구분됩니다.
    PCF 조직 [cmdb_ci_pcf_organization]
    이름 조직 이름
    URL 조직 고유 URL
    pcf_guid CF의 조직 UID
    operational_status 조직 상태
    PCF Space [cmdb_ci_pcf_space]
    이름 공간 이름
    URL 공간 고유 URL
    pcf_guid CF의 공간 UID
    PCF 애플리케이션 [cmdb_ci_pcf_appl]
    이름 애플리케이션 이름
    URL 애플리케이션 고유 URL
    pcf_guid CF의 애플리케이션 UID
    PCF 경로 [cmdb_ci_pcf_route]
    이름 경로 이름
    URL 경로 고유 URL
    pcf_guid CF의 경로 UID
    port 경로 포트
    type 경로 유형
    PCF 할당량 [cmdb_ci_pcf_quota]
    이름 할당량 이름
    URL 할당량 고유 URL
    pcf_guid CF의 할당량 UID
    PCF 도메인 [cmdb_ci_pcf_domain]
    name 도메인 이름
    url 도메인 고유 URL
    pcf_guid CF의 도메인 UID
    PCF Space 인스턴스 [cmdb_ci_pcf_space_instance]
    name 공간 서비스 인스턴스 이름
    url 공간 서비스 인스턴스 고유 URL
    pcf_guid CF의 공간 서비스 인스턴스 UID
    PCF 서비스 계획 [cmdb_ci_pcf_service_plan]
    name 서비스 계획 인스턴스 이름
    url 서비스 계획 고유 URL
    pcf_guid CF의 공간 서비스 인스턴스 UID
    PCF 서비스 [cmdb_ci_pcf_service]
    name 서비스 이름
    url 서비스 고유 URL
    pcf_guid CF의 서비스 UID
    PCF 드롭릿 [cmdb_ci_pcf_droplet]
    name 리소스 URL
    pcf_guid 드롭릿 ID
    url 드롭릿 URL
    install_status 설치 상태: 1, "설치됨"
    operational_status 운영 상태: 1, "운영"
    키 값 [cmdb_key_value]
    자원 태그 키
    주:
    이 데이터는 V3 API 호출에 대해서만 수집됩니다.
    자원 태그 값
    주:
    이 데이터는 V3 API 호출에 대해서만 수집됩니다.
    표 5. Pivotal Cloud Foundry BOSH 확장 섹션에서 검색한 데이터
    필드 설명

    BOSH 배포(cmdb_ci_bosh_deployment)

    이름 자원의 설치 이름입니다.
    object_id 배포된 제품의 ID입니다.
    install_status 값에 하드 코딩됨: 1= 설치됨.
    operational_status 값에 하드 코딩됨: 1 = 운영.
    deployment_version 배포된 제품의 버전입니다.
    deployment_type 배포된 제품의 유형입니다.

    CI 관계

    이러한 관계는 Pivotal Cloud Foundry 검색을 지원하기 위해 생성됩니다.

    CI 관계 CI
    PCF Space [cmdb_ci_pcf_space]
    cmdb_ci_pcf_space Contains::Contained by cmdb_ci_pcf_organization
    PCF 애플리케이션 [cmdb_ci_pcf_appl]
    cmdb_ci_pcf_appl Contains::Contained by cmdb_ci_pcf_space
    PCF 경로 [cmdb_ci_pcf_route]
    cmdb_ci_pcf_route Contains::Contained by cmdb_ci_pcf_foundation
    PCF 할당량 [cmdb_ci_pcf_quota]
    cmdb_ci_pcf_quota Uses::Used by cmdb_ci_pcf_space

    cmdb_ci_pcf_organization

    PCF 도메인 [cmdb_ci_pcf_domain]
    cmdb_ci_pcf_domain Uses::Used by cmdb_ci_pcf_route
    Owns::Owned by cmdb_ci_pcf_organization
    Contains::Contained by cmdb_ci_pcf_foundation
    PCF Space 인스턴스 [cmdb_ci_pcf_space_instance]
    cmdb_ci_pcf_space_instance Contains::Contained by cmdb_ci_pcf_space
    PCF 서비스 계획 [cmdb_ci_pcf_service_plan]
    cmdb_ci_pcf_service_plan Uses::Used by cmdb_ci_pcf_space_instance
    PCF 서비스 [cmdb_ci_pcf_service]
    cmdb_ci_pcf_service Uses::Used by cmdb_ci_pcf_service_plan
    PCF 드롭릿 [cmdb_ci_pcf_droplet]
    cmdb_ci_pcf_appl Contains::Contained by cmdb_ci_pcf_droplet
    키 값 [cmdb_key_value]
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_droplet
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_organization
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_space
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_domain
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_route
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_appl
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_service
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_service_plan
    cmdb_key_value 참조용.

    예: configuration_item

    cmdb_ci_pcf_space_instance

    Pivotal Cloud Foundry BOSH 관계

    이러한 관계는 Pivotal Cloud Foundry BOSH 확장 섹션 검색을 지원하기 위해 생성됩니다.

    CI 관계 CI

    Cloud Foundry 클러스터 [cmdb_ci_pcf_foundation]

    Contains::Contained by

    BOSH 배포 [cmdb_ci_bosh_deployment]