distcloud/api-ref/source/api-ref-dcmanager-v1.rst
twang4 4027eee390 System peer and subcloud peer group monitoring and handling
System peer monitoring and handling:
It does peer health check by querying peer group list.
After failure is detected and the number of heartbeat
failure reaches the threshold, alarm will be raised.
After connection is back online, alarm will be cleared,
and will perform an audit to the peer groups that are associated
to the system peer.

Subcloud peer group audit and handling:
If the remote peer group's migration_status is in the 'migrating'
state, unmanage the subclouds of the local peer group.
If the remote peer group's migration_status is in the 'complete'
 state, compare the subclouds on both ends.
If the remote end is in a 'managed+online' state,
set the local subclouds with the same region_name to
'unmanaged+secondary.'
If the remote peer group's migration_status is in the 'none' state,
set the migration_status of the local peer group to 'none' as well.

Batch rehome update:
When Subcloud Peer Group based batch rehoming is performed,
need to check if the associated System Peer is alive or not:
If yes, and the remote subcloud with same region_name is
being managed in peer site, need to unmanage it before
rehoming it to local site.
If not, this means the peer site is not available for the
subcloud management any more, rehoming can be performed
directly.
If the subcloud peer group priority is 0, will try to clear alarm
of FM_ALARM_ID_DC_SUBCLOUD_PEER_GROUP_NOT_MANAGED
after batch rehoming is complete.

Security enhancement:
Base64 encode/decode admin_password when save/load rehome_data
from DB.

Test Plan:
1. PASS - Add a system peer on DC0, unplug the OAM network
          between DC0 and DC1. Alarm raised.
2. PASS - Reconnect the OAM network between DC0 and DC1,
          previous alarm will be cleared.
3. PASS - Add a subcloud peer group on DC0.
          Add two subclouds on DC0 under the subcloud peer group.
          which should be in managed, online and complete states.
          Add a system peer on DC0 pointing to DC1,
          Add a peer-group-association associating the peer-group
          and the system-peer above on DC0.
          create another association in DC1, for system DC0 and the
          peer group synced to DC1.
          Shutdown DC0, perform the migrate operation on
          subcloud-peer-group from DC1, after all subclouds have
          been migrated and entered online managed states.
          Power on DC0, check alarm like "Subcloud peer group
          xxx is managed by remote system (peer_uuid=xxx) with
          lower priority."  has been raised.
          Check the subcloud state on DC0, should be in 'secondary' state,
          Perform the migrate operation on subcloud-peer-group from DC0.
          After all subclouds have been migrated and entered online
          managed states. Alarm is cleared.
          Check subclouds on DC1, subcloud state should be in secondary state.
4.PASS - Migrate a subcloud peer group with 0 priority,
          Before migrate, check alarm
          FM_ALARM_ID_DC_SUBCLOUD_PEER_GROUP_NOT_MANAGED
          exists.
          After migration done, check alarm cleared.
5. PASS - When the remote peer group's migration_status is in the
          'migrating' state (if DC0 comes back online while rehoming
          is still in progress); DC0's subcloud will be auto set to 'unmanaged',
          after DC1's migration is complete and all subcloud in 'managed+online',
          DC0's subcloud will auto set to 'secondary'.

Story: 2010852
Task: 48483
Task: 48509
Task: 48819

Change-Id: Ic97e7c4a7628445522adfba4b0b2e0cc945cbe22
Signed-off-by: Wang Tao <tao.wang@windriver.com>
2023-11-06 10:12:31 +08:00

87 KiB

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

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

samples/root-get-response.json

Subclouds

Subclouds are systems managed by a central System Controller.

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

  • subclouds: subclouds
  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subclouds-get-response.json

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

  • bmc_password: bmc_password
  • bootstrap-address: bootstrap_address
  • bootstrap_values: bootstrap_values
  • deploy_config: deploy_config
  • description: subcloud_description
  • external_oam_floating_address: external_oam_floating_address
  • external_oam_gateway_address: external_oam_gateway_address
  • external_oam_subnet: external_oam_subnet
  • group_id: group_id
  • install_values: install_values
  • location: subcloud_location
  • management_gateway_address: management_gateway_ip
  • management_end_ip: management_end_ip
  • management_start_address: management_start_ip
  • management_subnet: management_subnet
  • migrate: migrate
  • secondary: secondary
  • name: subcloud_name
  • release: release
  • sysadmin_password: sysadmin_password
  • systemcontroller_gateway_address: systemcontroller_gateway_ip
  • system_mode: system_mode

