Перейти к основному содержимому

Подключить S3 к кластеру серверов 1С

Последнее изменение:

S3 — сервис для хранения и раздачи неограниченного объема данных. Вы можете подключить S3 к своему кластеру серверов 1С, чтобы сохранять туда медиафайлы — изображения и документы. Это позволит вам:

  • сократить количество запросов к кластеру баз данных — запросы на действия с файлами будут адресованы в бакет хранилища;
  • повысить надежность хранения медиафайлов — данные в S3 реплицируются на три независимых сервера в разных стойках;
  • редактировать и заменять медиафайлы в бакете в панели управления или с помощью инструментов для работы с S3.

Принцип работы

Вы подключаете S3 к кластеру серверов 1С в панели управления, затем настраиваете метод хранения медиафайлов в меню конфигурации 1С.

После этого новые медиафайлы начнут отправляться в S3. Существующие медиафайлы не будут автоматически перенесены в S3, вы сможете перенести их после подключения.

После подключения и настройки вы сможете работать с медиафайлами через 1С и через S3 — например, создавать, изменять и удалять их в S3, при этом в 1С будет отображаться их актуальное состояние.

S3 имеет плоскую адресную структуру — в хранилище нет папок и иерархии, но для удобства работы можно создавать и просматривать имитированные папки (директории). Имя папки является префиксом в имени объекта.

Нельзя подключить одновременно родительскую и дочернюю директории в одном бакете. Например, если подключена директория example/images, вы не можете подключить ее родительскую директорию example или дочернюю example/images/photos, но можете подключить директорию example/documents.

Доступно два способа подключения S3:

  • автоматически — можно подключить существующий бакет или создать новый. Сервисный пользователь и политики доступа для работы с бакетом будут созданы автоматически;
  • вручную — можно подключить существующий бакет. Создать сервисного пользователя и политики доступа необходимо самостоятельно.

Ограничения и рекомендации для бакетов

К кластеру серверов 1С можно подключить только бакеты:

Для оптимальной работы мы рекомендуем выбирать бакеты:

  • с приватным типом;
  • в регионе и пуле, в котором находится кластер серверов 1С.

Стоимость

Хранение файлов в бакете оплачивается по модели оплаты и ценам S3.

При удалении кластера серверов 1С файлы из подключенных бакетов не удаляются и продолжают тарифицироваться — для прекращения оплаты удалите бакеты.

Подключить бакет к кластеру автоматически

При подключении бакета по умолчанию будут созданы и настроены:

  • сервисный пользователь GO1C_SERVICE_USER;
  • политика доступа для сервисного пользователя GO1C_POLICY;
  • политика доступа для текущего пользователя ALL_OTHER.

Подключить бакет автоматически может Владелец аккаунта или пользователи с комбинациями ролей member и iam_admin.

Подключить бакет можно только кластеру серверов 1С в статусе ACTIVE.

осторожно

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

  1. В панели управления в верхнем меню нажмите Продукты и выберите Готовое облако 1С.

  2. Перейдите в раздел Кластеры серверов 1С.

  3. Откройте страницу кластера → вкладка Хранилище.

  4. Нажмите Подключить.

  5. Выберите тип подключения — Автоматически.

  6. В полях Регион и Пул выберите регион и пул, в котором будет создан бакет. Мы рекомендуем создавать бакет в одном регионе и пуле с кластером серверов 1С.

  7. В поле Бакет выберите Новый бакет S3. Будет создан приватный бакет с Virtual-Hosted адресацией и стандартным классом хранения.

  8. В поле Название бакета укажите имя нового бакета. Для совместимости с S3 API имя бакета должно быть уникально в рамках S3 и соответствовать правилам именования бакетов Amazon S3, подробнее в инструкции Bucket naming rules документации Amazon.

  9. В поле Префикс укажите префикс для имитированной папки (директории), в которой будут храниться медиафайлы.

    Чтобы создать новую папку, укажите ее имя в соответствии с правилам именования бакетов Amazon S3. Папка будет создана автоматически.

    Если медиафайлы будут храниться в корне бакета, оставьте поле пустым.

  10. Нажмите Создать подключение.

Подключить бакет к кластеру вручную

Подключить бакет можно только к кластеру серверов 1С в статусе ACTIVE.

осторожно

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

  1. Подготовьте бакет к подключению.
  2. Подключите бакет.

1. Подготовить бакет к подключению

  1. Убедитесь, что вы находитесь в проекте, в котором находится кластер серверов 1С.

  2. Создайте сервисного пользователя с разрешением с настройками:

    • область доступа — Проекты;
    • добавлен проект, в котором будет создан бакет;
    • роль — object_storage_user.
  3. Создайте бакет в объектном хранилище. Учитывайте ограничения и рекомендации для бакетов.

  4. Перейдите в раздел Объектное хранилищеБакеты.

  5. Откройте страницу созданного бакета → вкладка Политика доступа.

  6. Нажмите Создать политику доступа.

  7. Добавьте правило для сервисного аккаунта:

    • в поле Доступ выберите Разрешить;
    • в поле Пользователи выберите Авторизованные и добавьте сервисного пользователя, которого вы создали на шаге 2;
    • в поле Набор действий выберите Редактор.
  8. Добавьте правило для пользователей:

    • в поле Доступ выберите Разрешить;
    • в поле Пользователи выберите Авторизованные и добавьте пользователя, который будет подключать хранилище к кластеру 1С;
    • в поле Набор действий выберите Все.
  9. Нажмите Сохранить.

  10. Выдайте S3-ключи для сервисного пользователя.

2. Подключить бакет

  1. В панели управления в верхнем меню нажмите Продукты и выберите Готовое облако 1С.

  2. Перейдите в раздел Кластеры серверов 1С.

  3. Откройте страницу кластера → вкладка Хранилище.

  4. Нажмите Подключить.

  5. Выберите тип подключения — Вручную.

  6. В полях Регион и Пул выберите регион и пул, в котором находится бакет.

  7. В поле Бакет выберите бакет, который вы подготовили ранее.

  8. В поле Префикс укажите префикс для имитированной папки (директории), в которой будут храниться медиафайлы.

    Чтобы создать новую папку, укажите ее имя в соответствии с правилам именования бакетов Amazon S3. Папка будет создана автоматически.

    Если медиафайлы будут храниться в корне бакета, оставьте поле пустым.

  9. В блоке S3 ключи укажите Access key и Secret key для сервисного пользователя, которые вы создали при подготовке бакета.

  10. Нажмите Создать подключение.

Отключить бакет

Отключить бакет можно только от кластера серверов 1С в статусе ACTIVE. При отключении бакета от кластера будут удалены S3-ключ сервисного пользователя и правило политики доступа для сервисного пользователя, которые были созданы для этого бакета.

  1. В панели управления в верхнем меню нажмите Продукты и выберите Готовое облако 1С.
  2. Перейдите в раздел Кластеры серверов 1С.
  3. Откройте страницу кластера → вкладка Хранилище.
  4. В строке с бакетом нажмите .
  5. Введите название бакета для подтверждения удаления.
  6. Нажмите Отключить. Если бакет больше не нужен, удалите его.