Настройка хранилища

обновленный
Cover image for: Настройка хранилища

Некоторые части этих инструкций дополнительно используют ricloud-py для упрощения настройки. Чтобы использовать это, ознакомьтесь с документацией по установке и настройке ricloud-py .

Конфигурация хранилища сообщает API-интерфейсу, куда возвращать результаты ваших задач. В настоящее время мы поддерживаем хранилища Google Cloud Storage (GS) и Amazon S3 (S3).

Настройка хранилища с помощью Google Cloud Storage

Создание проекта Google Cloud Platform

Если у вас нет учетной записи Google Cloud Platform (GCP), вам нужно будет зарегистрироваться . Просто нажмите «Попробовать бесплатно» (или «Попробовать бесплатно»), чтобы пройти процедуру регистрации.

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

Создание корзины Google Cloud Storage

Теперь, когда проект GCP готов, вы можете продолжить и создать новое хранилище . Мы рекомендуем использовать как минимум класс хранения «Regional» и местоположение «us-east1» (именно здесь находится большинство наших ресурсов). Для этого руководства мы назовем наше ricloud-storage , но вам, вероятно, придется выбрать другое имя, так как имена ricloud-storage глобально уникальны для их службы хоста.

Создание сервисной учетной записи для API

После инициализации корзины вам потребуется создать учетную запись службы, чтобы предоставить API доступ к ней. Сервисная учетная запись - это, по сути, роботизированный пользователь вашего проекта, которому мы можем предоставить разрешения только для доступа к нашему новому сегменту. Для настройки учетной записи службы выполните действия, описанные в документах IAM Google Cloud, чтобы настроить учетную запись службы. Выбор имени зависит от вас, но в этом руководстве мы назовем его ricloud-sa . Игнорируйте все необязательные поля при создании учетной записи службы, мы установим разрешения на следующем шаге.

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

Установка разрешений на уровне сегмента

Вернитесь в раздел «Хранилище» своего проекта GCP и следуйте инструкциям, приведенным в разделе «Добавление участника в политику уровня ricloud-sa документах Google Cloud Storage, чтобы добавить ricloud-sa запись службы ricloud-sa . Присвойте ему роли «Создатель объектов хранения» и «Устаревший ведро хранения».

Создание конфигурации

На этом этапе Сервисная учетная запись должна быть полностью настроена и готова к использованию с API.

Использование ricloud-py для создания конфигурации

Используя ricloud-py , вы можете создать новый ресурс конфигурации хранилища с помощью команды:

> ricloud storage-config create --url "<storage bucket url>" --credentials-path <path to credentials file>

В данном случае storage bucket url gs://ricloud-storage будет gs://ricloud-storage а path to credentials file - это просто путь к файлу ключа учетной записи службы, который мы создали ранее.

Использование cURL для создания конфигурации

curl -X POST \
  https://ricloud-api.reincubate.com/configs/storage \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "url": "gs://ricloud-storage",
    "credentials": <all contents of the Service Account JSON key file>
}'

Настройка хранилища с помощью Amazon S3

Создание учетной записи Amazon AWS

Если у вас нет учетной записи Amazon AWS, вам нужно будет зарегистрироваться . Нажмите «Начать с Amazon S3», чтобы пройти процесс установки.

Создание хранилища S3

Следуйте этим инструкциям из документации AWS, чтобы получить настройки корзины в S3. Выберите любое имя, которое вам нравится, для этого руководства мы выберем ricloud-storage . Мы рекомендуем найти его в «Востоке США (Северная Вирджиния)» для близости к ресурсам API.

Создание пользователя для API

Когда корзина будет готова к использованию, вам потребуется настроить нового пользователя с ограниченными разрешениями на новую корзину для использования API. Это делается через консоль IAM с помощью этих шагов . Дайте пользователю запоминающееся имя, например, ricloud-user и убедитесь, что он настроен на «Программный доступ».

Нам нужно создать собственную политику, так как при запросе предоставления разрешений пользователю не существует политики по умолчанию, которая соответствует нашим потребностям. Для стандартной публикации результатов API требуется разрешение s3:PutObject .

В редакторе политик AWS выберите «Присоединять существующие политики напрямую», нажмите «Создать политику» (откроется новая вкладка), затем выберите вкладку «JSON» (которая переключится на редактор политик JSON) и вставьте следующее в :

{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "s3:PutObject"
        ],
        "Resource": ["arn:aws:s3:::ricloud-storage/*"]
    }]
}

Обязательно замените имя ricloud-storage что вы называли ricloud-storage ранее. Пройдите, чтобы сохранить новую политику, назовите ее как хотите.

Вернитесь к потоку создания пользователя и убедитесь, что к нему присоединена наша новая политика.

В конце процесса создания пользователя интерфейс отобразит «Идентификатор ключа доступа» и «Секретный ключ доступа», вы должны сохранить их в безопасности. Вы также можете скачать учетные данные в формате CSV.

Создание конфигурации

На этом этапе пользователь должен быть полностью настроен и готов к использованию с API. Используя ricloud-py , вы можете создать новый ресурс конфигурации хранилища с помощью команды:

> ricloud storage-config create --url "<storage bucket url>" --credentials-path <path to credentials file>

Где storage bucket url в этом случае будет s3://ricloud-storage а path to credentials file - это просто путь к CSV-файлу учетных данных, экспортированному в конце процесса создания пользователя, или JSON-файл с информацией об учетных данных пользователя в Формат учетных данных S3 .

Эквивалентный вызов cURL будет выглядеть так:

curl -X POST \
  https://ricloud-api.reincubate.com/configs/storage \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "url": "s3://ricloud-storage",
    "credentials": {
        "user_name": "ricloud-user",
        "access_key_id": "<user access key ID>",
        "secret_access_key": "<user secret access key>",
    }
}'

Как мы можем помочь?

Наша служба поддержки здесь, чтобы помочь!

Наш офис работает с понедельника по пятницу с 9:00 до 17:00 по Гринвичу. Время в настоящее время 11:43 ДП с GMT.

Мы стремимся отвечать на все сообщения в течение одного рабочего дня.

Наша отличная команда поддержки

Можем ли мы улучшить эту статью?

Нам нравится слышать от пользователей: почему бы не написать нам электронное письмо, оставить комментарий или написать в Твиттере @reincubate?

© 2008 - 2024 Reincubate Ltd. Все права защищены. Зарегистрировано в Англии и Уэльсе #5189175, VAT GB151788978. Reincubate® и Camo® являются зарегистрированными товарными знаками. Политика конфиденциальности & условия.