Request Example

samples/subclouds/subclouds-post-request.json

Response parameters

  • id: subcloud_id
  • name: subcloud_name
  • description: subcloud_description
  • management-start-ip: management_start_ip
  • created-at: created_at
  • updated-at: updated_at
  • software-version: software_version
  • management-state: management_state
  • availability-status: availability_status
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • location: subcloud_location
  • group_id: group_id
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • region-name: region_name

Response Example

samples/subclouds/subclouds-post-response.json

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

  • subcloud: subcloud_uri

This operation does not accept a request body.

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • peer_group_id: subcloud_peer_group_id
  • rehome_data: rehome_data
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-get-response.json

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

  • subcloud: subcloud_uri

This operation does not accept a request body.

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • oam_floating_ip: oam_floating_ip
  • peer_group_id: subcloud_peer_group_id
  • rehome_data: rehome_data
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-get-detail-response.json

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

Normal response codes

200

Error response codes

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

Request parameters

  • subcloud: subcloud_uri
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • management-state: subcloud_management_state
  • group_id: subcloud_group_id
  • management-subnet: subcloud_management_subnet
  • management-gateway-ip: subcloud_management_gateway_ip
  • management-start-ip: subcloud_management_start_ip
  • management-end-ip: subcloud_management_end_ip
  • peer_group_id: subcloud_peer_group_id
  • bootstrap-address: bootstrap_address
  • sysadmin-password: sysadmin_password
  • bootstrap-values: bootstrap_values_for_rehome

Request Example

samples/subclouds/subcloud-patch-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • peer_group_id: subcloud_peer_group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-patch-response.json

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

  • subcloud: subcloud_uri
  • install_values: install_values
  • bootstrap_values: bootstrap_values
  • deploy_config: deploy_config
  • release: release
  • sysadmin_password: sysadmin_password
  • bmc_password: bmc_password

Request Example

samples/subclouds/subcloud-patch-redeploy-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-patch-redeploy-response.json

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

  • subcloud: subcloud_uri
  • release: release
  • sysadmin_password: sysadmin_password
  • force: force

Request Example

samples/subclouds/subcloud-patch-prestage-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • prestage_software_version: prestage_software_version
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-patch-prestage-response.json

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

  • subcloud: subcloud_uri
  • endpoint: subcloud_endpoint
  • status: subcloud_endpoint_status

Request Example

samples/subclouds/subcloud-patch-update_status-request.json

Response parameters

  • result: subcloud_endpoint_update_result

Response Example

samples/subclouds/subcloud-patch-update_status-response.json

Migrate a specific subcloud

Normal response codes

200

Error response codes

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

Request parameters

  • subcloud: subcloud_uri
  • sysadmin_password: sysadmin_password

Request Example

samples/subclouds/subcloud-patch-migrate-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • rehome_data: rehome_data
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subclouds/subcloud-patch-migrate-response.json

Deletes a specific subcloud

Normal response codes

200

Request parameters

  • subcloud: subcloud_uri

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.

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

  • subcloud_groups: subcloud_groups
  • id: subcloud_group_id
  • name: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-groups/subcloud-groups-get-response.json

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: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type

Request Example

samples/subcloud-groups/subcloud-groups-post-request.json

Response parameters

  • id: subcloud_group_id
  • name: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-groups/subcloud-groups-post-response.json

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

  • subcloud-group: subcloud_group_uri

This operation does not accept a request body.

Response parameters

  • id: subcloud_group_id
  • name: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-groups/subcloud-groups-post-response.json

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

  • subcloud-group: subcloud_group_uri

This operation does not accept a request body.

Response parameters

  • subclouds: subclouds
  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade

Response Example

samples/subcloud-groups/subcloud-groups-get-subclouds-response.json

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

  • subcloud-group: subcloud_group_uri
  • name: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type

