SlideShare a Scribd company logo
Kudu Voodoo
–Project Kudu Overview & Advanced Azure Web Apps
Features
Azure Dublin Meetup | Feb 2016
Aidan Casey |Microsoft Azure MVP| @AIDANJCASEY
Azure Web Apps
• PaaS – fully managed web application hosting
• Supports .NET, Java, PHP, Node.js, and Python
• Autoscale and load balancing
• High availability with auto patching
• Continuous deployment with Git, TFS, GitHub, Dropbox, and Visual Studio
Team Services
• Many ways to work with the platform - Azure Portal, Azure CLI, Azure
SDK’s
Project Kudu
• Open source .NET Foundation https://github.com/projectkudu/kudu
• Powers deployments for
 WebApps / WebSites
 WebJobs
 Mobile Services
• Can also run outside of Azure
• Git deployments
• Configurable build steps
• Sandboxing
• Hosting & Metering
• Diagnostic tools & API’s
Architecture…
http://www.slideshare.net/kashifx/azure-websites-40718659
Azure
LB
Runtime
DB
Storage
Controller
IIS ARR
(LB)
Web Worker
Other
databases
1st request (cold site)
Storage
Controller
IIS ARR
(LB)
Web Worker
Other
databases
xth request (hot site)
Azure
LB
Service Plans and Features
free shared basic standard Premium
When to use spikes ,
goofing around
dev - test with
SSL
production
low traffic
workloads
production
with advanced
autoscale &
traffic
management
production
more advances
– biztalk
connectors etc
# cores Shared, 60
mins CPU per
day
shared, 240
mins CPU per
day
1-4 1-4 1-8
RAM 1GB .5GB 1.75-7GB 1.75-7GB 1.75-14GB
SLA 99.95% 99.95% 99.95%
custom domain
& certs
no yes yes yes yes
Remote
profiling
no no no yes yes
Deployment Slots
• Standard and Premium Mode Only
• Hot swap with no requests dropped
• Custom warm up application hooks
• Rollback
• AppSettings can be made slot specific
• Can configure auto swapping
• % traffic routing via Azure Traffic Routing
Demo
zero downtime with deployment
slots
Auto Healing
• Standard and Premium Mode Only
• Auto detect certain conditions and automatically recover
- Recycle based on Request Count
- Recycling based on slow requests
- If you have multiple instances of your web site, it will only restart the
worker process for the instance that has hit this trigger and not all
instances.
Application Log Streaming
• 3 types of logs
 Detailed Error Logging
 Failed Request Tracing
 Web Server Logging (W3C extended log format)
• Can log to the file system (rolling files) , table storage or blob storage
• When you enable application logging in azure websites its on for 12 hours….
Demo
log tailing from the Azure CLI
Kudu Site
{yoursite}.scm.azurewebsites.net
• The Kudu site runs in the same sandbox as your real site. This has some
important implications
• It cannot do anything that the site itself wouldn't be able to do itself
• It shares the same quotas as the site. That is, the CPU/RAM/Disk used by
the Kudu service is counted toward the site's quota
• It relies on the security model of the Azure Web Site runtime
Kudu Console & API
both command line and file browser access to your sites
• Diagnostic dumps
• Process Explorer
• WebHooks
• File Explorer
• Site Extensions
• Runtime Environment & Variables
Demo
post deployment webhooks
Demo
remote profiling a .NET Web
App
Demo
remote debugging a .NET Web
App
Customising the deployment pipeline
The Azure CLI command “$ azure site deploymentscript ” generates
deployment scripts that are used by kudu, you can customise these files
• .deployment file
 [config]
command=<whatever command>
• Write in batch file, bash script, PHP, JavaScript, …
 Can do things like
 download extra tools
 pull in external repos / packages
 shell out to command line tools ( msbuild, nugget, curl etc)
Demo
running unit tests in Azure as
part of a deployment pipeline
Site Extensions
• Add additional tools to your website
• Install site extensions through the portal or the kudu site
• Site Extension Gallery : http://www.siteextensions.net
• Build & publish your own !
Demo
Using site extensions -visual
studio online monaco code
editor
Best Practices
• Autoscale on & Stick sessions off
• Back up your database
• Load test before going live
• Configure automatic failover using Azure Global Traffic Manager
• Automate deployments using slots
• Test site recovery
• Use azure resource groups
• Set billing alerts
• Bundle & minify web resources
• Use Azure CDN to edge cache static files
• Implement the appropriate DB retry policies
Key Takeaways
• Azure Web Apps features- deploy slots, hot swapping, auto scaling, git
deployments , customisable pipeline, remote profiling, site extensions
• Your Web App is only loaded into IIS when its in use
• Kudu is the open source deployment engine behind web apps
• Advanced support for .NET apps via remote profiling and remote debugging
• No SLA availale for basic of free tier offering
Kudu voodoo   slideshare
Ad

