---
title: 'Миграция облачного хранилища из Servers.ru в S3'
sidebar_label: 'Миграция из Servers.ru'
description: 'Как перенести данные из облачного хранилища Servers.ru в 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/docs/_partials/s3/grant-access.mdx'

# Миграция облачного хранилища из Servers.ru в S3

Вы можете самостоятельно перенести данные из облачного хранилища [Servers.ru](http://Servers.ru) (Swift) в S3 от Selectel.

Если в процессе миграции возникнут трудности:

* на стороне Servers.ru — обратитесь в [службу поддержки Servers.ru](https://servers.ru);
* на стороне Selectel — [создайте тикет](http://my.selectel.ru/tickets/create).

## Способы миграции \{#migration-methods}

Для миграции можно использовать разные [инструменты для работы с S3](/s3/tools/), например:

* [Rclone](/s3/tools/rclone.mdx) (рекомендуемый способ) — поддерживает прямую передачу данных без промежуточного копирования, а также сегментированную загрузку при высокой скорости передачи данных. Подходит для переноса большого объема данных;
* графический клиент [Cyberduck](/s3/tools/cyberduck.mdx) — не поддерживает копирование и прямой перенос данных из Servers.ru в S3. Потребуется скачать данные из хранилища Servers.ru и загрузить в S3 вручную;
* [FTP](/s3/tools/ftp.mdx) — не поддерживает копирование и прямой перенос данных из Servers.ru в S3. Потребуется скачать данные из хранилища Servers.ru и загрузить в S3 вручную. Работает только с бакетами S3, которые находятся в [пулах](/infrastructure/locations.mdx#pool) ru-1 и ru-7.

## Выполнить миграцию \{#migration}

1. [Подготовьте S3](#configure-s3).
2. [Настройте доступ к S3](#configure-access).
3. [Получите данные для подключения к Servers.ru](#get-servers-ru-data).
4. [Настройте инструмент и перенесите данные](#configure-tool-and-transfer-data).
5. [Проверьте результаты миграции](#check-migration-results).

### 1. Подготовить S3 \{#configure-s3}

1. Если у вас еще нет аккаунта в [панели управления](http://my.selectel.ru) Selectel:

   1.1. [Зарегистрируйте аккаунт в панели управления](/account/registration.mdx#sign-up-via-website).

   1.2. [Пополните баланс](/balance-and-payments/manage/top-up-balance.mdx).

2. [Создайте бакет S3](/s3/buckets/create-bucket.mdx) в нужном [пуле](/infrastructure/locations.mdx#pool). Мы рекомендуем создавать бакет в пуле ru-7.

### 2. Настроить доступ к S3 \{#configure-access}

<GrantAccess />

### 3. Получить данные для подключения к Servers.ru \{#get-servers-ru-data}

1. В [панели управления](https://portal.servers.ru/) Servers.ru откройте вкладку **Облачное хранилище**.
2. В блоке **Реквизиты доступа** скопируйте и сохраните данные:

   * логин и пароль для доступа через Swift API к Servers.ru;
   * домен для Keystone v3 (Swift) в формате `https://auth.files.<region>.cloud.servers.ru:5000/v3/`, где `auth.files.<region>.cloud.servers.<domain_zone>` — адрес сервера, в котором:

     * `<region>` — регион, в котором находится хранилище Servers.ru;
     * `<domain_zone>` — доменная зона: `ru` или `com`.
   * если вы будете использовать FTP, хост FTP в формате `ftp.files.<region>.cloud.servers.ru`, где  `<region>` — регион, в котором находится хранилище Servers.ru.

### 4. Настроить инструмент и перенести данные \{#configure-tool-and-transfer-data}

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

    1. [Установите Rclone](/s3/tools/rclone.mdx#install-client).

    2. Создайте конфигурацию для подключения к Servers.ru:

       2.1. Откройте режим конфигурирования:

       ```bash
       rclone config
       ```

       В консоли появится диалог:

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

       2.2. Создайте новую конфигурацию:

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

       2.3. Введите имя подключения к удаленному хранилищу, например `serversru`:

       ```bash
       name> serversru
       ```

       2.4. Введите тип хранилища OpenStack Swift:

       ```bash
       Storage> swift
       ```

       2.5. Выберите способ получения авторизационных данных, который указан после строки `Enter AWS credentials in the next step`:

       ```bash
       env_auth> false
       ```

       2.6. Введите логин:

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

       Укажите `<login>` — логин для доступа через Swift API к Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       2.7. Введите пароль:

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

       Укажите `<password>` — пароль для доступа через Swift API к Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       2.8. Введите URL для доступа по Swift API:

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

       Укажите `<swift_domain>` — адрес сервера Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       2.9. В параметре `auth_version` введите `3`:

       ```bash
       auth_version> 3
       ```

       2.10. Опциональные параметры оставьте пустыми.

       2.11. В параметре `Option domain` введите `default`.

       2.12. Параметр `Edit advanced config` оставьте пустым или введите `n`.

       2.13. Проверьте конфигурацию. Если конфигурация верная, нажмите **Enter**. Если нет, введите `e` и отредактируйте конфигурацию.

       2.14. Подтвердите создание конфигурации:

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

       2.15. Выйдите из диалога настроек:

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

    3. [Создайте конфигурацию для подключения к S3](/s3/tools/rclone.mdx#create-configuration).

    4. Опционально: посмотрите данные, которые будут скопированы, без выполнения копирования:

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

       Укажите:

       * `<serversru_name>` — имя подключения к Servers.ru, которое вы указали на шаге 2.3;
       * `<container_name>` — имя контейнера Servers.ru, из которого вы переносите данные;
       * `<selectel_name>` — имя подключения к S3, которое вы указали при [создании конфигурации](/s3/tools/rclone.mdx#create-configuration) на шаге 4;
       * `<bucket_name>` — имя бакета S3, который вы создали при [подготовке S3 на этапе 1](#configure-s3).

    5. Перенесите данные одним из способов:

       * скопируйте все данные из контейнера Servers.ru в бакет S3:

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

         Укажите:

         * `<serversru_name>` — имя подключения к Servers.ru, которое вы указали на шаге 2.3;
         * `<container_name>` — имя контейнера Servers.ru, из которого вы переносите данные;
         * `<selectel_name>` — имя подключения к S3, которое вы указали при [создании конфигурации](/s3/tools/rclone.mdx#create-configuration) на шаге 4;
         * `<bucket_name>` — имя бакета S3, который вы создали при [подготовке S3 на этапе 1](#configure-s3).
         * опционально: `--progress` — опция, которая включает отображение прогресса копирования.

       * или синхронизируйте данные — в S3 будут скопированы данные из контейнера Servers.ru, которых нет в бакете. Если в бакете S3 есть данные, которых нет в контейнере Servers.ru, они будут удалены:

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

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

    1. [Установите Cyberduck](https://cyberduck.io/download/).

    2. Если в [панели управления](https://portal.servers.ru/) Servers.ru доступен готовый профиль Swift Keystone v3, подключитесь к Servers.ru через него:

       2.1. Скачайте профиль.

       2.2. Откройте профиль. Он будет применен автоматически.

    3. Если готовый профиль недоступен, подключитесь к Servers.ru вручную:

       3.1. Откройте Cyberduck.

       3.2. Нажмите **Новое подключение**.

       3.3. В верхнем поле откройте список и выберите протокол **Swift (OpenStack Object Storage)**.

       3.3. Введите адрес сервера Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       3.4. Введите порт — `5000`.

       3.5. Введите логин для доступа через Swift API к Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       3.6. Введите пароль для доступа через Swift API к Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       3.7. Нажмите **Подключиться**.

    4. [Подключитесь к S3 от Selectel](/s3/tools/cyberduck/?client=graphical\&graphical-client=windows#configure-client).

    5. Скачайте данные из хранилища Servers.ru:

       5.1. Откройте окно с подключением к Servers.ru.

       5.2. Выберите файлы и папки, которые хотите перенести.

       5.3. Нажмите правой кнопкой мыши на файлы и выберите **Скачать на компьютер**.

    6. Загрузите данные в S3:

       6.1. Откройте окно с подключением к S3.

       6.2. Откройте бакет, данные из которого хотите перенести.

       6.3. Нажмите **Загрузить** и выберите скачанные файлы.
  </TabItem>

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

    1. Подключитесь к Servers.ru по FTP:

       1.1. Откройте FTP-клиент.

       1.2. Введите адрес хоста FTP Servers.ru, который вы сохранили при [получении данных на этапе 3](#get-servers-ru-data).

       1.3. Введите порт — 21.

       1.4. Введите логин, который вы сохранили при получении данных для подключения к Servers.ru на [этапе 3](#get-servers-ru-data).

       1.5. Введите пароль, который вы сохранили при получении данных для подключения к Servers.ru на [этапе 3](#get-servers-ru-data).

       1.6. Подключитесь к FTP-хосту.

    2. Скачайте данные, которые вы хотите перенести в S3.

    3. [Подключитесь к S3 по FTP](/s3/tools/ftp.mdx#connect-via-ftp).

    4. Откройте бакет, который вы создали при [подготовке S3 на этапе 1](#configure-s3).

    5. Загрузите в бакет данные, которые вы скачали на шаге 2.
  </TabItem>
</Tabs>

### 5. Проверить результаты миграции \{#check-migration-results}

Проверить результаты миграции необходимо до удаления данных из хранилища Servers.ru.

1. Убедитесь, что все данные появились в бакете S3.

2. Обновите настройки приложений, которые используют данные хранилища:

   2.1. Укажите [домены S3](/s3/manage/domains.mdx) вместо доменов Servers.ru.

   2.2. Укажите S3-ключ, который вы выдали при [настройке доступа к S3 на этапе 2](#configure-access), вместо данных для доступа к Servers.ru.

   2.3. Если название бакета в S3 отличается от названия контейнера, которое было в хранилище Servers.ru, укажите название бакета S3.

3. Проверьте работу приложений после обновления настроек.

<Formbricks />