Request Example

samples/subcloud-groups/subcloud-group-patch-request.json

Response parameters

  • id: subcloud_group_id
  • name: subcloud_group_name
  • description: subcloud_group_description
  • max_parallel_subclouds: subcloud_group_max_parallel_subclouds
  • update_apply_type: subcloud_group_update_apply_type
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-groups/subcloud-group-patch-response.json

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

  • subcloud-group: subcloud_group_uri

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.

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

  • subcloud: backup_subcloud_name_or_id
  • group: backup_subcloud_group_name_or_id
  • local_only: backup_local_only
  • registry_images: backup_registry_images
  • backup_values: backup_values
  • sysadmin_password: sysadmin_password

Request Example

samples/subcloud-backup/subcloud-create-backup-request.json

Response parameters

  • subclouds: subclouds
  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subcloud-backup/subcloud-create-backup-response.json

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

  • release: backup_delete_release
  • subcloud: backup_subcloud_name_or_id
  • group: backup_subcloud_group_name_or_id
  • local_only: backup_local_only
  • sysadmin_password: sysadmin_password

Request Example

samples/subcloud-backup/subcloud-delete-backup-request.json

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

  • with_install: with_install
  • release: release
  • local_only: backup_local_only
  • registry_images: backup_registry_images
  • sysadmin_password: sysadmin_password
  • subcloud: backup_subcloud_name_or_id
  • group: backup_subcloud_group_name_or_id
  • restore_values: backup_restore_values

Request Example

samples/subcloud-backup/subcloud-restore-backup-request.json

Response parameters

  • subclouds: subclouds
  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/subcloud-backup/subcloud-restore-backup-response.json

Subcloud Alarms

Subcloud alarms are aggregated on the System Controller.

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

  • alarm_summary: alarm_summary
  • uuid: alarm_summary_uuid
  • region_name: region_name
  • cloud_status: cloud_status
  • warnings: warnings
  • critical_alarms: critical_alarms
  • major_alarms: major_alarms
  • minor_alarms: minor_alarms

Response Example

samples/alarms/alarms-get-response.json

Subcloud Update Strategy

The Subcloud update strategy is configurable.

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

  • type: sw_update_strategy_type

This operation does not accept a request body.

Response parameters

  • type: sw_update_strategy_type
  • id: sw_update_strategy_id
  • state: sw_update_strategy_state
  • extra-args: extra_args
  • stop-on-failure: stop_on_failure
  • subcloud-apply-type: subcloud_apply_type
  • max-parallel-subclouds: max_parallel_subclouds
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-get-response.json

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

  • cloud_name: subcloud_name
  • max-parallel-subclouds: max_parallel_subclouds
  • stop-on-failure: stop_on_failure
  • subcloud-apply-type: subcloud_apply_type
  • type: sw_update_strategy_type
  • upload-only: patch_strategy_upload_only

Request Example

samples/sw-update-strategy/sw-update-strategy-post-request.json

Response parameters

  • type: sw_update_strategy_type
  • id: sw_update_strategy_id
  • state: sw_update_strategy_state
  • extra-args: extra_args
  • stop-on-failure: stop_on_failure
  • subcloud-apply-type: subcloud_apply_type
  • max-parallel-subclouds: max_parallel_subclouds
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-post-response.json

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

  • type: sw_update_strategy_type

This operation does not accept a request body.

Response parameters

  • type: sw_update_strategy_type
  • id: sw_update_strategy_id
  • state: sw_update_strategy_state
  • extra-args: extra_args
  • stop-on-failure: stop_on_failure
  • subcloud-apply-type: subcloud_apply_type
  • max-parallel-subclouds: max_parallel_subclouds
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-delete-response.json

Subcloud Update Strategy Actions

Subcloud patch strategy can be actioned.

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

  • type: sw_update_strategy_type
  • action: sw_update_strategy_action

Request Example

samples/sw-update-strategy/sw-update-strategy-post-action-request.json

