Multi-node GPU Cluster

Overview

SCP에서 제공하는 IaaS/PaaS 상품을 프로그램적으로 이용할 수 있도록 지원하는 응용 프로그램 인터페이스(Application Programming Interface, API)를 제공합니다.

본 가이드는 Multi-node GPU Cluster 서비스에 대한 간략한 설명 및 API를 호출하는 방법을 제공합니다. API는 RESTful API 방식으로 제공되며, JSON 형식으로 응답합니다.

Version

Not Before 기간이 도래하거나 만료된 Deprecated 버전은 더 이상 지원하지 않습니다. 최신 버전 사용을 권장합니다.

VersionStatusNot Before
1.2CURRENT-
1.1DEPRECATED20260331
1.0DEPRECATED20251231

OpenAPI URL

https://multinodegpucluster.{region}.{environment}.samsungsdscloud.com

Environment and Region List

environmentregion
skr-west1
skr-east1
gkr-south1
gkr-south2
gkr-south3
ekr-west1
ekr-east1

1 - APIs

1.1 - Assign GpuNode Public NAT IP

1.1.1 - 1.2

post /v1/gpu-nodes/{gpu_node_id}/public-nat-ip

Description

Assign public NAT IP to GPU Node.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathgpu_node_id
required
GPU Node ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone
bodybody
required

GpuNodeAssignPublicNatIpRequest

Responses

HTTP CodeDescriptionSchema
202AcceptedGpuNodeActionResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/{gpu_node_id}/public-nat-ip

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "public_ip_address_id": ""
}

Example HTTP response

Response 202

{
    "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.2 - Create GPU Nodes

1.2.1 - 1.2

post /v1/gpu-nodes

Description

Create GPU Nodes.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

GpuNodeCreateRequest

Responses

HTTP CodeDescriptionSchema
202AcceptedAsyncResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "cluster_fabric_details": {
        "cluster_fabric_id": "20c507a036c447cdb3b19468d8ea62ac",
        "cluster_fabric_name": "cluster001",
        "node_pool_id": "POOL001-krw1a"
    },
    "image_id": "IMAGE-7XFMaJpLsapKvskFMjCtmm",
    "init_script": "init script",
    "lock_enabled": true,
    "os_user_id": "user001",
    "os_user_password": "password",
    "region_id": "kr-west1",
    "server_details": [
        {
            "gpu_node_name": "gpu-node-001",
            "ip_address": "192.168.0.1",
            "nat_enabled": true,
            "public_ip_address_id": "20c507a036c447cdb3b19468d8ea62ac",
            "server_type_id": "f90e8ef54cc2451b825608e9f95f7bcb"
        }
    ],
    "subnet_id": "ab313c43291e4b678f4bacffe10768ae",
    "tags": [
        {
            "key": "",
            "value": ""
        }
    ],
    "vpc_id": "e58348b1bc9148e5af86500fd4ef99ca"
}

Example HTTP response

Response 202

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "request_id": "req-002daa83-52d9-41e8-9b0f-d31d35610f65",
    "resource_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.3 - Delete GPU Nodes

1.3.1 - 1.2

delete /v1/gpu-nodes

Description

Delete GPU Nodes.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

GpuNodeTerminateRequest

Responses

HTTP CodeDescriptionSchema
202AcceptedAsyncResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "gpu_node_ids": [
        "20c507a036c447cdb3b19468d8ea62ac"
    ]
}

Example HTTP response

Response 202

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "request_id": "req-002daa83-52d9-41e8-9b0f-d31d35610f65",
    "resource_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.4 - List Cluster Fabrics

1.4.1 - 1.2

get /v1/cluster-fabrics

Description

