Skip to content

ID Transformation ON OFF Guide

ByoungSeob Kim edited this page Sep 8, 2024 · 5 revisions
CB-Spider는 CSP별 ID 관리 체계 및 naming 제약 등을 해결 하기 위해서 IID 개념을 제공하고 있으며, 
과정에서 사용자가 입력한 ID(NameID)를 내부 ID 체계로 변형(뒷부분을 UUID화)하여 제공한다.

간혹, 변형된 ID는 CSP 콘솔 및 CSP API 등을 통해서 확인할 때 매칭이 어려운 경우가 있어 
사용자가 ID 유지 및 변형 여부를 설정할 수 있도록 `ID 변형 모드`를 제공하며 활용 방법은 다음과 같다.


ID 변형 모드는 다음과 같이 2가지 방법으로 설정 가능하다.


1. 시스템 운영 환경 설정

  • Spider 시스템 운영 환경 설정 파일($CBSPIDER_ROOT/setup.env)의 ID_TRANSFORM_MODE 값을 설정한다.

  • OFF로 설정시 이후 생성되는 자원의 ID는 기본적으로 Spider에 의해 변형되지 않는다.

  • 설정 변경시 Spider 재실행을 해야 적용된다.

    ## If the value is OFF, Spider does not perform ID transformation.
    # default: ON
    export ID_TRANSFORM_MODE=ON
    

2. 자원 생성 API 호출시 설정

  • 자원 생성 호출시 IDTransformMode 인자를 설정(ON|OFF)한다.
  • API 호출시 설정은 시스템 운영 환경 설정보다 우선순위가 높다.
  • API 호출시 별도 설정이 없으면, ON과 동일한 효과를 갖는다.
  • Disk 생성시 ID 변환을 OFF 시키는 예시는 다음과 같다.
    curl -sX POST http://localhost:1024/spider/disk \
     -H 'Content-Type: application/json' \
     -d '{
           "ConnectionName": "aws-config01",
           "IDTransformMode" : "OFF",         # <==================
           "ReqInfo": {
             "Name": "spider-disk-01",
             "Zone": "us-east-2a",
             "DiskType": "default",
             "DiskSize": "default"
           }
         }'
    

3. 주의사항

  • OFF 설정 시 사용자는 CSP별 대상 자원의 Naming 제약을 고려한 NameID 정의가 필요하다.
  • 제약 예시
    • 최대 길이 제약: 참고
    • 사용 불가 문자: AWS SecurityGroup은 - 사용 불가능(sg-01: Fail, sg_01: OK)
  • UUID 처리가 없기 때문에, Connection이 달라도 NameID가 동일하다면 자원 생성 시에 NameID 중복 오류가 발생할 수도 있다.

4. 활용 예시

  • (1) 시스템 설정 활용 케이스

    • setup.env: ID_TRANSFORM_MODE=ON(default) 설정 후 Disk 생성 실행
    • ⇒ ID 변환 실행
      curl -sX POST http://localhost:1024/spider/disk \
       -H 'Content-Type: application/json' \
       -d '{
             "ConnectionName": "aws-config01",
             "ReqInfo": {
               "Name": "spider-disk-01",
               "Zone": "us-east-2a",
               "DiskType": "default",
               "DiskSize": "default"
             }
           }'
      
  • (2) 시스템 설정 활용 케이스

    • setup.env: ID_TRANSFORM_MODE=OFF 설정 후 Disk 생성 실행
    • ⇒ ID 변환 안함
      curl -sX POST http://localhost:1024/spider/disk \
       -H 'Content-Type: application/json' \
       -d '{
             "ConnectionName": "aws-config01",
             "ReqInfo": {
               "Name": "spider-disk-02",
               "Zone": "us-east-2a",
               "DiskType": "default",
               "DiskSize": "default"
             }
           }'
      
  • (3) API 설정 활용 케이스

    • setup.env: ID_TRANSFORM_MODE=OFF 설정 후
    • Disk 생성 API 호출시 IDTransformMode를 ON 설정으로 요청
    • API 호출시 설정이 우선
    • ⇒ ID 변환 실행
      curl -sX POST http://localhost:1024/spider/disk \
       -H 'Content-Type: application/json' \
       -d '{
             "ConnectionName": "aws-config01",
             "IDTransformMode" : "ON",         # <==================
             "ReqInfo": {
               "Name": "spider-disk-03",
               "Zone": "us-east-2a",
               "DiskType": "default",
               "DiskSize": "default"
             }
           }'
      
  • (4) 실행 결과

    • 위 3가지 케이스에 대해 CSP에 생성된 Disk ID 형식 참고
    • image

Table of contents



Clone this wiki locally