Skip to content

features and usages

ByoungSeob Kim edited this page Mar 20, 2026 · 49 revisions

CB-Spider Usage Guide

Language: English | 한국어


CB-Spider Usage Overview


image


As shown in the diagram, the main steps for controlling multi-cloud using CB-Spider are:
    1. Register connection configurations for the target cloud
    2. Create resources required for VM creation
    3. Create and control VM lifecycle using the created resources
    4. Create and control Kubernetes (Provider-Managed Kubernetes) using the created resources


The main features provided by CB-Spider are as follows:
    1. Multi-Cloud Connection Configuration Management
    2. Multi-Cloud VM Infrastructure Resource Control
    3. Multi-Cloud VM Lifecycle Control
    4. Multi-Cloud Disk Control
    5. Multi-Cloud Network LoadBalancer (NLB) Control
    6. Multi-Cloud VM Snapshot/MyImage Control
    7. Multi-Cloud Kubernetes Control
    8. Multi-Cloud Region/Zone Info
    9. Multi-Cloud VM Price Info

1. Multi-Cloud Connection Configuration Management

  • Register and reuse cloud information and access credentials required to connect to the target cloud.
  • This registration information is called the Cloud Connection Configuration.
  • Connection configurations can be registered, queried, and deleted via the CB-Spider interface.
  • Registering with an existing name updates the existing information.
  • The connection configuration can be registered in the following order:
    (1) Register and manage Cloud Driver info
    (2) Register and manage Cloud Credential info
    (3) Register and manage Cloud Region/Zone info
    (4) Register and manage Cloud Connection Configuration info
    
    • Steps (1), (2), and (3) can be registered in any order.
    • Step (4) can only be registered after all three above are complete.
    • ※ Steps (1)–(4) can be automated using the Default Connection Helper tool.
    • ※ For details, refer to the Connection Management Guide.

(1) Register and Manage Cloud Driver Info

  • CB-Spider supports a dynamic plug-in based Cloud Driver architecture for extensible CSP integration.
  • Register the Cloud Driver information developed for the target cloud.
  • Cloud Driver information can be registered, queried, and deleted via the CB-Spider interface.
  • Registering with an existing name updates the existing information.
  • Key registration fields:
  • API example:
    • REST API: Register Cloud Driver Info
      curl -sX POST http://localhost:1024/spider/driver \
      -H 'Content-Type: application/json' \
      -d '{
          "DriverName": "aws-driver01",
          "ProviderName": "AWS",
          "DriverLibFileName": "aws-driver-v1.0.so"
      }'
      

(2) Register and Manage Cloud Credential Info

  • Register the Cloud Credential information for the target CSP.
  • Cloud Credential information can be registered, queried, and deleted via the CB-Spider interface.
  • Credential values are encrypted when stored and returned.
  • Registering with an existing name updates the existing information.
  • Key registration fields:
    • Cloud credential name: e.g., "aws-credential01"
    • Target cloud type: e.g., "AWS" (see supported CSPs)
    • Cloud credential key-value pairs (varies per CSP):
      • Two types supported per cloud:
        • Type-1: Spider type
        • Type-2: CSP type
          • AWS Type-1 example: [{"Key":"ClientId", "Value":"AKIAR4XXXXX"}, {"Key":"ClientSecret", "Value":"QOumDIA4XXXXXXXX"}]
          • AWS Type-2 example: [{"Key":"aws_access_key_id", "Value":"AKIAR4XXXXX"}, {"Key":"aws_secret_access_key", "Value":"QOumDIA4XXXXXXXX"}]
      • To check credential key names per CSP (e.g., AWS):
        curl -sX GET http://localhost:1024/spider/cloudos/metainfo/AWS -H 'Content-Type: application/json' |json_pp |more
        {
           "Credential" : [           <========== Type-1
              "ClientId",
              "ClientSecret"
           ],
           "CredentialCSP" : [        <========== Type-2
              "aws_access_key_id",
              "aws_secret_access_key"
           ],
           ... (omitted) ...
  • API example (Type-2):
    • REST API: Register Cloud Credential Info
      curl -sX POST http://localhost:1024/spider/credential \
      -H 'Content-Type: application/json' \
      -d '{        
          "CredentialName": "aws-credential01",
          "ProviderName": "AWS",
          "KeyValueInfoList": [
              {
                  "Key": "aws_access_key_id",
                  "Value": "AKIAR4XXXXX"
              },
              {
                  "Key": "aws_secret_access_key",
                  "Value": "QOumDIA4XXXXXXXX"
              }
          ]
      }'
      

