Canary Testing с использованием группы управляемых экземпляров GCP
Я пытаюсь понять, как я могу использовать канарское тестирование с группой управляемых экземпляров,
Из того, что я узнал до сих пор, мне нужно создать шаблон экземпляра и группу экземпляров на основе новых изменений кода, мой вопрос: мне нужно использовать тот же балансировщик нагрузки и добавить новую группу экземпляров (канареечные экземпляры)), а затем распределить трафик по старой группе экземпляров и новой.
или есть ли возможность использовать старую группу управляемых экземпляров, чтобы свернуть обновления в часть группы экземпляров, а в случае успеха - обновить остальные. Спасибо
1 ответ
Вы можете добавить свои канареечные экземпляры (с новым шаблоном экземпляров) в существующую группу управляемых экземпляров (MIG). Это работает так: два шаблона экземпляров (с разными версиями вашего кода) могут использоваться одним и тем же MIG, но применяются к определенному числу или проценту экземпляров. Например, если у вас есть группа экземпляров с 10 экземплярами, вы можете выполнить непрерывное обновление группы, чтобы 10% экземпляров использовали новый шаблон экземпляра. И в случае успеха вы можете развернуть его для остальной части группы, в противном случае откатить его обратно.
Одним из недостатков является то, что вы не можете гарантировать определенный процент трафика, направляемого на вашу канарейку, с точки зрения глобального балансировщика нагрузки. Однако на уровне MIG канарский и старый код будут получать трафик в режиме циклического перебора.
Вы можете найти детали реализации здесь.