kubernetes
AKS, KeyVault y netcore
· ☕ 7 min · ✍️ eiximenis

¡Buenas! Vamos a ver en este artículo como podemos leer secretos almacenados en un Azure Key Vault desde nuestro código netcore ejecutándose en un AKS.

A diferencia de ACR donde contamos con una integración nativa en la cual nos basta con usar un _service account _de AKS vinculado a un _service principal _de Azure que tenga permisos de lectura contra el ACR (escribiéndolo veo que esto da para un pequeño futuro post), para Key Vault no tenemos integración nativa.


Trabajando con AKS Devspaces
· ☕ 10 min · ✍️ eiximenis

AKS Devspaces es una característica que Microsoft está promocionando bastante en sus charlas: casi en cualquier evento donde se hable de AKS se demuestra, ni que sea brevemente, Devspaces.

Pero… qué es y lo más importante: ¿Para qué sirve y como se usa?


Ejecutar bases de datos en Kubernetes: ¿Sí, no?
· ☕ 4 min · ✍️ eiximenis

Esta es una de las preguntas que tarde o temprano cualquiera que trabaje con Docker y Kubernetes (o cualquier otro orquestrador) se termina encontrando: Tienes toda tu aplicación en contenedores, ejecutándose en Kubernetes. Sabes también que existen versiones dockerizadas de las bases de datos. Así pues… ¿es conveniente ejecutar las bases de datos como contenedores adicionales en el orquestrador?


Diseccionando DevSpaces (i)
· ☕ 7 min · ✍️ eiximenis

DevSpaces es una de las grandes novedades para desarrolladores que nos trae Microsoft (ehm sí… es otro producto más que está en preview :p). Básicamente se trata de la posibilidad de desplegar parcialmente y depurar nuestros contenedores ejecutándose en un clúster de Kubernetes. En lo que Hanselman llama un “entorno que huele como producción”.

¿Pero… cómo funciona esa magia? Vamos a ver, dentro de lo posible, qué ha hecho Microsoft para proporcionarnos esta experiencia, dentro de un Kubernetes completamente normal…

Este post **no pretender ser un tutorial de DevSpaces, **ya que la propia documentación lo explica bastante bien. La idea es intentar ver “como” funciona DevSpaces, más que como lo podemos usar.


Runtimes de contenedores
· ☕ 8 min · ✍️ eiximenis

Una de las preguntas más frecuentes que me hacen sobre contenedores es hasta que punto penalizan el rendimiento. Es una pregunta muy lógica ya que al final los contenedores ofrecen un cierto nivel de aislamiento, parecen máquinas virtuales… Algo han de penalizar, ¿no?. En esta entrada voy a hablar de los runtimes de contenedores, para que entendamos un poco más qué significa ejecutar un contenedor.


HttpClient en C# y servicios de Docker escalados.
· ☕ 11 min · ✍️ eiximenis

En este post vamos a ver como escalar servicios, tanto en Compose, como en Swarm como en Kubernetes y luego veremos algunas consideraciones cuando usemos HttpClient desde el cliente al acceder a un servidor escalado.

Nos centramos en el escenario de escalado básico, es decir, sin demasiada lógica.

[Autobombo]: Si estás interesado en temas de Docker y Kubernetes, échale un vistazo a mi curso de Docker y Kubernetes en CampusMVP.


Monitorizando nuestros servicios en Kubernetes con Beatpulse
· ☕ 8 min · ✍️ eiximenis

Disclaimer: En ese post hablo de una librería (Beatpulse) de la que soy contribuidor (lo aclaro, para que no haya ningún malentendido).

En todo sistema distribuído es importante disponer de un mecanismo que permita saber en todo momento si un servicio está funcionando o no. Es cierto que el concepto de “funcionando” es algo difuso de definir, pero yendo a mínimos deberíamos saber si un sistema se ha caído o no.


Tip: Acceder a Minikube desde WSL
· ☕ 2 min · ✍️ eiximenis

Hoy me han preguntado eso, así que mira, aprovecho para apuntarlo aquí, por si alguien más tiene esta duda.

La situación es la siguiente: tienes minikube instalado y funcionando en Windows, pero quieres usarlo desde un kubectl ejecutándose en un terminal WSL. ¿Es posible?


Añadir soporte TLS a tu Kubernetes en Azure con Let's Encrypt
· ☕ 7 min · ✍️ eiximenis

¡Buenas! En este post vamos a ver como añadir soporte TLS a tu clúster de Kubernetes desplegado en ACS o AKS. Hace tiempo escribí un post sobre como añadir certificados de desarrollo a un servicio NGINX que tuvieses en Kubernetes. Aunque lo dicho en aquel post sigue siendo válido, hay una manera mucho más sencilla con la condición de que usemos ingress para exponer nuestros servicios al exterior.

En este post parto de la suposición de que:

  1. Tienes un clúster de Kubernetes en ACS/AKS y kubectl configurado para atacar a él
  2. Tienes el controlador ingress de NGINX instalado en el clúster exponiendo cualquier servicio

Es decir, haciendo http://IP-CLUSTER/servicio obtienes alguna respuesta. Lo que queremos es poder usar https en su lugar.


Kubernetes (3) – Controladores Ingress
· ☕ 6 min · ✍️ eiximenis

Seguimos con esta serie de posts sobre Kubernetes. Los posts anteriores:

  1. Componentes de Kubernetes (donde vimos los distintos componentes de Kubernetes y como usar Minikube para ejecutarlo en local).
  2. Modelo de aplicación (donde vimos como crear nuestra primera aplicación en k8s).

En este tercer post veremos que son los recursos ingress y los controladores ingress y que ventajas nos aportan.