Helm: soporte directo para el patrón de despliegue azul / verde en el timón

Creado en 16 feb. 2018  ·  3Comentarios  ·  Fuente: helm/helm

El patrón de implementación azul / verde como se describe en http://container-solutions.com/kubernetes-deployment-strategies no se admite de forma nativa en kubernetes o helm. Si perteneciera a algún lugar, ¿sería helm o kubernetes? ¿Los encargados del mantenimiento del timón podrían aceptar una solicitud de extracción azul / verde?

questiosupport

Comentario más útil

@bacongobbler Entiendo de dónde vienes, pero creo que istio es la forma de bajo nivel de implementar lo que nos gustaría. Lo que quiero decir es que (al menos para mí) describo toda la implementación de mi servidor con gráficos de timón. Si cambio un gráfico de una versión a la siguiente, su timón lee los archivos del timón y despliega todos los cambios. Ahora, lo hace interactuando con los componentes de nivel inferior descritos en el gráfico, pero no obstante, no estoy ejecutando kubectl u otros comandos directamente para cambiar las cosas. Además, creo que sería incorrecto hacerlo porque significa que el estado del mundo no está dentro del ámbito de ninguna herramienta, lo que conducirá a errores cuando estas herramientas no funcionen juntas. ¿O me estoy perdiendo algo?

Todos 3 comentarios

En realidad, esto es algo que las mallas de servicio manejan muy bien. Le sugiero encarecidamente que eche un vistazo a herramientas como istio si necesita realizar implementaciones azul / verde para su aplicación, ya que pueden manejar entradas y salidas graduales porque controlan el flujo de tráfico que ingresa a su aplicación.

Helm funciona más en el sentido de un administrador de paquetes tradicional, actualizando gráficos de una versión a la siguiente de una manera elegante (gracias a las sondas de disponibilidad / preparación del pod y las estrategias de actualización de implementación), de manera muy similar a como uno espera algo como apt upgrade para trabajar. Las implementaciones azul / verde son una bestia muy diferente en comparación con el estilo del administrador de paquetes de los flujos de trabajo de actualización; azul / verde se encuentra en un nivel más alto en la cadena de herramientas porque los casos de uso en torno a estas implementaciones requieren políticas de paso hacia adentro / hacia afuera, migraciones de tráfico graduales y reversiones. Por eso, decidimos que las implementaciones azul / verde están fuera del alcance de Helm, aunque una herramienta que utiliza Helm debajo de las cubiertas (o algo paralelo como istio) probablemente podría manejar ese caso de uso.

Para obtener más contexto, consulte la discusión en estos hilos / publicaciones de blog:

¡Espero que esto ayude!

Se cierra como se respondió, pero vuelva a abrir si hay más preguntas sobre las implementaciones de b / g. ¡Gracias!

@bacongobbler Entiendo de dónde vienes, pero creo que istio es la forma de bajo nivel de implementar lo que nos gustaría. Lo que quiero decir es que (al menos para mí) describo toda la implementación de mi servidor con gráficos de timón. Si cambio un gráfico de una versión a la siguiente, su timón lee los archivos del timón y despliega todos los cambios. Ahora, lo hace interactuando con los componentes de nivel inferior descritos en el gráfico, pero no obstante, no estoy ejecutando kubectl u otros comandos directamente para cambiar las cosas. Además, creo que sería incorrecto hacerlo porque significa que el estado del mundo no está dentro del ámbito de ninguna herramienta, lo que conducirá a errores cuando estas herramientas no funcionen juntas. ¿O me estoy perdiendo algo?

¿Fue útil esta página
0 / 5 - 0 calificaciones