Archivo de la categoría: Azure

Creando un clúster Hadoop en HDInsight – Parte 2

Como vimos en la primera parte, tenemos varias formas de crear nuestro clúster Hadoop en HDInsight.

En este post veremos cómo crearlo desde código .NET y desde PowerShell.

Crear el clúster desde código C#, con el SDK de HDInsight

Paso 1: Instalar los paquetes NuGet necesarios

Para crear nuestro clúster desde C# primero deberemos instalar el paquete NuGet de administración de HDInsight. Sigue leyendo

Anuncios

Recibiendo notificaciones de deploys de Azure Web Apps en Slack

Introducción

El servicio de Azure Web Apps tiene una gran funcionalidad: implementación contínua (continuous deployment), desde diferentes tipos de repositorios: Visual Studio Online, OneDrive, un repositorio local Git, GitHub, Bitbucket, Dropbox, o un repositorio externo. También tenemos alertas incorporadas, pero no notificaciones de las implementaciones. Ahí es cuando vienen al rescate los Web Hooks de Kudu.

Pero primero, ¿qué es Kudu?

Project Kudu es un proyecto open source, hosteado en GitHub, que es el motor detrás de las implementaciones desde Git/Mercurial, WebJobs, y varias otras cosas en Azure Web Apps. Y además, también puede correr fuera de Azure.

¿Qué son los Web Hooks?

Un Web Hook es un callback HTTP: un HTTP POST que ocurre cuando sucede algo; una simple notificación de evento vía HTTP POST. Los Web Hooks son una manera de recibir información valiosa cuando sucede, en vez de estar continuamente pidiendo datos sin estar recibiendo nada valioso la mayor parte del tiempo.

¿Cómo integramos?

En Nubimetrics, como en muchas otras startups, usamos Slack como medio de comunicación entre los miembros del equipo. Slack provee integración con otras aplicaciones y servicios, como GitHub, Bitbucket, Trello, Asana, JIRA, Google+ Hangouts, Google Drive, Dropbox y Visual Studio Online, por nombrar algunas (si estás interesado en conocer sobre el resto de las integraciones disponibles puedes visitar https://slack.com/integrations).

Pero, como verán en la lista, no hay una integración nativa con Kudu, pero aquí vienen nuevamente los Web Hooks al rescate! Slack soporta web hooks de entrada como una forma para otras aplicaciones de postear información a Slack.

Y, para hacer las cosas aún más fáciles, hay una aplicación hosteada en GitHub, escrita en Node.js y que corre en Azure, que hace esta tarea.

Todo lo que necesitamos hacer es:

  1. Ir a la configuración de nuestro equipo en Slack y configurar una integración de webhook de entrada.
  2. Implementar la aplicación desde el botón deploy.
  3. Configurar una variable de entorno llamada slackhookuri con el valor de la URI del Paso 1.
  4. Agregar la URI de nuestra Web App en los Web Hooks del portal de Kudu, al que podemos acceder desde https://{tu azure web app}.scm.azurewebsites.net/WebHooks.
  5. Y listo!!!

Conclusión

Los Web Hooks nos proveen una forma sencilla de integrar aplicaciones web. Usando simples web requests con contenido JSON podremos integrar casi cualquier cosa!

@gjbellmann

Creando un clúster Hadoop en HDInsight – Parte 1

Para crear un clúster Hadoop en HDInsight tenemos varias opciones:

  • Crear el clúster desde el portal viejo.
  • Crear el clúster desde el portal nuevo.
  • Crear el clúster desde código C#, con el SDK de HDInsight.
  • Crear el clúster mediante un script de Azure PowerShell, desde Windows.
  • Crear el clúster mediante la Azure CLI, desde Linux o MacOS.

Con todas ellas estaremos creando un cluster Hadoop con la configuración básica. Sigue leyendo

Big data: Introducción a HDInsight

¿Qué es HDInsight?

HDInsight es un servicio de Microsoft Azure que nos provee una plataforma de big data como servicio. Esto es, Microsoft se hace cargo de mantener los servidores y de actualizar la plataforma, y nosotros creamos el software que corre sobre ella, y pagamos por el uso que hacemos del servicio.

HDInsight usa la distribución Hadoop Hortonworks Data Platform (HDP). Normalmente, cuando hablamos de Hadoop, solemos referirnos al ecosistema de componentes Hadoop completo, que incluye clusters Storm o HBase, así como de otras tecnologías que están debajo del paraguas de Hadoop.

¿Qué es big data?

Seguramente habrán escuchado últimamente el término big data, y se preguntarán de qué se trata. Sigue leyendo

Asignando un nombre personalizado a instancias de Cloud Services

El nombre por defecto

Quienes revisen los logs de conexiones a la base de datos SQL o usan herramientas como New Relic para monitorear sus aplicaciones corriendo sobre Cloud Services seguramente habrán visto que la lista de servidores sobre los cuales está corriendo la aplicación tiene nombres como “RD000D3A107CFC” (este es el nombre del equipo dentro de la red) . Esto no nos ayuda mucho a identificar cuál de las instancias es la que realizó la conexión o tiene problemas, ya que en el listado de instancias que vemos en el Portal de administración, las instancias tienen el nombre del rol más un número de orden (ej.: CloudService.Web_IN_1). Sigue leyendo

Accediendo a Redis caché desde .NET

Introducción

Al ser un servicio de Microsoft Azure, el servicio de caché en Redis es accesible desde una API REST, pero, ¿para qué tomarnos el trabajo de acceder de esta forma si tenemos disponibles librerías de alto nivel que nos ayudan en esta tarea?

La gente de Stack Exchange (si, los dueños de Stack Overflow) creó una librería, open source y altamente performante, para acceder a Redis (algo que ellos usan mucho para sus propios servicios), llamada StackExchange.Redis. En este post vamos a estar viendo cómo acceder a nuestro servicio de caché en Redis utilizando esta librería.

Para saber como crear el servicio de caché de Redis en Azure, pueden ver mi post de Introducción a Redis Cache. Sigue leyendo

Redis

Introducción a Redis Cache

¿Qué es Redis Cache?

Redis Cache es un servicio de caché distribuido de Microsoft Azure, basado en el proyecto open source Redis. Redis es un repositorio de datos que emplea un sistema de Key-Value para almacenar la información, con la particularidad que los Keys, además de poder ser un string, o hash, pueden ser datos complejos, como listas o conjuntos. Está disponible en dos niveles de servicio:

  • Basic: consta de un nodo. Diferentes tamaños disponibles.
  • Standard: Dos nodos: Maestro/Esclavo. Incluye SLA y replicación. Diferentes tamaños disponibles.

El tamaño máximo disponible, a la hora de escribir este post, es de 53 GB.

¿Por qué debería usarlo?

Sigue leyendo