SlideShare une entreprise Scribd logo
1  sur  21
.NET Core, Azure Relay hybrid
connections y una Raspberry Pi
Rodrigo Cabello - @mrcabellom
Carlos Landeras - @Carlos_Lande
Quiénes somos
Manuel Rodrigo Cabello Malagón
Software Engineer at Plain Concepts
@mrcabellom
mrcabellom@gmail.com
Carlos Landeras Martínez
Software Engineer at Plain Concepts
@carlos_lande
carlos.landeras@gmail.com
Azure Relay
• Introducción
• Conexiones híbridas en Azure
• Roles y protocolos de conexión
• Demo
Azure Web App
• Visual Studio Team Services (CI Deployment)
• Configuración Web App Node.js
NET Core ARM
• Raspberry Pi
Demo Twitter App real-time
AZURE RELAY
Azure Relay
• Azure Relay es uno de los pilares de la
plataforma Azure Service Bus.
• Permite exponer servicios de redes
corporativas en la nube (Sin realizar
cambios intrusivos o abrir nuevas
conexiones en el firewall).
• Azure Relay cuenta con dos servicios:
• Conexiones híbridas: Websockets
• WCF Relays: Windows Communication Foundation (WCF).
• Conexiones híbridas:
• Evolución segura y de protocolo abierto. Basada en WebSockets y Http.
• Sustituye a la antigua característica de BizTalk Services.
AZURE RELAY
Introducción
• Permite establecer una comunicación bidireccional entre dos aplicaciones
utilizando un streaming binario.
• Se puede configurar fácilmente a través del portal de Azure.
• Mecanismo de autenticación basado en SHA-256.
• Azure Relay permite hasta 25 clientes con el Rol de Agente de escucha.
• Librerías disponibles para:
• .NET Framework, .NET Core
• Node.js
AZURE RELAY
Introducción
• Creando nuestro namespace de Relay
1. Añadimos un nuevo recurso Relay en Azure.
2. Seleccionamos nuestro nombre de enpoint (*.servicebus.windows.net)
3. Seleccionamos la localización del rendezvous point.
AZURE RELAY
Conexiones híbridas en Azure
• Creando una conexión híbrida
1. Seleccionamos el identificador de nuestra conexión.
1. Elegimos si la conexión será autenticada.
2. Creamos las políticas de acceso compartidas.
3. Cada política tiene su propia clave primaria.
AZURE RELAY
Conexiones híbridas en Azure
• Roles de Agente de escucha y Remitente.
• Conexiones mediante Web Sockets Secure (443).
wss://{namespace}/$hc/{name}?sb-hc-action=…&sb-hc-token=
AZURE RELAY
Roles y protocolos de conexión
Demo Azure Relay
DEMO AZURE RELAY
Arquitectura Demo
Azure Web App
Visual Studio Online Relay
• Visual Studio Team Services ofrece un conjunto de herramientas de colaboración
con tecnología de la nube, para que un equipo pueda trabajar de manera eficiente
en proyectos de software.
AZURE WEB APP
Visual Studio Team Services
(CI Deployment)
web.config de la aplicación:
•
•
•
•
•
Configuración de WebApp
•
•
AZURE WEB APP
Configuración Web App Node.js
.NET Core ARM
Configurando el entorno para trabajar con la línea de comandos
• Si tenemos varios SDK instalados, tenemos que añadir como target la version del sdk
2.0.0
• Comprobamos que nuestro proyecto tiene como target dicha versión ejecutando el
commando dotnet –version dentro de la carpeta de la solución
Publicando el Proyecto con la línea de commandos
Para publicar nuestro proyecto ejecutamos:
dotnet publish -c Release –r linux-arm
.NET Core ARM
dotnet-cli
• Raspbian Linux OS
• Dotnet runtime 2.0.0
> sudo apt-get install curl libunwind8 gettext
> curl -sSL -o dotnet.tar.gz
https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest-
linux-arm.tar.gz
> sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet
> sudo ln -s /opt/dotnet/dotnet /usr/local/bin
• Ejecutar dotnet AzureRelay.dll
.NET Core ARM.NET Core ARM
Raspbian ARM Raspberry-Pi
Arquitectura demo
Azure Relay .Net Core y una Raspberry Pi
Azure Relay .Net Core y una Raspberry Pi

Contenu connexe

Tendances

