Dcmanager API v1

Manage distributed cloud operations with the dcmanager API.

The typical port used for the dcmanager REST API is 8119. However, proper technique would be to look up the dcmanager service endpoint in Keystone.

API versions

GET
/

Lists information about all dcmanager API versions

This operation does not accept a request body.

Normal response codes

200, 300

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response Example

{
  "versions": [
    {
      "status": "CURRENT",
      "updated": "2017-10-2",
      "id": "v1.0",
      "links": [
        {
          "href": "http://192.168.204.2:8119/v1.0/",
          "rel": "self"
        }
      ]
    }
  ]
}

Subclouds

Subclouds are systems managed by a central System Controller.

GET
/v1.0/subclouds

Lists all subclouds

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response

Name

In

Type

Description

subclouds

body

array

The list of subcloud objects.

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "subclouds": [
    {
      "id": 1,
      "subcloud_id": 1,
      "group_id": 1,
      "name": "subcloud1",
      "description": "Ottawa Site",
      "location": "YOW",
      "software-version": "21.12",
      "availability-status": "online",
      "deploy-status": "complete",
      "backup-status": "complete",
      "backup-datetime": "2022-07-08 11:23:58.132134",
      "prestage-status": "complete",
      "prestage-versions": "21.12,22.12",
      "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
      "openstack-installed": false,
      "management-state": "managed",
      "systemcontroller-gateway-ip": "192.168.204.101",
      "management-start-ip": "192.168.101.2",
      "management-end-ip": "192.168.101.50",
      "management-subnet": "192.168.101.0/24",
      "management-gateway-ip": "192.168.101.1",
      "created-at": "2021-10-04 15:04:13.045076",
      "updated-at": "2021-10-25 21:16:23.713858",
      "data_install": null,
      "data_upgrade": null,
      "sync_status": "out-of-sync",
      "endpoint_sync_status": [
        {
          "sync_status": "in-sync",
          "endpoint_type": "dc-cert"
        },
        {
          "sync_status": "not-available",
           "endpoint_type": "load"
        },
        {
          "sync_status": "in-sync",
          "endpoint_type": "firmware"
        },
        {
          "sync_status": "in-sync",
          "endpoint_type": "kubernetes"
        },
        {
          "sync_status": "in-sync",
          "endpoint_type": "kube-rootca"
        },
        {
          "sync_status": "in-sync",
          "endpoint_type": "platform"
        },
        {
          "sync_status": "in-sync",
          "endpoint_type": "identity"
        },
        {
          "sync_status": "not-available",
          "endpoint_type": "patching"
        },
        {
          "sync_status": "out-of-sync",
          "endpoint_type": "usm"
        }
      ],
    }
  ]
}
POST
/v1.0/subclouds

Creates a subcloud

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

bmc_password (Optional)

body

string

The BMC password of the subcloud. Must be base64 encoded.

bootstrap-address

body

string

An OAM IP address of the subcloud controller-0.

bootstrap_values

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

deploy_config

body

string

The content of a file containing the resource definitions describing the desired subcloud configuration.

description (Optional)

body

string

The description of a subcloud.

external_oam_floating_address (Optional)

body

string

The external OAM Floating IP of the subcloud.

external_oam_gateway_address (Optional)

body

string

The external OAM Gateway address of the subcloud.

external_oam_subnet (Optional)

body

string

The external OAM subnet of the subcloud.

group_id

body

integer

The ID of a subcloud group. Default is 1.

install_values (Optional)

body

string

The content of a file containing install variables such as subcloud bootstrap interface and BMC information.

location (Optional)

body

string

The location of a subcloud.

management_gateway_address

body

string

Management gateway IP for subcloud.

management_end_ip

body

string

End of management IP address range for subcloud.

management_start_address

body

string

Start of management IP address range for subcloud.

management_subnet

body

string

The management subnet for subcloud.

migrate (Optional)

body

boolean

A flag indicating if the subcloud is migrated

secondary (Optional)

body

boolean

A flag indicating if the subcloud is a secondary subcloud

name

body

string

The name of a subcloud.

release (Optional)

body

string

The subcloud software version.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

systemcontroller_gateway_address

body

string

The gateway IP address of the system controller of the subcloud.

system_mode

body

string

The system mode for the subcloud. (simplex, duplex, duplex-direct)

Request Example

{
    "name": "subcloud1",
    "system_mode": "simplex",
    "management_subnet": "192.168.101.0/24",
    "management_start_address": "192.168.101.2",
    "management_end_address": "192.168.101.50",
    "management_gateway_address": "192.168.101.1",
    "systemcontroller_gateway_address": "192.168.204.101"
    "external_oam_subnet": "10.10.10.0/24",
    "external_oam_gateway_address": "10.10.10.1",
    "external_oam_floating_address": "10.10.10.12",
    "sysadmin_password": "XXXXXXX",
    "bootstrap-address": "10.10.10.12",
    "description": "Subcloud 1"
    "location": "Somewhere"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

software-version

body

string

The software version for the subcloud.

management-state

body

string

Management state of the subcloud.

availability-status

body

string

The availability status of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

location (Optional)

body

string

The location of a subcloud.

group_id

body

integer

The ID of a subcloud group. Default is 1.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

Response Example

{
    "description": "A subcloud",
    "management-start-ip": "192.168.205.110",
    "created-at": "2018-02-25T22:17:11.845596",
    "updated-at": null,
    "software-version": "18.01",
    "management-state": "unmanaged",
    "availability-status": "offline",
    "systemcontroller-gateway-ip": "192.168.204.102",
    "location": "Somewhere",
    "group_id": 1,
    "management-subnet": "192.168.205.0/24",
    "management-gateway-ip": "192.168.205.1",
    "management-end-ip": "192.168.205.160",
    "id": 4,
    "name": "subcloud7",
    "region-name": "b098933127ed408e9ad7f6e81c587edb"
}
GET
/v1.0/subclouds/​{subcloud}

Shows information about a specific subcloud

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

peer_group_id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

rehome_data

body

string

JSON format data for rehoming a subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "group_id": 1,
  "name": "subcloud1",
  "description": "Ottawa Site",
  "location": "YOW",
  "software-version": "21.12",
  "availability-status": "online",
  "deploy-status": "complete",
  "backup-status": "complete",
  "backup-datetime": "2022-07-08 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "21.12,22.12",
  "openstack-installed": false,
  "management-state": "managed",
  "systemcontroller-gateway-ip": "192.168.204.101",
  "management-start-ip": "192.168.101.2",
  "management-end-ip": "192.168.101.50",
  "management-subnet": "192.168.101.0/24",
  "management-gateway-ip": "192.168.101.1",
  "created-at": "2021-10-04 15:04:13.045076",
  "updated-at": "2021-10-25 21:16:23.713858",
  "data_install": null,
  "data_upgrade": null,
  "endpoint_sync_status": [
    {
      "sync_status": "in-sync",
      "endpoint_type": "dc-cert"
    },
    {
      "sync_status": "not-available",
       "endpoint_type": "load"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "firmware"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "kubernetes"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "kube-rootca"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "platform"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "identity"
    },
    {
      "sync_status": "not-available",
      "endpoint_type": "patching"
    },
    {
      "sync_status": "out-of-sync",
      "endpoint_type": "usm"
    }
  ],
}
GET
/v1.0/subclouds/​{subcloud}​/detail

Shows additional information about a specific subcloud

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

oam_floating_ip (Optional)

body

string

The OAM Floating IP of the subcloud.

peer_group_id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

rehome_data

body

string

JSON format data for rehoming a subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "group_id": 1,
  "name": "subcloud1",
  "description": "Ottawa Site",
  "location": "YOW",
  "software-version": "21.12",
  "availability-status": "online",
  "deploy-status": "complete",
  "backup-status": "complete",
  "backup-datetime": "2022-07-08 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "21.12,22.12",
  "openstack-installed": false,
  "management-state": "managed",
  "systemcontroller-gateway-ip": "192.168.204.101",
  "management-start-ip": "192.168.101.2",
  "management-end-ip": "192.168.101.50",
  "management-subnet": "192.168.101.0/24",
  "management-gateway-ip": "192.168.101.1",
  "created-at": "2021-10-04 15:04:13.045076",
  "updated-at": "2021-10-25 21:16:23.713858",
  "data_install": null,
  "data_upgrade": null,
  "oam_floating_ip": "192.168.101.2",
  "deploy_config_sync_status": "Deployment: configurations up-to-date",
  "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
  "endpoint_sync_status": [
    {
      "sync_status": "in-sync",
      "endpoint_type": "dc-cert"
    },
    {
      "sync_status": "not-available",
       "endpoint_type": "load"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "firmware"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "kubernetes"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "kube-rootca"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "platform"
    },
    {
      "sync_status": "in-sync",
      "endpoint_type": "identity"
    },
    {
      "sync_status": "not-available",
      "endpoint_type": "patching"
    },
    {
      "sync_status": "out-of-sync",
      "endpoint_type": "usm"
    }
  ],
}
PATCH
/v1.0/subclouds/​{subcloud}

Modifies a specific subcloud

