Obtener la dirección IP del cliente en AKS con .Net Core y NGNIX
Obtener la IP del cliente es algo imprescindible en muchas aplicaciones, para capturar ese valor en la telemetría, o para intentar saber desde qué país se está conectando el usuario. Sea como sea, si desplegáis una aplicación .Net Core en AKS y usáis un ingress NGINX, sin ninguna modificación, veréis que la dirección IP del cliente no es la que os esperábais.
Cómo usar Kubernetes para ejecutar código antiguo en Windows (II)
En el capítulo anterior ensamblamos un contenedor Docker para ejecutar una aplicación servidor escrita en VB6. Hoy vamos a utilizar este contenedor en un clúster de Kubernetes desplegado en Azure usando el servicio AKS.
Cómo usar Kubernetes para modernizar aplicaciones Windows (I)
Vamos a ver en una serie de (4) 5 capítulos cómo podemos aprovechar las prácticas más modernas de contenedores para sacar el último aliento a esas aplicaciones antiguas que quizá tengamos ejecutándose en nuestros sistemas.
Si hacemos un inventario de las aplicaciones servidor que tenemos en nuestros servidores Windows, en los mejores casos serán aplicaciones web ejecutándose en un IIS que podríamos migrar con alguna herramienta semi-automática, pero en muchos otros casos no será tan fácil. Hace poco me encontré con el caso de un servidor TCP/IP escrito en VB6 que se desplegaba en unos cuantos cientos de máquinas virtuales. A priori, parece que para modernizar esta aplicación a un entorno de contenedores tendremos que reescribir el código. Seguramente, desde el punto de vista de desarrollo y mantenimiento de la solución, sería la mejor opción, pero todo es cuestión de encontrar los compromisos adecuados entre lo que nos exige el negocio y la capacidad que tenemos en el equipo. En este caso, tener un paso intermedio en el que podemos ahorrarnos montones de máquinas virtuales, desplegando en su lugar contenedores es una buena opción, y así damos más tiempo al equipo de desarrollo para que pueda volver a escribir toda la lógica de esa aplicación.
Cómo usar las cámaras Unifi en Home Assistant tras la obsolescencia de su NVR
Unifi descatalogó su Network Video Recorder (NVR) en favor del nuevo sistema Unifi Protect, y para éste último ya no proporcionan un instalador que podamos instalar en nuestro propio sistema, como hacían antes con Unifi Video. Ahora sólo lo proporcionan junto con su hardware. Como nosotros acabábamos de renovar el hardware donde instalamos el Home Assistant y unas cuantas cosas más para nuestra red local, no nos apetece comprar un hardware que en realidad no necesitamos, así que hoy aprenderemos a instalar un NVR y fijar la instalación de Java a la versión donde funciona ese software en un Ubuntu 20.10.
Crear y ejecutar pipelines desde otro pipeline en Azure DevOps
Si os habéis encontrado con la necesidad de crear y ejecutar pipelines de Azure DevOps (ADO) desde una pipeline, existe una extensión de devops para el az CLI que nos permitirá hacer esto, aunque tendremos que preparar un poco el proyecto de ADO antes. A día de hoy todavía es una característica en preview, así que puede que algo de lo que describa aquí sufra cambios antes de estar en disponibilidad general.
El primer detalle que debemos conocer es que hay una sutil diferencia entre el archivo de definición de la pipeline, que es un archivo yaml, con la pipeline que se va a ejecutar, que se define normalmente a través de la consola web de ADO, o se pueden también crear desde el CLI o la API REST.
Reconectar la conexión WiFi automáticamente en Raspbian Buster
Cómo montar un servicio de videochat
Desplegar un blog HUGO en Azure Static Web App
El pasado día 19, mientras estaba mirando la presentación de las Static Web App en el Microsoft Build, se me ocurrió hacer una prueba con HUGO para ver si soy capaz de retomar mi blog tras 5 años de inactividad.
TL;DR: Static Web Apps te permite desplegar contenido estático y asignarle un dominio, Azure Web Apps se encarga del resto: creación de una GitHub Action para despliegue continuo, SSL para nuestro dominio personalizado, distribución global y llamar a alguna Azure Function si hace falta alguna pequeña parte dinámica vía API. Y lo mejor de todo es que es GRATIS, incluso el certificado SSL para tu sitio que se renovará automáticamente.