oadp install

Install Cloud Pak for Data Openshift APIs for Data Protection (OADP) backup and restore components.

Syntax

cpd-cli oadp install \
--component=<cpd-cli-oadp-component> \
--cpdbr-hooks-image-prefix=<cpdbr-pod-image-prefix> \
--foundation-namespace=<cpd-foundational-services-namespace> \
--operators-namespace=<cpd-service-operators-namespace> \
[--api-pod-cpu-limit=<cpdbr-api-cpu-limit-value>] \
[--api-pod-cpu-request=<cpdbr-api-cpu-request-limit-value>] \
[--api-pod-mem-limit=<cpdbr-api-mem-limit-value>] \
[--api-pod-mem-request=<cpdbr-api-mem-request-limit-value>] \
[--cpd-namespace=<cpd-control-plane-namespace>] \
[--cpdbr-hooks-pod-cpu-limit=<cpdbr-pod-cpu-limit>] \
[--cpdbr-hooks-pod-cpu-request=<cpdbr-pod-cpu-request>] \
[--cpdbr-hooks-pod-mem-limit=<cpdbr-pod-mem-limit>] \
[--cpdbr-hooks-pod-mem-request=<cpdbr-pod-mem-request>] \
[--grant-image-puller-role=true|false] \
[--image-prefix=<image-registry-prefix>] \
[--log-level=info|debug|warn|error|panic] \
[--namespace=<namespace-name>] \
[--recipe-type=all|br|metro-dr] \
[--service-account=<service-account-name>] \
[--tenant-operator-namespace] \
[--upgrade=true|false] \
[--verbose] \
[--wait-timeout=<h,m,s>]

Arguments

The install command has no arguments.

Options

Table 1: Command options
Option Description
--api-pod-cpu-limit The CPU limit for the cpdbr-api pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--api-pod-cpu-limit=<cpdbr-api-cpu-limit-value>
Default value
0
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--api-pod-cpu-request The CPU request setting for the cpdbr-api pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--api-pod-cpu-request=<cpdbr-api-cpu-request-limit-value>
Default value
0
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--api-pod-mem-limit The memory limit for the cpdbr-api pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--api-pod-mem-limit=<cpdbr-api-mem-limit-value>
Default value
0
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--api-pod-mem-request The memory request setting for the cpdbr-api pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--api-pod-mem-request=<cpdbr-api-mem-request-limit-value>
Default value
0
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--component Specify the cpd-cli oadp component to install.
Status
Optional.
Syntax
--component=<cpd-cli-oadp-component>
Default value
No default.
Valid values
A valid cpd-cli oadp component name.
--cpd-namespace The Cloud Pak for Data control plane namespace in which the utility operates.
Status
Optional.
Syntax
--cpd-namespace=${PROJECT_CPD_INST_OPERANDS}
Default value
${PROJECT_CPD_INST_OPERANDS}
Valid values
A valid Cloud Pak for Data control plane namespace.
--cpdbr-hooks-image-prefix Specify the image prefix for the cpdbr service pod.
Status
Required.
Syntax
--cpdbr-hooks-image-prefix=<cpdbr-pod-image-prefix>
Default value
icr.io/cpopen/cpd
Valid values
  • icr.io/cpopen/cpd
  • ${PRIVATE_REGISTRY_LOCATION}
--cpdbr-hooks-pod-cpu-limit Specify the CPU limit for the cpdbr service pod. A value of 0 indicates unbounded.
Status
Required.
Syntax
--cpdbr-hooks-pod-cpu-limit=<cpdbr-pod-cpu-limit>
Default value
1
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--cpdbr-hooks-pod-cpu-request Specify the CPU request value for the cpdbr service pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--cpdbr-hooks-pod-cpu-request=<cpdbr-pod-cpu-request>
Default value
300m
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--cpdbr-hooks-pod-mem-limit Specify the memory limit for the cpdbr service pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--cpdbr-hooks-pod-mem-limit=<cpdbr-pod-mem-limit>
Default value
1Gi
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--cpdbr-hooks-pod-mem-request Specify the memory request value for the cpdbr service pod. A value of 0 indicates unbounded.
Status
Optional.
Syntax
--cpdbr-hooks-pod-mem-request=<cpdbr-pod-mem-request>
Default value
256Mi
Valid values
Plain integer or fixed-point number that uses one the following quantity suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki.

Examples: 0, 100m, 256Mi, 1Gi

