DevOps


Kubernetes Logo
Introducción Durante las pasadas semanas he estado intentar comprender mejor qué es un Operador de Kubernetes y especialmente qué lo diferencia de un Kubernetes Controller. Hay diversas convenciones y bastante documentación , pero poco clara, acerca de ambos términos y supongo que habrá más de uno o una que tenga también cierta confusión. En este post intentaré resumir qué implica cada uno de estos patrones y enumeraré algunos ejemplos que los ilustran. Controllers La documentación de Kubernetes sobre controllers comienza dando una breve definición sobre control loop (circuito de control), esto es lo que la entrada en Wikipedia dice acerca […]

Kubernetes: Operador vs. Controller


GitHub Actions
Introducción En este post veremos cómo desde un workflow de GitHub Actions en un repositorio podemos invocar otro workflow de un repositorio distinto. La primera parte muestra los distintos tipos de eventos que pueden desencadenar un workflow, centrándose en el evento repository_dispatch. La segunda parte es un ejemplo práctico mostrando cómo dos repositorios diferentes pueden desencadenar/iniciar sus workflows mutuamente. Eventos que desencadenan workflows Como probablemente sepas, hay diferentes tipos de eventos que pueden iniciar la ejecución de un workflow de GitHub Actions. Los eventos más conocidos para desencadenar esta ejecución son push, pull_request y schedule.  Estos eventos cubren la mayoría de […]

Lanzando GitHub Actions entre distintos repositorios


Isotope + Kuberentes
Introducción Isotope mail client es una aplicación webmail de código libre y uno de los proyectos personales en los que he invertido más tiempo durante el pasado año. Puedes leer más información acerca de las funcionalidades de Isotope en una publicación anterior. A pesar de que todavía no hay una versión oficial, la aplicación está bastante estable. En este post describiré la forma en la que se puede desplegar Isotope un un clúster de Kubernetes. En el tutorial se ha empleado minikube + kubectl, pero los mismos pasos podrían reproducirse en un clúster de K8s en producción. Traefik v1 Pese […]

Isotope Mail: Cómo desplegar Isotope+Traefik en Kubernetes



docker as a linux systemd service
Introducción Existen múltiples formas de orquestar la gestión, iniciación, despliegue, etc. de los contenedores de Docker. Incluso Docker ofrece su propia herramienta y modo de ejecución.  También hay herramientas de terceros para orquestar los contenedores, entre ellas encontramos: Kubernetes, Rancher, Apache Mesos, etc. El demonio de Docker ofrece un sencillo mecanismo para arrancar, parar y consultar el estado de los contenedores desplegados en el sistema. En esta publicación veremos como desplegar contenedores como servicios de Linux utilizando Docker + systemd sin necesidad de utilizar herramientas de terceros. El tutorial muestra concretamente como desplegar Portainer como un servicio de Linux. Contenedor […]

Docker: Configurando un contenedor como un servicio de Linux