NetBackup™ for Apache Cassandra Administrator's Guide
Using APIs to manage, protect, or recover Cassandra assets
In this document, you will find details about NetBackup APIs for the Cassandra workload operations. The operations include asset management, filtering, sorting, recovery management and protection plan management. For each API end point, the user can find detailed information about the requests, responses, errors, and payloads in this document.
See the following for information on the APIs:
All the NetBackup APIs are listed at the following location:
Services and Operations Readiness Tools (SORT) > Knowledge Base > Documents
The API creates the requested Cassandra assets - Cassandra cluster, Cassandra node, DSS cluster, and DSS node.
The request payload can contain detailed information about a single asset or a combination of assets. A Cassandra asset can be created or updated in two steps:
To retrieve the generated ID, a POST request must be made.
It is necessary to make a GET request, which saves the asset in the database.
Table: 1. Request parameters for Cassandra Cluster and Cassandra Nodes
API | Important variables and options |
---|---|
https://PrimaryerverName /netbackup/asset-service/queries/ |
|
https://PrimaryServerName /netbackup/asset-service/queries/ |
|
Table: 2. 3. Request parameters for Data Staging Cluster and Nodes
API | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/asset-service/queries/ |
|
https://PrimaryServerName /netbackup/asset-service/queries/ |
|
Table: Response parameters
API | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/asset-service/queries/ Response parameters |
|
Assets are stored using this API in the NetBackup database. It uses the GET method with a valid asset response ID in the URL.
Table: Response of storing Assets to Database
API | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/asset-service/queries/ Asset Response ID |
|
A specific asset or all assets can be deleted from the NetBackup database using this API. An individual assetType, such as a node or dataStagingNode, can be deleted. It deletes all corresponding child nodes associated with a cluster or dataStagingCluster if you use this API to delete assetType as cluster or dataStagingCluster.
Table: Request Payload for Deleting Assets
API options | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/asset-service/queries |
|
Database assets can be deleted using this API. This is the 2nd request used with the delete response id received from the previous request.
Table:
Method | URL |
---|---|
GET | https://PrimaryServerName /netbackup/asset-service/queries/ Asset Delete Response ID For example: bcc0eb1f-6613-427d-8101-19376fd689f7 |
Table: Response of removing Assets from Database
API | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/asset-service/queries/ Asset Delete Response ID For example: bcc0eb1f-6613-427d-8101-19376fd689f7 |
|
Table: Request for Get all Asset
https://PrimaryServerName /netbackup/asset-service/ workloads/cassandra/assets | Assets |
All the assets are listed on default descending order, refer Get asset by ID table for response parameter details. According to the Get asset by ID table, all assets are listed in default descending order.
This API is used to get specific asset details. Details about specific assets can be obtained using this API.
Table:
API | Important variables and options |
---|---|
https://PrimaryServerName/ netbackup/asset-service/workloads/ cassandra/assets/Asset ID |
|
https://PrimaryServerName/ netbackup/asset-service/workloads/ cassandra//Asset ID |
|
Filters can be applied on any of the below API endpoints:
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'node'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'dataStagingCluster'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'dataStagingNode'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'node' and parentProviderGeneratedId eq ' CASSANDRA_cluster_Cassandra10'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster' and commonAssetAttributes/ providerGeneratedId eq 'CASSANDRA_cluster_Cassandra1'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster' and dataStagingClusterName eq 'DSS1'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster' and backupDataCenterName eq 'earthCenter'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'node' and nodeIp eq '10.221.110.234'
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=(assetType eq 'cluster') and (contains(tolower(clusterName), 'cassandra1'))
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=(assetType eq 'cluster') and (clusterName eq 'Cassandra1')&meta=accessControlId
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster' and clusterName eq 'Cassandra10'
Table:
Fil er Parameters | Filter Criteria | Value | Description |
---|---|---|---|
assetType/ queryName/ workloads/ correlationId/ credentialName/ workloadType/ displayName/ clusterName/ dataStaging ClusterName/ backupData CenterName/ nodeDownThreshold Percentage/ parentProvider Generated | eq | cluster, node, dataStagingCluster and dataStagingNode | Asset filter based on asset types |
eq | 'node' and parentProviderGeneratedId eq 'CASSANDRA_cluster_Cassandra1' | ||
eq | 'cluster' and commonAssetAttributes/ providerGeneratedId eq 'CASSANDRA_cluster_Cassandra1' | ||
eq | 'cluster' and dataStagingClusterName eq 'DSS1' | ||
eq | 'cluster' and backupDataCenterName eq 'earthCenter' | ||
eq | 'node' and nodeIp eq '10.221.105.94' | ||
eq | (assetType eq 'cluster') and (contains(tolower(clusterName), 'cassandra1')) | ||
eq | (assetType eq 'cluster') and (clusterName eq 'Cassandra1')&meta=accessControlId |
Sorting can be applied on any of the below API endpoints:
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster'&sort=clusterName
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster'&sort=-clusterName
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster'&sort=commonAssetAttributes. credentials.credentialName
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'cluster'&sort=-commonAssetAttributes .credentials.credentialName
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'node'&sort= parentProviderGeneratedId
https://PrimaryServerName/netbackup/asset-service/workloads/cassandra/ assets?filter=assetType eq 'node'&sort= -parentProviderGeneratedId
Table:
Filter Parameters | Filter Criteria | Value | Description |
---|---|---|---|
assetType | eq | cluster'&sort=clusterName | |
assetType | eq | node and parentProviderGeneratedId eq 'CASSANDRA_cluster_Cassandra1 | |
assetType | eq | cluster'&sort= commonAssetAttributes .credentials.credentialName | |
assetType | eq | 'cluster'&sort=-commonAssetAttributes. credentials.credentialName | |
assetType | eq | 'node'&sort= | |
assetType | eq | parentProvider GeneratedId | |
assetType | eq | 'node' &sort=-parentProvider GeneratedId |
The below APIs create or update the policy which is used to trigger actual backup operation on the associated asset. These APIs help to create or update the policy for both incremental and full backup. Basis the created policies, the backup jobs are automatically triggered based on the schedule details provided.
Table: Create SLO : Full and Differential Incremental
Method | Post |
---|---|
https://PrimaryServerName/ netbackup/servicecatalog/slos |
Table: Request Payload for Creating SLO:
API | Important variables and options |
---|---|
https://PrimaryServerName /netbackup/servicecatalog/slos |
|
Table: Response of Creating SLO
API | Important variables and options |
---|---|
https://PrimaryServerName/ netbackup/servicecatalog/slos |
|
Table:
Method | Post |
---|---|
https://{{hostname}}/netbackup/ servicecatalog/slos/ {{newsloid}}/subscriptions |
Table: Request Payload for Creating Subscription:
API | Important variables and options |
---|---|
https://{{hostname}}/netbackup/ servicecatalog/slos/ {{newsloid}}/subscriptions |
|
Table: Response of Creating Subscription
API | Important variables and options |
---|---|
https://{{hostname}}/netbackup/ servicecatalog/slos/ {{newsloid}}/subscriptions |
|
The discovery APIs cater actual initiation or stopping of the discovery over given asset.
Table: Start discovery
API | Important variables and options |
---|---|
https://{{HOSTNAME}}/netbackup/ admin/discovery/workloads/cassandra/start |
|
Table: Stop discovery
API | Important variables and options |
---|---|
https://{{HOSTNAME}}/netbackup/admin/ discovery/workloads/cassandra/stop |
|
The Recovery APIs cater actual recovery of specific Cassandra asset, based on the details of recovery point, source, destination etc.
Table:
API | Important variables and options |
---|---|
POST /recovery/workloads/cassandra/ scenarios/cluster/recover |
|
Table: Response of Recover API
API | Important Response codes |
---|---|
POST /recovery/workloads/cassandra/ scenarios/cluster/recover |
|