Миграция
Миграцию можно провести самостоятельно или создать заявку в техническую поддержку в личном кабинете Cloud.ru. В заявке укажите имена исходного бакета и бакета назначения вместе с access key и secret key.
Для самостоятельной миграции выполните процедуры ниже:
Настройка ПО для миграции
Для миграции рекомендуется использовать утилиты командной строки Rclone.
Установите Rclone из репозитория своего дистрибутива Linux.
Выполните конфигурацию для хранилища-источника:
rclone config create {{ endpoint_source }} _ {{ bucket_source }} s3 provider = Other secret_access_key ={{ secret_key_source }} access_key_id ={{ access_key_source }} env_auth = false endpoint ={{ endpoint_source }} acl = privateГде:
endpoint_source — адрес хранилища-источника;
bucket_source — бакет в источнике;
secret_key_source — секретный ключ для источника;
access_key_source — идентификатор ключа для источника.
Выполните конфигурацию для целевого хранилища:
rclone config create {{ endpoint_target }} _ {{ bucket_target }} s3 provider = Other secret_access_key ={{ secret_key_target }} access_key_id ={{ access_key_target }} env_auth = false endpoint ={{ endpoint_target }} acl = privateГде:
endpoint_target — адрес целевого хранилища;
bucket_target — бакет в целевом хранилище;
secret_key_target — секретный ключ для целевого хранилища;
access_key_target — идентификатор ключа для целевого хранилища.
Запуск синхронизации
Выполните полную синхронизацию:
rclone copy -v -P --log-file = logs.log --transfers = 256 --checkers = 200 source:bucket target:bucketДля хранилища OBS используйте virtual-hosted style.
Выполните докопирование без удаления ранее скопированных файлов:
rclone copy -v -P --log-file = logs.log --transfers = 256 --checkers = 200 --update source:bucket target:bucketЧтобы изменить количество потоков, внесите изменения в опции --transfers=256 и --checkers=200.
Если памяти не хватает для размещения кеша, команда завершится ответом о недостатке памяти.
Чтобы посмотреть размер хранилища, выполните следующую команду:
rclone size source:rclone size target:bucketЧтобы посмотреть папки и бакеты источника или таргета, выполните следующую команду:
rclone lsd source:Чтобы посмотреть содержимое источника или таргета, выполните следующую команду:
rclone ls source:
Настройка доступа к объектам
Настройте ACL для каждого мигрированного объекта в новом бакете:
Проверка
Проверьте:
наличие всех объектов в бакете;
подключение тестовой инсталляции своей информационной системы к новому бакету по новым URL.
При необходимости поменяйте способ взаимодействия на Virtual Host Style.
Досинхронизация
Повторно запустите команду синхронизации.
Специалисты Cloud.ru могут запустить процесс миграции дельты изменений самостоятельно.
Настройка доступа к объектам и проверка
После досинхронизации повторно настройте доступ к объектам в новом бакете и выполните проверку.
Повторите процедуры по досинхронизации, повторной настройке доступа к объектам и проверку, пока дельта не станет достаточна мала для остановки приложений.
Остановка сервисов и последняя синхронизация
Остановите сервисы в продуктиве, использующие S3.
Проверьте наличие всех объектов в бакете.
Переключение систем и запуск сервисов
Подключите продуктивную инсталляцию своей информационной системы к новому бакету по новым URL.
При необходимости поменяйте способ взаимодействия на Virtual Host Style.
- Настройка ПО для миграции
- Запуск синхронизации
- Настройка доступа к объектам
- Проверка
- Досинхронизация
- Настройка доступа к объектам и проверка
- Остановка сервисов и последняя синхронизация
- Переключение систем и запуск сервисов