Presentacion taller de programacion
Presentacion taller de programacionPresentacion taller de programacion
Presentacion taller de programacion
SaulSoto19
 

Tendances (20)

Cómo empezar con Amazon EKS
Cómo empezar con Amazon EKSCómo empezar con Amazon EKS
Cómo empezar con Amazon EKS
 
Trabajando con MySQL y PostgreSQL dentro de azure
Trabajando con MySQL y PostgreSQL dentro de azureTrabajando con MySQL y PostgreSQL dentro de azure
Trabajando con MySQL y PostgreSQL dentro de azure
 
Microservicios en Azure Service Fabric
Microservicios en Azure Service FabricMicroservicios en Azure Service Fabric
Microservicios en Azure Service Fabric
 
Azure Bootcamp 2017 - Azure functions
Azure Bootcamp 2017 - Azure functionsAzure Bootcamp 2017 - Azure functions
Azure Bootcamp 2017 - Azure functions
 
Azure BootCamp 2017 Madrid
Azure BootCamp 2017 MadridAzure BootCamp 2017 Madrid
Azure BootCamp 2017 Madrid
 
.Net Conf UY 2017: Un paseo por Azure Service Fabric
.Net Conf UY 2017: Un paseo por Azure Service Fabric.Net Conf UY 2017: Un paseo por Azure Service Fabric
.Net Conf UY 2017: Un paseo por Azure Service Fabric
 
Azure | Azure 360: Directory Services & Azure Active Directory Solutions - 24...
Azure | Azure 360: Directory Services & Azure Active Directory Solutions - 24...Azure | Azure 360: Directory Services & Azure Active Directory Solutions - 24...
Azure | Azure 360: Directory Services & Azure Active Directory Solutions - 24...
 
Plainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time ApplicationsPlainconcepts .Net Core Event - Real Time Applications
Plainconcepts .Net Core Event - Real Time Applications
 
Azure Functions
Azure FunctionsAzure Functions
Azure Functions
 
Buscando a gran velocidad con Azure Search
Buscando a gran velocidad con Azure SearchBuscando a gran velocidad con Azure Search
Buscando a gran velocidad con Azure Search
 
Escribiendo funciones con Azure Functions
Escribiendo funciones con Azure FunctionsEscribiendo funciones con Azure Functions
Escribiendo funciones con Azure Functions
 
Entendiendo Iaas/Paas/Saas en Azure
Entendiendo Iaas/Paas/Saas en AzureEntendiendo Iaas/Paas/Saas en Azure
Entendiendo Iaas/Paas/Saas en Azure
 
Arquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web DayArquitectura de web components - Plain Concepts Web Day
Arquitectura de web components - Plain Concepts Web Day
 
Presentacion taller de programacion
Presentacion taller de programacionPresentacion taller de programacion
Presentacion taller de programacion
 
Webinar –Desplegar Hypervisores en servidores dedicados
Webinar –Desplegar Hypervisores en servidores dedicadosWebinar –Desplegar Hypervisores en servidores dedicados
Webinar –Desplegar Hypervisores en servidores dedicados
 
Springboard Series Spain 2011 - Direct Access - Fernando Guillot
Springboard Series Spain 2011 - Direct Access - Fernando GuillotSpringboard Series Spain 2011 - Direct Access - Fernando Guillot
Springboard Series Spain 2011 - Direct Access - Fernando Guillot
 
Qué es la informática en la nube
Qué es la informática en la nubeQué es la informática en la nube
Qué es la informática en la nube
 
Microsoft Summit 2016 - Migrando IaaS Clásico a Azure Resource Manager ARM
Microsoft Summit 2016 - Migrando IaaS Clásico a Azure Resource Manager ARMMicrosoft Summit 2016 - Migrando IaaS Clásico a Azure Resource Manager ARM
Microsoft Summit 2016 - Migrando IaaS Clásico a Azure Resource Manager ARM
 
Webinar –Conectar servidores dedicados con Servidores Cloud
Webinar –Conectar servidores dedicados con Servidores CloudWebinar –Conectar servidores dedicados con Servidores Cloud
Webinar –Conectar servidores dedicados con Servidores Cloud
 
[Code Camp 2009] Cómo sacar provecho de IIS 7.5 (Carlos Walzer)
[Code Camp 2009] Cómo sacar provecho de IIS 7.5 (Carlos Walzer)[Code Camp 2009] Cómo sacar provecho de IIS 7.5 (Carlos Walzer)
[Code Camp 2009] Cómo sacar provecho de IIS 7.5 (Carlos Walzer)
 