Response parameters

  • id: sw_update_strategy_id
  • type: sw_update_strategy_type
  • state: sw_update_strategy_state
  • extra-args: extra_args
  • stop-on-failure: stop_on_failure
  • subcloud-apply-type: subcloud_apply_type
  • max-parallel-subclouds: max_parallel_subclouds
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-post-action-response.json

Subcloud Software Update Strategy Steps

Subcloud patch strategy steps can be retrieved.

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

  • strategy-steps: strategy_steps
  • id: strategy_step_id
  • cloud: subcloud_name
  • stage: strategy_step_stage
  • state: strategy_step_state
  • details: strategy_step_details
  • started-at: strategy_step_started_at
  • finished-at: strategy_step_finished_at
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-get-steps-response.json

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

  • cloud_name: subcloud_name

This operation does not accept a request body.

Response parameters

  • id: strategy_step_id
  • cloud: subcloud_name
  • stage: strategy_step_stage
  • state: strategy_step_state
  • details: strategy_step_details
  • started-at: strategy_step_started_at
  • finished-at: strategy_step_finished_at
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/sw-update-strategy/sw-update-strategy-get-step-subcloud-response.json

Subcloud Software Update Options

Subcloud Software Update Options are configurable.

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

  • sw-update-options: sw_update_options
  • id: sw_update_options_id
  • name: sw_update_options_name
  • alarm-restriction-type: alarm_restriction_type
  • default-instance-action: default_instance_action
  • max-parallel-workers: max_parallel_workers
  • storage-apply-type: storage_apply_type
  • subcloud-id: subcloud_id
  • worker-apply-type: worker_apply_type
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/sw-update-options/sw-update-options-get-response.json

Shows sw-update options (defaults or per subcloud). Use RegionOne as subcloud for default options which are pre-configured

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

  • subcloud: subcloud_options_uri

This operation does not accept a request body.

Response parameters

  • id: sw_update_options_id
  • name: sw_update_options_name
  • alarm-restriction-type: alarm_restriction_type
  • default-instance-action: default_instance_action
  • max-parallel-workers: max_parallel_workers
  • storage-apply-type: storage_apply_type
  • subcloud-id: sw_update_options_subcloud_id
  • worker-apply-type: worker_apply_type
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/sw-update-options/sw-update-options-get-one-response.json

Updates sw-update options, defaults or per subcloud. Use RegionOne as subcloud for default options

Normal response codes

200

Error response codes

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

Request parameters

  • subcloud: subcloud_options_uri
  • alarm-restriction-type: alarm_restriction_type
  • default-instance-action: default_instance_action
  • max-parallel-workers: max_parallel_workers
  • storage-apply-type: storage_apply_type
  • worker-apply-type: worker_apply_type

Request Example

samples/sw-update-options/sw-update-options-post-request.json

Response parameters

  • id: sw_update_options_id
  • name: sw_update_options_name
  • alarm-restriction-type: alarm_restriction_type
  • default-instance-action: default_instance_action
  • max-parallel-workers: max_parallel_workers
  • storage-apply-type: storage_apply_type
  • subcloud-id: sw_update_options_subcloud_id
  • worker-apply-type: worker_apply_type
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/sw-update-options/sw-update-options-post-response.json

Delete per subcloud sw-update options

This operation does not accept a request body.

Normal response codes

200

Request parameters

  • subcloud: subcloud_options_uri

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.

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

  • release: release_uri

This operation does not accept a request body.

Response parameters

  • subcloud_deploy: subcloud_deploy
  • deploy_chart: subcloud_deploy_chart
  • deploy_playbook: subcloud_deploy_playbook
  • deploy_overrides: subcloud_deploy_overrides
  • prestage_images: subcloud_deploy_prestage_images
  • software_version: software_version

Response Example

samples/subcloud-deploy/subcloud-deploy-get-response.json

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

  • deploy_chart: subcloud_deploy_chart_content
  • deploy_playbook: subcloud_deploy_playbook_content
  • deploy_overrides: subcloud_deploy_overrides_content
  • prestage_images: subcloud_deploy_prestage_images_content
  • release: release

Request Example

samples/subcloud-deploy/subcloud-deploy-post-request.json

