Мне нужен совет по управлению развертыванием в K8S. Мне нужно иметь сине-зеленое развертывание, используя gitops, и это оставляет мне два основных варианта:
1. Использовать одно пространство имен.
Для этого потребуется использовать helm для управления удалением ресурсов и еще много чего, а также прокси, управляющий синим / зеленым через helm, а это, в свою очередь, потребует создания дублирующих шаблонов развертывания (для зеленого и синего).
Плюсы: управляемый рулем, удалит удаленные ресурсы; похоже на общую практику.
Минусы: управляется штурвалом, может что-то испортить, особенно в нескольких неудачных развертываниях ; может создать пространство имен снежинки, если кто-то быстро исправит / добавит какой-либо ресурс и не будет делать репо;
2. Использование одного пространства имен на развертывание
Просто разверните каждую ревизию в своем пространстве имен, например web-front-2142 , отметьте, перейдите к входу, затем удалите все остальные web-front - [\ d] Я все еще могу использовать двигатель шаблона руля, но без румпеля. Нет необходимости полагаться на ресурсы управления румпелем - пространство имен будет удалено после повышения производительности пространства имен.
Мне нужно создать отдельное пространство имен для входа, потому что это единичный ресурс, но это будет действительно простое пространство имен, что-то вроде web-front-ingress .
Плюсы: без снежинок, каждое развертывание было полностью создано из репо; если это работает - это работает; Никакой зависимости от предыдущих развертываний, если предыдущее развертывание было полностью скрыто, это не имеет значения.
Минусы: отдельное пространство имен для отдельных ресурсов, таких как вход; кажется, не так, как K8S был разработан и может привести к непредвиденным последствиям; все инструменты развертывания, включая spinnaker, вращаются вокруг одного пространства имен.
Нужен совет и лучшие практики! :)