The attributes of a subcloud which are modifiable:

  • name

  • description

  • location

  • management-state

  • group_id

  • management-subnet

  • management-gateway-ip

  • management-start-ip

  • management-end-ip

  • peer_group_id

  • bootstrap_values

  • bootstrap_address

Extra flags:

  • migrate

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

management-state (Optional)

body

string

Management state of the subcloud.

group_id (Optional)

body

integer

The ID of the subcloud group associated with this object.

management-subnet (Optional)

body

string

The management subnet of a subcloud.

management-gateway-ip (Optional)

body

string

The management gateway ip of a subcloud.

management-start-ip (Optional)

body

string

The management start ip of a subcloud.

management-end-ip (Optional)

body

string

The management end ip of a subcloud.

peer_group_id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

bootstrap-address

body

string

An OAM IP address of the subcloud controller-0.

sysadmin-password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

bootstrap-values (Optional)

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

migrate (Optional)

body

boolean

A flag indicating if the subcloud will be rehomed away. Its deploy status will be set to ‘rehome-pending’

Request Example

{
    "management-state": "unmanaged"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

peer_group_id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "name": "subcloud1",
  "created-at": "2021-11-08T18:41:19.530228",
  "updated-at": "2021-11-15T14:15:59.944851",
  "availability-status": "online",
  "data_install": null,
  "data_upgrade": null,
  "deploy-status": "complete",
  "backup-status": "complete",
  "backup-datetime": "2022-07-08 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "21.12,22.12",
  "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
  "description": "Ottawa Site",
  "group_id": 1,
  "location": "YOW",
  "management-end-ip": "192.168.101.50",
  "management-gateway-ip": "192.168.101.1",
  "management-start-ip": "192.168.101.2",
  "management-state": "unmanaged",
  "management-subnet": "192.168.101.0/24",
  "openstack-installed": false,
  "software-version": "21.12",
  "systemcontroller-gateway-ip": "192.168.204.101",
}
PATCH
/v1.0/subclouds/{subcloud}/redeploy

Redeploy a specific subcloud

Redeploy and bootstrap a subcloud based on its previous install configurations.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

install_values (Optional)

body

string

The content of a file containing install variables such as subcloud bootstrap interface and BMC information.

bootstrap_values

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

deploy_config

body

string

The content of a file containing the resource definitions describing the desired subcloud configuration.

release (Optional)

body

string

The subcloud software version.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

bmc_password (Optional)

body

string

The BMC password of the subcloud. Must be base64 encoded.

Request Example

{
    "bmc_password": "YYYYYYY",
    "bootstrap_values": "content of bootstrap_values file",
    "deploy_config": "content of deploy_config file",
    "install_values": "content of install_values file",
    "release": "22.12",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "name": "subcloud1",
  "created-at": "2021-11-08T18:41:19.530228",
  "updated-at": "2021-11-15T14:15:59.944851",
  "availability-status": "offline",
  "data_install": {
      "bootstrap_interface": "eno1"
  },
  "data_upgrade": null,
  "deploy-status": "pre-install",
  "backup-status": "complete",
  "backup-datetime": "2022-07-08 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "21.12,22.12",
  "description": "Ottawa Site",
  "group_id": 1,
  "location": "YOW",
  "management-end-ip": "192.168.101.50",
  "management-gateway-ip": "192.168.101.1",
  "management-start-ip": "192.168.101.2",
  "management-state": "unmanaged",
  "management-subnet": "192.168.101.0/24",
  "openstack-installed": false,
  "software-version": "22.12",
  "systemcontroller-gateway-ip": "192.168.204.101"
}
PATCH
/v1.0/subclouds/{subcloud}/prestage

Prestage a specific subcloud

Prestages a subcloud with software packages and container image archives. The prestaged data is stored in the subcloud persistent file system that can be used when the subcloud is reinstalled next.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

release (Optional)

body

string

The subcloud software version.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

force (Optional)

body

boolean

Indicates whether to disregard subcloud management alarm condition.

Request Example

{
    "sysadmin_password": "XXXXXXX",
    "release": "21.12",
    "force": "true"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

prestage_software_version

body

string

The prestage software version for the subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "name": "subcloud1",
  "created-at": "2021-11-08T18:41:19.530228",
  "updated-at": "2021-11-15T14:15:59.944851",
  "availability-status": "online",
  "data_install": {
      "bootstrap_interface": "eno1"
  },
  "data_upgrade": null,
  "deploy-status": "complete",
  "backup-status": "complete",
  "backup-datetime": "2022-07-08 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "21.12,22.12",
  "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
  "description": "Ottawa Site",
  "group_id": 1,
  "location": "YOW",
  "management-end-ip": "192.168.101.50",
  "management-gateway-ip": "192.168.101.1",
  "management-start-ip": "192.168.101.2",
  "management-state": "unmanaged",
  "management-subnet": "192.168.101.0/24",
  "openstack-installed": false,
  "software-version": "21.12",
  "systemcontroller-gateway-ip": "192.168.204.101",
  "prestage-software-version": "21.12",
}
PATCH
/v1.0/subclouds/{subcloud}/update_status

Update the status of a specific subcloud

This is an internal API.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

endpoint

body

string

The endpoint that is being updated. Only supported value is: dc-cert.

status

body

string

The endpoint sync status. in-sync, out-of-sync, unknown.

Request Example

{
    "endpoint": "dc-cert",
    "status": "in-sync"
}

Response parameters

Name

In

Type

Description

result

body

string

The result of a subcloud endpoint being updated. OK

Response Example

{
  "result": "OK"
}
DELETE
/v1.0/subclouds/​{subcloud}

Deletes a specific subcloud

Normal response codes

200

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

This operation does not accept a request body.

Subcloud Groups

Subcloud Groups are a logical grouping managed by a central System Controller. Subclouds in a group can be updated in parallel when applying patches or software upgrades.

GET
/v1.0/subcloud-groups

Lists all subcloud groups

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

subcloud_groups

body

array

The list of subcloud-group objects.

id (Optional)

body

integer

The ID of the subcloud group associated with this object.

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "subcloud_groups": [
    {
      "id": 1,
      "name": "Default",
      "description": "Default Subcloud Group",
      "max_parallel_subclouds": 2,
      "update_apply_type": "parallel",
      "created-at": null,
      "updated-at": null
    },
  ]
}
POST
/v1.0/subcloud-groups

Creates a subcloud group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

Request Example

{
  "name": "GroupX",
  "description": "A new group",
  "update_apply_type": "parallel",
  "max_parallel_subclouds": 3
}

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

The ID of the subcloud group associated with this object.

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 2,
  "name": "GroupX",
  "description": "A new group",
  "max_parallel_subclouds": "3",
  "update_apply_type": "parallel",
  "created-at": "2020-04-08 15:15:10.750592",
  "updated-at": null
}
GET
/v1.0/subcloud-groups/​{subcloud-group}

Shows information about a specific subcloud group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-group

path

string

The subcloud group reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

The ID of the subcloud group associated with this object.

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 2,
  "name": "GroupX",
  "description": "A new group",
  "max_parallel_subclouds": "3",
  "update_apply_type": "parallel",
  "created-at": "2020-04-08 15:15:10.750592",
  "updated-at": null
}
GET
/v1.0/subcloud-groups/​{subcloud-group}​/subclouds

Shows subclouds that are part of a subcloud group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-group

path

string

The subcloud group reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

subclouds

body

array

The list of subcloud objects.

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

Response Example

{
  "subclouds": [
    {
      "id": 1,
      "subcloud_id": 1,
      "group_id": 1,
      "name": "subcloud1",
      "description": "Ottawa Site",
      "location": "YOW",
      "software-version": "21.12",
      "availability-status": "online",
      "deploy-status": "complete",
      "backup-status": "complete",
      "backup-datetime": "2022-07-08 11:23:58.132134",
      "prestage-status": "complete",
      "prestage-versions": "22.12",
      "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
      "openstack-installed": false,
      "management-state": "managed",
      "systemcontroller-gateway-ip": "192.168.204.101",
      "management-start-ip": "192.168.101.2",
      "management-end-ip": "192.168.101.50",
      "management-subnet": "192.168.101.0/24",
      "management-gateway-ip": "192.168.101.1",
      "created-at": "2021-10-04 15:04:13.045076",
      "updated-at": "2021-10-25 21:16:23.713858",
      "data_install": null,
      "data_upgrade": null,
    },
  ]
}
PATCH
/v1.0/subcloud-groups/​{subcloud-group}

Modifies a specific subcloud group

The attributes of a subcloud group which are modifiable:

  • name

  • description

  • update_apply_type

  • max_parallel_subclouds

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-group

path

string

The subcloud group reference, name or id.

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

Request Example

{
  "description": "A new group description",
  "update_apply_type": "serial",
  "max_parallel_subclouds": 5
}

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

The ID of the subcloud group associated with this object.

name

body

integer

The name of the subcloud group.

description (Optional)

body

integer

The description of the subcloud group.

max_parallel_subclouds (Optional)

body

integer

The maximum number of subclouds in the subcloud group to update in parallel.

update_apply_type (Optional)

body

string

