In March 2021, Acronis introduced a new licensing model — Advanced licensing. See more details on this new licensing model and switching methods in Acronis Cyber Protect Cloud legacy licensing End of Life.
The method described in this article is applicable for:
- Partners using own custom integrations with Acronis Cyber Protect Cloud Account Management API
For this method, you need to use API calls. Download this API calls manual. Throughout this guide, API calls are marked in italic.
Step 1. Gather information about the legacy editions usage
Before planning a migration, you need to gather information about the actual usage of the legacy editions in your subtree. There are many ways to perform this task. The simplest and most informative way is to collect usage reports for all customers in your subtree – Create a Report to Gather Legacy Edition Usage, Get Stored Reports List, and then Download a Stored Report.
Now you have a report on current usage in CSV or JSON format. To simplify manual analysis, it's suggested to use the csv_v2_0 report format. This report can be imported to any table processors like Excel and then analyzed.
To ensure that you don't miss anything important, it's recommended to create 2-3 reports for the last 2-3 months to check the legacy editions usage.
The following instructions assume that you use CSV and Excel.
- Enable Filtering in Excel.
- Go to the column with the name application.name, select only backup, and files_cloud.
- Go to the last column with the edition name, select only legacy editions, and left blank edition – it might be a previously provisioned Files Sync & Share and local storage.
standard, advanced, disaster_recovery, cyber_protect_std, cyber_protect_adv, cyber_protect_dre, per_workload, per_gigabyte, fss_legacy - Go to the column with the name usage.effective.production and remove zero usage.
- Go to the column with the name name and remove all names starting with local_storage and all names starting with euc_
- Now you have a report with partners and customers and the legacy editions they use with corresponding offering items.
- The simplest way to work with it is to create a report with editions and partners’/customers' names.
- Select columns with names tenant.kind, tenant.name, and edition and copy them to a new worksheet.
- In the new worksheet select those 3 columns and select Remove Duplicates, don't forget to mark My data has headers checkbox.
- You have the report of the legacy edition usage by your partners and customers.
- Select the column with the name edition and copy it to a new worksheet.
- In the new worksheet, select that column and select Remove Duplicates, don't forget to mark My data has headers checkbox.
- You have the report of the legacy editions usage under your sub-root.
You can repeat the same flow but filter by usage in the column with the name usage.effective.total if you want to consider customers or/and partners in the trial mode or usage.effective.trial if you want to look into the legacy editions usage only for trials.
Information collected in this step helps you understand how many resources and time might be required for the update. For example, you can split partners into packs and upgrade pack by pack to maintain your support personnel out of request spikes.
This information can also help you build your communication strategy to your partners and customers regarding that upgrade.
Step 2. Plan the switch from legacy editions
The switching edition API for a customer automatically enables all needed extensions (Advanced Packs) for the selected edition during the switch. Thus, you only need to decide if it will be per workload or per gigabyte base billing. Please note, that the billing is always per workload for the Advanced Packs.
For the File Sync & Share as well, you only need to decide if it will be per workload or per gigabyte base billing according to the current settings.
During the planning stage, it’s recommended to create a testing stand on your NFR or Acronis Developer Network cloud account and “copy” most common configurations for partners and customers to test the switch and to ensure that the final configuration suits your needs. You can use information from Gather information about the legacy editions usage. It might help you create your own upgrade routines.
Step 3. Upgrade partners to enable the new licensing
As customers can only have a licensing subsequent to the licensing of a partner, it’s needed to ensure that all your partners in the subtree have the new licensing enabled.
Billing mode | Edition parameter/value in API | |
1 | Cyber Protect (per gigabyte) | pck_per_gigabyte |
2 | Cyber Protect (per workload) | pck_per_workload |
3 | File Sync & Share (per gigabyte) | fss_per_gigabyte |
4 | File Sync & Share (per user) | fss_per_user |
Before you start the process, make sure that the new licensing is available for your root.
Then for each parameter in the table above run the flow Enable Some New/Disabled Offering Items for an Edition for a partner to enable corresponding offering items.
This update should not affect any customer underneath a partner, as it enables new licensing for the partner.
Please ensure that your integration is in sync with that change: as soon as you enable the new licensing for a partner it should be reflected in your integration databases and UI/UX.
Step 4. Upgrade customers to the new licensing
After you ensure that all your partners have the new licensing, you can switch your customers according to your plan.
There are 2 main options for that upgrade:
- Use KB https://kb.acronis.com/node/67942 script for mass edition switch for simple configurations of partners and customers.
- A custom script using API if you need to have more comprehensive logic.
The Acronis KB script fits best if you have a big number of customers under a tenant that needs to be switched to the same edition. As well you can re-organize customers by folders (in 1000 customers max in each folder) and switch folder by folder.
A custom script can provide you more flexibility and possibility to simultaneously update your integration databases.
The base flow for that script might be the following in case you have root->partners->customers structure:
- Request all children tenants of your root tenant.
Get Tenants Batch with parent_id parameter equal UUID of your root tenant. - For each child partner tenant, request all children.
Get Tenants Batch with parent_id parameter equal UUID of a partner tenant. - For each customer, perform dry run editions switch.
Switch Edition Dry Run, with tenant_id parameter equal UUID of a partner tenant, target_edition parameter equals the edition name in API you selected to move to, and application_id is application id for that edition: 6e6d758d-8e74-3ae3-ac84-50eb0dff12eb for Cyber Protection and dfd85a5f-a464-32ab-81fd-99bcc66a070f for File Sync & Share. - Check errors and warnings.
Analyze error and warnings to decide what to do next. Implement comprehensive logging to have possibility to drill into problems with switching. - In case all is OK, switch to the preferred new edition.
Switch Edition, with tenant_id parameter equal UUID of a partner tenant, target_edition parameter equals the edition name in API you selected to move to, and application_id is application id for that edition: 6e6d758d-8e74-3ae3-ac84-50eb0dff12eb for Cyber Protection and dfd85a5f-a464-32ab-81fd-99bcc66a070f for File Sync & Share. - If the switch is OK, updated edition information in your integration.
Don’t forget to apply the same changes to your integration database.