Как удалить все данные ледника?


29

Я использовал инструмент для Mac OS X под названием Arq для резервного копирования моих данных, но я обнаружил, что загружать все свои материалы очень сложно, поскольку у меня нет и не может быть достаточно быстрого интернет-соединения.

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

Я также попробовал FastGlacier на другом компьютере с Windows, он зависает и требует слишком много ресурсов.

Мне было интересно, есть ли простой способ сделать это.

PS Мой ледник имеет ~ 450 ГБ в 341907 архивах


Примечание для пользователей Arq - см. Ответ разработчика Arq Стефана Рейтсхамера ниже. Избегайте головной боли при настройке mtglacier и просто используйте инструмент, встроенный в Arq!
Joewiz

Ответы:


26

Чистка хранилища из этого проекта работает хорошо: https://github.com/vsespb/mt-aws-glacier

Установите, затем выполните эти команды (замените имя хранилища на имя вашего хранилища):

mtglacier retrieve-inventory --config glacier.cfg --vault vault-name

подождите около 2 часов, а затем

mtglacier download-inventory --config glacier.cfg --vault vault-name --new-journal vault-name.log
mtglacier purge-vault --config glacier.cfg --vault vault-name --journal vault-name.log

Большое спасибо за это, но, к сожалению, у меня нет хранилищ ледника, чтобы проверить его, поэтому, пожалуйста, если кто-нибудь проверяет его, дайте мне знать, чтобы пометить его как правильный ответ.
Шериф Марзук

Спасибо за отзыв @CamiloNova Я выбрал это как лучший ответ на основе ваших отзывов ^ _ ^
Шериф Марзук

Мне нужно было подождать ближе к 4 часам, чтобы можно было скачивать инвентарь
Параг

1
Этот метод кажется намного быстрее по сравнению с glacier-vault-remove. Этот метод смог удалить 350 ГБ данных за несколько часов, в то время как glacier-vault-removeкаждые 12 часов он удалял только около 30 ГБ данных.
gbmhunter

Я понимаю, что этот ответ помечен как подтвержденное решение, но для пользователей Arq, таких как оригинальный постер, ответ Стефана Рейтшамера ниже - лучший. Arq имеет встроенный инструмент для удаления Glacier Vaults. Не нужно возиться с mtglacier. Просто прочитайте этот ответ, и все готово.
Joewiz

15

https://github.com/leeroybrun/glacier-vault-remove был создан именно для этой цели.

Чтобы удалить хранилище, сначала установите зависимости:

$ git clone https://github.com/leeroybrun/glacier-vault-remove.git
$ cd glacier-vault-remove
$ python setup.py install

Затем создайте файл учетных данных credentials.jsonв том же каталоге:

{
  "AWSAccessKeyId": "YOURACCESSKEY",
  "AWSSecretKey":   "YOURSECRETKEY"
}

Затем запустите скрипт, как это

$ python removeVault.py REGION-NAME VAULT-NAME

Пример :

$ python removeVault.py us-east-1 my_vault

1
Этот сценарий намного медленнее, чем mt-aws-glacier в настоящее время
Дэн Полтавски,

Также кушает много оперативки. Я пытаюсь удалить примерно 120 000 архивов - в 1142 из 125413 он уже использует более 1 ГБ памяти (и увеличивается с каждым архивом).
aaronk6

7

Если вы удалите папку с поддержкой Glacier в Arq, она попадет в корзину Arq. Если вы выберете его в корзине Arq и нажмете «Удалить навсегда», Arq удалит все архивы Glacier и попытается удалить хранилище Glacier. Удаление хранилища может завершиться неудачно, потому что Amazon должен обновить свой «инвентарь», что он делает один раз в день. На следующий день перейдите в «Другие резервные наборы» в Arq, найдите это хранилище, выберите его и нажмите «Удалить», чтобы удалить его.

Если у вас есть хранилище, которое не связано ни с какими резервными копиями Arq, выберите «Legacy Glacier Vaults» в меню Arq, выберите хранилище и нажмите кнопку, чтобы удалить.


Спасибо, Стефан! В течение нескольких дней я пытался выяснить, как удалить мои хранилища Arq - не смог установить mtglacier на моем Mac, создать экземпляр dropcloud ubuntu для запуска mtglacier - и все это время решение было прямо в Arq.
Joewiz

5

Вы можете использовать бесплатный продукт, такой как CloudBerry Explorer http://www.cloudberrylab.com/free

Обратите внимание, данные Glacier не становятся доступными сразу. вам нужно подождать 24 часа, чтобы глобальный инвентарь появился на стороне Amazon, затем нажмите кнопку «Получить инвентарь» и подождите еще 5 часов, чтобы получить инвентарь для вашей учетной записи.

Благодарность


У меня не было ничего, кроме ледника в этой учетной записи, поэтому я просто удалил свою учетную запись aws, пометив ее как правильный ответ, так как, я думаю, она бы сработала, если бы я попробовал.
Шериф Марзук

Не очень хороший ответ, потому что этот продукт не работает на OSX.
user3353

1

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

Я не видел, чтобы это было предложено нигде ... но если вы используете только AWS для Glacier (что, я полагаю, должно иметь место для многих), вы можете просто закрыть свою учетную запись AWS! Именно это я и сделал после нескольких дней невероятно неэффективных попыток удаления данных с помощью различных инструментов.

Когда вы закрываете свою учетную запись, Amazon удаляет ваши данные (предположительно; в конечном итоге они должны как минимум освободить место на диске), и вы получаете окончательный чек за текущий месяц. Прощай, Амазонка!