The method for applying an update to this subcloud group. serial or parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 2,
  "name": "GroupX",
  "description": "A new group description",
  "max_parallel_subclouds": "5",
  "update_apply_type": "serial",
  "created-at": "2020-04-08 15:15:10.750592",
  "updated-at": "2020-04-08 15:21:01.527101"
}
DELETE
/v1.0/subcloud-groups/​{subcloud-group}

Deletes a specific subcloud group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-group

path

string

The subcloud group reference, name or id.

This operation does not accept a request body.

Subcloud Backups

Subcloud Backups allow for essential subcloud system data (and optionally container images) to be saved and subsequently used to restore the subcloud to a previously working state. Subcloud backups may be created, deleted or restored for a single subcloud, or for all subclouds in a subcloud group. Backup files may be saved locally in the subcloud or to a centralized archive in the system controller.

POST
/v1.0/subcloud-backup

Generates subcloud backup files for a given subcloud or subcloud group

Accepts Content-Type multipart/form-data.

Normal response codes

OK (200) - request has been validated and backup operation was started

Error response codes

badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

body

string

Name or ID of the subcloud to be backed up. To be specified if and only if ‘group’ is not provided.

group

body

string

Name or ID of the group of subclouds to be backed up. To be specified if and only if ‘subcloud’ is not provided.

local_only (Optional)

body

boolean

Flag to indicate whether the platform backup is to be saved locally within the subcloud. Defaults to False.

registry_images (Optional)

body

boolean

Flag to indicate whether registry images backup should also be generated (local only). Defaults to False.

backup_values (Optional)

body

multipart

Content of a backup playbook overrides file, if needed (e.g. backup_dir).

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Request Example

{
    "subcloud": 1,
    "local_only": false,
    "registry_images": false,
    "backup_values": "path to some file",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

subclouds

body

array

The list of subcloud objects.

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "subclouds": [
    {
      "id": 1,
      "name": "subcloud1",
      "created-at": "2021-11-08T18:41:19.530228",
      "updated-at": "2021-11-15T14:15:59.944851",
      "availability-status": "offline",
      "data_install": {
        "bootstrap_interface": "eno1"
      },
      "data_upgrade": null,
      "deploy-status": "pre-restore",
      "error-description": "",
      "backup-status": "complete",
      "backup-datetime": "2022-07-08 11:23:58.132134",
      "prestage-status": "complete",
      "prestage-versions": "22.12",
      "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
      "description": "Ottawa Site",
      "group_id": 1,
      "location": "YOW",
      "management-end-ip": "192.168.101.50",
      "management-gateway-ip": "192.168.101.1",
      "management-start-ip": "192.168.101.2",
      "management-state": "unmanaged",
      "management-subnet": "192.168.101.0/24",
      "openstack-installed": false,
      "software-version": "21.12",
      "systemcontroller-gateway-ip": "192.168.204.101"
    }
  ]
}
PATCH
/v1.0/subcloud-backup/delete

Deletes subcloud backup files of a release for a given subcloud or subcloud group

Accepts Content-Type multipart/form-data.

Normal response codes

noContent (204) - Backup files deleted successfully

Error response codes

badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

release

path

string

Backup release to be deleted (e.g. 22.12).

subcloud

body

string

Name or ID of the subcloud to be backed up. To be specified if and only if ‘group’ is not provided.

group

body

string

Name or ID of the group of subclouds to be backed up. To be specified if and only if ‘subcloud’ is not provided.

local_only (Optional)

body

boolean

Flag to indicate whether the platform backup is to be saved locally within the subcloud. Defaults to False.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Request Example

{
    "subcloud": 1,
    "local_only": false,
    "sysadmin_password": "XXXXXXX"
}
PATCH
/v1.0/subcloud-backup/restore

Restores a subcloud or a subcloud group from a backup

Accepts Content-Type application/json.

Normal response codes

OK (200) - request has been validated and restore operation was started

Error response codes

badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

with_install (Optional)

body

boolean

The flag to indicate whether remote install is required or not (e.g. true).

release (Optional)

body

string

The subcloud software version.

local_only (Optional)

body

boolean

Flag to indicate whether the platform backup is to be saved locally within the subcloud. Defaults to False.

registry_images (Optional)

body

boolean

Flag to indicate whether registry images backup should also be generated (local only). Defaults to False.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

subcloud

body

string

Name or ID of the subcloud to be backed up. To be specified if and only if ‘group’ is not provided.

group

body

string

Name or ID of the group of subclouds to be backed up. To be specified if and only if ‘subcloud’ is not provided.

restore_values (Optional)

body

string

Content of a restore playbook overrides file.

Request Example

{
    "subcloud": 1,
    "local_only": "false",
    "registry_images": "false",
    "with_install": "true",
    "release": "21.12",
    "sysadmin_password": "XXXXXXX",
    "restore_values": {
    	"backup_filename": "filename"
    }
}

Response parameters

Name

In

Type

Description

subclouds

body

array

The list of subcloud objects.

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
    "subclouds": [
      {
        "id": 1,
        "name": "subcloud1",
        "created-at": "2021-11-08T18:41:19.530228",
        "updated-at": "2021-11-15T14:15:59.944851",
        "availability-status": "offline",
        "data_install": {
          "bootstrap_interface": "eno1"
        },
        "data_upgrade": null,
        "deploy-status": "pre-restore",
        "error-description": "",
        "backup-status": "complete",
        "backup-datetime": "2022-07-08 11:23:58.132134",
        "prestage-status": "complete",
        "prestage-versions": "22.12",
        "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
        "description": "Ottawa Site",
        "group_id": 1,
        "location": "YOW",
        "management-end-ip": "192.168.101.50",
        "management-gateway-ip": "192.168.101.1",
        "management-start-ip": "192.168.101.2",
        "management-state": "unmanaged",
        "management-subnet": "192.168.101.0/24",
        "openstack-installed": false,
        "software-version": "21.12",
        "systemcontroller-gateway-ip": "192.168.204.101"
      }
    ]
}

Subcloud Alarms

Subcloud alarms are aggregated on the System Controller.

GET
/v1.0/alarms

Summarizes alarms from all subclouds

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

alarm_summary (Optional)

body

array

The list of alarm summaries.

uuid

body

string

The unique identifier for this object.

region_name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

cloud_status

body

string

The overall alarm status of the subcloud.

warnings

body

integer

Number of warnings for subcloud (-1 when cloud_status is disabled).

critical_alarms

body

integer

Number of critical alarms for subcloud (-1 when cloud_status is disabled).

major_alarms

body

integer

Number of major alarms for subcloud (-1 when cloud_status is disabled).

minor_alarms

body

integer

Number of minor alarms for subcloud (-1 when cloud_status is disabled).

Response Example

{
    "alarm_summary": [
        {
            "cloud_status": "disabled",
            "region_name": "subcloud1",
            "warnings": -1,
            "minor_alarms": -1,
            "critical_alarms": -1,
            "major_alarms": -1,
            "uuid": "fd1e38dc-ed76-4b82-906e-e593ed0f8ac8"
        }
    ]
}

Subcloud Update Strategy

The Subcloud update strategy is configurable.

GET
/v1.0/sw-update-strategy

Shows the details of the update strategy

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

id (Optional)

body

integer

The ID of the sw-update-strategy associated with this object.

state (Optional)

body

string

The internal state of the sw-update-strategy.

extra-args (Optional)

body

dictionary

The dictionary of extra arguments passed to a sw-update-strategy.

stop-on-failure (Optional)

body

boolean

Flag to indicate if the update should stop updating additional subclouds if a failure is encountered.

subcloud-apply-type (Optional)

body

string

The apply type for the update. serial or parallel.

max-parallel-subclouds (Optional)

body

integer

The maximum number of subclouds to update in parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "type": "patch",
  "id": 2,
  "state": "initial",
  "stop-on-failure": true,
  "max-parallel-subclouds": "2",
  "subcloud-apply-type": "serial",
  "extra-args": {
    "upload-only": true
  },
  "created-at": "2018-02-25T23:23:53.852473",
  "updated-at": null
}
POST
/v1.0/sw-update-strategy

Creates the update strategy

  • subcloud-apply-type,

  • max-parallel-subclouds,

  • stop-on-failure,

  • cloud_name,

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

cloud_name

body

string

The name of a subcloud.

max-parallel-subclouds (Optional)

body

integer

The maximum number of subclouds to update in parallel.

stop-on-failure (Optional)

body

boolean

Flag to indicate if the update should stop updating additional subclouds if a failure is encountered.

subcloud-apply-type (Optional)

body

string

The apply type for the update. serial or parallel.

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

upload-only (Optional)

body

boolean

Flag to indicate whether patches should only be uploaded to the subclouds or not. This parameter is only used by ‘patch’ type strategies.

force (Optional)

body

boolean

Indicates whether to disregard subcloud endpoint sync status or management alarm condition depending on strategy type.

Request Example

{
     "subcloud-apply-type": "serial",
     "type": "patch",
     "stop-on-failure": "true",
     "max-parallel-subclouds": 2,
     "upload-only": "true",
     "force": "true"
}

Response parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

id (Optional)

body

integer

The ID of the sw-update-strategy associated with this object.

