VM Spec Info Guide - cloud-barista/cb-spider GitHub Wiki

1. CB-Spider VM Spec Info ๊ฐœ์š”

  • ์‚ฌ์šฉ์ž๋Š” VM Spec Name์„ ์„ค์ •ํ•˜์—ฌ ํ•ด๋‹น VM Spec์˜ ์†์„ฑ(VCPU., MEM ๋“ฑ ์ž์› ๊ทœ๋ชจ ์ •๋ณด)์„ ์ค€์ˆ˜ํ•˜๋Š” VM์„ ์ƒ์„ฑ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.

  • CB-Spider๊ฐ€ ์ œ๊ณตํ•˜๋Š” VM Spec ์ •๋ณด ๋ฐ ์ œ๊ณต VM Spec์œผ๋กœ๋ถ€ํ„ฐ ์ƒ์„ฑ๋œ VM์˜ ์ •๋ณด์™€์˜ ๊ด€๊ณ„๊ฐ€ ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™๋‹ค.

  • ์‚ฌ์šฉ์ž๋Š” ์ถ”์ƒํ™”๋œ CB-Spider VM Spec ์ •๋ณด๋ฅผ ํ™œ์šฉํ•˜์—ฌ ์›ํ•˜๋Š” ์šด์˜ ํ™˜๊ฒฝ(CPU ๊ฐœ์ˆ˜, Memory ํฌ๊ธฐ ๋“ฑ)์˜ VM์„ ์ƒ์„ฑ ์š”์ฒญํ•  ์ˆ˜ ์žˆ๋‹ค.

2. CB-Spider VM Spec Info API ๋ฐ ์ œ๊ณต ์ •๋ณด ๊ทœ๊ฒฉ

  • ์‚ฌ์šฉ์ž๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ CB-Spider REST API๋ฅผ ์ด์šฉํ•˜์—ฌ VM Spec ์ •๋ณด๋ฅผ JSON ๊ทœ๊ฒฉ์œผ๋กœ ์ œ๊ณต ๋ฐ›๋Š”๋‹ค.

    GET /vmspec            - List VM Specs
    GET /vmspec/{Name}     - Get VM Spec
    GET /vmorgspec         - List Original VM Specs
    GET /vmorgspec/{Name}  - Get Original VM Spec
    
  • ์ œ๊ณต ๋˜๋Š” JSON ๊ฒฐ๊ณผ์— ํฌํ•จ๋œ ์ •๋ณด๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

    ์†์„ฑ ๋ช…์นญ ์ œ๊ณต ์ •๋ณด ์ œ๊ณต ๊ฐ’ ์˜ˆ์‹œ
    Name CSP๊ฐ€ ๊ด€๋ฆฌ ๋ฐ ์ œ๊ณตํ•˜๋Š” VM Spec Name ์ •๋ณด โ— t2.micro, Standard_D2a_v4 ๋“ฑ
    Region VM Spec์„ ์ œ๊ณตํ•˜๋Š” Region Name ์ •๋ณด โ— us-east-1, northeurope ๋“ฑ
    VCpu VM Spec์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” VM์˜ CPU ์ž์› ์ •๋ณด, Count(๊ฐœ์ˆ˜)์™€ ClockGHz(Frequency) ์ •๋ณด๋กœ ๊ตฌ์„ฑ โ— {2, 2.5}, {32, 3.0} ๋“ฑ โ— -1: CSP๊ฐ€ ๊ฐ’์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Œ
    MemSizeMiB VM Spec์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” VM์˜ Memory ํฌ๊ธฐ ์ •๋ณด โ— 1024, 16384 ๋“ฑ
    DiskSizeGB VM Spec์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” VM์˜ Root Disk ํฌ๊ธฐ ์ •๋ณด, CSP์— ๋”ฐ๋ผ VM์— ํ•„์š”ํ•œ ์ž„์‹œ Disk ์˜์—ญ ๋“ฑ์„ ํฌํ•จ ๊ฐ€๋Šฅ โ— 8, 100 ๋“ฑ โ— -1: CSP๊ฐ€ ๊ฐ’์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Œ
    Gpu VM Spec์œผ๋กœ ์ƒ์„ฑ๋˜๋Š” VM์ด ํ™œ์šฉ ๊ฐ€๋Šฅํ•œ GPU ์ •๋ณด, Count(๊ฐœ์ˆ˜), Mfr(์ œ์กฐํšŒ์‚ฌ), Model(๋ชจ๋ธ), MemSizeGB(๋‹จ์ผ GPU ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ), TotalMemSizeGB(์ „์ฒด GPU ๋ฉ”๋ชจ๋ฆฌ ํฌ๊ธฐ) ์ •๋ณด๋กœ ๊ตฌ์„ฑ โ— {2, NVIDIA, Tesla T4, 16, 32}, {8, NVIDIA, H100, 85, 687} ๋“ฑ โ— NA | -1: CSP๊ฐ€ ๊ฐ’์„ ์ œ๊ณตํ•˜์ง€ ์•Š์Œ
    KeyValueList CSP๊ฐ€ ์ œ๊ณตํ•˜๋Š” VM Spec ์ •๋ณด๋ฅผ Key/Value List ํ˜•ํƒœ๋กœ ์ œ๊ณต โ— "KeyValueList" : [       {          "Key" : "AutoRecoverySupported",          "Value" : โ€œfalse"       },       {          "Key" : "Hypervisor",          "Value" : "nitro"       },       โ€ฆ

3. CB-Spider VM Spec Info API ๋ฐ ์ œ๊ณต ์ •๋ณด ์˜ˆ์‹œ

  • AWS g6e.48xlarge VM Spec ์ •๋ณด ํ˜ธ์ถœ API ๋ฐ ์ œ๊ณต ์ •๋ณด ์˜ˆ์‹œ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.

    curl -sX 'GET' 'http://localhost:1024/spider/vmspec/g6e.48xlarge?ConnectionName=aws-config01' | json_pp
    
    {
          "Name" : "g6e.48xlarge",
          "Region" : "us-east-2",
          "VCpu" : {
                "ClockGHz" : "3.4",
                "Count" : "192"
             },
          "MemSizeMib" : "1572864",
          "DiskSizeGB" : "-1",
          "Gpu" : [
                {
                   "Count" : "8",
                   "MemSizeGB" : "384",
                   "Mfr" : "NVIDIA",
                   "Model" : "L40S",
                   "TotalMemSizeGB" : "3072"
                }
             ],
             "KeyValueList" : [
                   {
                      "Key" : "AutoRecoverySupported",
                      "Value" : โ€œfalse"
                   },
                   {
                      "Key" : "GpuInfo",
                      "Value" : "{Gpus:[{Count:8,Manufacturer:NVIDIA,MemoryInfo:{SizeInMiB:366211},Name:L40S}],TotalGpuMemoryInMiB:2929688}"
                   },
                   โ€ฆ
             ]
    }
    

4. CB-Spider VM Spec Info AdminWeb ์ œ๊ณต ์˜ˆ์‹œ

  • ๋‹ค์Œ ์ˆœ์„œ๋กœ ๋Œ€์ƒ CSP ์„ ํƒ ๋ฐ VM Spec ์ •๋ณด๋ฅผ ์š”์ฒญํ•œ๋‹ค.

  • AWS VM Spec Info ์ œ๊ณต ์ •๋ณด ์˜ˆ์‹œ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค.