Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Все решения
    • Все решения для Object Storage
    • Устранение ошибки `Bucket is not empty` при удалении бакета
    • Устранение ошибок доступа к бакету с назначенной политикой безопасности
    • Устранение ошибки 429
    • Устранение ошибки 409 `BucketAlreadyExists`
    • Устранение ошибки доступа к бакетам S3 из кластера Yandex Data Processing 1.4
    • Устранение ошибки 403 (не отдается заголовок при использовании метода `OPTION`)
    • Устранение ошибки сертификата
    • Устранение ошибки `GATEWAY_REQUEST_ERROR`
    • Устранение проблем с некорректным MIME-типов объектов при их загрузке в Object Storage
    • Устранение проблем с загрузкой новых объектов в бакет
    • Как перенести данные из бакета Object Storage в ледяное хранилище
    • Как ограничить доступ к бакету Object Storage диапазоном IP-адресов, принадлежащих Cloud CDN
    • Как перенести содержимое бакета в другой бакет в пределах каталога
    • Как работать напрямую с API Object Storage без использования SDK
    • Как просматривать и удалять незавершенные загрузки
    • Как узнать скорость загрузки и скачивания данных
    • Как настроить заголовки кэширования `Cache-Control` для объектов в бакете при HTTP-запросах
    • Как ограничить доступ к бакету для пользователя
    • Как подключить собственный домен к бакету
    • Как изменить класс хранения
    • Как восстановить удаленные данные из бакета

В этой статье:

  • Описание задачи
  • Решение
  1. Object Storage
  2. Как перенести данные из бакета Object Storage в ледяное хранилище

Как перенести данные из бакета Object Storage в ледяное хранилище

Статья создана
Yandex Cloud
Улучшена
kvendingoldo
Обновлена 23 августа 2024 г.
  • Описание задачи
  • Решение

Описание задачиОписание задачи

Необходимо перенести данные из бакета Object Storage из стандартного или холодного хранилища в ледяное хранилище.

РешениеРешение

С помощью правил жизненных циклов изменить класс хранения объектов в бакете Object Storage на ледяной не получится. Сменить класс хранения можно двумя способами:

  • Через копирование объектов;
  • Через установку жизненного цикла с помощью AWS CLI.
Копирование утилитой AWS CLI
Установка жизненного цикла утилитой AWS CLI

Для копирования объектов в другой бакет с помощью утилиты AWS CLI выполните следующие действия:

  1. Измените тип хранилища для вашего бакета на ледяное.
  2. Установите и настройте утилиту AWS CLI.
  3. Выполните команду aws --endpoint-url=https://storage.yandexcloud.net s3 cp --recursive s3://*\$OLD_BUCKET_NAME\ s3://*\$NEW_BUCKET_NAME\.

Совет

Замените $OLD_BUCKET_NAME на наименование бакета-источника, а $NEW_BUCKET_NAME – на наименование бакета-приемника в предоставленном примере.

В этом случае перемещение данных из одного типа хранилища в другое произойдет на стороне Object Storage без необходимости локальной загрузки объектов на хост с установленным AWS CLI. Также вы можете задать тип хранения для объекта с помощью опции --storage-class в AWS CLI:

aws --endpoint-url=https://storage.yandexcloud.net s3 cp --recursive s3://*\$OLD_BUCKET_NAME\ s3://*\$NEW_BUCKET_NAME\ --storage-class GLACIER

При использовании любого из указанных вариантов смены типа хранения, у объектов в бакете изменится только тип хранилища. Дубликаты объектов в бакете в результате этой операции созданы не будут.

Для установки жизненного цикла через AWS CLI выполните следующие действия:

  1. Создайте жизненный циклю с типом transition из веб-интерфейса Консоли управления.

  2. Сохраните текущую конфигурацию правил жизненного цикла в файл lifecycles.json утилитой AWS CLI:

    aws s3api get-bucket-lifecycle-configuration \
    --endpoint-url=https://storage.yandexcloud.net \
    --bucket <$BUCKET_NAME> > lifecycles.json  
    

    Замените $BUCKET_NAME на наименование вашего бакета Object Storage в предоставленном примере.

  3. Отредактируйте полученный файл lifecycles.json, указав тип хранения ICE вместо COLD.

  4. Примените новую конфигурацию с помощью утилиты AWS CLI:

    aws s3api put-bucket-lifecycle-configuration \
    --bucket <$BUCKET_NAME> \
    --endpoint-url=https://storage.yandexcloud.net \
    --lifecycle-configuration file://lifecycles.json
    

    Замените $BUCKET_NAME на наименование вашего бакета Object Storage в предоставленном примере.

Была ли статья полезна?

Предыдущая
Устранение проблем с загрузкой новых объектов в бакет
Следующая
Как ограничить доступ к бакету Object Storage диапазоном IP-адресов, принадлежащих Cloud CDN
Проект Яндекса
© 2025 ООО «Яндекс.Облако»