state (Optional)

body

string

The internal state of the sw-update-strategy.

extra-args (Optional)

body

dictionary

The dictionary of extra arguments passed to a sw-update-strategy.

stop-on-failure (Optional)

body

boolean

Flag to indicate if the update should stop updating additional subclouds if a failure is encountered.

subcloud-apply-type (Optional)

body

string

The apply type for the update. serial or parallel.

max-parallel-subclouds (Optional)

body

integer

The maximum number of subclouds to update in parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "type": "patch",
  "id": 2,
  "state": "initial",
  "stop-on-failure": true,
  "max-parallel-subclouds": "2",
  "subcloud-apply-type": "serial",
  "extra-args": {
    "upload-only": true
  },
  "created-at": "2018-02-25T23:23:53.852473",
  "updated-at": null
}
DELETE
/v1.0/sw-update-strategy

Deletes the update strategy

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

id (Optional)

body

integer

The ID of the sw-update-strategy associated with this object.

state (Optional)

body

string

The internal state of the sw-update-strategy.

extra-args (Optional)

body

dictionary

The dictionary of extra arguments passed to a sw-update-strategy.

stop-on-failure (Optional)

body

boolean

Flag to indicate if the update should stop updating additional subclouds if a failure is encountered.

subcloud-apply-type (Optional)

body

string

The apply type for the update. serial or parallel.

max-parallel-subclouds (Optional)

body

integer

The maximum number of subclouds to update in parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
    "max-parallel-subclouds": null,
    "extra-args": {"to-version": null},
    "created-at": "2022-01-12T19:13:20.462279",
    "updated-at": "2022-01-12T19:15:22.167975",
    "subcloud-apply-type": null,
    "state": "deleting",
    "stop-on-failure": false,
    "type": "kubernetes",
    "id": 5
}

Subcloud Update Strategy Actions

Subcloud patch strategy can be actioned.

POST
/v1.0/sw-update-strategy/actions

Executes an action on a patch strategy

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

action

body

string

Perform an action on the update strategy. Valid values are: apply, or abort.

Request Example

{
    "action": "apply"
}

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

The ID of the sw-update-strategy associated with this object.

type (Optional)

path

string

Filter to query a particular type of update strategy if it exists. One of: firmware, kube-rootca-update, kubernetes, patch, prestage, or sw-deploy.

state (Optional)

body

string

The internal state of the sw-update-strategy.

extra-args (Optional)

body

dictionary

The dictionary of extra arguments passed to a sw-update-strategy.

stop-on-failure (Optional)

body

boolean

Flag to indicate if the update should stop updating additional subclouds if a failure is encountered.

subcloud-apply-type (Optional)

body

string

The apply type for the update. serial or parallel.

max-parallel-subclouds (Optional)

body

integer

The maximum number of subclouds to update in parallel.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
    "id": 7,
    "type": "kubernetes",
    "state": "applying",
    "max-parallel-subclouds": null,
    "extra-args": {
        "to-version": null
    },
    "created-at": "2022-01-12T20:39:08.036660",
    "updated-at": "2022-01-13T14:19:14.717456",
    "subcloud-apply-type": null,
    "stop-on-failure": false
}

Subcloud Software Update Strategy Steps

Subcloud patch strategy steps can be retrieved.

GET
/v1.0/sw-update-strategy/steps

Lists all software update strategy steps for all clouds

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

strategy-steps (Optional)

body

array

The list of strategy steps.

id (Optional)

body

integer

The ID of the strategy step.

cloud

body

string

The name of a subcloud.

stage (Optional)

body

string

The stage associated with the strategy step.

state (Optional)

body

string

The state of the strategy step.

details (Optional)

body

string

The details associated with the strategy step.

started-at

body

string

The time when the strategy_step finished.

finished-at

body

string

The time when the strategy_step finished.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
    "strategy-steps": [
        {
            "started-at": null,
            "state": "initial",
            "details": "",
            "finished-at": null,
            "updated-at": null,
            "created-at": "2022-01-12 19:19:03.782236",
            "id": 2,
            "cloud": "subcloud1",
            "stage": "Create"
        }
    ]
}
GET
/v1.0/sw-update-strategy/steps/​{cloud_name}

Shows the details of patch strategy steps for a particular cloud

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

cloud_name

body

string

The name of a subcloud.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

The ID of the strategy step.

cloud

body

string

The name of a subcloud.

stage (Optional)

body

string

The stage associated with the strategy step.

state (Optional)

body

string

The state of the strategy step.

details (Optional)

body

string

The details associated with the strategy step.

started-at

body

string

The time when the strategy_step finished.

finished-at

body

string

The time when the strategy_step finished.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
    "started-at": null,
    "state": "initial",
    "details": "",
    "finished-at": null,
    "updated-at": null,
    "created-at": "2022-01-12 19:19:03.782236",
    "id": 3,
    "cloud": "subcloud1",
    "stage": "Create"
}

Subcloud Software Update Options

Subcloud Software Update Options are configurable.

GET
/v1.0/sw-update-options

Lists all sw-update options

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

sw-update-options (Optional)

body

array

The list of sw-update-options objects.

id (Optional)

body

integer

A numerical ID for sw-update-options. This ID is invalid.

name (Optional)

body

string

The name of the subcloud to which the sw update options apply.

alarm-restriction-type

body

string

Whether to allow update if subcloud alarms are present or not. Valid values are strict or relaxed.

default-instance-action

body

string

How instances should be handled. Valid values are stop-start or migrate.

max-parallel-workers

body

integer

The maximum number of workers within a subcloud to update in parallel.

storage-apply-type

body

string

The apply type for the update on storage nodes in a subcloud. Valid values are: serial or parallel.

subcloud-id

body

integer

The ID of a subcloud as an integer.

worker-apply-type

body

string

The apply type for the update on worker nodes in a subcloud. Valid values are: serial or parallel.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "sw-update-options": [
    {
      "worker-apply-type": "parallel",
      "name": "all clouds default",
      "default-instance-action": "migrate",
      "created-at": null,
      "subcloud-id": null,
      "updated-at": null,
      "max-parallel-workers": 10,
      "id": 1,
      "alarm-restriction-type": "relaxed",
      "storage-apply-type": "parallel"
    },
    {
      "worker-apply-type": "parallel",
      "name": "subcloud1",
      "default-instance-action": "migrate",
      "created-at": "2022-01-13 15:10:37.713254",
      "subcloud-id": 4,
      "updated-at": null,
      "max-parallel-workers": 2,
      "id": 1,
      "alarm-restriction-type": "strict",
      "storage-apply-type": "parallel"
    }
  ]
}
GET
/v1.0/sw-update-options/​{subcloud}

Shows sw-update options (defaults or per subcloud). Use

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The name of the subcloud to which the options apply. Use RegionOne for querying the default.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

A numerical ID for sw-update-options. This ID is invalid.

name (Optional)

body

string

The name of the subcloud to which the sw update options apply.

alarm-restriction-type

body

string

Whether to allow update if subcloud alarms are present or not. Valid values are strict or relaxed.

default-instance-action

body

string

How instances should be handled. Valid values are stop-start or migrate.

max-parallel-workers

body

integer

The maximum number of workers within a subcloud to update in parallel.

storage-apply-type

body

string

The apply type for the update on storage nodes in a subcloud. Valid values are: serial or parallel.

subcloud-id (Optional)

body

integer

The id of the subcloud (will be 0 for: all clouds default).

worker-apply-type

body

string

The apply type for the update on worker nodes in a subcloud. Valid values are: serial or parallel.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "name": "all clouds default",
  "subcloud-id": null,
  "worker-apply-type": "parallel",
  "default-instance-action": "migrate",
  "created-at": null,
  "updated-at": null,
  "max-parallel-workers": 10,
  "alarm-restriction-type": "relaxed",
  "storage-apply-type": "parallel"
}
POST
/v1.0/sw-update-options/​{subcloud}

Updates sw-update options, defaults or per subcloud. Use

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The name of the subcloud to which the options apply. Use RegionOne for querying the default.

alarm-restriction-type

body

string

Whether to allow update if subcloud alarms are present or not. Valid values are strict or relaxed.

default-instance-action

body

string

How instances should be handled. Valid values are stop-start or migrate.

max-parallel-workers

body

integer

The maximum number of workers within a subcloud to update in parallel.

storage-apply-type

body

string

The apply type for the update on storage nodes in a subcloud. Valid values are: serial or parallel.

worker-apply-type

body

string

The apply type for the update on worker nodes in a subcloud. Valid values are: serial or parallel.

Request Example

{
  "alarm-restriction-type": "strict",
  "default-instance-action": "migrate",
  "max-parallel-workers": 2,
  "storage-apply-type": "parallel",
  "worker-apply-type": "parallel"
}

Response parameters

Name

In

Type

Description

id (Optional)

body

integer

A numerical ID for sw-update-options. This ID is invalid.

name (Optional)

body

string

The name of the subcloud to which the sw update options apply.

alarm-restriction-type

body

string

Whether to allow update if subcloud alarms are present or not. Valid values are strict or relaxed.

default-instance-action

body

string

