oadp dpa create

Important: IBM Cloud Pak® for Data Version 4.6 will reach end of support (EOS) on 31 July, 2025. For more information, see the Discontinuance of service announcement for IBM Cloud Pak for Data Version 4.X.

Upgrade to IBM Software Hub Version 5.1 before IBM Cloud Pak for Data Version 4.6 reaches end of support. For more information, see Upgrading IBM Software Hub in the IBM Software Hub Version 5.1 documentation.

Create an OADP DataProtectionApplication (dpa) instance.

Syntax

cpd-cli oadp dpa create <dpa-instance-name> \
--access-mode=ReadWrite|ReadOnly \
[--backup-sync-period=<h,m,s>] \
--bucket=<object-storage-bucket-name> \
[--build-images] \
[--cacert=<certificate-bundle-path>] \
--config=<map<key, value>> \
[--cpdbr-velero-plugin-image=<cpdbr-velero-plugin-image>] \
[--cpd-namespace=<cpd-control-plane-namespace>] \
[--credential=<map<key, value>>] \
[--dry-run=true|false] \
[--enable-restic=true|false] \
[--labels=<map<label,label,...>>] \
[--log-level=info|debug|warn|error|panic] \
[--namespace=<namespace-name>] \
[--prefix=<prefix-name>] \
--provider=<backup-storage-provider-name> \
[--restic-pod-cpu-limit=<restic-pod-cpu-limit>] \
[--restic-pod-cpu-request=<restic-pod-cpu-request>] \
[--restic-pod-mem-limit=<restic-pod-mem-limit>] \
[--restic-pod-mem-request=<restic-pod-mem-request>] \
[--restic-timeout=<h,m,s>] \
[--validation-frequency=<h,m,s>] \
[--velero-pod-cpu-limit=<velero-pod-cpu-limit>] \
[--velero-pod-cpu-request=<velero-pod-cpu-request>] \
[--velero-pod-mem-limit=<velero-pod-mem-limit>] \
[--velero-pod-mem-request=<velero-pod-mem-request>] \
[--verbose] \
[--wait] \
[--wait-timeout=<h,m,s>] 

Arguments

Table 1: Command arguments
Argument Description
<dpa-instance-name> The name of the OADP DataProtectionApplication (dpa) instance to create.

Options

Option Description
--access-mode The access mode for the backup storage location.
Status
Required.
Syntax
--access-mode=ReadWrite|ReadOnly
Default value
ReadWrite
Valid values
  • ReadWrite
  • ReadOnly
--backup-sync-period Specify how often to synchronize all backups in the object storage with backup API objects in the cluster ('h' for hours, 'm' for minutes, 's' for seconds). Synchronization is disabled when the value is set to 0s.
Status
Optional.
Syntax
--backup-sync-period=<h,m,s>
Default value
1m
Valid values
Any valid duration string. Examples: 1m, 30m, 1h, 2h45m
--bucket The object storage bucket name where backups are stored.
Status
Required.
Syntax
--bucket=<object-storage-bucket-name>
Default value
No default.
Valid values
A valid object storage bucket name.
--build-images Specify whether to deploy a registry for enabling the backup and restoration of images.
Status
Optional.
Syntax
--build-images
Default value
No default.
Valid values
Not applicable.
--cacert The certificate bundle path to use when verifying TLS connections.
Status
Optional.
Syntax
--cacert=<certificate-bundle-path>
Default value
No default.
Valid values
A valid certificate bundle path.
--config The configuration key-value pairs.
Status
Required.
Syntax
--config=<map<key, value>>
Default value
No default.
Valid values
Any valid key-value pairs.
--cpdbr-velero-plugin-image Specify a cpdbr-velero-plugin custom plugin image.
Status
Optional.
Syntax
--cpdbr-velero-plugin-image=<cpdbr-velero-plugin-image>
Default value
icr.io/cpopen/cpd/cpdbr-velero-plugin:4.0.0-beta1-1-x86_64
Valid values
x86-64 image
icr.io/cpopen/cpd/cpdbr-velero-plugin:4.0.0-beta1-1-x86_64
ppc64le image
icr.io/cpopen/cpd/cpdbr-velero-plugin:4.0.0-beta1-1-ppc64le
--cpd-namespace The Cloud Pak for Data control plane namespace in which the utility operates.
Status
Optional.
Syntax
--cpd-namespace=${PROJECT_CPD_INSTANCE}
Default value
${PROJECT_CPD_INSTANCE}
Valid values
A valid Cloud Pak for Data control plane namespace.
--credential The credential that is used as a key-value pair where the key is the Kubernetes secret name and the value is the secret data key name. Only one value is allowed.
Status
Optional.
Syntax
--credential=<map<key, value>>
Default value
No default.
Valid values
Any valid key-value pair. Only one value is allowed.
--dry-run Executes a dry-run without running the command.
Status
Optional.
Syntax
--dry-run=true|false
Default value
false
Valid values
false
A dry-run is not executed before running the command.
true
A dry-run is executed before running the command.
--enable-restic Create a restic daemonset.
Status
Optional.
Syntax
--enable-restic=true|false
Default value
true
Valid values
true
Create a restic daemonset.
false
Do not create a restic daemonset.

--help

-h