Response parameters

  • deploy_chart: subcloud_deploy_chart
  • deploy_playbook: subcloud_deploy_playbook
  • deploy_overrides: subcloud_deploy_overrides
  • prestage_images: subcloud_deploy_prestage_images
  • software_version: software_version

Response Example

samples/subcloud-deploy/subcloud-deploy-post-response.json

Phased Subcloud Deploy

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

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

  • bmc_password: bmc_password
  • bootstrap-address: bootstrap_address
  • bootstrap_values: bootstrap_values
  • deploy_config: deploy_config
  • description: subcloud_description
  • group_id: group_id
  • install_values: install_values
  • location: subcloud_location
  • release: release

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-post-request.json

Response parameters

  • id: subcloud_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • management-state: management_state
  • availability-status: availability_status
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • error-description: error_description
  • region-name: region_name
  • management-subnet: management_subnet
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-gateway-ip: management_gateway_ip
  • openstack-installed: openstack_installed
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • data_install: data_install
  • data_upgrade: data_upgrade
  • created-at: created_at
  • updated-at: updated_at
  • group_id: group_id

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-post-response.json

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

  • bootstrap-address: bootstrap_address
  • bootstrap_values: bootstrap_values
  • sysadmin_password: sysadmin_password

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-bootstrap-request.json

Response parameters

  • id: subcloud_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • management-state: management_state
  • availability-status: availability_status
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • error-description: error_description
  • region-name: region_name
  • management-subnet: management_subnet
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-gateway-ip: management_gateway_ip
  • openstack-installed: openstack_installed
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • data_install: data_install
  • data_upgrade: data_upgrade
  • created-at: created_at
  • updated-at: updated_at
  • group_id: group_id

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-post-response.json

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

  • subcloud: subcloud_uri
  • release: release
  • sysadmin_password: sysadmin_password
  • bmc_password: bmc_password

Accepts Content-Type multipart/form-data

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-post-install-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-post-install-response.json

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

  • subcloud: subcloud_uri
  • deploy_config: deploy_config
  • sysadmin_password: sysadmin_password

Accepts Content-Type multipart/form-data

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-configure-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-configure-response.json

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

  • subcloud: subcloud_uri

Accepts Content-Type multipart/form-data

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-complete-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-continue-response.json

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

  • subcloud: subcloud_uri

Accepts Content-Type multipart/form-data

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-abort-request.json

Response parameters

  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • region-name: region_name
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade
  • endpoint_sync_status: endpoint_sync_status
  • sync_status: sync_status
  • endpoint_type: sync_status_type

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-abort-response.json

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

  • subcloud: subcloud_uri
  • bmc_password: bmc_password
  • bootstrap-address: bootstrap_address
  • bootstrap_values: bootstrap_values
  • deploy_config: deploy_config
  • install_values: install_values
  • release: release
  • sysadmin_password: sysadmin_password

Request Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-resume-request.json

Response parameters

  • id: subcloud_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • management-state: management_state
  • availability-status: availability_status
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • error-description: error_description
  • region-name: region_name
  • management-subnet: management_subnet
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-gateway-ip: management_gateway_ip
  • openstack-installed: openstack_installed
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • data_install: data_install
  • data_upgrade: data_upgrade
  • created-at: created_at
  • updated-at: updated_at
  • group_id: group_id

Response Example

samples/phased-subcloud-deploy/phased-subcloud-deploy-patch-resume-response.json

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.

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

  • system_peers: system_peers
  • id: system_peer_id
  • peer-uuid: peer_uuid
  • peer-name: peer_name
  • manager-endpoint: manager_endpoint
  • manager-username: manager_username
  • peer-controller-gateway-address: peer_controller_gateway_address
  • administrative-state: administrative_state
  • heartbeat-interval: heartbeat_interval
  • heartbeat-failure-threshold: heartbeat_failure_threshold
  • heartbeat-failure-policy: heartbeat_failure_policy
  • heartbeat-maintenance-timeout: heartbeat_maintenance_timeout
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/system-peers/system-peers-get-response.json

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

  • peer_uuid: peer_uuid
  • peer_name: peer_name
  • manager_endpoint: manager_endpoint
  • manager_username: manager_username
  • manager_password: manager_password
  • peer_controller_gateway_address: peer_controller_gateway_address
  • administrative_state: administrative_state
  • heartbeat_interval: heartbeat_interval
  • heartbeat_failure_threshold: heartbeat_failure_threshold
  • heartbeat_failure_policy: heartbeat_failure_policy
  • heartbeat_maintenance_timeout: heartbeat_maintenance_timeout