Я использовал много других сервисов amazon и не хотел их потерять, и я думаю, что многие используют amazon для покупки вещей, но хорошо, чтобы это было написано где-то для людей, которые никогда не использовали amazon для чего-то другого
Шериф Марзук

@ShereefMarzouk Ну, когда вы закрываете свой счет в панели управления AWS, это на самом деле ваше AWS счетов вы закрываете, а не ваш счет Amazon , который вы используете , чтобы сделать покупки. Таким образом, вы по-прежнему сможете использовать другие сервисы Amazon (если они не являются частью AWS), как обычно.
Форма

0

Как удалить Убежище (Ледник AWS)

В этом разделе приведены некоторые советы по удалению AWS Glacier Vaultс помощью AWS CLI (т. Е. Https://aws.amazon.com/en/cli/ ).

Шаг 1 / Получить инвентарь

$ aws glacier initiate-job --job-parameters "{\"Type\": \"inventory-retrieval\"}" --vault-name YOUR_VAULT_NAME --account-id YOUR_ACCOUNT_ID --region YOUR_REGION

Ждите в течение 3/5 часов… :-(

Для нового шага вам нужно получить JobId. Когда инвентаризация завершена, вы можете получить ее с помощью следующей команды:aws glacier list-jobs --vault-name YOUR_VAULT_NAME --region YOUR_REGION

Шаг 2 / Получить ArchivesIds

$ aws glacier get-job-output --job-id YOUR_JOB_ID --vault-name YOUR_VAULT_NAME --region YOUR_REGION ./output.json

Видеть. Загрузка описи хранилища в леднике Амазон

Вы можете получить все ArchiveIdв ./output.jsonфайле.

Шаг 3 / Удалить архивы

Powershell

от @vinyar

$input_file_name = 'output.json'
$vault_name = 'my_vault'
# $account_id = 'AFDKFKEKF9EKALD' #not used. using - instead

$a = ConvertFrom-Json $(get-content $input_file_name)

$a.ArchiveList.archiveid | %{
write "executing: aws glacier delete-archive --archive-id=$_ --vault-name $vault_name --account-id -"
aws glacier delete-archive --archive-id=$_ --vault-name $vault_name --account-id - }

питон

от @robweber

ijson , который вместо этого читает файл как поток. Вы можете установить его с помощью pip

import ijson, subprocess

input_file_name = 'output.json'
vault_name = ''
account_id = ''

f = open(input_file_name)
archive_list = ijson.items(f,'ArchiveList.item')

for archive in archive_list:
    print("Deleting archive " + archive['ArchiveId'])
    command = "aws glacier delete-archive --archive-id='" + archive['ArchiveId'] + "' --vault-name " + vault_name + " --acc$
    subprocess.run(command, shell=True, check=True)

f.close()

PHP

из @Remiii

<?php

$file = './output.json' ;
$accountId = 'YOUR_ACCOUNT_ID' ;
$region = 'YOUR_REGION' ;
$vaultName = 'YOUR_VAULT_NAME' ;

$string = file_get_contents ( $file ) ;
$json = json_decode($string, true ) ;
foreach ( $json [ 'ArchiveList' ] as $jsonArchives )
{
    echo 'Delete Archive: ' . $jsonArchives [ 'ArchiveId' ] . "\n" ;
    exec ( 'aws glacier delete-archive --archive-id="' . $jsonArchives [ 'ArchiveId' ] . '" --vault-name ' . $vaultName . ' --account-id ' . $accountId . ' --region ' . $region , $output ) ;
    echo $output ;
}

Пометка: после удаления архива, если вы сразу же загрузите инвентаризацию хранилища, он может включить удаленный архив в список, поскольку Amazon Glacier готовит инвентаризацию хранилища только примерно один раз в день.

Видеть. Удаление архива в леднике Амазонки

Шаг 4 / Удалить хранилище

$ aws glacier delete-vault --vault-name YOUR_VAULT_NAME --account-id YOUR_ACCOUNT_ID --region YOUR_REGION

Суть изначально @Remiii

Итак, несколько лет назад я закрыл свой аккаунт и просто открыл его несколько месяцев назад и угадаю, что у amazon все еще есть мои 3 ТБ на моем аккаунте, и теперь я получил счета за них в течение последних нескольких месяцев.

Итак, я вернулся к этому вопросу и обнаружил, что:

  • mt-aws-glacier практически невозможно настроить на последнюю версию Ubuntu, после чего перешел на 12.04, а awscli не было, затем, когда до 14.04 появилась ошибка о моей подписи ...
  • Ответ Arq больше не актуален в Arq 5
  • Тогда я нашел вышеупомянутую суть и скопировал ее здесь, потому что это лучше для сообщества
  • Пробовал морошку и похоже она должна работать я обновлю здесь через 4 ~ 10 часов

-1

На Mac вы можете попробовать использовать приложение ForkLift (бесплатно для ознакомления ), которое может подключаться к Amazon S3.


Я подключился к Amazon S3, но он мне ничего не показывает. Нужно ли указывать сервер, отличный от s3.amazonaws.com, чтобы получить доступ к леднику?
Кевин

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

1
Ледник не S3. Они оба являются частью Amazon Web Services и оба они используются для хранения файлов, но у них разные варианты использования, структуры оплаты, ограничения и API. Из-за этого инструменты S3 не работают с Glacier, а инструменты Glacier не работают с S3 (хотя нельзя сказать, что не существует инструментов, совместимых как с S3 , так и с Glacier, написанных с использованием различных сетевых обработчиков и логика приложения для каждого сервиса) .
Слипп Д. Томпсон
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.