More Related Content

What's hot (20)

Serverless: The future of application delivery
Serverless: The future of application deliveryServerless: The future of application delivery
Serverless: The future of application delivery
Doug Vanderweide
 
Container Patterns
Container PatternsContainer Patterns
Container Patterns
Matthias Luebken
 
Connect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket PipelinesConnect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket Pipelines
Atlassian
 
Packing It In: Images, Containers and Config Management
Packing It In: Images, Containers and Config ManagementPacking It In: Images, Containers and Config Management
Packing It In: Images, Containers and Config Management
Michael Goetz
 
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learnedRebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Kacper Gunia
 
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Sri Kanth
 
Adopting containers and kubernetes in production
Adopting containers and kubernetes in productionAdopting containers and kubernetes in production
Adopting containers and kubernetes in production
Ta Ching Chen
 
Azure cloud for the web frontend developers
Azure cloud for the web frontend developersAzure cloud for the web frontend developers
Azure cloud for the web frontend developers
Maxim Salnikov
 
Best Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBest Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft Azure
Brian Benz
 
Containerization: The DevOps Revolution
Containerization: The DevOps Revolution Containerization: The DevOps Revolution
Containerization: The DevOps Revolution
SoftServe
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architectures
Benoit Le Pichon
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud Foundry
Emilio Garcia
 
Azure Batch and MPI
Azure Batch and MPIAzure Batch and MPI
Azure Batch and MPI
Martin Abbott
 
Bosh - Configuring Services
Bosh - Configuring ServicesBosh - Configuring Services
Bosh - Configuring Services
Andrew Shafer
 
Going Serverless with Azure Functions
Going Serverless with Azure FunctionsGoing Serverless with Azure Functions
Going Serverless with Azure Functions
Christos Matskas
 
Microservices without servers
Microservices without serversMicroservices without servers
Microservices without servers
99X Technology
 
Serverless in Azure with Functions
Serverless in Azure with FunctionsServerless in Azure with Functions
Serverless in Azure with Functions
Christos Matskas
 
Managing the Infrastructure Stack with PowerShell
Managing the Infrastructure Stack with PowerShellManaging the Infrastructure Stack with PowerShell
Managing the Infrastructure Stack with PowerShell
Josh Atwell
 
Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)
Vincent Biret
 
Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)
Vincent Biret
 
Serverless: The future of application delivery
Serverless: The future of application deliveryServerless: The future of application delivery
Serverless: The future of application delivery
Doug Vanderweide
 
Connect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket PipelinesConnect + Docker + AWS = Bitbucket Pipelines
Connect + Docker + AWS = Bitbucket Pipelines
Atlassian
 
Packing It In: Images, Containers and Config Management
Packing It In: Images, Containers and Config ManagementPacking It In: Images, Containers and Config Management
Packing It In: Images, Containers and Config Management
Michael Goetz
 
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learnedRebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Rebuilding Legacy Apps with Domain-Driven Design - Lessons learned
Kacper Gunia
 
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Run UI Automation Tests using Selenium Grid and Azure Container Service (AKS)
Sri Kanth
 
Adopting containers and kubernetes in production
Adopting containers and kubernetes in productionAdopting containers and kubernetes in production
Adopting containers and kubernetes in production
Ta Ching Chen
 
Azure cloud for the web frontend developers
Azure cloud for the web frontend developersAzure cloud for the web frontend developers
Azure cloud for the web frontend developers
Maxim Salnikov
 
Best Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft AzureBest Practices for couchDB developers on Microsoft Azure
Best Practices for couchDB developers on Microsoft Azure
Brian Benz
 
Containerization: The DevOps Revolution
Containerization: The DevOps Revolution Containerization: The DevOps Revolution
Containerization: The DevOps Revolution
SoftServe
 
Azure serverless architectures
Azure serverless architecturesAzure serverless architectures
Azure serverless architectures
Benoit Le Pichon
 
Microservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud FoundryMicroservices, Spring Cloud & Cloud Foundry
Microservices, Spring Cloud & Cloud Foundry
Emilio Garcia
 
