ID Transformation ON OFF Guide - cloud-barista/cb-spider GitHub Wiki

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