List Cluster Fabrics.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
querysize
optional
size
Example : 20
any of [integer, null]20
querypage
optional
page
Example : 0
any of [integer, null]0
querysort
optional
sort
Example : created_at:desc
any of [string, null]None
querycluster_fabric_name
optional
Cluster Fabric 이름
Example : cluster001
any of [string, null]None
querystate
optional
State
Example : RUNNING
any of [string, null]None
querynode_pool_id
optional
Node Pool ID
Example : POOL001-krw1a
any of [string, null]None

Responses

HTTP CodeDescriptionSchema
200OKClusterFabricListResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/cluster-fabrics

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "cluster_fabrics": [
        {
            "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
            "cluster_name": "cluster001",
            "created_at": "2024-05-17T00:23:17Z",
            "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "description": "description",
            "gpu_node_details": [
                {
                    "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac",
                    "gpu_node_name": "gpu-node-001",
                    "policy_ip": "192.168.0.1",
                    "product_type_id": "f90e8ef54cc2451b825608e9f95f7bcb",
                    "server_type": "s1v8m32_metal",
                    "state": "RUNNING"
                }
            ],
            "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
            "modified_at": "2024-05-17T00:23:17Z",
            "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "node_pool_id": "POOL001-krw1a",
            "pirp_id": "20",
            "product_id": "f90e8ef54cc2451b825608e9f95f7bcb",
            "region_id": "kr-west1",
            "server_type": "s1v8m32_metal",
            "state": "RUNNING",
            "used_server_count": 20
        }
    ],
    "count": 20
}

1.5 - List GPU Node Images

1.5.1 - 1.2

get /v1/gpu-nodes/images

Description

List GPU Node images.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
queryregion_id
required
리전 ID
Example : kr-west1
stringNone

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeImageListResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/images?region_id={region_id}

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "images": [
        {
            "created_at": "2024-07-11 08:56:59",
            "id": "IMAGE-7XFMaJpLsapKvskFMjCtmm",
            "name": "RHEL 8.8 for BM",
            "os_distro": "RHEL",
            "priority": 20,
            "scp_image_type": "STANDARD",
            "scp_os_version": "8.7"
        }
    ]
}

1.6 - List GPU Node Products

1.6.1 - 1.2

get /v1/gpu-nodes/products

Description

List GPU Node products.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
querytype
optional
Product 타입
Example : SCALE
any of [string, null]None
queryimage_id
optional
이미지 ID
Example : IMAGE-7XFMaJpLsapKvskFMjCtmm
any of [string, null]None

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeProductListResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/products

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "products": [
        {
            "created_at": "2024-05-17T00:23:17Z",
            "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "description": "vCPU 16 │ Memory 128G │ Disk 480G",
            "id": "SCALE",
            "modified_at": "2024-05-17T00:23:17Z",
            "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "name": "s2v16m128_metal",
            "product_attrs": {
                "compute_class_type_name": "GPU H100 Metal-2",
                "compute_class_type_value": "g2_mteal",
                "cpu_value": "64",
                "disk_unit": "GB",
                "disk_value": "480",
                "gpu_model": "H100",
                "memory_value": "128"
            },
            "state": "AVAILABLE",
            "type": "SCALE"
        }
    ]
}

1.7 - List GPU Nodes

1.7.1 - 1.2

get /v1/gpu-nodes

Description