Bosh - Configuring Services
Bosh - Configuring ServicesBosh - Configuring Services
Bosh - Configuring Services
Andrew Shafer
 
Going Serverless with Azure Functions
Going Serverless with Azure FunctionsGoing Serverless with Azure Functions
Going Serverless with Azure Functions
Christos Matskas
 
Microservices without servers
Microservices without serversMicroservices without servers
Microservices without servers
99X Technology
 
Serverless in Azure with Functions
Serverless in Azure with FunctionsServerless in Azure with Functions
Serverless in Azure with Functions
Christos Matskas
 
Managing the Infrastructure Stack with PowerShell
Managing the Infrastructure Stack with PowerShellManaging the Infrastructure Stack with PowerShell
Managing the Infrastructure Stack with PowerShell
Josh Atwell
 
Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)Vincent biret azure functions and flow (ottawa)
Vincent biret azure functions and flow (ottawa)
Vincent Biret
 
Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)Vincent biret azure functions and flow (toronto)
Vincent biret azure functions and flow (toronto)
Vincent Biret
 

Similar to Kudu voodoo slideshare (20)

What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!
Michael Collier
 
London .NET Developers Azure Websites
London .NET Developers Azure WebsitesLondon .NET Developers Azure Websites
London .NET Developers Azure Websites
Tom Walker
 
Deploying asp.net and mvc applications to azure
Deploying asp.net and mvc applications to azureDeploying asp.net and mvc applications to azure
Deploying asp.net and mvc applications to azure
Glyn Darkin
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup
 
Hidden Gems of Azure Websites: The Secret of Kudu
Hidden Gems of Azure Websites: The Secret of KuduHidden Gems of Azure Websites: The Secret of Kudu
Hidden Gems of Azure Websites: The Secret of Kudu
Juv Chan
 
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Jason Himmelstein
 
Azure Websites
Azure WebsitesAzure Websites
Azure Websites
Senthamil Selvan
 
More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)
Michael Collier
 
Tokyo azure meetup #8 azure update, august
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
Tokyo Azure Meetup
 
Tokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
Kanio Dimitrov
 
Understanding Azure websites
Understanding Azure websitesUnderstanding Azure websites
Understanding Azure websites
Nitesh Luharuka
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)
Chris Dufour
 
IaaS azure_vs_amazon
IaaS azure_vs_amazonIaaS azure_vs_amazon
IaaS azure_vs_amazon
Udaiappa Ramachandran
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Emerson Eduardo Rodrigues Von Staffen
 
Deep dive into azure virtual machines
Deep dive into azure virtual machinesDeep dive into azure virtual machines
Deep dive into azure virtual machines
Jasjit Chopra
 
Continuously deploy a containerized app to “Azure App Service”
Continuously deploy a containerized app to “Azure App Service”Continuously deploy a containerized app to “Azure App Service”
Continuously deploy a containerized app to “Azure App Service”
Seven Peaks Speaks
 
Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production
Tal Maayani
 
Moving from SBS to Azure
Moving from SBS to AzureMoving from SBS to Azure
Moving from SBS to Azure
Robert Crane
 
Microservices in Azure
Microservices in AzureMicroservices in Azure
Microservices in Azure
Doug Vanderweide
 
Microservices in Azure
Microservices in AzureMicroservices in Azure
Microservices in Azure
Doug Vanderweide
 
What's New for the Windows Azure Developer? Lots!!
What's New for the Windows Azure Developer?  Lots!!What's New for the Windows Azure Developer?  Lots!!
What's New for the Windows Azure Developer? Lots!!
Michael Collier
 
London .NET Developers Azure Websites
London .NET Developers Azure WebsitesLondon .NET Developers Azure Websites
London .NET Developers Azure Websites
Tom Walker
 
Deploying asp.net and mvc applications to azure
Deploying asp.net and mvc applications to azureDeploying asp.net and mvc applications to azure
Deploying asp.net and mvc applications to azure
Glyn Darkin
 
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup #7 - Introduction to Serverless Architectures with Azure F...
Tokyo Azure Meetup
 
Hidden Gems of Azure Websites: The Secret of Kudu
Hidden Gems of Azure Websites: The Secret of KuduHidden Gems of Azure Websites: The Secret of Kudu
Hidden Gems of Azure Websites: The Secret of Kudu
Juv Chan
 
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Navigating the turbulence on takeoff: Setting up SharePoint on Azure IaaS the...
Jason Himmelstein
 
