Облачная платформаEvolution

Быстрый старт сервиса API Gateway


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

  1. В личном кабинете перейдите в раздел Разработка → API Gateway.

  2. В меню слева выберите Shared.

  3. Нажмите Создать шлюз.

    Отобразится окно создания шлюза.

    По умолчанию шлюзу назначается системный адрес вида <uuid>.apigw.cloud.ru, где uuid — это идентификатор шлюза. Запросы, отправленные на этот адрес, будут обработаны шлюзом. Системный адрес не может быть удален.

  4. Укажите название шлюза.

  5. Выберите шаблон шлюза Обратный прокси.

    Шаблон представляет собой набор полей для добавления правил и бэкендов для шлюза. Шаблон Обратный прокси предназначен для трансляции клиентских запросов, направленных на публичный хост. Запросы транслируются на бэкенды (адреса сервисов), скрытые от клиента.

    В дальнейшем вы сможете добавить дополнительные правила и бэкенды в шлюз независимо от выбранного шаблона.

  6. Нажмите Продолжить.

  7. Задайте URI для проксирования.

    Пример:

    • Системный адрес: https://bc8296eda9dc4f2ba3a301ac411a32d8.apigw.cloud.ru

    • URI для проксирования: /service1

    Для отправки запросов к бэкенду через шлюз будет использоваться адрес https://bc8296eda9dc4f2ba3a301ac411a32d8.apigw.cloud.ru/service1.

  8. Выберите карточку Общий.

  9. Нажмите Создать общий бэкенд.

    Общий бэкенд — доступен всем шлюзам внутри проекта для Shared API.

    В соседней вкладке откроется мастер создания бэкенда.

  10. Задайте обязательные параметры бэкенда.

    • Название — пользовательское название бэкенда. Используется для указания точки маршрутизации запросов.

    • Протокол — протокол, по которому осуществляется подключение к узлам бэкенда.

    • Адрес — доменное имя узла бэкенда или IP-адрес бэкенда.

  11. Нажмите Создать.

    Общий бэкенд появится в списке Общий бэкенд в мастере создания шлюза.

  12. Выберите созданный общий бэкенд.

  13. Нажмите Продолжить.

    Автоматически будет создано правило с указанным URI для проксирования.

    Подсказка

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

  14. Нажмите Добавить политику.

    Добавление политики состоит из шагов:

    1. Окно Добавление политики.

      Выберите политику, например — «Ограничение запросов».

    2. Заполнение параметров политики:

      • Количество запросов — оставьте значение по умолчанию.

      • Интервал времени, сек — оставьте значение по умолчанию.

  15. Нажмите Создать.

    Будет создан шлюз с одним активным правилом и политикой «Ограничение запросов».

    Запросы по указанным HTTP-методам, направленные на адрес шлюза по заданным URI для проксирования, будут перенаправлены на общий бэкенд. К запросам будет применена политика ограничения запросов.

    Для вызова используйте метод (например, «GET») и URL созданного API-шлюза, например — https://bc8296eda9dc4f2ba3a301ac411a32d8.apigw.cloud.ru/service1.

    Подсказка

    Вы можете просмотреть созданный общий бэкенд в Shared → Общие бэкенды.

  16. В разделе Shared → Шлюзы выберите созданный шлюз.

  17. Откройте Правила и добавьте правило с частным бэкендом.

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

    Создание правила состоит из шагов:

    1. Основные параметры.

      • Укажите Название правила.

      • Задайте параметры правила:

        • HTTP-метод — методы, запросы по которым будут обработаны данным правилом.

        • URI для проксирования, запросы на которые будут обработаны данным правилом.

          Поддерживаются Wildcard-символы (*) для замещения любой части URI. Например, /route1.

      Нажмите Продолжить.

    2. Настройки.

      Выберите Частный бэкенд и укажите обязательные параметры бэкенда:

      • Название — пользовательское название бэкенда. Используется для указания точки маршрутизации запросов.

      • Тип бэкенда – выберите Стандартный бэкенд и укажите URL-адрес или IP-адрес.

        При необходимости укажите порт. По умолчанию используется порт 80 для HTTP / gRPC-трафика и порт 443 для HTTPS / gRPCs-трафика.

      • Протокол — протокол, по которому осуществляется подключение к узлам бэкенда.

      • Адрес — доменное имя узла бэкенда или IP-адрес бэкенда.

      Нажмите Продолжить.

    3. Политики.

      Нажмите Добавить политику.

      Добавление политики состоит из шагов:

      1. Окно Добавление политики.

        Выберите политику, например — «Кэширование запросов».

      2. Заполнение параметров политики:

        • Перечень кодов ответа — коды состояния HTTP-ответа, для которых кэшируются ответы.

          Оставьте значение по умолчанию.

        • Интервал времени, сек — время, в течение которого хранится кэш.

          Оставьте значение по умолчанию.

  18. Нажмите Создать.

    Созданное правило появится в разделе Правила карточки шлюза. Правило сразу активно.

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

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

    Для вызова используйте метод (например, «GET») и URL созданного API-шлюза, например — https://bc8296eda9dc4f2ba3a301ac411a32d8.apigw.cloud.ru/route1.