List GPU Nodes.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
querysize
optional
size
Example : 20
any of [integer, null]20
querypage
optional
page
Example : 0
any of [integer, null]0
querysort
optional
sort
Example : created_at:desc
any of [string, null]None
querygpu_node_name
optional
GPU Node 이름
Example : gpu-node-001
any of [string, null]None
querystate
optional
GPU Node State
Example : RUNNING
any of [string, null]None
queryip
optional
Gpu Node ip
Example : 192.168.0.1
any of [string, null]None
queryvpc_id
optional
VPC ID
Example : e58348b1bc9148e5af86500fd4ef99ca
any of [string, null]None
querycluster_fabric_name
optional
Cluster Fabric 이름
Example : cluster001
any of [string, null]None
querycluster_fabric_id
optional
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
any of [string, null]None

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeListResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "count": 20,
    "gpu_nodes": [
        {
            "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
            "cluster_fabric_id": "20c507a036c447cdb3b19468d8ea62ac",
            "cluster_fabric_name": "cluster001",
            "created_at": "2024-05-17T00:23:17Z",
            "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "gpu_node_name": "gpu-node-001",
            "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
            "image_id": "IMAGE-7XFMaJpLsapKvskFMjCtmm",
            "image_version": "RHEL 8.7 for BM",
            "init_script": "init script",
            "lock_enabled": true,
            "modified_at": "2024-05-17T00:23:17Z",
            "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
            "network_id": "ab313c43291e4b678f4bacffe10768ae",
            "node_pool_id": "POOL001-krw1a",
            "os_type": "WINDOWS",
            "pfs_ip": [
                "10.252.128.2",
                "10.252.128.3"
            ],
            "policy_ip": "192.168.0.1",
            "policy_nat": "192.168.0.1",
            "policy_use_nat": true,
            "product_type_id": "f90e8ef54cc2451b825608e9f95f7bcb",
            "region_id": "kr-west1",
            "root_account": "rootaccount",
            "server_type": "s1v8m32_metal",
            "state": "RUNNING",
            "time_zone": "Asia/Seoul",
            "vpc_id": "e58348b1bc9148e5af86500fd4ef99ca"
        }
    ]
}

1.8 - List Node Pools

1.8.1 - 1.2

get /v1/cluster-fabrics/node-pools

Description

List node pools.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
querysubnet_id
optional
Subnet ID
Example : ab313c43291e4b678f4bacffe10768ae
any of [string, null]None
querycluster_fabric_id
optional
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
any of [string, null]None
querynode_pool_id
optional
Node Pool ID
Example : POOL001-krw1a
any of [string, null]None

Responses

HTTP CodeDescriptionSchema
200OKNodePoolListResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/cluster-fabrics/node-pools

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "count": 20,
    "node_pools": [
        {
            "cluster_fabric_details": [],
            "node_pool_id": "POOL001-krw1a"
        }
    ]
}

1.9 - Lock GPU Node

1.9.1 - 1.2

put /v1/gpu-nodes/{gpu_node_id}/lock

Description

Lock GPU Node.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathgpu_node_id
required
GPU Node ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeActionResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/{gpu_node_id}/lock

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.10 - Modify Cluster Fabric Members

1.10.1 - 1.2

post /v1/cluster-fabrics/modify-members

Description

Modify Cluster Fabric Members.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

ClusterFabricMemberModifyRequestBody

Responses

HTTP CodeDescriptionSchema
202AcceptedAsyncResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/cluster-fabrics/modify-members

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "after_cluster_fabric_id": "20c507a036c447cdb3b19468d8ea62ac",
    "before_cluster_fabric_id": "20c507a036c447cdb3b19468d8ea62ac",
    "gpu_node_id_list": [
        "20c507a036c447cdb3b19468d8ea62ac"
    ]
}

Example HTTP response

Response 202

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "request_id": "req-002daa83-52d9-41e8-9b0f-d31d35610f65",
    "resource_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.11 - Release GPU Node Public NAT IP

1.11.1 - 1.2

delete /v1/gpu-nodes/{gpu_node_id}/public-nat-ip

Description

Release public NAT IP from GPU Node.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathgpu_node_id
required
GPU Node ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone

Responses

HTTP CodeDescriptionSchema
202AcceptedGpuNodeActionResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/{gpu_node_id}/public-nat-ip

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 202