Request Example

samples/system-peers/system-peers-post-request.json

Response parameters

  • id: system_peer_id
  • peer-uuid: peer_uuid
  • peer-name: peer_name
  • manager-endpoint: manager_endpoint
  • manager-username: manager_username
  • peer-controller-gateway-address: peer_controller_gateway_address
  • administrative-state: administrative_state
  • heartbeat-interval: heartbeat_interval
  • heartbeat-failure-threshold: heartbeat_failure_threshold
  • heartbeat-failure-policy: heartbeat_failure_policy
  • heartbeat-maintenance-timeout: heartbeat_maintenance_timeout
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/system-peers/system-peers-post-response.json

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

  • system-peer: system_peer_uri

This operation does not accept a request body.

Response parameters

  • id: system_peer_id
  • peer-uuid: peer_uuid
  • peer-name: peer_name
  • manager-endpoint: manager_endpoint
  • manager-username: manager_username
  • peer-controller-gateway-address: peer_controller_gateway_address
  • administrative-state: administrative_state
  • heartbeat-interval: heartbeat_interval
  • heartbeat-failure-threshold: heartbeat_failure_threshold
  • heartbeat-failure-policy: heartbeat_failure_policy
  • heartbeat-maintenance-timeout: heartbeat_maintenance_timeout
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/system-peers/system-peer-get-response.json

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

  • system-peer: system_peer_uri

This operation does not accept a request body.

Response parameters

  • subcloud_peer_groups: subcloud_peer_groups
  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/system-peers/system-peers-get-peer-groups-response.json

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

  • system-peer: system_peer_uri
  • peer_uuid: peer_uuid
  • peer_name: peer_name
  • manager_endpoint: manager_endpoint
  • manager_username: manager_username
  • manager_password: manager_password
  • peer_controller_gateway_address: peer_controller_gateway_address
  • administrative_state: administrative_state
  • heartbeat_interval: heartbeat_interval
  • heartbeat_failure_threshold: heartbeat_failure_threshold
  • heartbeat_failure_policy: heartbeat_failure_policy
  • heartbeat_maintenance_timeout: heartbeat_maintenance_timeout

Request Example

samples/system-peers/system-peer-patch-request.json

Response parameters

  • id: system_peer_id
  • peer-uuid: peer_uuid
  • peer-name: peer_name
  • manager-endpoint: manager_endpoint
  • manager-username: manager_username
  • peer-controller-gateway-address: peer_controller_gateway_address
  • administrative-state: administrative_state
  • heartbeat-interval: heartbeat_interval
  • heartbeat-failure-threshold: heartbeat_failure_threshold
  • heartbeat-failure-policy: heartbeat_failure_policy
  • heartbeat-maintenance-timeout: heartbeat_maintenance_timeout
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/system-peers/system-peer-patch-response.json

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

  • system-peer: system_peer_uri

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

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

  • subcloud_peer_groups: subcloud_peer_groups
  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-peer-groups/subcloud-peer-groups-get-response.json

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

  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name

Request Example

samples/subcloud-peer-groups/subcloud-peer-groups-post-request.json

Response parameters

  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-peer-groups/subcloud-peer-groups-post-response.json

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

  • subcloud-peer-group: subcloud_peer_group_uri

This operation does not accept a request body.

Response parameters

  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-peer-groups/subcloud-peer-groups-post-response.json

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

  • subcloud-peer-group: subcloud_peer_group_uri

This operation does not accept a request body.

