tekton-kuberntes

En colaboración con: Santiago Yepes

Saludos amigos Kubernetes aficionados, este artículo se basa en  el capitulo #27 de la serie La Hora de Kubernetes, hoy vamos a hablar sobre Tekton, el Framework para crear sistemas CI/CD, poderoso y flexible.

Es importante saber que Tekton Pipeline es un nuevo proyecto que nos permite ejecutar sus canalizaciones de CI / CD en un enfoque nativo de Kubernetes. Tekton Pipelines surgió del proyecto de construcción Knative. Si deseas saber más sobre Knative, les recomendamos que visites el sitio web de su proyecto, que está disponible aquí.

Saludos amigos Kubernetes aficionados, este artículo se basa en  el capitulo #26 de la serie La Hora de Kubernetes, hoy vamos a explorar las funcionalidades principales de KubeMQ mediante una demostración con aplicaciones demo, aparte analizaremos las ventajas que tiene sobre las demás alternativas.

¿Cómo funciona?

Antes de comenzar a hablar sobre lo que significa Kubernetes nativo y cómo están funcionando Tekton Pipelines, primero nos gustaría dar un paso atrás y aclarar brevemente por qué los pipelenes en contenedores son tan importantes y útiles:

hace algún tiempo comenzamos a poner nuestras cargas de trabajo en contenedores. Lo hicimos por ventajas como el aislamiento, las dependencias, la escalabilidad y la inmutabilidad. ¿No serían también útiles en su canalización de CI / CD?
Piense en “hosts de compilación” que solo proporcionan las herramientas y dependencias necesarias para una tarea de canalización en particular. Un entorno que tiene el mismo aspecto en todas las ejecuciones y no tiene dependencias de otros proyectos que puedan causar problemas. Además de canalizaciones fácilmente escalables.
¡Es por eso que necesitamos y debemos usar pipelines en contenedores!

Ahora, donde hablamos brevemente sobre las canalizaciones en contenedores, hablemos de dónde puede ayudar Tekton Pipeline con su enfoque nativo de Kubernetes:
Tekton Pipeline nos permite ejecutar nuestras canalizaciones en contenedores en nuestros clústeres de Kubernetes existentes. Esto significa que no necesitamos máquinas adicionales para ejecutar nuestros Pipelines y, por lo tanto, podemos utilizar mejor las existentes.

Esto es genial pero, para ser honesto, eso por sí solo no hace que Tekton Pipeline sea único. Tekton Pipeline va un paso más allá y también almacena todo lo relacionado con nuestra canalización dentro de Kubernetes, como recursos de Kubernetes. Esto nos permite trabajar con nuestras canalizaciones como lo hacemos con cualquier otro recurso. Piensa en una implementación o servicio que puede crear y administrar usando archivos kubectl y YAML.

Descubre más conceptos sobre Tekton y el Demo.

Beneficios de Tekton

Personalizable: Alta flexibilidad para personalizar un proceso CI/CD tanto como es requerido.

Reusable: Las definiciones son fácilmente portables, śiendo posibles aplicarlas a múltiples proyectos con poco o sin nada de modificación.

Expandible: Cuenta con un repositorio/catálogo de material listo para ser usado.

Estandarización: Kubernetes native – Extensión de K8S con CRD.

Escalable: Sigue las mismas reglas de Kubernetes para escalar, agregar/quitar nodos según la necesidad.

Principales Componentes de Tekton

  • Pipelines: Encargado de ejecutar task y pipelines.
  • Triggers: Capturar y manejar eventos.
  • Dashboard: Sitio web para ejecutar pipelines, tareas y ver los estados de todas las ejecución.
  • CLI tkn: Componente para administrar el flujo CI/CD desde la terminal.

¿Cómo empezar?

Como se mencionó anteriormente, Tekton Pipeline vive dentro de un clúster de Kubernetes. Se basa en 5 definiciones de recursos personalizadas (CRD), implementaciones, mapas de configuración y servicios. Puede ejecutar el siguiente comando para comenzar:

kubectl apply -f https://storage.googleapis.com/tekton-releases/latest/release.yaml

Además de los recursos mencionados anteriormente, también creará un espacio de nombres, una política de seguridad de pod, una cuenta de servicio y ClusterRoles. Tekton Pipeline está listo tan pronto como estén listos todos los Pods en el espacio de nombres recién creado (el nombre predeterminado es tekton-pipelines).
Por supuesto, puede revisar el YAML anterior y personalizarlo según sus necesidades.
Si necesita compartir artefactos u otros recursos de canalizaciones entre sus tareas, deberá configurar una opción de almacenamiento. Puede usar PVC que se solicitarán cada vez que sea necesario (¡el aprovisionamiento dinámico de volumen es clave!) O Blob Storage. Encontrará más detalles sobre esta tarea aquí .

Fuente: Nico Meisenzahl

¿Todavía tienes preguntas?

Sí desea sumergirse y obtener más información, diríjase a nuestro Canal Cuemby, nuestra comunidad está creciendo y nuestro equipo esta dispuesto a ayudarte. ¡No dude en enviarnos un mensaje en cualquier momento con sus preguntas y nos aseguraremos de responder!

¡Gracias por visitar nuestro blog! Si te gusta lo que lees, suscríbete.