{
    "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.12 - Show Cluster Fabric

1.12.1 - 1.2

get /v1/cluster-fabrics/{cluster_fabric_id}

Description

Show Cluster Fabric.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathcluster_fabric_id
required
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone

Responses

HTTP CodeDescriptionSchema
200OKClusterFabricShowResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/cluster-fabrics/{cluster_fabric_id}

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "cluster_name": "cluster001",
    "created_at": "2024-05-17T00:23:17Z",
    "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
    "description": "description",
    "gpu_node_details": [
        {
            "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac",
            "gpu_node_name": "gpu-node-001",
            "policy_ip": "192.168.0.1",
            "product_type_id": "f90e8ef54cc2451b825608e9f95f7bcb",
            "server_type": "s1v8m32_metal",
            "state": "RUNNING"
        }
    ],
    "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
    "modified_at": "2024-05-17T00:23:17Z",
    "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
    "node_pool_id": "POOL001-krw1a",
    "pirp_id": "20",
    "product_id": "f90e8ef54cc2451b825608e9f95f7bcb",
    "region_id": "kr-west1",
    "server_type": "s1v8m32_metal",
    "state": "RUNNING",
    "used_server_count": 20
}

1.13 - Show GPU Node

1.13.1 - 1.2

get /v1/gpu-nodes/{gpu_node_id}

Description

Show GPU Node.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathgpu_node_id
required
ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeShowResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/{gpu_node_id}

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "cluster_fabric_id": "20c507a036c447cdb3b19468d8ea62ac",
    "cluster_fabric_name": "cluster001",
    "created_at": "2024-05-17T00:23:17Z",
    "created_by": "90dddfc2b1e04edba54ba2b41539a9ac",
    "gpu_node_name": "gpu-node-001",
    "id": "0fdd87aab8cb46f59b7c1f81ed03fb3e",
    "image_id": "IMAGE-7XFMaJpLsapKvskFMjCtmm",
    "image_version": "RHEL 8.7 for BM",
    "init_script": "init script",
    "lock_enabled": true,
    "modified_at": "2024-05-17T00:23:17Z",
    "modified_by": "90dddfc2b1e04edba54ba2b41539a9ac",
    "network_id": "ab313c43291e4b678f4bacffe10768ae",
    "node_pool_id": "POOL001-krw1a",
    "os_type": "WINDOWS",
    "pfs_ip": [
        "10.252.128.2",
        "10.252.128.3"
    ],
    "policy_ip": "192.168.0.1",
    "policy_nat": "192.168.0.1",
    "policy_use_nat": true,
    "product_type_id": "f90e8ef54cc2451b825608e9f95f7bcb",
    "region_id": "kr-west1",
    "root_account": "rootaccount",
    "server_type": "s1v8m32_metal",
    "state": "RUNNING",
    "time_zone": "Asia/Seoul",
    "vpc_id": "e58348b1bc9148e5af86500fd4ef99ca"
}

1.14 - Start GPU Nodes

1.14.1 - 1.2

post /v1/gpu-nodes/start

Description

Start GPU Nodes.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

GpuNodeOperationRequest

Responses

HTTP CodeDescriptionSchema
202AcceptedAsyncResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/start

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "gpu_node_ids": [
        "20c507a036c447cdb3b19468d8ea62ac"
    ]
}

Example HTTP response

Response 202

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "request_id": "req-002daa83-52d9-41e8-9b0f-d31d35610f65",
    "resource_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.15 - Stop GPU Nodes

1.15.1 - 1.2

post /v1/gpu-nodes/stop

Description

Stop GPU Nodes.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
bodybody
required

GpuNodeOperationRequest

Responses

HTTP CodeDescriptionSchema
202AcceptedAsyncResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/stop

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Request body

{
    "gpu_node_ids": [
        "20c507a036c447cdb3b19468d8ea62ac"
    ]
}

Example HTTP response

Response 202

{
    "account_id": "f5c8e56a4d9b49a8bd89e14758a32d53",
    "request_id": "req-002daa83-52d9-41e8-9b0f-d31d35610f65",
    "resource_id": "20c507a036c447cdb3b19468d8ea62ac"
}

1.16 - Unlock GPU Node