Response parameters

  • subclouds: subclouds
  • id: subcloud_id
  • group_id: group_id
  • name: subcloud_name
  • description: subcloud_description
  • location: subcloud_location
  • software-version: software_version
  • availability-status: availability_status
  • error-description: error_description
  • deploy-status: deploy_status
  • backup-status: backup_status
  • backup-datetime: backup_datetime
  • openstack-installed: openstack_installed
  • management-state: management_state
  • systemcontroller-gateway-ip: systemcontroller_gateway_ip
  • management-start-ip: management_start_ip
  • management-end-ip: management_end_ip
  • management-subnet: management_subnet
  • management-gateway-ip: management_gateway_ip
  • created-at: created_at
  • updated-at: updated_at
  • data_install: data_install
  • data_upgrade: data_upgrade

Response Example

samples/subcloud-peer-groups/subcloud-peer-groups-get-subclouds-response.json

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

  • subcloud-peer-group: subcloud_peer_group_uri
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status

Request Example

samples/subcloud-peer-groups/subcloud-peer-group-patch-request.json

Response parameters

  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status
  • created_at: created_at
  • updated_at: updated_at

Response Example

samples/subcloud-peer-groups/subcloud-peer-group-patch-response.json

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

  • subcloud-peer-group: subcloud_peer_group_uri
  • sysadmin-password: sysadmin_password

Request Example

samples/subcloud-peer-groups/subcloud-peer-groups-patch-migrate-request.json

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

  • subcloud-peer-group: subcloud_peer_group_uri

This operation does not accept a request body.

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

  • peer_uuid: peer_uuid
  • id: subcloud_peer_group_id
  • peer_group_name: subcloud_peer_group_name
  • group_priority: subcloud_peer_group_priority
  • group_state: subcloud_peer_group_administrative_state
  • max_subcloud_rehoming: subcloud_peer_group_max_subcloud_rehoming
  • system_leader_id: subcloud_peer_group_system_leader_id
  • system_leader_name: subcloud_peer_group_system_leader_name
  • migration_status: subcloud_peer_group_migration_status

Request Example

samples/subcloud-peer-groups/subcloud-peer-group-audit-request.json

Response parameters

  • message: subcloud_peer_group_audit_error_message

Response Example

samples/subcloud-peer-groups/subcloud-peer-group-audit-response.json

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.

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

  • peer-group-associations: peer_group_associations
  • id: peer_group_association_id
  • peer-group-id: association_peer_group_id
  • system-peer-id: system_peer_id
  • peer-group-priority: association_peer_group_priority
  • sync-status: association_sync_status
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/peer-group-associations/associations-get-response.json

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

  • peer_group_id: association_peer_group_id
  • system_peer_id: system_peer_id
  • peer_group_priority: association_peer_group_priority

Request Example

samples/peer-group-associations/associations-post-request.json

Response parameters

  • id: peer_group_association_id
  • peer-group-id: association_peer_group_id
  • system-peer-id: system_peer_id
  • peer-group-priority: association_peer_group_priority
  • sync-status: association_sync_status
  • sync-message: association_sync_message
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/peer-group-associations/associations-post-response.json

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

  • associate_id: peer_group_association_uri

This operation does not accept a request body.

Response parameters

  • id: peer_group_association_id
  • peer-group-id: association_peer_group_id
  • system-peer-id: system_peer_id
  • peer-group-priority: association_peer_group_priority
  • sync-status: association_sync_status
  • sync-message: association_sync_message
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/peer-group-associations/association-get-response.json

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

  • associate_id: peer_group_association_uri

Response parameters

  • id: peer_group_association_id
  • peer-group-id: association_peer_group_id
  • system-peer-id: system_peer_id
  • peer-group-priority: association_peer_group_priority
  • sync-status: association_sync_status
  • sync-message: association_sync_message
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/peer-group-associations/association-patch-response.json

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

  • associate_id: peer_group_association_uri
  • peer_group_priority: association_peer_group_priority

Request Example

samples/peer-group-associations/association-patch-request.json

Response parameters

  • id: peer_group_association_id
  • peer-group-id: association_peer_group_id
  • system-peer-id: system_peer_id
  • peer-group-priority: association_peer_group_priority
  • sync-status: association_sync_status
  • sync-message: association_sync_message
  • created-at: created_at
  • updated-at: updated_at

Response Example

samples/peer-group-associations/association-patch-response.json

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

  • associate_id: peer_group_association_uri

This operation does not accept a request body.