How instances should be handled. Valid values are stop-start or migrate.

max-parallel-workers

body

integer

The maximum number of workers within a subcloud to update in parallel.

storage-apply-type

body

string

The apply type for the update on storage nodes in a subcloud. Valid values are: serial or parallel.

subcloud-id (Optional)

body

integer

The id of the subcloud (will be 0 for: all clouds default).

worker-apply-type

body

string

The apply type for the update on worker nodes in a subcloud. Valid values are: serial or parallel.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "worker-apply-type": "parallel",
  "name": "subcloud1",
  "default-instance-action": "migrate",
  "created-at": "2022-01-13 15:10:37.713254",
  "subcloud-id": 4,
  "updated-at": null,
  "max-parallel-workers": 2,
  "alarm-restriction-type": "strict",
  "storage-apply-type": "parallel"
}
DELETE
/v1.0/sw-update-options/​{subcloud}

Delete per subcloud sw-update options

This operation does not accept a request body.

Normal response codes

200

Request parameters

Name

In

Type

Description

subcloud

path

string

The name of the subcloud to which the options apply. Use RegionOne for querying the default.

Subcloud Deploy

These APIs allow for the display and upload of the deployment manager common files which include deploy playbook, deploy overrides, deploy helm charts, and prestage images list.

GET
/v1.0/subcloud-deploy/​{release}

Show Subcloud Deploy Files

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

release (Optional)

path

string

The subcloud software version.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

subcloud_deploy (Optional)

body

dictionary

The dictionary of subcloud deploy files.

deploy_chart (Optional)

body

string

The file name of the deployment manager helm charts.

deploy_playbook (Optional)

body

string

The file name of the deployment manager playbook.

deploy_overrides (Optional)

body

string

The file name of the deployment manager overrides.

prestage_images (Optional)

body

string

The file name of the deployment manager prestage images.

software_version

body

string

The software version for the subcloud.

Response Example

{
    "subcloud_deploy":
       {
         "deploy_chart": "deployment-manager.tgz",
         "deploy_playbook": "deployment-manager-playbook.yaml",
         "deploy_overrides": "deployment-manager-overrides-subcloud.yaml",
         "software_version": "22.12"
       }
}
POST
/v1.0/subcloud-deploy

Upload Subcloud Deploy Files

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

deploy_chart (Optional)

body

string

The content of the deployment manager helm charts.

deploy_playbook (Optional)

body

string

The content of the deployment manager playbook.

deploy_overrides (Optional)

body

string

The content of the deployment manager overrides.

prestage_images (Optional)

body

string

The content of the deployment manager prestage images.

release (Optional)

body

string

The subcloud software version.

Request Example

{
    "deploy_chart": "deployment manager contents",
    "deploy_playbook": "deployment manager playbook contents",
    "deploy_overrides": "deployment manager overrides contents",
    "release": "22.12"
}

Response parameters

Name

In

Type

Description

deploy_chart (Optional)

body

string

The file name of the deployment manager helm charts.

deploy_playbook (Optional)

body

string

The file name of the deployment manager playbook.

deploy_overrides (Optional)

body

string

The file name of the deployment manager overrides.

prestage_images (Optional)

body

string

The file name of the deployment manager prestage images.

software_version

body

string

The software version for the subcloud.

Response Example

{
    "deploy_chart": "deployment-manager.tgz",
    "deploy_playbook": "deployment-manager-playbook.yaml",
    "deploy_overrides": "deployment-manager-overrides-subcloud.yaml",
    "software_version": "22.12"
}
DELETE
/v1.0/subcloud-deploy

Delete Subcloud Deploy Files

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), notFound (404), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

release (Optional)

path

string

The subcloud software version.

deployment_files (Optional)

body

boolean

The flag to indicate the deploy playbook, deploy overrides, deploy chart files to be deleted.

prestage_images (Optional)

body

boolean

The flag to indicate the deployment manager prestage images file to be deleted.

Request Example

{
    "release": 23.09,
    "prestage_images": false,
    "deployment_files": false
}

Phased Subcloud Deploy

These APIs allow for subcloud deployment to be done in phases.

POST
/v1.0/phased-subcloud-deploy

Creates a subcloud

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

bmc_password (Optional)

body

string

The BMC password of the subcloud. Must be base64 encoded.

bootstrap-address

body

string

An OAM IP address of the subcloud controller-0.

bootstrap_values

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

deploy_config

body

string

The content of a file containing the resource definitions describing the desired subcloud configuration.

description (Optional)

body

string

The description of a subcloud.

group_id

body

integer

The ID of a subcloud group. Default is 1.

install_values (Optional)

body

string

The content of a file containing install variables such as subcloud bootstrap interface and BMC information.

location (Optional)

body

string

The location of a subcloud.

release (Optional)

body

string

The subcloud software version.

Request Example