Display command help.
Status
Optional.
Syntax
--help
Default value
No default.
Valid values
Not applicable.
--labels Labels to apply to the OADP DataProtectionApplication (for example, l1=v1,l2=v2).
Status
Optional.
Syntax
--labels=<map<label,label,...>>
Default value
No default.
Valid values
Valid label names. (Comma separated map string array list.)
--log-level The command log level.
Status
Optional.
Syntax
--log-level=info|debug|warn|error|panic
Default value
info
Valid values
debug
Debug messages are written to the log.
error
Error messages are written to the log.
info
Informative messages are written to the log.
panic
Panic messages are written to the log.
warn
Warning messages are written to the log.

--namespace

-n

The namespace name in which the utility should operate.
Status
Optional.
Syntax
--namespace=<namespace-name>
Default value
oadp-operator
Valid values
A valid project (namespace) name.
--prefix The prefix under which all data is stored within the bucket.
Status
Optional.
Syntax
--prefix=<prefix-name>
Default value
No default.
Valid values
Any valid prefix name.
--provider The backup storage provider name (for example, aws, azure, gcp).
Status
Required.
Syntax
--provider=<backup-storage-provider-name>
Default value
No default.
Valid values
Any valid backup storage provider name.
--restic-pod-cpu-limit Specify the CPU limit for the restic pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--restic-pod-cpu-limit=<restic-pod-cpu-limit>
Default value
1
Valid values
CPU limits are measured in CPU units. One CPU is equivalent to one CPU/core for cloud providers and one hyper-thread on bare-metal Intel processors. An m suffix in a CPU attribute indicates ‘milli-CPU’ (250m is equivalent to 25% of a CPU/core).
--restic-pod-cpu-request Specify the CPU request value for the restic pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--restic-pod-cpu-request=<restic-pod-cpu-request>
Default value
500m
Valid values
CPU limits are measured in CPU units. One CPU is equivalent to one CPU/core for cloud providers and one hyper-thread on bare-metal Intel processors. An m suffix in a CPU attribute indicates ‘milli-CPU’ (250m is equivalent to 25% of a CPU/core).
--restic-pod-mem-limit Specify the memory limit for the restic pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--restic-pod-mem-limit=<restic-pod-mem-limit>
Default value
8Gi
Valid values
Memory can be expressed in various units, where one Mi is one IEC unit megabyte (1024^2), and one Gi is one IEC unit gigabyte (1024^3).
--restic-pod-mem-request Specify the memory request value for the restic pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--restic-pod-mem-request=<restic-pod-mem-request>
Default value
256Mi
Valid values
Memory can be expressed in various units, where one Mi is one IEC unit megabyte (1024^2), and one Gi is one IEC unit gigabyte (1024^3).
--restic-timeout Specify a restic pod timeout duration ('h' for hours, 'm' for minutes, 's' for seconds)
Status
Optional.
Syntax
--restic-timeout=<h,m,s>
Default value
4h0m0s
Valid values
Any valid duration string. Examples: 1m, 30m, 1h, 2h45m
--validation-frequency How often to validate the backup storage location ('h' for hours, 'm' for minutes, 's' for seconds). Validation is disabled when the value is set to 0s.
Status
Optional.
Syntax
--validation-frequency=<h,m,s>
Default value
1m
Valid values
Any valid duration string. Examples: 1m, 30m, 1h, 2h45m
--velero-pod-cpu-limit Specify a CPU limit for the Velero pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--velero-pod-cpu-limit=<velero-pod-cpu-limit>
Default value
1
Valid values
CPU limits are measured in CPU units. One CPU is equivalent to one CPU/core for cloud providers and one hyper-thread on bare-metal Intel processors. An m suffix in a CPU attribute indicates ‘milli-CPU’ (250m is equivalent to 25% of a CPU/core).
--velero-pod-cpu-request Specify a CPU request value for the Velero pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--velero-pod-cpu-request=<velero-pod-cpu-request>
Default value
500m
Valid values
CPU limits are measured in CPU units. One CPU is equivalent to one CPU/core for cloud providers and one hyper-thread on bare-metal Intel processors. An m suffix in a CPU attribute indicates ‘milli-CPU’ (250m is equivalent to 25% of a CPU/core).
--velero-pod-mem-limit Specify a memory limit for the Velero pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--velero-pod-mem-limit=<velero-pod-mem-limit>
Default value
1Gi
Valid values
Memory can be expressed in various units, where one Mi is one IEC unit megabyte (1024^2), and one Gi is one IEC unit gigabyte (1024^3).
--velero-pod-mem-request Specify a memory request value for the Velero pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--velero-pod-mem-request=<velero-pod-mem-request>
Default value
256Mi
Valid values
Memory can be expressed in various units, where one Mi is one IEC unit megabyte (1024^2), and one Gi is one IEC unit gigabyte (1024^3).
--verbose Logs include more detailed messages.
Status
Optional.
Syntax
--verbose
Default value
No default.
Valid values
Not applicable.
--wait When set to "true", wait for the operation to complete.
Status
Optional.
Syntax
--wait=true|false
Default value
false
Valid values
false
Do not wait for the operation to complete.
true
Wait for the operation to complete.
--wait-timeout The wait timeout setting ('h' for hours, 'm' for minutes, 's' for seconds).
Status
Optional.
Syntax
--wait-timeout=<h,m,s>
Default value
6m0s
Valid values
Any valid duration string. Examples: 1m, 30m, 1h, 2h45m

Examples

Note: The following examples use the recommended installation environment variables.

Use a script to create environment variables with the correct values for your environment. For more information, see Best practice: Setting up install variables.

Create an OADP DataProtectionApplication (dpa) instance.
cpd-cli oadp dpa create <dpa-instance-name> \
--access-mode=ReadWrite \
--bucket=<object-storage-bucket-name> \
--namespace=oadp-operator \
--provider=aws