(3) Register and Manage Cloud Region/Zone Info

  • Register the Region and Zone information provided by the target CSP.
  • Cloud Region and Zone information can be registered, queried, and deleted via the CB-Spider interface.
  • Registering with an existing name updates the existing information.
  • Key registration fields:
    • Cloud region name: e.g., "aws-ohio"
    • Target cloud type: e.g., "AWS" (see supported CSPs)
    • Target cloud Region/Zone info: e.g.,
      [{"Key":"Region", "Value":"us-east-2"}, {"Key":"Zone", "Value":"us-east-2a"}]
      
    • ※ To check available Region names, use the pre-config API in the Region/Zone Info Guide.
  • API example:
    • REST API: Register Cloud Region/Zone Info
      curl -sX POST http://localhost:1024/spider/region \
      -H 'Content-Type: application/json' \
      -d '{        
          "RegionName": "aws-ohio",
          "ProviderName": "AWS",
          "KeyValueInfoList": [
              {
                  "Key": "Region",
                  "Value": "us-east-2"
              },
              {
                  "Key": "Zone",
                  "Value": "us-east-2a"
              }
          ]
      }'
      

(4) Register and Manage Cloud Connection Configuration Info

  • Register the connection configuration for the target CSP.
  • Connection configuration information can be registered, queried, and deleted via the CB-Spider interface.
  • Registering with an existing name updates the existing information.
  • Key registration fields:
    • Cloud connection config name: e.g., "aws-ohio-config"
    • Target cloud type: e.g., "AWS" (see supported CSPs)
    • Registered driver name for the target cloud: e.g., aws-driver01
    • Registered credential name for the target cloud: e.g., aws-credential01
    • Registered region name for the target cloud: e.g., aws-ohio
  • API example:
    • REST API: Register Cloud Connection Configuration Info
      curl -sX POST http://localhost:1024/spider/connectionconfig \
      -H 'Content-Type: application/json' \
      -d '{    
          "ConfigName": "aws-ohio-config",
          "ProviderName": "AWS",
          "DriverName": "aws-driver01",
          "CredentialName": "aws-credential01",
          "RegionName": "aws-ohio"
      }'
      

2. Multi-Cloud VM Infrastructure Resource Control

  • Create and control cloud resources required for multi-cloud VM infrastructure operation.
  • A pre-registered Cloud Connection Configuration is required to control multi-cloud resources.
  • The multi-cloud resources provided by CB-Spider are as follows: see supported resources
    (1) VM Image information
    (2) VM Spec information
    (3) VPC/Subnet creation and control
    (4) SecurityGroup creation and control
    (5) VM KeyPair creation and control
    

