Crea una cuenta o inicia sesión

¡Continúa aprendiendo sin ningún costo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

13 Días
13 Hrs
56 Min
45 Seg

Modelos declarativos e imperativos

5/33
Recursos

Los control managers se encargan de estar en un loop constante de reconciliación y tratar de converger a ese estado deseado, ese es un sistema declarativo. Un sistema imperativo parece un sistema fácil de seguir y está compuesto por una serie de pasos que deben seguirse a rajatabla.

  • Kubernetes hace énfasis en ser un sistema declarativo
  • Declarativo: “Quiero una taza de té”
  • Imperativo: “Hervir agua, agregar hojas de té y servir en una taza”
  • Declarativo parece sencillo (siempre y cuando uno sepa cómo hacerlo)
  • Todo en Kubernetes se crea desde un spec que describe cuál es el estado deseado del sistema
  • Kubernetes constantemente converge con esa especificación

Aportes 16

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Esta muy interesantes los conceptos solo que, no se si el objetivo era el de explicar que existen dos formas de administrar objetos, de acuerdo a la documentación Declarativo se refiere a implementar a travez de un manifest o archivo .yml (kubectl apply -f ) y imperativo a travez de los comandos de kubectl (run, expose, create, autoscale, …).

Comparto link de documentación: Imperativo - Declarativo

Con relacion a la metodologia GitOps hay un documento al respecto en el siguiente link : GitOps

Saludos!!

Todo en K8s se crea a través de una especificación en un .yml o un manifest, y lo que hace el sistema es que trata de converger a este estado deseado.

Imperativo vs Declarativo:

  • Un sistema es imperativo cuando ejecuta una seria de pasos, que deben seguir un orden especifico. Si algun paso se interrumpe, la secuencia inicia desde el paso 1.
  • Un sistema es declarativo cuando trata de converger a un estado deseado, a partir de un estado actual.
  • Declarativo: Archivos Yaml, Imperativos: Commands.

MODELOS DECLARATIVOS VS IMPERATIVOS
Declarativo: Se declara el estado deseado final de un sistema en un archivo de especificaciones en formato yaml y cuando se ejecuta, los controladores convergen a ese estado deseado. Por ejemplo, en un archivo especifico “quiero una taza de té”
Imperativo: Se ejecutan una serie de instrucciones a través de comandos para ejecutar un sistema y en caso de falla, realiza rollback y regresa al esdo inicial. Por ejemplo, realizo cada paso “Hervir agua, agregar hojas de té y servir en una taza de té”.

Sistema Imperativo: Poco escalable, alto riesgo de ineficiencias.

Sistema Declarativo: Altamente escalable, apunta a generar eficiencias evolutivas.

repasando 😃

Bien dictada a diferencia entre ambos modelos

No se quien habia publicado sobre el consenso de Raft, pero es excelente la documentacion.
https://raft.github.io/

Kubernetes imperativo: Usar comandos a traves de Kubectl

Kubernetes declarativo: Usar un .yml que ejecute todos esos comandos de manera abstracta

Imperativo

  • Es un comando usado a través de la consola de comandos con kubectl. ejemplo (k run nginx —image=nginx)

Declarativo

  • El modelo declarativo es un archivo yaml en el cual hago énfasis de lo que necesito, tiene especificaciones, converge a un estado deseado.

A seguir adelante.

buenas explicación, muy buen docente 😃

Super gracias profe 😃

adoro kubernetes, simplifica muchas cosas

Las premisas de un sistema declarativo es que sea un sistema observable y que permita computar la diferencia entre el estado actual vs el estado deseado.