--foundation-namespace Specify the Cloud Pak for Data foundational services namespace.
Status
Required.
Syntax
--foundation-namespace=<cpd-foundational-services-namespace>
Default value
ibm-common-services
Valid values
ibm-common-services
--grant-image-puller-role Grants Cloud Pak for Data instance namespaces permission to pull images from the OADP/Velero namespace. This option is used for air-gapped installations.
Status
Optional.
Syntax
--grant-image-puller-role=true|false
Default value
true
Valid values
true
Grants Cloud Pak for Data instance namespaces permission to pull images from the OADP/Velero namespace. This option is used for air-gapped installations.
false
Denies IBM Cloud Pak for Data instance namespaces permission.

--help

-h

Display command help.
Status
Optional.
Syntax
--help
Default value
No default.
Valid values
Not applicable.
--image-prefix Specify the image registry prefix.
Status
Optional.
Syntax
--image-prefix=<image-registry-prefix>
Default value
icr.io/cpopen/cpd
Valid values
  • icr.io/cpopen/cpd
  • ${PRIVATE_REGISTRY_LOCATION}
--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.
--operators-namespace Specify the Cloud Pak for Data Operators namespace.
Status
Required.
Syntax
--operators-namespace=<cpd-service-operators-namespace>
Default value
ibm-common-services
Valid values
A valid Cloud Pak for Data Operators namespace.
--recipe-type The type of backup and restore recipe to apply.
Status
Optional.
Syntax
--recipe-type=all|br|metro-dr
Default value
br
Valid values
all
Apply all backup and restore recipes.
br
Apply the Cloud Pak for Data tenant recipe.
metro-dr
Apply the metro disaster recovery recipe.
--service-account Specify the service account.
Status
Optional.
Syntax
--service-account=<service-account-name>
Default value
cpdbr-api-sa
Valid values
A valid service account name.
--tenant-operator-namespace Restrict the scope of backup or restore commands to tenant operand namespaces that include tenant specific Cloud Pak Foundation Service Operators and Cloud Pak for Data Operators only.
Status
Optional.
Syntax
--tenant-operator-namespace
Default value
No default.
Valid values
Do not include --tenant-operator-namespace and --exclude-tenant-operator-namespace together.
5.0.2 --upgrade Upgrade the cpdbr-tenant service component.
Status
Optional.
Syntax
--upgrade=true|false
Default value
false
Valid values
true|false
--verbose Logs include more detailed messages.
Status
Optional.
Syntax
--verbose
Default value
No default.
Valid values
Not applicable.
--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.

It is strongly recommended that you use a script to create environment variables with the correct values for your environment. For more information, see Setting up installation environment variables.

After installing IBM Storage Fusion, NetApp Astra Control Center, or Portworx Enterprise, install the following services to enable backup or restore for an entire Cloud Pak for Data deployment.

Install the REST service.
cpd-cli oadp install \
--image-prefix=registry.redhat.io/ubi9 \
--log-level=warn
Install the cpdbr-hooks service for the Cloud Pak for Data control plane namespace.
cpd-cli oadp install \
--cpd-namespace=${PROJECT_CPD_INST_OPERANDS} \
--component=cpdbr-hooks \
--cpdbr-hooks-image-prefix=icr.io/cpopen/cpd \
--log-level=warn
Install the cpdbr-ops-hooks service for the Cloud Pak for Data operators namespace.
cpd-cli oadp install \
--component=cpdbr-ops-hooks \
--cpdbr-hooks-image-prefix=icr.io/cpopen/cpd \
--foundation-namespace=ibm-common-services \
--operators-namespace=ibm-common-services \
--log-level=warn
Install the cpdbr-tenant service when using IBM Storage Fusion for backup and restore
cpd-cli oadp install \
--component=cpdbr-tenant \
--cpdbr-hooks-image-prefix=icr.io/cpopen/cpd \
--tenant-operator-namespace=${PROJECT_CPD_INST_OPERATORS} \
--recipe-type=br \
--log-level=debug \
--verbose
5.0.2 Upgrade the cpdbr-tenant service when using IBM Storage Fusion for backup and restore
cpd-cli oadp install \
--upgrade=true \
--component=cpdbr-tenant \
--cpdbr-hooks-image-prefix=icr.io/cpopen/cpd \
--tenant-operator-namespace=${PROJECT_CPD_INST_OPERATORS} \
--recipe-type=br \
--log-level=debug \
--verbose