1.16.1 - 1.2

put /v1/gpu-nodes/{gpu_node_id}/unlock

Description

Unlock GPU Node.

상태 ACTIVE (CURRENT)

버전최소 지원 보장일
1.2-

Parameters

TypeNameDescriptionSchemaDefault
pathgpu_node_id
required
GPU Node ID
Example : 20c507a036c447cdb3b19468d8ea62ac
stringNone

Responses

HTTP CodeDescriptionSchema
200OKGpuNodeActionResponse
400Bad RequestNone
401UnauthorizedNone
403ForbiddenNone
404Not FoundNone

Example HTTP request

Request path

/v1/gpu-nodes/{gpu_node_id}/unlock

Request header

"Scp-Accesskey = 2sd2gg=2agbdSD26svcD",
"Scp-Signature = fsfsdf235f9U35sdgf35Xsf/qgsdgsdg326=sfsdr23rsef=",
"Scp-Timestamp = 1605290625682",
"Scp-ClientType = Openapi",
"Accept-Language = ko-KR",
"Scp-Api-Version = multinodegpucluster 1.2"

Example HTTP response

Response 200

{
    "gpu_node_id": "20c507a036c447cdb3b19468d8ea62ac"
}

2 - Models

2.1 - AsyncResponse

NameDescriptionSchemaDefault
account_id
required
Account ID
Example : f5c8e56a4d9b49a8bd89e14758a32d53
string
request_id
required
Request ID
Example : req-002daa83-52d9-41e8-9b0f-d31d35610f65
string
resource_id
required
자원 ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string

2.2 - ClusterFabricDetailsRequest

NameDescriptionSchemaDefault
cluster_fabric_id
required
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
any of [string, null]
cluster_fabric_name
required
Cluster Fabric 이름
Example : cluster001
string
node_pool_id
required
Node Pool ID
Example : POOL001-krw1a
string

2.3 - ClusterFabricDetailsResponse

NameDescriptionSchemaDefault
cluster_fabric_id
required
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string
cluster_fabric_name
required
Cluster Fabric 이름
Example : cluster001
string
product_id
required
Product ID
Example : f90e8ef54cc2451b825608e9f95f7bcb
any of [string, null]

2.4 - ClusterFabricListResponse

NameDescriptionSchemaDefault
cluster_fabrics
required

array[ClusterFabricShowResponse]
count
required
대수
Example : 20
any of [integer, null]

2.5 - ClusterFabricMemberModifyRequestBody

NameDescriptionSchemaDefault
after_cluster_fabric_id
required
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string
before_cluster_fabric_id
required
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string
gpu_node_id_list
required
GPU Node ID List
Example : ['20c507a036c447cdb3b19468d8ea62ac']
array[string]

2.6 - ClusterFabricShowResponse

NameDescriptionSchemaDefault
account_id
required
Account ID
Example : f5c8e56a4d9b49a8bd89e14758a32d53
string
cluster_name
required
Cluster Fabric 이름
Example : cluster001
string
created_at
required
생성 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
생성자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
description
required
설명
Example : description
string
gpu_node_details
optional
GPU Node 상세
any of [array[GpuNodeDetailsResponse], null]
id
required
ID
Example : 0fdd87aab8cb46f59b7c1f81ed03fb3e
string
modified_at
required
수정 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
수정자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
node_pool_id
required
Node Pool ID
Example : POOL001-krw1a
string
pirp_id
optional
pirpId
Example : 20
any of [string, null]
product_id
required
Product Type ID
Example : f90e8ef54cc2451b825608e9f95f7bcb
string
region_id
required
리전 ID
Example : kr-west1
string
server_type
optional
Server Type
Example : s1v8m32_metal
any of [string, null]
state
required
State
Example : RUNNING
string
used_server_count
optional
GPU Node Count
Example : 20
any of [integer, null]

2.7 - GpuNodeActionResponse

