Настроить канареечный релиз
Настройка канареечного релиза возможна только для спецификаций OpenAPI
- В консоли управления
перейдите в каталог, в котором находится API-шлюз. - Выберите сервис API Gateway.
- В строке с API-шлюзом нажмите кнопку
и выберите Редактировать. - В блоке Управление переменными включите канареечный релиз.
- В поле Доля запросов в канареечном релизе укажите процент запросов, который будет обрабатываться канареечным релизом.
- В поле Переменные для канареечного релиза перечислите переменные и их значения, которые будут применяться в канареечном релизе.
- Нажмите кнопку Сохранить.
Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.
По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.
Чтобы настроить канареечный релиз:
-
При необходимости внесите изменения в файл спецификации OpenAPI или подготовьте новый файл.
-
Посмотрите описание команды CLI для изменения API-шлюза:
yc serverless api-gateway update --help -
Укажите в команде идентификатор или имя API-шлюза, а также параметры канареечного релиза:
yc serverless api-gateway update \ --id <идентификатор_API-шлюза> \ --canary-weight <процент_запросов> \ --canary-variables=<список_переменных>Где:
--canary-weight— процент запросов, которые будут обработаны канареечным релизом.--canary-variables— переменные для канареечного релиза в форматеключ=значение.
Terraform
Terraform распространяется под лицензией Business Source License
Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform
Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.
Чтобы настроить канареечный релиз:
-
Откройте файл конфигурации Terraform и добавьте в него блок
canary:resource "yandex_api_gateway" "<имя_API-шлюза>" { ... canary { weight = <процент_запросов> variables = { <список_переменных> } }Где:
weight— процент запросов, которые будут обработаны канареечным релизом.variables— переменные для канареечного релиза в форматеключ=значение.
Более подробную информацию о параметрах ресурса
yandex_api_gatewayв Terraform см. в документации провайдера. -
Проверьте конфигурацию командой:
terraform validateЕсли конфигурация является корректной, появится сообщение:
Success! The configuration is valid. -
Выполните команду:
terraform planВ терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.
-
Примените изменения конфигурации:
terraform apply -
Подтвердите изменения: введите в терминал слово
yesи нажмите Enter.
Проверить, что API-шлюз изменился, можно в консоли управления
yc serverless api-gateway get <имя API-шлюза>
Чтобы настроить канареечный релиз, воспользуйтесь методом REST API update для ресурса ApiGateway или вызовом gRPC API ApiGatewayService/Update.