More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)More Cache for Less Cash (DevLink 2014)
More Cache for Less Cash (DevLink 2014)
Michael Collier
 
Tokyo azure meetup #8 azure update, august
Tokyo azure meetup #8   azure update, augustTokyo azure meetup #8   azure update, august
Tokyo azure meetup #8 azure update, august
Tokyo Azure Meetup
 
Tokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, AugustTokyo azure meetup #8 - Azure Update, August
Tokyo azure meetup #8 - Azure Update, August
Kanio Dimitrov
 
Understanding Azure websites
Understanding Azure websitesUnderstanding Azure websites
Understanding Azure websites
Nitesh Luharuka
 
Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)Microsoft Azure Platform-as-a-Service (PaaS)
Microsoft Azure Platform-as-a-Service (PaaS)
Chris Dufour
 
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Devops continuousintegration and deployment onaws puttingmoneybackintoyourmis...
Emerson Eduardo Rodrigues Von Staffen
 
Deep dive into azure virtual machines
Deep dive into azure virtual machinesDeep dive into azure virtual machines
Deep dive into azure virtual machines
Jasjit Chopra
 
Continuously deploy a containerized app to “Azure App Service”
Continuously deploy a containerized app to “Azure App Service”Continuously deploy a containerized app to “Azure App Service”
Continuously deploy a containerized app to “Azure App Service”
Seven Peaks Speaks
 
Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production Groovy & Grails - From Scratch to Production
Groovy & Grails - From Scratch to Production
Tal Maayani
 
Moving from SBS to Azure
Moving from SBS to AzureMoving from SBS to Azure
Moving from SBS to Azure
Robert Crane
 
Ad

More from Aidan Casey (12)

The Agony and the Ecstasy of being Agile when the Schedule is Not
The Agony and the Ecstasy of being Agile when the Schedule is NotThe Agony and the Ecstasy of being Agile when the Schedule is Not
The Agony and the Ecstasy of being Agile when the Schedule is Not
Aidan Casey
 
Rise of the Machines - AI in the Agile World
Rise of the Machines - AI in the Agile WorldRise of the Machines - AI in the Agile World
Rise of the Machines - AI in the Agile World
Aidan Casey
 
Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve successOrganisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success
Aidan Casey
 
Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success
Aidan Casey
 
Agile in the City London - creating a sense of purpose in agile teams
Agile in the City London - creating a sense of purpose in agile teamsAgile in the City London - creating a sense of purpose in agile teams
Agile in the City London - creating a sense of purpose in agile teams
Aidan Casey
 
Creating a sense of purpose in agile teams
Creating a sense of purpose in agile teamsCreating a sense of purpose in agile teams
Creating a sense of purpose in agile teams
Aidan Casey
 
Evolutionary architecture guiding principles
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principles
Aidan Casey
 
Building mobile back ends with windows azure mobile services
Building mobile back ends with windows azure mobile servicesBuilding mobile back ends with windows azure mobile services
Building mobile back ends with windows azure mobile services
Aidan Casey
 
Cloud arena accelerate your mobile development
Cloud arena   accelerate your mobile developmentCloud arena   accelerate your mobile development
Cloud arena accelerate your mobile development
Aidan Casey
 
A lap around AWS
A lap around AWS A lap around AWS
A lap around AWS
Aidan Casey
 
Building node.js applications on windows azure
Building node.js applications on windows azureBuilding node.js applications on windows azure
Building node.js applications on windows azure
Aidan Casey
 
Myob beyond patents, practical ways to protect your software ip
Myob    beyond patents, practical ways to protect your software ipMyob    beyond patents, practical ways to protect your software ip
Myob beyond patents, practical ways to protect your software ip
Aidan Casey
 
The Agony and the Ecstasy of being Agile when the Schedule is Not
The Agony and the Ecstasy of being Agile when the Schedule is NotThe Agony and the Ecstasy of being Agile when the Schedule is Not
The Agony and the Ecstasy of being Agile when the Schedule is Not
Aidan Casey
 
Rise of the Machines - AI in the Agile World
Rise of the Machines - AI in the Agile WorldRise of the Machines - AI in the Agile World
Rise of the Machines - AI in the Agile World
Aidan Casey
 
Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve successOrganisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success
Aidan Casey
 
Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success Organisations must celebrate failure to achieve success
Organisations must celebrate failure to achieve success
Aidan Casey
 