NameDescriptionSchemaDefault
gpu_node_id
required
GPU Node ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string

2.8 - GpuNodeAssignPublicNatIpRequest

NameDescriptionSchemaDefault
public_ip_address_id
required
Public NAT IP Address ID
Example :
string

2.9 - GpuNodeCreateRequest

NameDescriptionSchemaDefault
cluster_fabric_details
required
Cluster Fabric 상세
ClusterFabricDetailsRequest
image_id
required
이미지 ID
Example : IMAGE-7XFMaJpLsapKvskFMjCtmm
string
init_script
optional
Init Script
Example : init script
any of [string, null]
lock_enabled
optional
삭제 방지 여부
Example : True
boolean
os_user_id
required
OS 사용자 계정
Example : user001
string
os_user_password
required
OS 사용자 패스워드
Example : password
string
region_id
required
리전 ID
Example : kr-west1
string
server_details
required
서버 상세
array[GpuNodeDetailsRequest]
subnet_id
required
Subnet ID
Example : ab313c43291e4b678f4bacffe10768ae
string
tags
required
Tags
any of [array[Tag], null]
vpc_id
required
VPC ID
Example : e58348b1bc9148e5af86500fd4ef99ca
string

2.10 - GpuNodeDetailsRequest

NameDescriptionSchemaDefault
gpu_node_name
required
GPU Node 이름
Example : gpu-node-001
string
ip_address
optional
Private IP
Example : 192.168.0.1
any of [string, null]
nat_enabled
required
NAT 활성화
Example : True
boolean
public_ip_address_id
optional
NAT IP ID
Example : 20c507a036c447cdb3b19468d8ea62ac
any of [string, null]
server_type_id
required
Server Type ID
Example : f90e8ef54cc2451b825608e9f95f7bcb
string

2.11 - GpuNodeDetailsResponse

NameDescriptionSchemaDefault
gpu_node_id
required
ID
Example : 20c507a036c447cdb3b19468d8ea62ac
string
gpu_node_name
required
GPU Node 이름
Example : gpu-node-001
string
policy_ip
required
정책 IP
Example : 192.168.0.1
string
product_type_id
required
Product Type ID
Example : f90e8ef54cc2451b825608e9f95f7bcb
string
server_type
optional
Server Type
Example : s1v8m32_metal
any of [string, null]
state
required
State
Example : RUNNING
string

2.12 - GpuNodeImageListResponse

NameDescriptionSchemaDefault
images
required

array[GpuNodeImageShowResponse]

2.13 - GpuNodeImageShowResponse

NameDescriptionSchemaDefault
created_at
required
생성 시간
Example : 2024-07-11 08:56:59
string
id
required
이미지 ID
Example : IMAGE-7XFMaJpLsapKvskFMjCtmm
string
name
required
이름
Example : RHEL 8.8 for BM
string
os_distro
required
OS Distro
Example : RHEL
string
priority
required
Gpu Node Image 우선순위
Example : 20
string
scp_image_type
required
SCP image type
Example : STANDARD
string
scp_os_version
required
SCP OS version
Example : 8.7
string

2.14 - GpuNodeListResponse

NameDescriptionSchemaDefault
count
required
GPU Node Count
Example : 20
any of [integer, null]
gpu_nodes
required

array[GpuNodeShowResponse]

2.15 - GpuNodeOperationRequest

NameDescriptionSchemaDefault
gpu_node_ids
required
GPU Node ID List
Example : ['20c507a036c447cdb3b19468d8ea62ac']
array[object]

2.16 - GpuNodeProductAttr

NameDescriptionSchemaDefault
compute_class_type_name
required
Compute class type 이름
Example : GPU H100 Metal-2
string
compute_class_type_value
required
Compute class type unit
Example : g2_mteal
string
cpu_value
required
CPU value
Example : 64
string
disk_unit
required
Disk unit
Example : GB
string
disk_value
required
Disk value
Example : 480
string
gpu_model
required
GPU Model
Example : H100
string
memory_value
required
Memory value
Example : 128
string