{
    "bmc_password": "YYYYYYY",
    "bootstrap-address": "10.10.10.12",
    "bootstrap_values": "content of bootstrap_values file",
    "deploy_config": "content of deploy_config file",
    "description": "Subcloud 1",
    "group_id": 1,
    "install_values": "content of install_values file",
    "location": "Somewhere",
    "release": "22.12"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

management-state

body

string

Management state of the subcloud.

availability-status

body

string

The availability status of the subcloud.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

management-subnet

body

string

The management subnet for subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

group_id

body

integer

The ID of a subcloud group. Default is 1.

Response Example

{
    "id": 1,
    "name": "subcloud1",
    "description": "Subcloud 1",
    "location": "Somewhere",
    "software-version": "22.12",
    "management-state": "unmanaged",
    "availability-status": "offline",
    "deploy-status": "not-deployed",
    "backup-status": null,
    "backup-datetime": null,
    "prestage-status": null,
    "prestage-versions": null,
    "error-description": "No errors present",
    "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
    "management-subnet": "192.168.102.0/24",
    "management-start-ip": "192.168.102.2",
    "management-end-ip": "192.168.102.50",
    "management-gateway-ip": "192.168.102.1",
    "openstack-installed": null,
    "systemcontroller-gateway-ip": "192.168.204.101",
    "data_install": null,
    "data_upgrade": null,
    "created-at": "2023-05-15 20: 58: 22.992609",
    "updated-at": null,
    "group_id": 1
}
PATCH
/v1.0/phased-subcloud-deploy/bootstrap

Bootstraps a subcloud

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

bootstrap-address

body

string

An OAM IP address of the subcloud controller-0.

bootstrap_values

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Request Example

{
    "bootstrap-address": "10.10.10.12",
    "bootstrap_values": "content of bootstrap_values file",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

management-state

body

string

Management state of the subcloud.

availability-status

body

string

The availability status of the subcloud.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

management-subnet

body

string

The management subnet for subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

group_id

body

integer

The ID of a subcloud group. Default is 1.

Response Example

{
    "id": 1,
    "name": "subcloud1",
    "description": "Subcloud 1",
    "location": "Somewhere",
    "software-version": "22.12",
    "management-state": "unmanaged",
    "availability-status": "offline",
    "deploy-status": "not-deployed",
    "backup-status": null,
    "backup-datetime": null,
    "prestage-status": null,
    "prestage-versions": null,
    "error-description": "No errors present",
    "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
    "management-subnet": "192.168.102.0/24",
    "management-start-ip": "192.168.102.2",
    "management-end-ip": "192.168.102.50",
    "management-gateway-ip": "192.168.102.1",
    "openstack-installed": null,
    "systemcontroller-gateway-ip": "192.168.204.101",
    "data_install": null,
    "data_upgrade": null,
    "created-at": "2023-05-15 20: 58: 22.992609",
    "updated-at": null,
    "group_id": 1
}
PATCH
/v1.0/phased-subcloud-deploy/{subcloud}/install

Installs a subcloud

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

release (Optional)

body

string

The subcloud software version.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

bmc_password (Optional)

body

string

The BMC password of the subcloud. Must be base64 encoded.

Accepts Content-Type multipart/form-data

Request Example

{
    "bmc_password": "YYYYYYY",
    "install_values": "content of install_values file",
    "release": "22.12",
    "subcloud": "subcloud1",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
    "id": 1,
    "name": "subcloud1",
    "created-at": "2023-01-02T03:04:05.678987",
    "updated-at": "2023-04-08T15:16:23.424851",
    "availability-status": "offline",
    "data_install": null,
    "data_upgrade": null,
    "deploy-status": "pre-install",
    "backup-status": null,
    "backup-datetime": null,
    "prestage-status": null,
    "prestage-versions": null,
    "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
    "description": "Ottawa Site",
    "group_id": 1,
    "location": "YOW",
    "management-end-ip": "192.168.101.50",
    "management-gateway-ip": "192.168.101.1",
    "management-start-ip": "192.168.101.2",
    "management-state": "unmanaged",
    "management-subnet": "192.168.101.0/24",
    "openstack-installed": false,
    "software-version": "22.12",
    "systemcontroller-gateway-ip": "192.168.204.101"
}
PATCH
/v1.0/phased-subcloud-deploy/{subcloud}/configure

Configures a subcloud

The attributes of a subcloud which are modifiable:

  • subcloud configuration (which is provided through deploy_config file)

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

deploy_config

body

string

The content of a file containing the resource definitions describing the desired subcloud configuration.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Accepts Content-Type multipart/form-data

Request Example

{
    "deploy_config": "content of deploy_config file",
    "subcloud": "subcloud1",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "name": "subcloud1",
  "created-at": "2023-01-02T03:04:05.678987",
  "updated-at": "2023-04-08T15:16:23.424851",
  "availability-status": "online",
  "data_install": null,
  "data_upgrade": null,
  "deploy-status": "complete",
  "backup-status": "complete",
  "backup-datetime": "2023-05-02 11:23:58.132134",
  "prestage-status": "complete",
  "prestage-versions": "22.12",
  "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
  "description": "Ottawa Site",
  "group_id": 1,
  "location": "YOW",
  "management-end-ip": "192.168.101.50",
  "management-gateway-ip": "192.168.101.1",
  "management-start-ip": "192.168.101.2",
  "management-state": "unmanaged",
  "management-subnet": "192.168.101.0/24",
  "openstack-installed": false,
  "software-version": "21.12",
  "systemcontroller-gateway-ip": "192.168.204.101"
}
PATCH
/v1.0/phased-subcloud-deploy/{subcloud}/complete

Completes the subcloud deployment

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

Accepts Content-Type multipart/form-data

Request Example

{
    "subcloud": "subcloud1"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
    "id": 1,
    "name": "subcloud1",
    "created-at": "2023-01-02T03:04:05.678987",
    "updated-at": "2023-04-08T15:16:23.424851",
    "availability-status": "online",
    "data_install": null,
    "data_upgrade": null,
    "deploy-status": "complete",
    "backup-status": "complete",
    "backup-datetime": "2023-05-02 11:23:58.132134",
    "prestage-status": "complete",
    "prestage-versions": "22.12",
    "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
    "description": "Ottawa Site",
    "group_id": 1,
    "location": "YOW",
    "management-end-ip": "192.168.101.50",
    "management-gateway-ip": "192.168.101.1",
    "management-start-ip": "192.168.101.2",
    "management-state": "unmanaged",
    "management-subnet": "192.168.101.0/24",
    "openstack-installed": false,
    "software-version": "21.12",
    "systemcontroller-gateway-ip": "192.168.204.101"
  }
PATCH
/v1.0/phased-subcloud-deploy/{subcloud}/abort

Abort subcloud deployment

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

Accepts Content-Type multipart/form-data

Request Example

{
    "subcloud": "subcloud1"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

endpoint_sync_status

body

list

A list of endpoint sync status.

sync_status

body

string

The sync status for the endpoint.

endpoint_type

body

string

The type for the sync status endpoint.

Response Example

{
  "id": 1,
  "name": "subcloud1",
  "created-at": "2023-01-02T03:04:05.678987",
  "updated-at": "2023-04-08T15:16:23.424851",
  "availability-status": "offline",
  "data_install": null,
  "data_upgrade": null,
  "deploy-status": "aborting-install",
  "backup-status": null,
  "backup-datetime": null,
  "prestage-status": null,
  "prestage-versions": null,
  "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
  "description": "Ottawa Site",
  "group_id": 1,
  "location": "YOW",
  "management-end-ip": "192.168.101.50",
  "management-gateway-ip": "192.168.101.1",
  "management-start-ip": "192.168.101.2",
  "management-state": "unmanaged",
  "management-subnet": "192.168.101.0/24",
  "openstack-installed": false,
  "software-version": "22.12",
  "systemcontroller-gateway-ip": "192.168.204.101"
}
PATCH
/v1.0/phased-subcloud-deploy/{subcloud}/resume

Resume subcloud deployment

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), conflict (409), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud

path

string

The subcloud reference, name or id.

bmc_password (Optional)

body

string

The BMC password of the subcloud. Must be base64 encoded.

bootstrap-address

body

string

An OAM IP address of the subcloud controller-0.

bootstrap_values

body

string

The content of a file containing the bootstrap overrides such as subcloud name, management and OAM subnet.The sysadmin password of the subcloud. Must be base64 encoded.

deploy_config

body

string

The content of a file containing the resource definitions describing the desired subcloud configuration.

install_values (Optional)

body

string

The content of a file containing install variables such as subcloud bootstrap interface and BMC information.

release (Optional)

body

string

The subcloud software version.

sysadmin_password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Request Example

{
    "bmc_password": "YYYYYYY",
    "bootstrap-address": "10.10.10.12",
    "bootstrap_values": "content of bootstrap_values file",
    "deploy_config": "content of deploy_config file",
    "install_values": "content of install_values file",
    "location": "Somewhere",
    "release": "22.12",
    "sysadmin_password": "XXXXXXX"
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a subcloud as an integer.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

management-state

body

string

Management state of the subcloud.

availability-status

body

string

The availability status of the subcloud.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

region-name

body

string

The name provisioned for the subcloud (synonym for subcloud name).

management-subnet

body

string

The management subnet for subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

group_id

body

integer

The ID of a subcloud group. Default is 1.

Response Example

{
    "id": 1,
    "name": "subcloud1",
    "description": "Subcloud 1",
    "location": "Somewhere",
    "software-version": "22.12",
    "management-state": "unmanaged",
    "availability-status": "offline",
    "deploy-status": "pre-install",
    "backup-status": null,
    "backup-datetime": null,
    "prestage-status": null,
    "prestage-versions": null,
    "error-description": "No errors present",
    "region-name": "bbadb3e8e2ab473792c80ef09c5a12a4",
    "management-subnet": "192.168.102.0/24",
    "management-start-ip": "192.168.102.2",
    "management-end-ip": "192.168.102.50",
    "management-gateway-ip": "192.168.102.1",
    "openstack-installed": null,
    "systemcontroller-gateway-ip": "192.168.204.101",
    "data_install": null,
    "data_upgrade": null,
    "created-at": "2023-05-15 20: 58: 22.992609",
    "updated-at": null,
    "group_id": 1
}

System Peers

System Peers are logical entities which are managed by a central System Controller. Each System Peer maintains the information which is used for health check and data synchronization in the protection group in Geo-Redundancy deployment.

GET
/v1.0/system-peers

Lists all system peers

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response

Name

In

Type

Description

system_peers

body

array

The list of system-peer objects.

id

body

integer

The ID of a system peer as an integer.

peer-uuid

body

string

The UUID of a peer as a string.

peer-name

body

string

The name of a peer as a string.

manager-endpoint

body

string

The endpoint of the system peer site manager.

manager-username

body

string

The username of the system peer site manager.

peer-controller-gateway-address

body

string

The gateway IP address of the system peer site system controller.

administrative-state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat-interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat-failure-threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat-failure-policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat-maintenance-timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "system_peers": [
    {
      "id": 1,
      "peer-uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
      "peer-name": "PeerDistributedCloud1",
      "manager-endpoint": "http://128.128.128.1:5000/v3",
      "manager-username": "admin",
      "peer-controller-gateway-address": "192.168.204.1",
      "administrative-state": "enabled",
      "heartbeat-interval": 60,
      "heartbeat-failure-threshold": 3,
      "heartbeat-failure-policy": "alarm",
      "heartbeat-maintenance-timeout": 600,
      "created-at": "2023-08-14 05:47:35.587528",
      "updated-at": "2023-08-14 05:47:35.587528"
    }
  ]
}
POST
/v1.0/system-peers

Creates a system peer

Accepts Content-Type multipart/form-data.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

peer_uuid

body

string

The UUID of a peer as a string.

peer_name

body

string

The name of a peer as a string.

manager_endpoint

body

string

The endpoint of the system peer site manager.

manager_username

body

string

The username of the system peer site manager.

manager_password

body

string

The password of the system peer site manager.

peer_controller_gateway_address

body

string

The gateway IP address of the system peer site system controller.

administrative_state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat_interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat_failure_threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat_failure_policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat_maintenance_timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

Request Example

{
  "peer_uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
  "peer_name": "PeerDistributedCloud1",
  "manager_endpoint": "http://128.128.128.1:5000/v3",
  "manager_username": "admin",
  "manager_password": "V2luZDEyMyQ=",
  "peer_controller_gateway_address": "192.168.204.1",
  "administrative_state": "enabled",
  "heartbeat_interval": 60,
  "heartbeat_failure_threshold": 3,
  "heartbeat_failure_policy": "alarm",
  "heartbeat_maintenance_timeout": 600
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a system peer as an integer.

peer-uuid

body

string

The UUID of a peer as a string.

peer-name

body

string

The name of a peer as a string.

manager-endpoint

body

string

The endpoint of the system peer site manager.

manager-username

body

string

The username of the system peer site manager.

peer-controller-gateway-address

body

string

The gateway IP address of the system peer site system controller.

administrative-state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat-interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat-failure-threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat-failure-policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat-maintenance-timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "peer-uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
  "peer-name": "PeerDistributedCloud1",
  "manager-endpoint": "http://128.128.128.1:5000/v3",
  "manager-username": "admin",
  "peer-controller-gateway-address": "192.168.204.1",
  "administrative-state": "enabled",
  "heartbeat-interval": 60,
  "heartbeat-failure-threshold": 3,
  "heartbeat-failure-policy": "alarm",
  "heartbeat-maintenance-timeout": 600,
  "created-at": "2023-08-14 05:47:35.587528",
  "updated-at": null
}
GET
/v1.0/system-peers/​{system-peer}

Shows information about a specific system peer

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

system-peer

path

string

The system peer reference, name or id or UUID.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a system peer as an integer.

peer-uuid

body

string

The UUID of a peer as a string.

peer-name

body

string

The name of a peer as a string.

manager-endpoint

body

string

The endpoint of the system peer site manager.

manager-username

body

string

The username of the system peer site manager.

peer-controller-gateway-address

body

string

The gateway IP address of the system peer site system controller.

administrative-state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat-interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat-failure-threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat-failure-policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat-maintenance-timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "peer-uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
  "peer-name": "PeerDistributedCloud1",
  "manager-endpoint": "http://128.128.128.1:5000/v3",
  "manager-username": "admin",
  "peer-controller-gateway-address": "192.168.204.1",
  "administrative-state": "enabled",
  "heartbeat-interval": 60,
  "heartbeat-failure-threshold": 3,
  "heartbeat-failure-policy": "alarm",
  "heartbeat-maintenance-timeout": 600,
  "created-at": "2023-08-14 05:47:35.587528",
  "updated-at": "2023-08-14 05:47:35.587528"
}
GET
/v1.0/system-peers/​{system-peer}​/subcloud-peer-groups

Shows subcloud peer groups that are associated with a system peer

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

system-peer

path

string

The system peer reference, name or id or UUID.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

subcloud_peer_groups

body

array

The list of subcloud-peer-group objects.

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "subcloud_peer_groups": [
    {
      "id": 1,
      "peer_group_name": "dc1-pg",
      "group_priority": 0,
      "group_state": "enabled",
      "max_subcloud_rehoming": 10,
      "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
      "system_leader_name": "dc1-name",
      "created-at": "2023-07-26 00:51:01.396694",
      "updated-at": "2023-08-07 06:09:04.086417"
    }
  ]
}
PATCH
/v1.0/system-peers/​{system-peer}