Similaire à Azure Relay .Net Core y una Raspberry Pi

Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011
Gisela Torres
 

Similaire à Azure Relay .Net Core y una Raspberry Pi (20)

.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real.NET Core en mi Raspberry Pi y una aplicación en tiempo real
.NET Core en mi Raspberry Pi y una aplicación en tiempo real
 
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo CabelloRealtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
Realtime Apps en .NET Core by Carlos Landeras y Manuel Rodrigo Cabello
 
Introducción a Azure App Service - MUG Buenos Aires
Introducción a Azure App Service - MUG Buenos AiresIntroducción a Azure App Service - MUG Buenos Aires
Introducción a Azure App Service - MUG Buenos Aires
 
Autobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure RelayAutobuses de Madrid en tiempo real con Azure Relay
Autobuses de Madrid en tiempo real con Azure Relay
 
Global DevOps Boot Camp CDMX 2018 - DevOps + Team services + azure rm templates
Global DevOps Boot Camp CDMX 2018 -  DevOps + Team services + azure rm templatesGlobal DevOps Boot Camp CDMX 2018 -  DevOps + Team services + azure rm templates
Global DevOps Boot Camp CDMX 2018 - DevOps + Team services + azure rm templates
 
Descubriendo windows azure
Descubriendo windows azureDescubriendo windows azure
Descubriendo windows azure
 
Un ciclo "casi" completo on Azure DevOps
Un ciclo "casi" completo on Azure DevOpsUn ciclo "casi" completo on Azure DevOps
Un ciclo "casi" completo on Azure DevOps
 
Azure functions
Azure functionsAzure functions
Azure functions
 
SQL Server 2014 infraestructura hibrida y nube
SQL Server 2014 infraestructura hibrida y nubeSQL Server 2014 infraestructura hibrida y nube
SQL Server 2014 infraestructura hibrida y nube
 
Comenzando con la nube híbrida
Comenzando con la nube híbridaComenzando con la nube híbrida
Comenzando con la nube híbrida
 
Azure
AzureAzure
Azure
 
Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011Descubriendo Windows Azure Platform 16-02-2011
Descubriendo Windows Azure Platform 16-02-2011
 
Microsoft azure presentacion
Microsoft azure presentacionMicrosoft azure presentacion
Microsoft azure presentacion
 
Pruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOpsPruebas de integración con Docker en Azure DevOps
Pruebas de integración con Docker en Azure DevOps
 
Cloud Computing VS SOA
Cloud Computing VS SOACloud Computing VS SOA
Cloud Computing VS SOA
 
Azure | Open Source in Azure Overview - 30/11/2017
Azure | Open Source in Azure Overview - 30/11/2017Azure | Open Source in Azure Overview - 30/11/2017
Azure | Open Source in Azure Overview - 30/11/2017
 
microsoft azure presentacion
microsoft azure presentacionmicrosoft azure presentacion
microsoft azure presentacion
 
Azure Express Route
Azure Express RouteAzure Express Route
Azure Express Route
 
Net Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptxNet Maui Blazor Jornada ASP Net en Español.pptx
Net Maui Blazor Jornada ASP Net en Español.pptx
 
Corriendo SQL Server en Docker
Corriendo SQL Server en DockerCorriendo SQL Server en Docker
Corriendo SQL Server en Docker
 

Plus de Manuel Rodrigo Cabello Malagón (7)

MLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptxMLOPS_GlobalAI2023.pptx
MLOPS_GlobalAI2023.pptx
 
GlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptxGlobalAIObjectDetection.pptx
GlobalAIObjectDetection.pptx
 
pydataPointCloud.pptx
pydataPointCloud.pptxpydataPointCloud.pptx
pydataPointCloud.pptx
 
Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#Deep Learning para Desarrolladores C#
Deep Learning para Desarrolladores C#
 
Deep Learning, Python, C# y Azure
Deep Learning, Python, C# y AzureDeep Learning, Python, C# y Azure
Deep Learning, Python, C# y Azure
 
Web Day Devops - Plain Concepts
Web Day Devops - Plain ConceptsWeb Day Devops - Plain Concepts
Web Day Devops - Plain Concepts
 
Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)Machine Learning for Developers (PyConEs2017)
Machine Learning for Developers (PyConEs2017)
 