2.17 - GpuNodeProductListResponse

NameDescriptionSchemaDefault
products
required
Product List
array[GpuNodeProductShowResponse]

2.18 - GpuNodeProductShowResponse

NameDescriptionSchemaDefault
created_at
required
생성 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
생성자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
description
required
설명
Example : vCPU 16 │ Memory 128G │ Disk 480G
string
id
required
ID
Example : SCALE
string
modified_at
required
수정 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
수정자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
name
required
이름
Example : s2v16m128_metal
string
product_attrs
required
Product type
GpuNodeProductAttr
state
required
State
Example : AVAILABLE
string
type
required
유형
Example : SCALE
string

2.19 - GpuNodeShowResponse

NameDescriptionSchemaDefault
account_id
required
Account ID
Example : f5c8e56a4d9b49a8bd89e14758a32d53
string
cluster_fabric_id
optional
Cluster Fabric ID
Example : 20c507a036c447cdb3b19468d8ea62ac
any of [string, null]
cluster_fabric_name
required
Cluster Fabric 이름
Example : cluster001
string
created_at
required
생성 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
created_by
required
생성자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
gpu_node_name
required
GPU Node 이름
Example : gpu-node-001
string
id
required
ID
Example : 0fdd87aab8cb46f59b7c1f81ed03fb3e
string
image_id
required
이미지 ID
Example : IMAGE-7XFMaJpLsapKvskFMjCtmm
string
image_version
required
Image Version
Example : RHEL 8.7 for BM
string
init_script
required
Init script
Example : init script
string
lock_enabled
optional
Lock 활성화
Example : True
boolean
modified_at
required
수정 시간
Example : 2024-05-17T00:23:17Z
string (date-time)
modified_by
required
수정자
Example : 90dddfc2b1e04edba54ba2b41539a9ac
string
network_id
required
Network ID
Example : ab313c43291e4b678f4bacffe10768ae
string
node_pool_id
required
Node Pool ID
Example : POOL001-krw1a
string
os_type
required
OS type
Example : WINDOWS
string
pfs_ip
optional
PFS IP 목록
Example : ['10.252.128.2', '10.252.128.3']
any of [array[string], null]
policy_ip
required
정책 IP
Example : 192.168.0.1
string
policy_nat
optional
Policy NAT
Example : 192.168.0.1
any of [string, null]
policy_use_nat
optional
Policy use NAT
Example : True
boolean
product_type_id
required
Product type ID
Example : f90e8ef54cc2451b825608e9f95f7bcb
string
region_id
required
리전 ID
Example : kr-west1
string
root_account
required
Root account
Example : rootaccount
string
server_type
required
Server type
Example : s1v8m32_metal
string
state
required
GPU Node State
Example : RUNNING
string
time_zone
required
타임존
Example : Asia/Seoul
string
vpc_id
required
VPC ID
Example : e58348b1bc9148e5af86500fd4ef99ca
string

2.20 - GpuNodeTerminateRequest

NameDescriptionSchemaDefault
gpu_node_ids
required
GPU Node ID List
Example : ['20c507a036c447cdb3b19468d8ea62ac']
array[object]

2.21 - NodePoolListResponse

NameDescriptionSchemaDefault
count
required
대수
Example : 20
any of [integer, null]
node_pools
required

array[NodePoolShowResponse]

2.22 - NodePoolShowResponse

NameDescriptionSchemaDefault
cluster_fabric_details
optional
Cluster Fabric 상세
array[ClusterFabricDetailsResponse]
node_pool_id
required
Node Pool ID
Example : POOL001-krw1a
string

2.23 - Tag

NameDescriptionSchemaDefault
key
optional
tag key
Example :
any of [string, null]
value
optional
tag value
Example :
any of [string, null]