Agile in the City London - creating a sense of purpose in agile teams
Agile in the City London - creating a sense of purpose in agile teamsAgile in the City London - creating a sense of purpose in agile teams
Agile in the City London - creating a sense of purpose in agile teams
Aidan Casey
 
Creating a sense of purpose in agile teams
Creating a sense of purpose in agile teamsCreating a sense of purpose in agile teams
Creating a sense of purpose in agile teams
Aidan Casey
 
Evolutionary architecture guiding principles
Evolutionary architecture guiding principlesEvolutionary architecture guiding principles
Evolutionary architecture guiding principles
Aidan Casey
 
Building mobile back ends with windows azure mobile services
Building mobile back ends with windows azure mobile servicesBuilding mobile back ends with windows azure mobile services
Building mobile back ends with windows azure mobile services
Aidan Casey
 
Cloud arena accelerate your mobile development
Cloud arena   accelerate your mobile developmentCloud arena   accelerate your mobile development
Cloud arena accelerate your mobile development
Aidan Casey
 
A lap around AWS
A lap around AWS A lap around AWS
A lap around AWS
Aidan Casey
 
Building node.js applications on windows azure
Building node.js applications on windows azureBuilding node.js applications on windows azure
Building node.js applications on windows azure
Aidan Casey
 
Myob beyond patents, practical ways to protect your software ip
Myob    beyond patents, practical ways to protect your software ipMyob    beyond patents, practical ways to protect your software ip
Myob beyond patents, practical ways to protect your software ip
Aidan Casey
 
Ad

Recently uploaded (20)

Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Mastering Fluent Bit: Ultimate Guide to Integrating Telemetry Pipelines with ...
Eric D. Schabell
 
Landscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature ReviewLandscape of Requirements Engineering for/by AI through Literature Review
Landscape of Requirements Engineering for/by AI through Literature Review
Hironori Washizaki
 
Adobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest VersionAdobe Illustrator Crack FREE Download 2025 Latest Version
Adobe Illustrator Crack FREE Download 2025 Latest Version
kashifyounis067
 
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
What Do Contribution Guidelines Say About Software Testing? (MSR 2025)
Andre Hora
 
WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)WinRAR Crack for Windows (100% Working 2025)
WinRAR Crack for Windows (100% Working 2025)
sh607827
 
FL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full VersionFL Studio Producer Edition Crack 2025 Full Version
FL Studio Producer Edition Crack 2025 Full Version
tahirabibi60507
 
Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025Adobe After Effects Crack FREE FRESH version 2025
Adobe After Effects Crack FREE FRESH version 2025
kashifyounis067
 
Top 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docxTop 10 Client Portal Software Solutions for 2025.docx
Top 10 Client Portal Software Solutions for 2025.docx
Portli
 
Expand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchangeExpand your AI adoption with AgentExchange
Expand your AI adoption with AgentExchange
Fexle Services Pvt. Ltd.
 
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
Interactive odoo dashboards for sales, CRM , Inventory, Invoice, Purchase, Pr...
AxisTechnolabs
 
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...Exploring Code Comprehension  in Scientific Programming:  Preliminary Insight...
Exploring Code Comprehension in Scientific Programming: Preliminary Insight...
University of Hawai‘i at Mānoa
 
Exploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the FutureExploring Wayland: A Modern Display Server for the Future
Exploring Wayland: A Modern Display Server for the Future
ICS
 
Not So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java WebinarNot So Common Memory Leaks in Java Webinar
Not So Common Memory Leaks in Java Webinar
Tier1 app
 
Download Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With LatestDownload Wondershare Filmora Crack [2025] With Latest
Download Wondershare Filmora Crack [2025] With Latest
tahirabibi60507
 
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRYLEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
LEARN SEO AND INCREASE YOUR KNOWLDGE IN SOFTWARE INDUSTRY
NidaFarooq10
 
Automation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath CertificateAutomation Techniques in RPA - UiPath Certificate
Automation Techniques in RPA - UiPath Certificate
VICTOR MAESTRE RAMIREZ
 
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025Why Orangescrum Is a Game Changer for Construction Companies in 2025
Why Orangescrum Is a Game Changer for Construction Companies in 2025
Orangescrum
 
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Salesforce Data Cloud- Hyperscale data platform, built for Salesforce.
Dele Amefo
 
Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025Adobe Lightroom Classic Crack FREE Latest link 2025
Adobe Lightroom Classic Crack FREE Latest link 2025
kashifyounis067
 
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and CollaborateMeet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Meet the Agents: How AI Is Learning to Think, Plan, and Collaborate
Maxim Salnikov
 

