Облачная платформаAdvanced

Миграция из SFS Turbo в бакет OBS для ECS


Вы можете перенести данные из файловой системы SFS Turbo в бакет OBS, переключив на него нагрузку.

1. Создайте бакет

  1. Создайте OBS-бакет или параллельную файловую систему (она быстрее для файловых операций) в том же регионе, где и виртуальная машина.

  2. Получите Access Key и Secret Key для доступа к OBS.

2. Мигрируйте данные

Для переноса данных с SFS Turbo в бакет удобнее всего использовать утилиту obsutil на ВМ, где смонтирован инстанс.

Подробнее о настройке obsutil.

  1. Установите obsutil и настройте доступ:

    obsutil config -i=<access_key> -k=<secret_key> -e=<region_endpoint>

    Где:

  2. Скопируйте файлы из SFS Turbo в бакет с сохранением структуры каталогов (инкрементально, можно повторять):

    obsutil cp /mnt/<sfsturbo>/ obs://<bucket>/ -r -f -u

3. Подключитесь к бакету

Подключитесь к OBS-бакету одним из способов:

  1. Нативно через OBS SDK/API. Этот способ предпочтительнее для новых приложений — без накладных расходов FUSE.

  2. Через FUSE-монтирование на виртуальной машине. Используйте этот способ, если приложению нужен файловый путь.

    # s3fs (обычный бакет):
    apt install -y s3fs # или yum install -y s3fs-fuse
    echo "<access-key>:<secret-key>" > /etc/passwd-s3fs && chmod 600 /etc/passwd-s3fs
    s3fs <bucket> /mnt/obs -o url=https://<obs-endpoint>,use_path_request_style,passwd_file=/etc/passwd-s3fs
    # в /etc/fstab для автомонтирования:
    # s3fs#<bucket> /mnt/obs fuse _netdev,url=https://<obs-endpoint>,passwd_file=/etc/passwd-s3fs 0 0

4. Переключите нагрузку

Переключите приложения на новый путь (команда /mnt/obs) на всех ВМ-клиентах сетевого хранилища.

FUSE-монтирование выполняйте на каждой виртуальной машине, чтобы бакет был доступен всем.

Проверьте чтение и запись, финально синхронизируйте данные командой obsutil cp -u и выведите инстанс SFS Turbo из эксплуатации.

Учтите ограничения:

  • FUSE-монтирование — это объектная семантика. Не поддерживаются hard links, atomic rename и файловые блокировки, а листинг больших каталогов медленный.

  • Одновременная запись в один файл с нескольких клиентов не координируется. Если приложение основывается на этом, используйте SFS Turbo или NFS на виртуальной машине.

5. Проверьте работоспособность

Проверьте работу приложения с OBS в качестве хранилища. После успешной проверки удалите старые инстансы.