Modifies a specific system peer

The attributes of a subcloud group which are modifiable:

  • peer-uuid

  • peer-name

  • manager-endpoint

  • manager-username

  • manager-password

  • peer-controller-gateway-address

  • administrative-state

  • heartbeat-interval

  • heartbeat-failure-threshold

  • heartbeat-failure-policy

  • heartbeat-maintenance-timeout

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

system-peer

path

string

The system peer reference, name or id or UUID.

peer_uuid

body

string

The UUID of a peer as a string.

peer_name

body

string

The name of a peer as a string.

manager_endpoint

body

string

The endpoint of the system peer site manager.

manager_username

body

string

The username of the system peer site manager.

manager_password

body

string

The password of the system peer site manager.

peer_controller_gateway_address

body

string

The gateway IP address of the system peer site system controller.

administrative_state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat_interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat_failure_threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat_failure_policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat_maintenance_timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

Request Example

{
  "peer_uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
  "peer_name": "PeerDistributedCloud1",
  "manager_endpoint": "http://128.128.128.1:5000/v3",
  "manager_username": "admin",
  "manager_password": "V2luZDEyMyQ=",
  "peer_controller_gateway_address": "192.168.204.1",
  "administrative_state": "enabled",
  "heartbeat_interval": 60,
  "heartbeat_failure_threshold": 3,
  "heartbeat_failure_policy": "alarm",
  "heartbeat_maintenance_timeout": 600
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a system peer as an integer.

peer-uuid

body

string

The UUID of a peer as a string.

peer-name

body

string

The name of a peer as a string.

manager-endpoint

body

string

The endpoint of the system peer site manager.

manager-username

body

string

The username of the system peer site manager.

peer-controller-gateway-address

body

string

The gateway IP address of the system peer site system controller.

administrative-state

body

string

The administrative state of the system peer site. (enabled, disabled)

heartbeat-interval

body

integer

The interval of the message between the peer site heartbeats. (in seconds)

heartbeat-failure-threshold

body

integer

The failure threshold of the peer site heartbeats.

heartbeat-failure-policy

body

string

The failure policy of the peer site heartbeats. (alarm, rehome, delegate)

heartbeat-maintenance-timeout

body

integer

The maintenance timeout of the peer site heartbeats. (in seconds)

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "peer-uuid": "b00d0863-c54e-4340-af4d-3e2093764276",
  "peer-name": "PeerDistributedCloud1",
  "manager-endpoint": "http://128.128.128.1:5000/v3",
  "manager-username": "admin",
  "peer-controller-gateway-address": "192.168.204.1",
  "administrative-state": "enabled",
  "heartbeat-interval": 60,
  "heartbeat-failure-threshold": 3,
  "heartbeat-failure-policy": "alarm",
  "heartbeat-maintenance-timeout": 600,
  "created-at": "2023-08-14 05:47:35.587528",
  "updated-at": "2023-08-14 06:47:35.587528"
}
DELETE
/v1.0/system-peers/​{system-peer}

Deletes a specific system peer

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

system-peer

path

string

The system peer reference, name or id or UUID.

This operation does not accept a request body.

Subcloud Peer Groups

Subcloud Peer Groups are logical groupings managed by a central System Controller. It’s a group of the current managed subclouds which are supposed to be duplicated in a peer site as secondary subclouds

GET
/v1.0/subcloud-peer-groups

Lists all subcloud peer groups

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

subcloud_peer_groups

body

array

The list of subcloud-peer-group objects.

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "subcloud_peer_groups": [{
    "id": 1,
    "peer_group_name": "dc1-pg",
    "group_priority": 0,
    "group_state": "enabled",
    "max_subcloud_rehoming": 10,
    "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
    "system_leader_name": "dc1-name",
    "migration_status": null,
    "created-at": "2023-07-26 00:51:01.396694",
    "updated-at": "2023-08-07 06:09:04.086417"
  }]
}
POST
/v1.0/subcloud-peer-groups

Creates a subcloud peer group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

Request Example

{
  "peer_group_name": "pg-name",
  "group_priority": 0,
  "group_state": "enabled",
  "max_subcloud_rehoming": 10,
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name"
}

Response parameters

Name

In

Type

Description

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer_group_name": "pg-name",
  "group_priority": 0,
  "group_state": "enabled",
  "max_subcloud_rehoming": 10,
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name",
  "migration_status": null,
  "created-at": "2023-08-07 06:13:52.664047",
  "updated-at": null
}
GET
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}

Shows information about a specific subcloud group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-peer-group

path

string

The subcloud peer group reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer_group_name": "pg-name",
  "group_priority": 0,
  "group_state": "enabled",
  "max_subcloud_rehoming": 10,
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name",
  "migration_status": null,
  "created-at": "2023-08-07 06:13:52.664047",
  "updated-at": null
}
GET
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}​/subclouds

Shows subclouds that are part of a subcloud peer group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-peer-group

path

string

The subcloud peer group reference, name or id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

subclouds

body

array

The list of subcloud objects.

id

body

integer

The ID of a subcloud as an integer.

group_id

body

integer

The ID of a subcloud group. Default is 1.

name

body

string

The name of a subcloud.

description (Optional)

body

string

The description of a subcloud.

location (Optional)

body

string

The location of a subcloud.

software-version

body

string

The software version for the subcloud.

availability-status

body

string

The availability status of the subcloud.

error-description (Optional)

body

string

Description of the subcloud’s error.

deploy-status

body

string

The deploy status of the subcloud.

backup-status

body

string

The backup status of the subcloud.

backup-datetime

body

string

Date and time of the last successful subcloud backup.

prestage-status

body

string

The prestage status of the subcloud.

prestage-versions

body

string

All of the prestage versions of the subcloud.

openstack-installed

body

boolean

A flag indicating if openstack is installed in the subcloud.

management-state

body

string

Management state of the subcloud.

systemcontroller-gateway-ip

body

string

The gateway IP address of the system controller of the subcloud.

management-start-ip

body

string

Start of management IP address range for subcloud.

management-end-ip

body

string

End of management IP address range for subcloud.

management-subnet

body

string

The management subnet for subcloud.

management-gateway-ip

body

string

Management gateway IP for subcloud.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

data_install

body

string

The installation data for the subcloud.

data_upgrade

body

string

The upgrade data for the subcloud.

Response Example

