Перейти к содержимому
Экосистема AI Vibe

Новости

SageMaker в CDK: автомасштаб не отваливается при смене конфига endpoint

Редакция 23 октября 2026 г.

Цепочка CDK custom resources снимает и снова подключает автомасштабирование SageMaker endpoint вокруг обновления конфигурации.

Пока variant AllTraffic зарегистрирован в Application Auto Scaling, CDK и CloudFormation не обновят конфигурацию SageMaker AI endpoint — тип инстанса, число копий или переменные окружения SageMaker просто отклонит. AWS показала переиспользуемый CDK-конструкт на custom resources: он снимает scalable target, перекатывает endpoint и снова вешает target tracking policy, чтобы конфиг и autoscaling менялись одним деплоем.

Три ловушки без оркестрации

Оставляете autoscaling включённым — CloudFormation упирается в требование снять AllTraffic как scalable target до смены endpoint. Снимаете target в CLI и меняете только endpoint — деплой проходит, но параметры autoscaling в шаблоне не трогались, CloudFormation не перерегистрирует цель: масштабирования нет, стек молчит.

После ручного deregister правите autoscaling в template — CloudFormation ищет ScalableTarget, которого уже нет; откат может зависнуть в UPDATE_ROLLBACK_FAILED.

Как устроена цепочка

Вместо нативных AWS::ApplicationAutoScaling::ScalableTarget и ScalingPolicy — три custom resource с порядком через node.add_dependency. Deregister снимает target до update (на первом деплое терпит отсутствие цели). Register Scalable Target ждёт InService асинхронно: опрос раз в 30 секунд, общий лимит provider — 1 час. Attach Scaling Policy — тот же паттерн, таймаут 15 минут.

ConfigHash на каждом custom resource заставляет Lambda перезапускаться при любом изменении настроек. Endpoint и autoscaling задают вместе — в walkthrough это config/config.yaml; один хеш на обе секции, иначе смена только instance_type с ml.m5.large на ml.m5.xlarge не прогонит всю последовательность.

В стеке три custom resource, но с CDK cr.Provider это 12 Lambda и две state machine Step Functions — пять handler’ов ваши, остальное фреймворк. Пример: aws-samples/sample-sagemaker-endpoint-autoscaling, Python 3.12, uv run cdk deploy InferenceStack.

Источник: Orchestrating SageMaker AI endpoint auto scaling with AWS CDK.