Kudu voodoo slideshare

  • 1. Kudu Voodoo –Project Kudu Overview & Advanced Azure Web Apps Features Azure Dublin Meetup | Feb 2016
  • 2. Aidan Casey |Microsoft Azure MVP| @AIDANJCASEY
  • 3. Azure Web Apps • PaaS – fully managed web application hosting • Supports .NET, Java, PHP, Node.js, and Python • Autoscale and load balancing • High availability with auto patching • Continuous deployment with Git, TFS, GitHub, Dropbox, and Visual Studio Team Services • Many ways to work with the platform - Azure Portal, Azure CLI, Azure SDK’s
  • 4. Project Kudu • Open source .NET Foundation https://github.com/projectkudu/kudu • Powers deployments for  WebApps / WebSites  WebJobs  Mobile Services • Can also run outside of Azure • Git deployments • Configurable build steps • Sandboxing • Hosting & Metering • Diagnostic tools & API’s
  • 8. Service Plans and Features free shared basic standard Premium When to use spikes , goofing around dev - test with SSL production low traffic workloads production with advanced autoscale & traffic management production more advances – biztalk connectors etc # cores Shared, 60 mins CPU per day shared, 240 mins CPU per day 1-4 1-4 1-8 RAM 1GB .5GB 1.75-7GB 1.75-7GB 1.75-14GB SLA 99.95% 99.95% 99.95% custom domain & certs no yes yes yes yes Remote profiling no no no yes yes
  • 9. Deployment Slots • Standard and Premium Mode Only • Hot swap with no requests dropped • Custom warm up application hooks • Rollback • AppSettings can be made slot specific • Can configure auto swapping • % traffic routing via Azure Traffic Routing
  • 10. Demo zero downtime with deployment slots
  • 11. Auto Healing • Standard and Premium Mode Only • Auto detect certain conditions and automatically recover - Recycle based on Request Count - Recycling based on slow requests - If you have multiple instances of your web site, it will only restart the worker process for the instance that has hit this trigger and not all instances.
  • 12. Application Log Streaming • 3 types of logs  Detailed Error Logging  Failed Request Tracing  Web Server Logging (W3C extended log format) • Can log to the file system (rolling files) , table storage or blob storage • When you enable application logging in azure websites its on for 12 hours….
  • 13. Demo log tailing from the Azure CLI
  • 14. Kudu Site {yoursite}.scm.azurewebsites.net • The Kudu site runs in the same sandbox as your real site. This has some important implications • It cannot do anything that the site itself wouldn't be able to do itself • It shares the same quotas as the site. That is, the CPU/RAM/Disk used by the Kudu service is counted toward the site's quota • It relies on the security model of the Azure Web Site runtime
  • 15. Kudu Console & API both command line and file browser access to your sites • Diagnostic dumps • Process Explorer • WebHooks • File Explorer • Site Extensions • Runtime Environment & Variables
  • 17. Demo remote profiling a .NET Web App
  • 18. Demo remote debugging a .NET Web App
  • 19. Customising the deployment pipeline The Azure CLI command “$ azure site deploymentscript ” generates deployment scripts that are used by kudu, you can customise these files • .deployment file  [config] command=<whatever command> • Write in batch file, bash script, PHP, JavaScript, …  Can do things like  download extra tools  pull in external repos / packages  shell out to command line tools ( msbuild, nugget, curl etc)
  • 20. Demo running unit tests in Azure as part of a deployment pipeline
  • 21. Site Extensions • Add additional tools to your website • Install site extensions through the portal or the kudu site • Site Extension Gallery : http://www.siteextensions.net • Build & publish your own !
  • 22. Demo Using site extensions -visual studio online monaco code editor
  • 23. Best Practices • Autoscale on & Stick sessions off • Back up your database • Load test before going live • Configure automatic failover using Azure Global Traffic Manager • Automate deployments using slots • Test site recovery • Use azure resource groups • Set billing alerts • Bundle & minify web resources • Use Azure CDN to edge cache static files • Implement the appropriate DB retry policies
  • 24. Key Takeaways • Azure Web Apps features- deploy slots, hot swapping, auto scaling, git deployments , customisable pipeline, remote profiling, site extensions • Your Web App is only loaded into IIS when its in use • Kudu is the open source deployment engine behind web apps • Advanced support for .NET apps via remote profiling and remote debugging • No SLA availale for basic of free tier offering