Inspired by one of the Windows Azure gods (Wade Wegner), Maarten decided to order a homebrewing starter kit. Being a total cloud fanboy, he decided to hook those delicious creations to the cloud. Join Maarten and discover how you can connect a USB temperature sensors to Windows Azure to monitor brewing and fermentation temperatures. He'll show you how to do distributed brewing in this fun yet practical session on an interesting use case for the cloud: beer.
1. #comdaybe
Brewing Beer
with Windows Azure
AZUG
Maarten Balliauw
Panagiotis “ “ Kefalidis
2.
3. Who am I?
• Maarten Balliauw
• Antwerp, Belgium
• www.realdolmen.com
• Focus on web
– ASP.NET MVC, Windows Azure, SignalR, ...
– MVP Windows Azure & ASPInsider
• http://blog.maartenballiauw.be
• @maartenballiauw
• Author: Pro NuGet - http://amzn.to/pronuget
4. Who am I?
• Panagiotis “Panos” Kefalidis
• www.devoteam.com
• Windows Azure MVP
• SOA/.NET Architect
• http://www.kefalidis.me
• @pkefal
5. Agenda
• Brewing beer
• BrewBuddy
• Windows Azure Websites
• Service Bus & Access Control Service
• Q&A
8. How we got started…
• MVP Summit 2011
– Wade Wegner tells us about his hobby
• MVP Summit 2012
– Wade Wegner tells us about his hobby
• We nodded at each other
9. The process
• Get your kegs clean
• Add & cook ingredients
• Pour in keg
• Add yeast
• Rinse
17. Architecture
Sensor Public website
Windows Azure Web Sites
Whatever…
Database
SQL Azure database
Sensor data Sensor data processing
Service Bus topic Windows Azure Worker Role
19. Windows Azure Web Sites
Build with ASP.NET, Node.js or PHP
Deploy in seconds with FTP, Git or TFS
Start for free, scale up as your traffic
grows
29. Characteristics
• Workers can scale independently
– Loosely coupled architecture
• Sensors connect to service bus
directly
– No layer in between
30. What about authN / authZ?
• Access Control Service to the rescue!
• SB authenticates clients over ACS
• ACS provides “Send” claim to sensor
• Claims can be granted/revoked easily
32. Architecture
Sensor Public website
Windows Azure Web Sites
Whatever…
Sensor management Database
Access Control Service SQL Azure database
Sensor data Sensor data processing
Service Bus topic Windows Azure Worker Role
33. How do you link a sensor?
• Every sensor has its sensor ID
• Add it as an identity to ACS
• Grant a “Send” claim
34. Linking a sensor toAccess Control
Registering a sensor with a brew
Service
demo
35. A step further!
• Custom application
• Consume the data from devices
• Exchange information with the app
• In other words, an API
36. ASP.NET MVC Web API
• <frenglish>Being h-appy about the
API </frenglish>
• Use it to build your public API
• Secure it using claims from ACS
37. ASP.NET MVC Web API
• Easy to add, it’s just a another project
• Supports all cool stuff, like JSON,
XML etc.
• It’s MVC, that means awesome!
41. Keep in mind…
• Web Sites start cheap / scale fast
• Combine at will (IaaS, PaaS, SaaS)
• Service bus for asynchrony and scale
• Access Control for devices
• Web API
Don’t show everythingyet. Just log in, show themaround the recipes, brewsand public recipes. Feel free to show the monitoring but no needto display the linking of sensors.
Show Windows Azure Web SitesShow scaling / reservedinstances
Show peoplearound the ACS porta. Show identities, claims andrulegroups.
Link a sensor to a brew. Show the effect on ACS. Show the code.