Облачные провайдеры

В мастере настройки есть готовые настройки для четырёх облачных провайдеров, работающих по протоколу S3. Выполните frost init, выберите S3-compatible, затем своего провайдера. Для любого другого S3-сервиса или S3-сервера, которым вы управляете сами, смотрите раздел Другие S3-совместимые хранилища.

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

#Amazon S3

S3 поддерживает условную запись, которая нужна Frost.

  1. Создайте бакет в консоли AWS и запишите его регион, например us-east-1.
  2. Создайте для Frost пользователя IAM и ключ доступа для него: IAM > Users > your user > Security credentials > Create access key.

Frost нужно читать, перечислять, записывать и удалять объекты в бакете, хотя удаляет он только небольшой тестовый объект, который мастер создаёт при подключении. Такой политики достаточно. Замените my-backups на имя своего бакета:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": ["s3:ListBucket"],
      "Resource": "arn:aws:s3:::my-backups"
    },
    {
      "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
      "Resource": "arn:aws:s3:::my-backups/*"
    }
  ]
}
Вопрос мастера Ответ
Which region hosts the bucket? Регион бакета, например us-east-1
What is the bucket name? Имя бакета, точно как при создании
Paste the Access Key ID. Идентификатор ключа доступа из IAM
Paste the Secret Access Key. Показывается один раз, рядом с идентификатором ключа, при его создании

Frost подключается к s3.<region>.amazonaws.com. Держите его объекты в классе хранения, который можно читать сразу, например S3 Standard или S3 Standard-IA, а не в Glacier Flexible Retrieval или Glacier Deep Archive. Версионирование бакета не нужно.

#Cloudflare R2

R2 поддерживает условную запись, которая нужна Frost.

  1. В панели Cloudflare создайте бакет R2.
  2. Запишите идентификатор учётной записи. Он указан на странице обзора R2: 32 буквы и цифры.
  3. Создайте API-токен: R2 > Manage R2 API Tokens > Create API token, с разрешением Object Read & Write. Если можно, ограничьте его своим бакетом.
Вопрос мастера Ответ
What is your Cloudflare Account ID? 32-символьный идентификатор со страницы обзора R2
What is the bucket name? Имя бакета, точно как при создании
Paste the Access Key ID. Access Key ID нового API-токена
Paste the Secret Access Key. Показывается один раз, рядом с Access Key ID

Frost подключается к <account-id>.r2.cloudflarestorage.com с регионом auto.

#Backblaze B2

В документации Backblaze не сказано, поддерживает ли B2 условную запись, которая нужна Frost. Мастер проверяет это при подключении. Если проверка не пройдена, выберите другое хранилище.

  1. Создайте бакет в своей учётной записи Backblaze.
  2. Запишите его эндпоинт: Buckets > your bucket > Endpoint. Он выглядит как s3.us-west-004.backblazeb2.com.
  3. Создайте ключ приложения: Application Keys > Add a New Application Key. Ограничьте его этим бакетом.
Вопрос мастера Ответ
What is the bucket endpoint? Эндпоинт со страницы бакета, например s3.us-west-004.backblazeb2.com
What is the bucket name? Имя бакета, точно как при создании
Paste the application key's keyID. keyID нового ключа приложения
Paste the applicationKey. Показывается один раз, сразу после создания ключа

Frost определяет регион по эндпоинту.

#Wasabi

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

  1. Создайте бакет в консоли Wasabi и запишите его регион, например us-east-1 или eu-central-1.
  2. Создайте ключ доступа: Access Keys > Create New Access Key. Если можно, используйте пользователя с доступом только к этому бакету.
Вопрос мастера Ответ
Which region hosts the bucket? Регион бакета, например us-east-1
What is the bucket name? Имя бакета, точно как при создании
Paste the Access Key. Созданный вами ключ доступа
Paste the Secret Key. Показывается один раз, при создании ключа

Frost подключается к s3.<region>.wasabisys.com.