---
title: "Migrating cloud storage from Servers.ru to S3"
sidebar_label: "Migration from Servers.ru"
description: "How to migrate data from Servers.ru cloud storage to S3"
sidebar_position: 11
---

import Formbricks from '@theme/MDXComponents/Formbricks'
import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import GrantAccess from '@site/i18n/en/docusaurus-plugin-content-docs/current/_partials/s3/grant-access.mdx'

# Cloud storage migration from Servers.ru to S3

You can independently transfer data from [Servers.ru](http://Servers.ru) (Swift) cloud storage to Selectel S3.

If difficulties arise during the migration process:

* on the Servers.ru side — contact [Servers.ru support](https://servers.ru);
* on the Selectel side — [create a ticket](http://my.selectel.ru/tickets/create).

## Migration methods \{#migration-methods}

You can use various [tools for working with S3](/s3/tools/) for migration, for example:

* [Rclone](/s3/tools/rclone.mdx) (recommended method) — supports direct data transfer without intermediate copying, as well as segmented uploading with high data transfer speed. Suitable for transferring large volumes of data;
* the [Cyberduck](/s3/tools/cyberduck.mdx) graphical client — does not support copying or direct data transfer from Servers.ru to S3. You will need to download data from the Servers.ru storage and upload it to S3 manually;
* [FTP](/s3/tools/ftp.mdx) — does not support copying or direct data transfer from Servers.ru to S3. You will need to download data from the Servers.ru storage and upload it to S3 manually. This works only with S3 buckets located in [pools](/infrastructure/locations.mdx#pool) ru-1 and ru-7.

## Perform migration \{#migration}

1. [Prepare S3](#configure-s3).
2. [Configure access to S3](#configure-access).
3. [Get connection data for Servers.ru](#get-servers-ru-data).
4. [Configure the tool and transfer data](#configure-tool-and-transfer-data).
5. [Check migration results](#check-migration-results).

### 1. Prepare S3 \{#configure-s3}

1. If you do not yet have an account in the [control panel](http://my.selectel.ru) Selectel:

   1.1. [Register an account in the control panel](/account/registration.mdx#sign-up-via-website).

   1.2. [Top up your balance](/balance-and-payments/manage/top-up-balance.mdx).

2. [Create an S3 bucket](/s3/buckets/create-bucket.mdx) in the required [pool](/infrastructure/locations.mdx#pool). We recommend creating the bucket in the ru-7 pool.

### 2. Configure access to S3 \{#configure-access}

<GrantAccess />

### 3. Get connection data for Servers.ru \{#get-servers-ru-data}

1. In the [control panel](https://portal.servers.ru/) Servers.ru, open the **Cloud storage** tab.
2. In the **Access credentials** block, copy and save the data:

   * the login and password for accessing Servers.ru via Swift API;
   * the domain for Keystone v3 (Swift) in the format `https://auth.files.<region>.cloud.servers.ru:5000/v3/`, where `auth.files.<region>.cloud.servers.<domain_zone>` is the server address, in which:

     * `<region>` — the region where the Servers.ru storage is located;
     * `<domain_zone>` — the domain zone: `ru` or `com`.
   * if you will use FTP, the FTP host is in the format `ftp.files.<region>.cloud.servers.ru`, where `<region>` is the region where the Servers.ru storage is located.

### 4. Configure the tool and transfer data \{#configure-tool-and-transfer-data}

<Tabs queryString="configure-tool-and-transfer-data">
  <TabItem value="rclone" default>
    <TabItemLabel>
      Rclone
    </TabItemLabel>

    1. [Install Rclone](/s3/tools/rclone.mdx#install-client).

    2. Create a configuration for connecting to Servers.ru:

       2.1. Open configuration mode:

       ```bash
       rclone config
       ```

       A dialog will appear in the console:

       ```bash
       No remotes found, make a new one?
       n) New remote
       s) Set configuration password
       q) Quit config
       ```

       2.2. Create a new configuration:

       ```bash
       n/s/q> n
       ```

       2.3. Enter the name for the connection to the remote storage, for example `serversru`:

       ```bash
       name> serversru
       ```

       2.4. Enter the OpenStack Swift storage type:

       ```bash
       Storage> swift
       ```

       2.5. Select the method for obtaining authorization data that is specified after the `Enter AWS credentials in the next step:` line:

       ```bash
       env_auth> false
       ```

       2.6. Enter the login:

       ```bash
       user> <login>
       ```

       Specify `<login>` — the login for accessing Servers.ru via Swift API, which you saved when [getting data in step 3](#get-servers-ru-data).

       2.7. Enter the password:

       ```bash
       key> <password>
       ```

       Specify `<password>` — the password for accessing Servers.ru via Swift API, which you saved when [getting data in step 3](#get-servers-ru-data).

       2.8. Enter the URL for access via Swift API:

       ```bash
       endpoint> <swift_domain>
       ```

       Specify `<swift_domain>` — the Servers.ru server address, which you saved when [getting data in step 3](#get-servers-ru-data).

       2.9. In the `auth_version` parameter, enter `3`:

       ```bash
       auth_version> 3
       ```

       2.10. Leave optional parameters empty.

       2.11. In the `Option domain` parameter, enter `default`.

       2.12. Leave the `Edit advanced config` parameter empty or enter `n`.

       2.13. Check the configuration. If the configuration is correct, press **Enter**. If not, enter `e` and edit the configuration.

       2.14. Confirm configuration creation:

       ```bash
       y/e/d> y
       ```

       2.15. Exit the settings dialog:

       ```bash
       e/n/d/r/c/s/q> q
       ```

    3. [Create a configuration for connecting to S3](/s3/tools/rclone.mdx#create-configuration).

    4. Optional: view the data to be copied without performing the copy operation:

       ```bash
       rclone copy serversru:<container_name> selectel:<bucket_name> --dry-run
       ```

       Specify:

       * `<serversru_name>` — the name of the connection to Servers.ru, which you specified in step 2.3;
       * `<container_name>` — the name of the Servers.ru container from which you are transferring data;
       * `<selectel_name>` — the name of the connection to S3, which you specified when [creating a configuration](/s3/tools/rclone.mdx#create-configuration) in step 4;
       * `<bucket_name>` — the name of the S3 bucket, which you created when [preparing S3 in step 1](#configure-s3).

    5. Transfer data using one of the following methods:

       * copy all data from a Servers.ru container to an S3 bucket:

         ```bash
         rclone copy <serversru_name>:<container_name> <selectel_name>:<bucket_name> --progress
         ```

         Specify:

         * `<serversru_name>` — the name of the connection to Servers.ru, which you specified in step 2.3;
         * `<container_name>` — the name of the Servers.ru container from which you are transferring data;
         * `<selectel_name>` — the name of the connection to S3, which you specified when [creating a configuration](/s3/tools/rclone.mdx#create-configuration) in step 4;
         * `<bucket_name>` — the name of the S3 bucket, which you created when [preparing S3 in step 1](#configure-s3).
         * optional: `--progress` — an option that enables display of the copy progress.

       * or synchronize data — data from the Servers.ru container that is missing in the bucket will be copied to S3. If the S3 bucket contains data that is not in the Servers.ru container, it will be deleted:

         ```bash
         rclone sync <serversru_name>:<container_name> <selectel_name>:<bucket_name> --progress
         ```
  </TabItem>

  <TabItem value="cyberduck">
    <TabItemLabel>
      Cyberduck
    </TabItemLabel>

    1. [Install Cyberduck](https://cyberduck.io/download/).

    2. If a pre-configured Swift Keystone v3 profile is available in the [Servers.ru control panel](https://portal.servers.ru/), connect to Servers.ru using it:

       2.1. Download the profile.

       2.2. Open the profile. It will be applied automatically.

    3. If the pre-configured profile is unavailable, connect to Servers.ru manually:

       3.1. Open Cyberduck.

       3.2. Click **New Connection**.

       3.3. In the top field, open the list and select the **Swift (OpenStack Object Storage)** protocol.

       3.3. Enter the Servers.ru server address, which you saved when [getting data in step 3](#get-servers-ru-data).

       3.4. Enter the port — `5000`.

       3.5. Enter the login for accessing Servers.ru via Swift API, which you saved when [getting data in step 3](#get-servers-ru-data).

       3.6. Enter the password for accessing Servers.ru via Swift API, which you saved when [getting data in step 3](#get-servers-ru-data).

       3.7. Click **Connect**.

    4. [Connect to Selectel S3](/s3/tools/cyberduck/?client=graphical\&graphical-client=windows#configure-client).

    5. Download data from the Servers.ru storage:

       5.1. Open the window with the connection to Servers.ru.

       5.2. Select the files and folders you want to transfer.

       5.3. Right-click on the files and select **Download to Computer**.

    6. Upload data to S3:

       6.1. Open the window with the connection to S3.

       6.2. Open the bucket from which you want to transfer data.

       6.3. Click **Upload** and select the downloaded files.
  </TabItem>

  <TabItem value="ftp">
    <TabItemLabel>
      FTP
    </TabItemLabel>

    1. Connect to Servers.ru via FTP:

       1.1. Open the FTP client.

       1.2. Enter the Servers.ru FTP host address, which you saved when [getting data in step 3](#get-servers-ru-data).

       1.3. Enter the port — 21.

       1.4. Enter the login, which you saved when getting connection data for Servers.ru in [step 3](#get-servers-ru-data).

       1.5. Enter the password, which you saved when getting connection data for Servers.ru in [step 3](#get-servers-ru-data).

       1.6. Connect to the FTP host.

    2. Download the data you want to transfer to S3.

    3. [Connect to S3 via FTP](/s3/tools/ftp.mdx#connect-via-ftp).

    4. Open the bucket you created when [preparing S3 in step 1](#configure-s3).

    5. Upload the data you downloaded in step 2 to the bucket.
  </TabItem>
</Tabs>

### 5. Check migration results \{#check-migration-results}

You must check the migration results before deleting data from Servers.ru storage.

1. Make sure that all data has appeared in the S3 bucket.

2. Update the settings of applications that use the storage data:

   2.1. Specify [S3 domains](/s3/manage/domains.mdx) instead of Servers.ru domains.

   2.2. Specify the S3 key that you issued when [configuring access to S3 in step 2](#configure-access), instead of the Servers.ru access data.

   2.3. If the bucket name in S3 differs from the container name that was in Servers.ru storage, specify the S3 bucket name.

3. Check that the applications are working after updating the settings.

<Formbricks />