(1) VM Image Information

  • VM Image provides a list and detailed information of images available in the target cloud (CSP Region/Zone).
  • VM Image information can be listed and queried via the CB-Spider interface.
  • Key information provided:
    • VM image name: e.g., "ami-0bbe28eb2173f6167"
    • VM image OS (Guest OS): e.g., "Linux/UNIX"
    • VM image status: "available"
    • VM image additional info (CSP-provided): e.g.,
      CreationDate:2019-11-07T19:50:06.000Z, Architecture:x86_64, OwnerId:898082745236, ...
  • API example:
    • REST API: Get VM Image
      curl -sX GET http://localhost:1024/spider/vmimage/ami-0bbe28eb2173f6167?ConnectionName=aws-ohio-config | json_pp
      
      {
         "GuestOS" : "Linux/UNIX",
         "IId" : {
            "NameId" : "ami-0bbe28eb2173f6167",
            "SystemId" : "ami-0bbe28eb2173f6167"
         },
         "KeyValueList" : [
            {
               "Key" : "CreationDate",
               "Value" : "2020-08-10T20:29:49.000Z"
            },
            {
               "Key" : "Architecture",
               "Value" : "x86_64"
            },
      ... (omitted) ...
    • ※ For CSP-specific image names, refer to: How to get Image List
    • For details, refer to the VM Image Info Guide.

(2) VM Spec Information

  • VM Spec provides a list and detailed information of VM specifications available in the target cloud (CSP Region/Zone).
  • VM Spec information can be listed and queried via the CB-Spider interface.
  • Key information provided:
    • VM spec name: e.g., "p3.2xlarge"
    • VM CPU spec: e.g., "Count: 8, Clock: 2.7GHz"
    • VM memory spec: "62464 MB"
    • VM GPU spec: e.g., "Mfr: NVIDIA, Model: V100, Memory: 16384 MB, Count: 1"
  • API example:
    • REST API: Get VM Spec
      curl -sX GET http://localhost:1024/spider/vmspec/p3.2xlarge?ConnectionName=aws-ohio-config | json_pp
      
      {
         "Gpu" : [
            {
               "Count" : "1",
               "Mem" : "16384",
               "Mfr" : "NVIDIA",
               "Model" : "V100"
            }
         ],
         "KeyValueList" : [ ... (omitted) ... ]
    • For details, refer to the VM Spec Info Guide.

(3) VPC/Subnet Creation and Control

  • VPC/Subnet resources provide a virtual network environment in the target cloud (CSP Region/Zone). ※ VPC: Virtual Private Cloud (https://en.wikipedia.org/wiki/Virtual_private_cloud)
  • VPC/Subnet resources can be created, queried, and deleted via the CB-Spider interface.
    • Subnets can be created along with the VPC, or added/deleted after VPC creation.
  • Creating with an existing name returns an error.
  • Key input fields:
    • Registered cloud connection config name: e.g., "aws-ohio-config"
    • VPC name: e.g., "vpc-01"
    • VPC CIDR: e.g., "192.168.0.0/16"
    • Subnet info (one or more): e.g., [{"Subnet Name":"subnet-01", "Subnet CIDR":"192.168.1.0/24"}, ...]
  • Special notes:
  • API example:
    • REST API: Create VPC/Subnet
      curl -sX POST http://localhost:1024/spider/vpc \
      -H 'Content-Type: application/json' \
      -d '{
          "ConnectionName": "aws-ohio-config",
          "ReqInfo": {
              "Name": "vpc-01",
              "IPv4_CIDR": "192.168.0.0/16",
              "SubnetInfoList": [
                  {
                      "Name": "subnet-01",
                      "IPv4_CIDR": "192.168.1.0/24"
                  }
              ]
          }
      }'
      
    • For details, refer to the VPC/Subnet Management Guide.

(4) SecurityGroup Creation and Control

  • SecurityGroup resources provide VM security groups (firewalls) in the target cloud (CSP Region/Zone).
  • SecurityGroup resources can be created, queried, and deleted via the CB-Spider interface.
    • SecurityGroups can only be created after a VPC has been created.
    • Security Rules can be set during SecurityGroup creation or added/deleted afterward.
      • Security Rules do not have individual IDs; they are identified by their rule values.
      • For Security Rule specifications, refer to the SecurityGroup Management Guide.
  • Creating with an existing name returns an error.
  • Key input fields:
    • Registered cloud connection config name: e.g., "aws-ohio-config"
    • Security group name: e.g., "sg-01"
    • Target VPC name: e.g., "vpc-01"
    • Security rules (one or more): e.g., [{"FromPort":"1", "ToPort":"65535", "IPProtocol":"tcp", "Direction":"inbound", "CIDR":"1.2.3.4/32"}] ※ CIDR: Sets the IP address range allowed to access the VM ※ Omitting CIDR defaults to 0.0.0.0/0
  • API example:
    • REST API: Create SecurityGroup
      curl -sX POST http://localhost:1024/spider/securitygroup \
      -H 'Content-Type: application/json' \
      -d '{
          "ConnectionName": "aws-ohio-config",
          "ReqInfo": {
              "Name": "sg-01",
              "VPCName": "vpc-01",
              "SecurityRules": [
                  {
                      "FromPort": "1",
                      "ToPort": "65535",
                      "IPProtocol": "tcp",
                      "Direction": "inbound",
                      "CIDR": "1.2.3.4/32"
                  }
              ]
          }        
      }'
      

(5) VM KeyPair Creation and Control

  • KeyPair resources provide SSH access to VMs in the target cloud (CSP Region/Zone).
  • KeyPair resources can be created, queried, and deleted via the CB-Spider interface.
  • Creating with an existing name returns an error.
  • Key input fields:
    • Registered cloud connection config name: e.g., "aws-ohio-config"
    • KeyPair name: e.g., "keypair-01"
  • API example:
    • REST API: Create KeyPair
      curl -sX POST http://localhost:1024/spider/keypair \
      -H 'Content-Type: application/json' \
      -d '{
          "ConnectionName": "aws-ohio-config",
          "ReqInfo": {
              "Name": "keypair-01"
          }
      }'
      
    • For details, refer to the KeyPair Management Guide.

3. Multi-Cloud VM Lifecycle Control

  • Create and control the lifecycle of VMs required for multi-cloud computing infrastructure operations.
  • A pre-registered Cloud Connection Configuration is required.
  • VM-related features provided by CB-Spider:
    (1) VM creation and lifecycle control
    (2) VM status list and info query
    (3) VM list and info query
    

(1) VM Creation and Lifecycle Control

  • VMs are created and operated in the target cloud (CSP Region/Zone).
  • VMs can be created, queried, deleted, and lifecycle-controlled via the CB-Spider interface.
  • VM Image, VM Spec, VPC/Subnet, SecurityGroup, and VM KeyPair must be prepared before creating a VM.
  • CB-Spider provides the following VM lifecycle controls:
    • Start and Terminate
    • Suspend and Resume
    • Reboot
  • CB-Spider provides the following VM states:
    • Creating: VM is being created
    • Running: VM is operating normally
    • Suspending: VM is transitioning from Running to Suspended
    • Suspended: VM is paused (can be restarted)
    • Resuming: VM is transitioning from Suspended to Running
    • Rebooting: VM is rebooting
    • Terminating: VM is being terminated
    • Terminated: VM has been terminated (cannot be restarted)
    • NotExist: VM does not exist
    • Failed: An error occurred during VM creation
  • Creating with an existing name returns an error.
  • Even after VM creation is complete, SSH access may only be available after some time.
  • Key input fields:
    • Registered cloud connection config name: e.g., "aws-ohio-config"
    • VM name: e.g., "vm-01"
    • VM image name: e.g., "ami-0bbe28eb2173f6167"
    • VM spec name: e.g., "p3.2xlarge"
    • VPC name: e.g., "vpc-01"
    • Subnet name: e.g., "subnet-01"
    • SecurityGroup name (one or more): e.g., "sg-01"
    • VM KeyPair name: e.g., "keypair-01"
    • RootDiskType (optional): see configuration guide
    • RootDiskSize (optional): see configuration guide
  • API example:
    • REST API: Create VM (※ For CSP-specific image names: How to get Image List)

      curl -sX POST http://localhost:1024/spider/vm \
      -H 'Content-Type: application/json' \
      -d '{
          "ConnectionName": "aws-ohio-config",
          "ReqInfo": {
              "Name": "vm-01",
              "ImageName": "ami-0bbe28eb2173f6167",
              "VMSpecName": "p3.2xlarge",            
              "VPCName": "vpc-01",
              "SubnetName": "subnet-01",
              "SecurityGroupNames": [
                  "sg-01"
              ],
              "KeyPairName": "keypair-01"
          }
      }'
      
    • For details, refer to the VM Management Guide.

4. Multi-Cloud Disk Control

5. Multi-Cloud Network LoadBalancer (NLB) Control

6. Multi-Cloud VM Snapshot/MyImage Control

7. Multi-Cloud Kubernetes Control

8. Multi-Cloud Region/Zone Info

9. Multi-Cloud VM Price Info


Table of contents




Clone this wiki locally