Dernier

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
FagnerLisboa3
 

Dernier (11)

Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 

Azure Relay .Net Core y una Raspberry Pi

  • 1.
  • 2. .NET Core, Azure Relay hybrid connections y una Raspberry Pi Rodrigo Cabello - @mrcabellom Carlos Landeras - @Carlos_Lande
  • 3. Quiénes somos Manuel Rodrigo Cabello Malagón Software Engineer at Plain Concepts @mrcabellom mrcabellom@gmail.com Carlos Landeras Martínez Software Engineer at Plain Concepts @carlos_lande carlos.landeras@gmail.com
  • 4. Azure Relay • Introducción • Conexiones híbridas en Azure • Roles y protocolos de conexión • Demo Azure Web App • Visual Studio Team Services (CI Deployment) • Configuración Web App Node.js NET Core ARM • Raspberry Pi Demo Twitter App real-time AZURE RELAY
  • 6. • Azure Relay es uno de los pilares de la plataforma Azure Service Bus. • Permite exponer servicios de redes corporativas en la nube (Sin realizar cambios intrusivos o abrir nuevas conexiones en el firewall). • Azure Relay cuenta con dos servicios: • Conexiones híbridas: Websockets • WCF Relays: Windows Communication Foundation (WCF). • Conexiones híbridas: • Evolución segura y de protocolo abierto. Basada en WebSockets y Http. • Sustituye a la antigua característica de BizTalk Services. AZURE RELAY Introducción
  • 7. • Permite establecer una comunicación bidireccional entre dos aplicaciones utilizando un streaming binario. • Se puede configurar fácilmente a través del portal de Azure. • Mecanismo de autenticación basado en SHA-256. • Azure Relay permite hasta 25 clientes con el Rol de Agente de escucha. • Librerías disponibles para: • .NET Framework, .NET Core • Node.js AZURE RELAY Introducción
  • 8. • Creando nuestro namespace de Relay 1. Añadimos un nuevo recurso Relay en Azure. 2. Seleccionamos nuestro nombre de enpoint (*.servicebus.windows.net) 3. Seleccionamos la localización del rendezvous point. AZURE RELAY Conexiones híbridas en Azure
  • 9. • Creando una conexión híbrida 1. Seleccionamos el identificador de nuestra conexión. 1. Elegimos si la conexión será autenticada. 2. Creamos las políticas de acceso compartidas. 3. Cada política tiene su propia clave primaria. AZURE RELAY Conexiones híbridas en Azure
  • 10. • Roles de Agente de escucha y Remitente. • Conexiones mediante Web Sockets Secure (443). wss://{namespace}/$hc/{name}?sb-hc-action=…&sb-hc-token= AZURE RELAY Roles y protocolos de conexión
  • 14. Visual Studio Online Relay • Visual Studio Team Services ofrece un conjunto de herramientas de colaboración con tecnología de la nube, para que un equipo pueda trabajar de manera eficiente en proyectos de software. AZURE WEB APP Visual Studio Team Services (CI Deployment)
  • 15. web.config de la aplicación: • • • • • Configuración de WebApp • • AZURE WEB APP Configuración Web App Node.js
  • 17. Configurando el entorno para trabajar con la línea de comandos • Si tenemos varios SDK instalados, tenemos que añadir como target la version del sdk 2.0.0 • Comprobamos que nuestro proyecto tiene como target dicha versión ejecutando el commando dotnet –version dentro de la carpeta de la solución Publicando el Proyecto con la línea de commandos Para publicar nuestro proyecto ejecutamos: dotnet publish -c Release –r linux-arm .NET Core ARM dotnet-cli
  • 18. • Raspbian Linux OS • Dotnet runtime 2.0.0 > sudo apt-get install curl libunwind8 gettext > curl -sSL -o dotnet.tar.gz https://dotnetcli.blob.core.windows.net/dotnet/Runtime/release/2.0.0/dotnet-runtime-latest- linux-arm.tar.gz > sudo mkdir -p /opt/dotnet && sudo tar zxf dotnet.tar.gz -C /opt/dotnet > sudo ln -s /opt/dotnet/dotnet /usr/local/bin • Ejecutar dotnet AzureRelay.dll .NET Core ARM.NET Core ARM Raspbian ARM Raspberry-Pi