{
  "subclouds": [{
    "id": 23,
    "name": "fakesub1",
    "description": "desc",
    "location": "PEK SE Lab",
    "software-version": "23.09",
    "management-state": "unmanaged",
    "availability-status": "offline",
    "deploy-status": "secondary",
    "backup-status": null,
    "backup-datetime": null,
    "prestage-status": null,
    "prestage-versions": null,
    "error-description": "No errors present",
    "management-subnet": "192.168.38.0/24",
    "management-start-ip": "192.168.38.2",
    "management-end-ip": "192.168.38.200",
    "management-gateway-ip": "192.168.38.1",
    "openstack-installed": false,
    "systemcontroller-gateway-ip": "192.168.10.1",
    "data_install": null,
    "data_upgrade": null,
    "created-at": "2023-08-04 05:45:04.416188",
    "updated-at": "2023-08-04 08:55:13.034874",
    "group_id": 1,
    "peer_group_id": "6",
    "rehome_data": "{\"saved_payload\": {\"system_mode\": \"simplex\", \"name\": \"fakesub2\", \"description\": \"bbb\", \"location\": \"PEK SE Lab\", \"external_oam_subnet\": \"128.224.115.0/24\", \"external_oam_gateway_address\": \"128.224.115.1\", \"external_oam_floating_address\": \"128.224.115.15\", \"management_subnet\": \"192.168.38.0/24\", \"management_start_address\": \"192.168.38.2\", \"management_end_address\": \"192.168.38.200\", \"management_gateway_address\": \"192.168.38.1\", \"systemcontroller_gateway_address\": \"192.168.10.1\", \"docker_http_proxy\": \"http://147.11.252.42:9090\", \"docker_https_proxy\": \"http://147.11.252.42:9090\", \"docker_no_proxy\": [], \"sysadmin_password\": \"Wind123$\", \"bootstrap-address\": \"192.168.58.2\"}}"
  }]
}
PATCH
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}

Modifies a specific subcloud peer group

The attributes of a subcloud peer group which are modifiable:

  • peer_group_name

  • group_priority

  • group_state

  • max_subcloud_rehoming

  • system_leader_id

  • system_leader_name

  • migration_status

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-peer-group

path

string

The subcloud peer group reference, name or id.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

Request Example

{
  "id": 1,
  "peer_group_name": "dc1-pg",
  "group_priority": 0,
  "group_state": "enabled",
  "max_subcloud_rehoming": 10,
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name",
  "migration_status": null
}

Response parameters

Name

In

Type

Description

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

created_at

body

string

The time when the object was created.

updated_at

body

string

The time when the object was updated.

Response Example

{
  "id": 1,
  "peer_group_name": "dc1-pg",
  "group_priority": 0,
  "group_state": "enabled",
  "max_subcloud_rehoming": 10,
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name",
  "migration_status": null,
  "created-at": "2023-07-26 00:51:01.396694",
  "updated-at": "2023-08-07 06:09:04.086417"
}
PATCH
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}​/migrate

Migrate a specific subcloud peer group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-peer-group

path

string

The subcloud peer group reference, name or id.

sysadmin-password

body

string

The sysadmin password of the subcloud. Must be base64 encoded.

Request Example

{
  "sysadmin_password": "XXXXXXX"
}
DELETE
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}

Deletes a specific subcloud peer group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

subcloud-peer-group

path

string

The subcloud peer group reference, name or id.

This operation does not accept a request body.

PATCH
/v1.0/subcloud-peer-groups/​{subcloud-peer-group}​/audit

Audit a specific subcloud peer group

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

peer_uuid

body

string

The UUID of a peer as a string.

id (Optional)

body

string

The ID of the subcloud peer group associated with this object.

peer_group_name

body

string

The NAME of the subcloud peer group.

group_priority (Optional)

body

integer

The priority of the subcloud peer group. Number lower priority is higher.

group_state (Optional)

body

string

The administrative state of the subcloud peer group. Valid value is enabled/disabled.

max_subcloud_rehoming (Optional)

body

integer

The maximum number of subclouds to rehome in parallel.

system_leader_id (Optional)

body

string

UUID of the peer system.

system_leader_name (Optional)

body

string

NAME of the peer system.

migration_status (Optional)

body

string

The migration status of the subcloud peer group.

Request Example

{
  "peer_group_name": "dc1-pg",
  "group_priority": 0,
  "group_state": "enabled",
  "system_leader_id": "ac62f555-9386-42f1-b3a1-51ecb709409d",
  "system_leader_name": "dc1-name",
  "migration_status": null,
  "peer_uuid": "ac62f555-9386-42f1-b3a1-51ecb709409d"
}

Response parameters

Name

In

Type

Description

message

body

string

The error message from a peer DC’s peer group audit result.

Response Example

{"message": "error message"}

Peer Group Association

Peer Group Associations are logical connections managed by a central System Controller. It’s a linking of the subcloud peer group and the system peer to establish associations with local subcloud peer groups and peer sites.

GET
/v1.0/peer-group-associations

Lists all peer group associations

This operation does not accept a request body.

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Response parameters

Name

In

Type

Description

peer-group-associations

body

array

The list of peer-group-association objects.

id

body

integer

The ID of a peer group association as an integer.

peer-group-id

body

string

The ID of the subcloud peer group as an integer.

system-peer-id

body

integer

The ID of a system peer as an integer.

peer-group-priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

association-type

body

string

The type of association.

sync-status

body

string

The sync status for association.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "peer_group_associations": [
    {
      "id": 9,
      "peer-group-id": 1,
      "system-peer-id": 1,
      "association-type": "primary",
      "peer-group-priority": 1,
      "sync-status": "synced",
      "created-at": "2023-08-21 09:24:07.394961",
      "updated-at": null
    }
  ]
}
POST
/v1.0/peer-group-associations

Creates a peer group association

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

peer_group_id

body

string

The ID of the subcloud peer group as an integer.

system_peer_id

body

integer

The ID of a system peer as an integer.

peer_group_priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

Request Example

{
  "peer_group_id": 1,
  "system_peer_id": 1,
  "peer_group_priority": 1
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a peer group association as an integer.

peer-group-id

body

string

The ID of the subcloud peer group as an integer.

system-peer-id

body

integer

The ID of a system peer as an integer.

peer-group-priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

association-type

body

string

The type of association.

sync-status

body

string

The sync status for association.

sync-message

body

string

The sync message for association.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer-group-id": 1,
  "system-peer-id": 1,
  "association-type": "primary",
  "peer-group-priority": 1,
  "sync-status": "syncing",
  "sync-message": null,
  "created-at": "2023-08-21 09:24:07.394961",
  "updated-at": null
}
GET
/v1.0/peer-group-associations/​{associate_id}

Shows information about a specific peer group association

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

associate_id

path

string

The peer group association reference id.

This operation does not accept a request body.

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a peer group association as an integer.

peer-group-id

body

string

The ID of the subcloud peer group as an integer.

system-peer-id

body

integer

The ID of a system peer as an integer.

peer-group-priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

association-type

body

string

The type of association.

sync-status

body

string

The sync status for association.

sync-message

body

string

The sync message for association.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer-group-id": 1,
  "system-peer-id": 1,
  "association-type": "primary",
  "peer-group-priority": 1,
  "sync-status": "synced",
  "sync-message": null,
  "created-at": "2023-08-21 09:24:07.394961",
  "updated-at": null
}
PATCH
/v1.0/peer-group-associations/​{associate_id}​/sync

Synchronizes a specific peer group association

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

associate_id

path

string

The peer group association reference id.

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a peer group association as an integer.

peer-group-id

body

string

The ID of the subcloud peer group as an integer.

system-peer-id

body

integer

The ID of a system peer as an integer.

peer-group-priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

association-type

body

string

The type of association.

sync-status

body

string

The sync status for association.

sync-message

body

string

The sync message for association.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer-group-id": 1,
  "system-peer-id": 1,
  "association-type": "primary",
  "peer-group-priority": 99,
  "sync-status": "synced",
  "sync-message": null,
  "created-at": "2023-08-21 09:24:07.394961",
  "updated-at": "2023-08-21 10:24:07.394961"
}
PATCH
/v1.0/peer-group-associations/​{associate_id}

Modifies a specific peer group association

The attributes of a subcloud peer group which are modifiable:

  • peer_group_priority

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

associate_id

path

string

The peer group association reference id.

peer_group_priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

sync-status

body

string

The sync status for association.

Request Example

{
  "peer_group_priority": 99
}

Response parameters

Name

In

Type

Description

id

body

integer

The ID of a peer group association as an integer.

peer-group-id

body

string

The ID of the subcloud peer group as an integer.

system-peer-id

body

integer

The ID of a system peer as an integer.

peer-group-priority (Optional)

body

integer

The priority of the subcloud peer group in peer group association. The lower the value, the higher the priority.

association-type

body

string

The type of association.

sync-status

body

string

The sync status for association.

sync-message

body

string

The sync message for association.

created-at

body

string

The time when the object was created.

updated-at

body

string

The time when the object was updated.

Response Example

{
  "id": 9,
  "peer-group-id": 1,
  "system-peer-id": 1,
  "association-type": "primary",
  "peer-group-priority": 99,
  "sync-status": "synced",
  "sync-message": null,
  "created-at": "2023-08-21 09:24:07.394961",
  "updated-at": "2023-08-21 10:24:07.394961"
}
DELETE
/v1.0/peer-group-associations/​{associate_id}

Deletes a specific peer group association

Normal response codes

200

Error response codes

badRequest (400), unauthorized (401), forbidden (403), itemNotFound (404), badMethod (405), HTTPUnprocessableEntity (422), internalServerError (500), serviceUnavailable (503)

Request parameters

Name

In

Type

Description

associate_id

path

string

The peer group association reference id.

This operation does not accept a request body.