|
| 1 | +--- |
| 2 | +title: 'How to upgrade a Cloud Disk Array (CDA) using the OVHcloud API' |
| 3 | +excerpt: 'Learn how to increase the storage capacity of your OVHcloud Cloud Disk Array (CDA) using the OVHcloud API' |
| 4 | +updated: 2025-05-15 |
| 5 | +--- |
| 6 | + |
| 7 | +<style> |
| 8 | +details>summary { |
| 9 | + color:rgb(33, 153, 232) !important; |
| 10 | + cursor: pointer; |
| 11 | +} |
| 12 | +details>summary::before { |
| 13 | + content:'\25B6'; |
| 14 | + padding-right:1ch; |
| 15 | +} |
| 16 | +details[open]>summary::before { |
| 17 | + content:'\25BC'; |
| 18 | +} |
| 19 | +</style> |
| 20 | + |
| 21 | +## Objective |
| 22 | + |
| 23 | +This guide explains how to upgrade your OVHcloud Cloud Disk Array (CDA) cluster to increase its storage capacity. It describes the technical behaviour of a live upgrade, the necessary API calls, and how to retrieve required service information. This operation is performed entirely online, without interrupting read/write access to your data, and is available via the OVHcloud API. |
| 24 | + |
| 25 | +> [!primary] |
| 26 | +> |
| 27 | +> At the moment, upgrading a Cloud Disk Array (CDA) cluster is only available via the OVHcloud API. It cannot be done through the OVHcloud Control Panel. |
| 28 | +> |
| 29 | +
|
| 30 | +## Requirements |
| 31 | + |
| 32 | +- A [Cloud Disk Array](/links/storage/cloud-disk-array) solution |
| 33 | +- Access to the [OVHcloud API](/links/api) |
| 34 | + |
| 35 | +> [!success] |
| 36 | +> If you are not familiar with the OVHcloud API, read our [First Steps with the OVHcloud API](/pages/manage_and_operate/api/first-steps) guide. |
| 37 | +
|
| 38 | +## Instructions |
| 39 | + |
| 40 | +### How the CDA Upgrade Works |
| 41 | + |
| 42 | +Upgrading a Cloud Disk Array (CDA) cluster is a fully online process that does not interrupt data availability. Throughout the operation, customers retain full read and write access to their data. |
| 43 | + |
| 44 | +> [!primary] |
| 45 | +> |
| 46 | +> During the upgrade, you may observe slightly degraded performance or increased I/O latency. This is temporary and expected while data is being rebalanced across the cluster. |
| 47 | +> |
| 48 | +
|
| 49 | +/// details | **Upgrade Workflow** |
| 50 | + |
| 51 | +The upgrade process follows these steps: |
| 52 | + |
| 53 | +- **Upgrade Order Initiation:** The customer initiates an upgrade request via the OVHcloud API and proceeds with payment. |
| 54 | +- **Provisioning of New Storage Nodes:** New Ceph OSD (Object Storage Daemon) nodes are automatically provisioned and added to the cluster. These are deployed in groups of three, with each node placed in a separate rack to maintain redundancy and failure domain isolation. |
| 55 | +- **Cluster Acknowledgment:** Once the new nodes are up and running, the system marks the upgrade operation as complete from the customer’s perspective. No further action is required from the user. |
| 56 | +- **Automatic Data Rebalancing:** In the background, Ceph initiates a data rebalancing phase. Existing data is redistributed across the entire cluster, including the newly added nodes—while ensuring that the configured replication level (typically three replicas) is maintained throughout the process. |
| 57 | +- **Performance Stabilization:** The rebalancing continues until the cluster reaches an even distribution of data, as determined by Ceph’s internal placement algorithms. Once completed, the cluster returns to optimal performance. |
| 58 | + |
| 59 | +/// |
| 60 | + |
| 61 | +### Retrieving required information |
| 62 | + |
| 63 | +Before initiating a CDA upgrade, you will need two key pieces of information: |
| 64 | + |
| 65 | +- The service name of your CDA cluster |
| 66 | +- The plan code corresponding to your current configuration |
| 67 | + |
| 68 | +Follow the steps below to retrieve them using the OVHcloud API. |
| 69 | + |
| 70 | +/// details | **Step 1. Get you service name (Skip this step if you already know your service name)** |
| 71 | + |
| 72 | +You can retrieve it via the OVHcloud Control Panel or the following API call: |
| 73 | + |
| 74 | +> [!tabs] |
| 75 | +> Via the OVHcloud API |
| 76 | +>> Use the following API call: |
| 77 | +>> |
| 78 | +>> > [!api] |
| 79 | +>> > |
| 80 | +>> > @api {v1} /dedicated/ceph GET /dedicated/ceph |
| 81 | +>> > |
| 82 | +>> |
| 83 | +>> This will return a list of your CDA services. Each service is identified by a UUID, for example 48e5f77f-427b-4261-9799-7861033659fb. |
| 84 | +>> |
| 85 | +> Via the OVHcloud Control Panel |
| 86 | +>> First, log in to your [OVHcloud Control Panel](/links/manager) and go to the `Bare Metal Cloud`{.action} section. Click the `Platforms and services`{.action} section then the `ceph-cluster`{.action} service. |
| 87 | +>> |
| 88 | +>> In the `Details`, locate the `ID` field. This value is your CDA service name. |
| 89 | +>> |
| 90 | +>> {.thumbnail} |
| 91 | +>> |
| 92 | +
|
| 93 | +/// |
| 94 | + |
| 95 | +/// details | **Step 2. Identify Your Plan Code (skip this step if you know which plan you use)** |
| 96 | + |
| 97 | +Your CDA plan determines the type and size of storage used. The two available plans are: |
| 98 | + |
| 99 | +- storage-2tb - old setup on nvme+hdd (on 2TB HDD disks) |
| 100 | +- cda-3tb - new setup on nvme (3TB NVME disks) |
| 101 | + |
| 102 | +**Retrieve the Service ID:** |
| 103 | + |
| 104 | +Use the service name (UUID) from Step 1 to get the corresponding service ID: |
| 105 | + |
| 106 | +> [!api] |
| 107 | +> |
| 108 | +> @api {v1} /services?resourceName GET /services?resourceName={serviceName} |
| 109 | +> |
| 110 | +
|
| 111 | +The service ID is a number, e.g. 1234567 |
| 112 | + |
| 113 | +**Retrieve the Service Details:** |
| 114 | + |
| 115 | +Now query the service information using the service ID: |
| 116 | + |
| 117 | +> [!api] |
| 118 | +> |
| 119 | +> @api {v1} /services/{serviceId} GET /services/{serviceId} // For this example, replace with 1234567 |
| 120 | +> |
| 121 | +
|
| 122 | +Look for the following field in the response: |
| 123 | + |
| 124 | +```json |
| 125 | +"billing": { |
| 126 | + "plan": { |
| 127 | + "code": "cda-3tb" |
| 128 | + } |
| 129 | +} |
| 130 | +``` |
| 131 | + |
| 132 | +The value under billing.plan.code is your plan code, which you will need to perform the upgrade. |
| 133 | + |
| 134 | +/// |
| 135 | + |
| 136 | +### How to Perform the Upgrade |
| 137 | + |
| 138 | +The upgrade process is straightforward and requires just one API call. |
| 139 | + |
| 140 | +**Step 1: Access the API Console** |
| 141 | + |
| 142 | +Choose the appropriate API console for your region: |
| 143 | + |
| 144 | +- [EU API console](https://eu.api.ovh.com/console-preview/) |
| 145 | +- [CA API console](https://ca.api.ovh.com/console-preview/) |
| 146 | + |
| 147 | +**Step 2: Submit the Upgrade Order** |
| 148 | + |
| 149 | +Use the following API endpoint: |
| 150 | + |
| 151 | +> [!api] |
| 152 | +> |
| 153 | +> @api {v1} /order/upgrade/cephaas/{serviceName}/{planCode} POST /order/upgrade/cephaas/{serviceName}/{planCode} |
| 154 | +> |
| 155 | +
|
| 156 | +Replace the placeholders with your service details: |
| 157 | + |
| 158 | +- serviceName: The UUID of your CDA cluster (e.g. 6cb82c75-29fd-4d77-9928-0de6ad9ff5fe) |
| 159 | +- planCode: Your current CDA plan code — either: |
| 160 | + - storage-2tb (legacy configuration with HDD + NVMe) |
| 161 | + - cda-3tb (new generation with full NVMe) |
| 162 | +- quantity: The number of additional units you want to provision (1–24). For example: |
| 163 | + |
| 164 | +| Quantity | Total added capacity | |
| 165 | +| -------- | ---------------------- | |
| 166 | +| 1 | 2 TB (3 x 2TB disks) | |
| 167 | +| 2 | 4 TB (6 x 2TB disks) | |
| 168 | +| ... | ... | |
| 169 | +| 24 | 48 TB (72 x 2TB disks) | |
| 170 | + |
| 171 | +> [!primary] |
| 172 | +> |
| 173 | +> Quantity refers to how many units you want in total, not how many units you want to add. |
| 174 | +> |
| 175 | +> For example, if your cluster currently has 3 TB of storage and you want to increase it to 6 TB, you need to set quantity = 2 (not 1). |
| 176 | +> |
| 177 | +> Similarly, if your cluster has 9 TB and you want to grow it to 12 TB, you need to set quantity = 4. |
| 178 | +> |
| 179 | +
|
| 180 | +**Step 3: Retrieve the Payment Link** |
| 181 | + |
| 182 | +If the API call is successful, the response will include a payment URL located in the following field: |
| 183 | + |
| 184 | +```json |
| 185 | +"order": { |
| 186 | + "details": { |
| 187 | + "url": "(https://www.ovh.com/cgi-bin/order/display-order.cgi?orderId=174448338&orderPassword=wufe4HQQQQ)", |
| 188 | + } |
| 189 | +} |
| 190 | +``` |
| 191 | + |
| 192 | +**Step 4: Confirm the Order** |
| 193 | + |
| 194 | +Open the provided URL, complete the payment process, and your upgrade will begin automatically. The new storage nodes are typically added to your CDA cluster within a few minutes after payment is confirmed. |
| 195 | + |
| 196 | +## Go further |
| 197 | + |
| 198 | +Visit our dedicated Discord channel: <https://discord.gg/ovhcloud>. Ask questions, provide feedback and interact directly with the team that builds our Storage and Backup services. |
| 199 | + |
| 200 | +If you need training or technical assistance to implement our solutions, contact your sales representative or click on [this link](/links/professional-services) to get a quote and ask our Professional Services experts for assisting you on your specific use case of your project. |
| 201 | + |
| 202 | +Join our [community of users](/links/community). |
0 commit comments