Перейти к основному содержимому

Перенести файловое хранилище в другой проект

Последнее изменение:

Данные файлового хранилища можно перенести в другой проект. Для этого нужно создать файловое хранилище в целевом проекте и перенести данные с исходного хранилищам в целевое.

  1. Создайте файловое хранилище в целевом проекте.

  2. Создайте облачный сервер в целевом проекте.

  3. Создайте глобальный роутер.

  4. Добавьте порт для облачного сервера в подсеть целевого проекта.

  5. Подключите к глобальному роутеру сеть и подсеть исходного и целевого проектов.

  6. Добавьте статический маршрут в подсети исходного проекта.

  7. Добавьте статический маршрут в подсети целевого проекта.

  8. Примонтируйте файловые хранилища и перенесите данные.

1. Создать файловое хранилище в целевом проекте

  1. В панели управления в верхнем меню нажмите Продукты и выберите Файловое хранилище.

  2. Нажмите Создать хранилище.

  3. Введите имя хранилища или оставьте имя, которое создано автоматически.

  4. Выберите регион и сегмент пула, в котором будет создано хранилище.

    Если с помощью файлового хранилища нужно увеличить дисковое пространство, выберите сегмент пула из пула, в котором расположен облачный сервер или кластер Managed Kubernetes.

    Если вы планируете использовать хранилище для хранения бэкапов, мы рекомендуем выбрать сегмент пула из другой зоны доступности или региона для повышения отказоустойчивости.

  5. Заполните блоки:

  6. Проверьте цену файлового хранилища.

  7. Нажмите Создать.

Подсеть

  1. Выберите приватную подсеть, в которой будет находиться хранилище. Тип подсети зависит от того, к чему нужно подключить хранилище:

    • облачная приватная подсеть — хранилище будет доступно для облачных серверов и кластеров Managed Kubernetes только в том пуле, который вы выбрали при создании хранилища. Для подключения хранилища нужно будет только примонтировать его;
    • подсеть глобального роутера — хранилище будет доступно для выделенных серверов, а также облачных серверов и кластеров Managed Kubernetes, которые находятся в других пулах. Для подключения хранилища нужно настроить сетевую связность между сервером или кластером и хранилищем через глобальный роутер. Посмотрите примеры настройки сетевой связности в инструкциях раздела Подключить файловое хранилище.

    После создания хранилища подсеть нельзя будет изменить.

  2. Введите приватный IP-адрес хранилища или оставьте первый доступный адрес из подсети, который назначается по умолчанию. После создания хранилища IP-адрес нельзя будет изменить.

Настройки

  1. Выберите тип файлового хранилища:

    • HDD Базовое,
    • SSD Универсальное,
    • SSD Быстрое.

    После создания тип хранилища нельзя изменить.

  2. Укажите размер хранилища: от 50 ГБ до 50 ТБ. После создания можно увеличить файловое хранилище, но нельзя уменьшить.

  3. Выберите протокол:

    • NFSv4 — для подключения хранилища к серверам с ОС на базе Linux и другими Unix-системами;
    • CIFS SMBv3 — для подключения хранилища к серверам с ОС Windows.

    После создания хранилища протокол нельзя изменить.

Правила доступа

  1. Настройте правила доступа к файловому хранилищу:

    • доступно всем — хранилище будет доступно для любого IP-адреса приватной подсети, в которой оно создается;
    • доступ ограничен — хранилище будет доступно только для определенных IP-адресов или приватных подсетей. Если создать файловое хранилище без правил, доступ будет ограничен для всех IP-адресов.
  2. Если вы выбрали опцию Доступ ограничен, нажмите Добавить правило.

  3. Введите IP-адрес или CIDR приватной подсети, выберите уровень доступа.

    После создания хранилища вы можете настроить новые правила доступа.

2. Создать облачный сервер в целевом проекте

Используйте инструкцию Создать облачный сервер.

Выберите приватную подсеть файлового хранилища, которое вы создали на этапе 1.

3. Создать глобальный роутер

  1. В панели управления в верхнем меню нажмите Продукты и выберите Глобальный роутер.
  2. Нажмите Создать роутер. Для каждого аккаунта установлен лимит в пять глобальных роутеров.
  3. Введите имя роутера.
  4. Нажмите Создать.
  5. Если роутер создался со статусом ERROR или завис в одном из статусов, создайте тикет.

4. Добавить порт для облачного сервера в подсеть целевого проекта

Используйте инструкцию Добавить порт в подсеть.

