VM Price Info Guide - cloud-barista/cb-spider GitHub Wiki
1. CB-Spider VM Price Info ๊ฐ์
-
์๋ก ๋ค๋ฅธ CSP(Cloud Service Provider)์ VM ๊ฐ๊ฒฉ ์ ๋ณด๋ฅผ ๋์ผํ API๋ฅผ ํตํด์ ์ ๊ณตํ๋ฉฐ,
-
๋์ผํ ๊ตฌ์กฐ์ JSON ํํ๋ก ํ์คํ๋ ๊ฒฐ๊ณผ๋ก ์ ๊ณตํ๋ค.
-
์ฌ์ฉ์๋ ๋ฉํฐ ํด๋ผ์ฐ๋ ํ๊ฒฝ์์ VM์ ํจ์จ์ ์ธ ๊ฐ๊ฒฉ ๋น๊ต ๋ฐ VM ์ ํ ์์ฌ๊ฒฐ์ ๋ฑ์ ํ์ฉํ ์ ์๋ค.
-
CB-Spider๊ฐ ์ ๊ณตํ๋ ๊ฐ๊ฒฉ ์ ๋ณด ๋์ ๋ฐ ๊ฒ์ฆ ๊ธฐ์ค ๋ฑ์ด ๋ค์๊ณผ ๊ฐ๋ค.
ํญ๋ชฉ ์ค๋ช ์ ๊ณต ์ ๋ณด VM Spec ๊ธฐ์ค OnDemand ๊ฐ๊ฒฉ ์ ๋ณด (USD / Hour) โป VM Spec Price: CSP๋ณ Root Disk, Network ํฌํจ ์ฌ๋ถ ์์ดํจ ์ ๊ณต ๋ฐฉ๋ฒ ๊ฐ CSP API ๊ธฐ๋ฐ์ ์ต์ ๊ฐ๊ฒฉ ์ ๋ณด ์ ๊ณต โป ์์ธ: GCP ๊ฒฝ์ฐ Compute Pricing Page ๊ธฐ๋ฐ ์ต์ ๊ฐ๊ฒฉ ์ ๋ณด ์ ๊ณต(์ฌ์ ) ์ ํ๋ ๊ฐ๊ฒฉ: 100% ์ ํ / ๊ฐ์: ์ฝ๊ฐ์ ์ค์ฐจ ํ์ฉ ๊ฒ์ฆ ๊ธฐ์ค ๊ฐ CSP ๊ณต์ ์น์ฌ์ดํธ ๊ฐ๊ฒฉ ์ ๋ณด ๊ธฐ์ค ์ง์ CSP AWS, Azure, GCP, Alibaba, Tencent, IBM, NCP
2. CB-Spider VM Price Info ์ ๊ณต ํํฉ
-
์ง์ ๋์ CSP๋ณ ๊ฒ์ฆ ํํฉ ๋ฐ ํน์ด ์ฌํญ์ด ๋ค์๊ณผ ๊ฐ๋ค.
CSP ๊ฐ๊ฒฉ ์ ํ๋ ์ ๊ณต ๊ฐ์ ๊ณต์ ๊ฐ๊ฒฉ ์ ๋ณด ๋น๊ณ AWS ์ ํ Web๊ณผ ๋์ผ AWS EC2 Pricing Azure ์ ํ Web๋ณด๋ค 50์ฌ๊ฐ ๋ง์ Azure VM Pricing GCP ์ ํ Web๊ณผ ์ผ๋ถ ์ฐจ์ด GCP Compute Pricing API๋ก ์ ๊ณตํ๋ VM Spec ๊ธฐ์ค์ผ๋ก ๊ฐ๊ฒฉ ์ ๊ณต โป API ์ ๊ณต VM Spec ๋ชฉ๋ก
!=Compute Pricing Page ์ ๊ณต VM Spec ๋ชฉ๋ก
Alibaba ์ ํ ๋ณ๋ ๊ฐ๋ฅ Alibaba ECS Pricing ๊ฐ๊ฒฉ ๊ฐ์: Available Instance Type ๊ธฐ์ค Tencent ์ ํ Web ๋ณด๋ค 10์ฌ๊ฐ ๋ง์ Tencent CVM Pricing IBM ์ ํ Web ๋ณด๋ค 10์ฌ๊ฐ ์ ์ IBM Pricing API ๋ฏธ์ ๊ณต ํญ๋ชฉ ์กด์ฌ NCP ์ ํ G3 ๊ฐ๊ฒฉ ๋ฏธ์ ๊ณต NCP Server Pricing ํ์ฌ API๋ G3 ๊ฐ๊ฒฉ ์ ๋ณด ๋ฏธ์ ๊ณต
3. CB-Spider VM Price Info API ๋ฐ ์ ๊ณต ์ ๋ณด ์์
-
์ฌ์ฉ์๋ ๋ค์๊ณผ ๊ฐ์ CB-Spider REST API๋ฅผ ์ด์ฉํ์ฌ VM Price ์ ๋ณด๋ฅผ JSON ๊ท๊ฒฉ์ผ๋ก ์ ๊ณต ๋ฐ๋๋ค.
- โป ํ์ฌ Filter ๊ธฐ๋ฅ์ ์ ์ ๋์ํ์ง ์์
POST /priceinfo/vm/{RegionName}
-
AWS
ap-northeast-2
(seoul) ๋ฆฌ์ VM ๊ฐ๊ฒฉ ์ ๋ณด ์กฐํ API ๋ฐ ์ ๊ณต ์ ๋ณด ์์๊ฐ ๋ค์๊ณผ ๊ฐ๋ค.[์์ฒญ ์์]
curl -sX 'POST' 'http://localhost:1024/spider/priceinfo/vm/ap-northeast-2' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "connectionName": "aws-config01"}' | json_pp
[์๋ต ์์]
{ "CloudName" : "AWS", "Meta" : { "Description" : "Multi-Cloud Price Info", "Version" : "0.5" }, "PriceList" : [ { "PriceInfo" : { "OnDemand" : { "Currency" : "USD", "Description" : "$2.1018 per On Demand Linux m7gd.8xlarge Instance Hour", "Price" : "2.1018", "PricingId" : "SJ7S6NGHJ8HZZW7K.JRTCKXETXF.6YS6EN2CT7", "Unit" : "Hour" }, "CSPPriceInfo" : {... ์๋ต ...} }, "ProductInfo" : { "Description" : "productFamily= Compute Instance, version= 20250918064406", "ProductId" : "SJ7S6NGHJ8HZZW7K", "VMSpecInfo" : { "DiskSizeGB" : "-1", "MemSizeMiB" : "131072", "Name" : "m7gd.8xlarge", "Region" : "ap-northeast-2", "VCpu" : { "ClockGHz" : "-1", "Count" : "32" } }, "CSPProductInfo" : {... ์๋ต ...} }, "ZoneName" : "NA" }, ...
simple
์ต์ ์ ์ฌ์ฉํ ๊ฐ๊ฒฉ ์ ๋ณด ์กฐํ API ๋ฐ ์ ๊ณต ์ ๋ณด ์์๊ฐ ๋ค์๊ณผ ๊ฐ๋ค.-
simple
์ต์ : VMSpec ๊ตฌ์กฐ ์ ๋ณด ๋์ ๊ฐ๋จํ VMSpecName๋ง ์ ๊ณต[์์ฒญ ์์]
curl -sX 'POST' 'http://localhost:1024/spider/priceinfo/vm/ap-northeast-2?simple' \ -H 'accept: application/json' \ -H 'Content-Type: application/json' \ -d '{ "connectionName": "aws-config01"}' | json_pp
[์๋ต ์์]
{ "CloudName" : "AWS", "Meta" : { "Description" : "Multi-Cloud Price Info", "Version" : "0.5" }, "PriceList" : [ { "PriceInfo" : { "OnDemand" : { "Currency" : "USD", "Description" : "$2.1018 per On Demand Linux m7gd.8xlarge Instance Hour", "Price" : "2.1018", "PricingId" : "SJ7S6NGHJ8HZZW7K.JRTCKXETXF.6YS6EN2CT7", "Unit" : "Hour" }, "CSPPriceInfo" : {... ์๋ต ...} }, "ProductInfo" : { "Description" : "productFamily= Compute Instance, version= 20250918064406", "ProductId" : "SJ7S6NGHJ8HZZW7K", "VMSpecName" : "m7gd.8xlarge" }, "CSPProductInfo" : {... ์๋ต ...} }, "ZoneName" : "NA" }, ...
-
4. CB-Spider VM Price Info AdminWeb ์ ๊ณต ์์
- ๋ค์ ์์๋ก ๋์ CSP๋ฅผ ์ ํํ๊ณ
Price
ํ์ด์ง๋ก ์ด๋ํ๋ค.
- ๋์ Region ์ ํ ๋ฐ VM Price ์ ๋ณด๋ฅผ ์์ฒญํ๋ค. ( โป ํ์ฌ Filter ๊ธฐ๋ฅ์ ์ ์ ๋์ํ์ง ์์ )
- AWS VM Price Info ์ ๊ณต ์ ๋ณด ์์๊ฐ ๋ค์๊ณผ ๊ฐ๋ค.