Я также видел в другом посте, что моя команда gsutil должна быть обновлена до 4.22 или выше.Как это проверить ??
Получить версию gsutil:
gsutil version
Обновление Cloud SDK, включающее gsutil:
Windows: открыть командную строкус правами администратора
gcloud components update
Linux:
gcloud components update
Я вижу имя проекта, идентификатор проекта и номер проекта.Какие из них (если есть) используются в этом поле для My Bucket.
Используйте PROJECT_ID.Чтобы получить список проектов, к которым у вас есть доступ.Эта команда выведет список каждого проекта.
gcloud projects list
Чтобы узнать, какой проект используется по умолчанию:
gcloud config list project
Если проект по умолчанию пустой или неправильный, используйте следующую команду.
Чтобы установить проект по умолчанию:
gcloud config set project [PROJECT_ID]
Насколько я понимаю, я должен изменить класс хранения объектов либо перезаписывая данные
Предполагая, что ваше имя сегмента равно mybucket
.
ШАГ 1. Изменить класс хранения по умолчанию для сегмента:
gsutil defstorageclass set coldline gs://mybucket
ШАГ 2. Изменить класс хранения для каждого объекта вручную.Это вариант, если вы хотите просто выбрать несколько файлов.
gsutil rewrite -s coldline gs://mybucket/objectname
ШАГ 3: Проверьте существующую политику жизненного цикла.Измените шаг 4 соответствующим образом, если существует существующая политика.
gsutil lifecycle get gs://mybucket
ШАГ 4: Измените жизненный цикл корзины.Эта политика переместит все файлы старше 7 дней в холодное хранилище.
POLICY (запись в lifecycle.json):
{
"lifecycle": {
"rule": [
{
"action": {
"type": "SetStorageClass",
"storageClass": "COLDLINE"
},
"condition": {
"age": 7,
"matchesStorageClass": [
"MULTI_REGIONAL",
"STANDARD",
"DURABLE_REDUCED_AVAILABILITY"
]
}
}
]
}
}
Команда:
gsutil lifecycle set lifecycle.json gs://mybucket