Укажите:

  • подсеть файлового хранилища исходного проекта;
  • IP-адрес облачного сервера, который вы создали на этапе 2.

5. Подключить к роутеру сети и подсети исходного и целевого проектов

Нужно подключить к глобальному роутеру сети и подсети до тех проектов и пулов облачной платформы, в которых находится исходное файловое хранилище и целевое файловое хранилище с облачным сервером.

  1. Убедитесь, что сеть еще не добавлена на любой из глобальных роутеров аккаунта. В панели управления в верхнем меню нажмите ПродуктыОблачные серверыСеть → вкладка Приватные сети → проверьте, что в карточке сети нет тега Глобальный роутер.

  2. Убедитесь, что подсеть соответствует условиям:

    • принадлежит диапазону приватных адресов по RFC 1918: 10.0.0.0/8, 172.16.0.0/12 или 192.168.0.0/16;
    • имеет размер не меньше /29, так как три адреса будут заняты сетевым оборудованием Selectel;
    • не пересекается с другими подсетями, добавленными на этот роутер: IP-адреса каждой подсети на роутере не должны совпадать с IP-адресами других подсетей на нем.
  3. В панели управления в верхнем меню нажмите Продукты и выберите Облачные серверы.

  4. Перейдите в раздел Сеть → вкладка Приватные сети.

  5. В меню сети выберите Подключить к глобальному роутеру.

  6. Выберите глобальный роутер.

  7. Для подсети исходного проекта введите IP-адрес, который будет назначен на роутер, или оставьте первый свободный адрес из подсети, который назначается по умолчанию. Не назначайте этот адрес на свои устройства, чтобы не нарушить работу сети. Два последних свободных адреса подсети будут зарезервированы в качестве служебных.

  8. Нажмите Подключить. Не закрывайте окно, пока не появится сообщение о том, что сеть подключена. После этого в панели управления:

    • сеть появится в разделе Глобальный роутер Selectel на странице роутера, к которому вы ее подключили;
    • у сети появится тег Глобальный роутер. Можно посмотреть в разделе Облачные серверыСеть → на вкладке Приватные сети.
  9. Повторите шаги 5-8 для подсети целевого проекта.

6. Добавить статический маршрут до подсети исходного проекта

Добавьте статический маршрут из подсети целевого проекта до подсети исходного проекта. Используйте инструкцию Настроить статические маршруты в подсети⁠.

Укажите:

7. Добавить статический маршрут до подсети целевого проекта

Добавьте статический маршрут из подсети исходного проекта до подсети целевого проекта. Используйте инструкцию Настроить статические маршруты в подсети⁠.

Укажите:

  • подсеть назначения — подсеть исходного проекта, в которой находится исходное хранилище. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыФайловое хранилище → в строке файлового хранилища нажмите на название подсети → вкладка Подсети → карточка подсети;
  • шлюз (next-hop) — порт глобального роутера, который вы создали на этапе 3.

8. Примонтировать файловые хранилища к облачному серверу и перенести данные

к сведению

Во время переноса данных будут полностью утилизированы ресурсы файловых хранилищ. Мы рекомендуем на время переноса приостановить работу с хранилищами.

  1. Подключитесь к облачному серверу.

  2. Откройте CLI.

  3. Установите пакет для работы с протоколом NFS:

    sudo apt install nfs-common
  4. Создайте папки для монтирования хранилищ:

    sudo mkdir -p /mnt/nfs_source
    sudo mkdir -p /mnt/nfs_target
  5. Примонтируйте файловые хранилища:

    sudo mount -vt nfs "<filestorage_source_ip_address>:/shares/share-<mountpoint_uuid>" /mnt/nfs_source
    sudo mount -vt nfs "<filestorage_target_ip_address>:/shares/share-<mountpoint_uuid>" /mnt/nfs_target

    Укажите:

    • <filestorage_source_ip_address> — IP-адрес исходного файлового хранилища. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыФайловое хранилище → страница хранилища → вкладка Настройки → поле IP;
    • <filestorage_target_ip_address> — IP-адрес целевого файлового хранилища. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыФайловое хранилище → страница хранилища → вкладка Настройки → поле IP;
    • <mountpoint_uuid> — ID точки монтирования. Можно посмотреть в панели управления: в верхнем меню нажмите ПродуктыФайловое хранилище → страница хранилища → блок Подключение → вкладка GNU/Linux.
  6. Перенесите данные между хранилищами:

    rsync -avzhHl --progress /mnt/nfs_source/ /mnt/nfs_target/