SlideShare a Scribd company logo
DevOps by examples
Giulio Vian
http://blog.casavian.eu/
giulio.dev@casavian.eu
@giulio_vian
http://www.getlatestversion.it/
1990
1992 1999 2014
2010 2016
1995
freelance
2014 2015
TFS Aggregator
?
Most recent project
© 2016 IMG Universe, LLC.
All Rights Reserved
3
This Session
100/200-level
Grasp the essentials of the DevOps approach.
(well …, some essentials)
Leave open questions to the end
Something Olde, Something New, Something Borrowed, Something Blue
4
What we will talk about?
DevOps intro
Demos
Environment hosting the app
The Application itself
Deployment
Dynamic configuration
Monitoring
Wrap-up
5
OpsDev
Your turn
Azure
Visual Studio Team
Services (VSTS)
ASP.NET
Linux (Ubuntu)
Developers
Infra Engineers
Architects
Managers
6
«Appetizer»
7
DevOps is a job?
8
DevOps is a product?
9
DevOps is a culture, movement or practice
DevOps is a term used to refer to a set of practices that
emphasizes the collaboration and communication of
both software developers and other information-
technology (IT) professionals while automating the
process of software delivery and infrastructure changes.
DevOps represents a change in IT culture, focusing on rapid IT service delivery through the
adoption of agile, lean practices in the context of a system-oriented approach. DevOps
emphasizes people (and culture), and seeks to improve collaboration between operations and
development teams. DevOps implementations utilize technology — especially automation tools
that can leverage an increasingly programmable and dynamic infrastructure from a life cycle
perspective.
DevOps is the union of people, process, and products to
enable continuous delivery of value to our end users.
Wikipedia (2017)
Gartner
Microsoft (Donovan Brown)
10
Continuous Delivery evolution…
Source: Jez Humble © 2010
11
…rooted in Agile Principles
Individuals and interactions
over processes and tools
Working software
over comprehensive documentation
Customer collaboration
over contract negotiation
Responding to change
over following a plan
http://agilemanifesto.org/
«Main course»
Where? Infrastructure-as-Code
What? Build & Package
How? Deploy
13
Execution environment
Operating System
O.S. Modules
Local Services, Libraries
Application
Network & External Services
Data
14
Execution environment (alt)
Base container
Custom Container
Application
(in container)
Network & External Services
(e.g. Kubernetes)
Data
15
Execution environment – Comments
Setup times vs. launch times
Capacity planning
Running costs (Buy vs. Make)
16
Infrastructure-as-
Code
Azure Resource Manager
• Code
• Automation
17
Infrastructure-as-Code – Comments
Declarative vs. Imperative
Version Control
Continuous Integration
Dynamic vs. Static
Azure Resource Manager
Declarative Json-based
Extensible (script, DSC)
Entire infrastructure
AWS CloudFormation
Declarative Json-based
Terraform
Docker
Not much declarative
Single container
Swarm, Kubernetes, Mesos, …
Ansible, Puppet, Chef, CFEngine, …
18
Application
Web page showing DB data
• Environment
• Configuration
19
Build & Packaging
Collect everything
20
Build & Packaging – Comments
Version Control
Continuous Integration
Semantic Versioning
Artifacts
Images (Docker, AMI, Azure VM images)
21
Deploy
VSTS Release Management
• Controlled Automation
22
Secrets
Build time
Signing
Deploy time
Credentials
Run time
Tokens
Avoid exposures
git push hook
Static analysis
.gitignore
Centralized Version Control
Distinct repositories
Azure Key Vault,
AWS Key Management Service,
etc.
23
Deploy – Comments
Category
Dev / QA / Prod
Integrated (dynamic)
Release cadence
Feature toggles
24
Source: Pete Hodgson
Dynamic
Configuration
Feature Toggle
25
So far
26
OpsDev
Application Monitoring
Errors
Performance
Availability
Scalability
Analytics
App Insight
HockeyApp
ELK
ElasticSearch+LogStash+Kibana
Splunk
BugSense
Fabric
Firebase
New Relic
…
27
Monitoring
App Insight
28
Troubleshooting & Feedback loop
Access to production
Read-only
Debug
Sensitive production data
Design/architecture
Quality of data
Those Precious PDBs
29
More VSTS – Azure Links
DevTest labs
Deployment
Load testing
30
«Dessert»
31
People
(Photo: DoD)
32
Automation
(Photo: Alexander Dummer)
33
Resources
34
(Photo: Elya)
Call to action
35
(Photo: Francesco Canu)
Bibliografy & References
https://github.com/giuliov/DevOps-by-examples
http://www.slideshare.net/giuliov/presentations
http://martinfowler.com/articles/feature-toggles.html
https://leanpub.com/build
https://launchdarkly.com/
http://agilemanifesto.org/
https://azure.microsoft.com/en-us/services/application-insights/
https://github.com/tfsaggregator/tfsaggregator
https://github.com/aspnet
https://azure.microsoft.com/en-us/services/key-vault/
https://aws.amazon.com/kms/
https://blogs.msdn.microsoft.com/buckh/2016/09/30/controlling-exposure-through-feature-flags-in-vs-
team-services/
36
To know more
Continuous Delivery: Reliable Software
Releases through Build, Test, and
Deployment Automation — J.Humble,
D.Farley (Addison-Wesley)
https://www.amazon.com/Continuous-
Delivery/dp/0321601912/
The Phoenix Project — G.Kim, K.Behr,
G.Spafford (IT Revolution Press)
https://www.amazon.com/Phoenix-Project-
DevOps-Helping-Business/dp/0988262509/
37
To know more (cont’d)
The DevOps Handbook — G.Kim,
P.Debois, J.Willis, J.Humble (IT
Revolution Press)
https://www.amazon.com/DevOps-
Handbook-World-Class-Reliability-
Organizations/dp/1942788002/
Continuous Delivery with Visual Studio
ALM 2015 — M.Olausson, J.Ehn (Apress)
http://www.amazon.com/Continuous-
Delivery-Visual-Studio-2015/dp/1484212738/
38
Partial checklist
Where is configuration stored?
How is configuration updated?
Is production configuration isolated and secured?
Where are the secrets and who can access them?
How versions are tracked?
Who authorizes changes and how?
How data is preserved on updates?
How data schema and module interfaces updates?
Using environment images or scripts?
How big is the deploy window?
How are the tracked activities and errors?
How are operational data is collected from production?
39
End of transmission
40
Demo Screenshots
41
Infrastructure-as-Code
Azure Portal
Resource Groups
Resulting Resource Group
Visual Studio Team Services – Project home
46
Visual Studio Team Services Release Management
Create/Update Resource Group
Install packages
Environment creation in progress
Resulting Environment
51
Application
52
Version Control
Home page
54
Query “C”
55
Build & Packaging
56
Continuous Integration
Semantic Versioning
App build script
Deploy
60
App deploy script – Database
App deploy script – Copy files to Target
App deploy script – Run final setup script
App deploy – configuration data
App deploy – source packages
Deploying the app
Deploying the app – pick a version
App deploy log
App deployed
69
Dynamic Configuration
70
Toggle feature script – generate new config files
Toggle feature deploy script – deploy config changes
New configuration data

More Related Content

PDF
提到 DevOps 到底在談些什麼玩意兒?
PDF
DevOpsDays Openstack Toolchains
PDF
DevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
PPTX
50 Shades of DevOps
PDF
Cloud Foundry Summit 2015: A Year of Innovation: Cloud Foundry Lessons Learned
PPTX
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
PDF
DevOps and its impact
PPTX
Moving From Infrastructure Automation To True DevOps
提到 DevOps 到底在談些什麼玩意兒?
DevOpsDays Openstack Toolchains
DevOps ist normal - DevOps Essentials 2019 - Schlomo Schapiro
50 Shades of DevOps
Cloud Foundry Summit 2015: A Year of Innovation: Cloud Foundry Lessons Learned
WinOps Conf 2015 - Steve Thair - Why we need a DevOps on Windows Conference
DevOps and its impact
Moving From Infrastructure Automation To True DevOps

What's hot (20)

PDF
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
PDF
DevOps Adoption Patterns
PPTX
XL Deploy Demo Slides: Agentless Application Release Automation
PPTX
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
PPTX
Enterprise DevOps: Scaling Build, Deploy, Test, Release
PDF
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
PDF
Enterprise software needs a PaaS
PDF
Hybrid Cloud DevOps with Apprenda and UrbanCode Deploy
PPTX
Micro services, reactive manifesto and 12-factors
PDF
Who Does What? Mapping Cloud Foundry Activities and Entitlements to IT Roles
PDF
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
PDF
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
PDF
Integrating BlueMix into a DevOps pipeline
PDF
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
PDF
Xebia Masterclass Better-Faster-Smarter-with-DevOps
PDF
HP Helion Webinar #4 - Open stack the magic pill
PDF
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
PDF
Enterprise CI as-a-Service using Jenkins
PDF
HP Helion Webinar #2
PDF
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
What is Platform as a Product? Clues from Team Topologies @ DevOps Porto meet...
DevOps Adoption Patterns
XL Deploy Demo Slides: Agentless Application Release Automation
Driving Enterprise Architecture Redesign: Cloud-Native Platforms, APIs, and D...
Enterprise DevOps: Scaling Build, Deploy, Test, Release
Cloud Foundry Summit 2015: Leaving your Comfort Zone - Garmin and Cloud Foundry
Enterprise software needs a PaaS
Hybrid Cloud DevOps with Apprenda and UrbanCode Deploy
Micro services, reactive manifesto and 12-factors
Who Does What? Mapping Cloud Foundry Activities and Entitlements to IT Roles
DOES14: Scott Prugh, CSG - DevOps and Lean in Legacy Environments
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Integrating BlueMix into a DevOps pipeline
Continuous Delivery with Jenkins Enterprise and IBM UrbanCode Deploy
Xebia Masterclass Better-Faster-Smarter-with-DevOps
HP Helion Webinar #4 - Open stack the magic pill
FaaS or not to FaaS. Visible and invisible benefits of the Serverless paradig...
Enterprise CI as-a-Service using Jenkins
HP Helion Webinar #2
Compliant by Default - Digitaler Wandel - 14.08.2019 - Schlomo Schapiro
Ad

Similar to DevOps by examples - Azure Meetup Frankfurt 06-2017 (20)

PPTX
DevOps by examples - Continuous Lifecycle London 2017
PPTX
What_is_DevOps.pptx
PPTX
What_is_DevOps_how_it's_very_useful_in_daily_Life.
PPTX
What is DevOps And How It Is Useful In Real life.
PPTX
DevOps by examples - DevOps@Work 2017
PPTX
Continuous Delivery with Visual Studio Team Services and Azure - LDNA 12-2017
PDF
How open source is driving DevOps innovation: CloudOpen NA 2015
PPTX
DevOps a peek into high performing organizations
PDF
DevOps feedback loops
PDF
7 flavours of devops implementation
PPTX
Dev ops
PDF
Intro to DevOps 4 undergraduates
PPTX
Twelve Factor - Designing for Change
PDF
TechRadarCon 2022 | Have you built your platform yet ?
PPTX
Business model driven cloud adoption - what NI is doing in the cloud
PPT
Innovate2011 DevOps TSRM RTC
PPTX
The DevOps Journey
PDF
DevOps culture, concepte , philosophie and practices
PDF
Ibm innovate ci for system z
PDF
Scaling DevSecOps Culture for Enterprise
DevOps by examples - Continuous Lifecycle London 2017
What_is_DevOps.pptx
What_is_DevOps_how_it's_very_useful_in_daily_Life.
What is DevOps And How It Is Useful In Real life.
DevOps by examples - DevOps@Work 2017
Continuous Delivery with Visual Studio Team Services and Azure - LDNA 12-2017
How open source is driving DevOps innovation: CloudOpen NA 2015
DevOps a peek into high performing organizations
DevOps feedback loops
7 flavours of devops implementation
Dev ops
Intro to DevOps 4 undergraduates
Twelve Factor - Designing for Change
TechRadarCon 2022 | Have you built your platform yet ?
Business model driven cloud adoption - what NI is doing in the cloud
Innovate2011 DevOps TSRM RTC
The DevOps Journey
DevOps culture, concepte , philosophie and practices
Ibm innovate ci for system z
Scaling DevSecOps Culture for Enterprise
Ad

More from Giulio Vian (20)

PPTX
Come implementare la governance nella vostra piattaforma e lavorare felici se...
PDF
Is Technical Debt the right metaphor for Continuous Update?
PPTX
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
PPTX
Software rotting - DevOpsCon Berlin
PPTX
Software rotting
PPTX
Software rotting - 28 Apr - DeveloperWeek Europe 2022
PPTX
L'impatto della sicurezza su DevOps
PPTX
L'impatto della sicurezza su DevOps
PPTX
A map for DevOps on Microsoft Stack - MS DevSummit
PPTX
Perché è così difficile il deploy dei database - DevCast DevOps Serie
PPTX
Database deployments - dotnetsheff
PPTX
Database deployment: still hard after all these years - Data Saturday #1
PPTX
Pipeline your Pipelines - 2020 All Day DevOps
PPTX
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
PPTX
Top 10 pipeline mistakes - dotnetsheff
PPTX
Introduction to Terraform with Azure flavor
PPTX
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
PPTX
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
PPTX
Pipeline your pipelines!
PPTX
Why is DevOps vital for my company’s business
Come implementare la governance nella vostra piattaforma e lavorare felici se...
Is Technical Debt the right metaphor for Continuous Update?
Is Technical Debt the right metaphor for Continuous Update - AllDayDevOps 2022
Software rotting - DevOpsCon Berlin
Software rotting
Software rotting - 28 Apr - DeveloperWeek Europe 2022
L'impatto della sicurezza su DevOps
L'impatto della sicurezza su DevOps
A map for DevOps on Microsoft Stack - MS DevSummit
Perché è così difficile il deploy dei database - DevCast DevOps Serie
Database deployments - dotnetsheff
Database deployment: still hard after all these years - Data Saturday #1
Pipeline your Pipelines - 2020 All Day DevOps
How to write cloud-agnostic Terraform code - Incontro DevOps Italia 2020
Top 10 pipeline mistakes - dotnetsheff
Introduction to Terraform with Azure flavor
How collaboration works between Dev and Ops - DevOps Agile Testing and Test S...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Pipeline your pipelines!
Why is DevOps vital for my company’s business

Recently uploaded (20)

PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PPTX
Tartificialntelligence_presentation.pptx
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
cloud_computing_Infrastucture_as_cloud_p
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Empathic Computing: Creating Shared Understanding
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
TLE Review Electricity (Electricity).pptx
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
1. Introduction to Computer Programming.pptx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Building Integrated photovoltaic BIPV_UPV.pdf
A comparative analysis of optical character recognition models for extracting...
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Tartificialntelligence_presentation.pptx
Per capita expenditure prediction using model stacking based on satellite ima...
Advanced methodologies resolving dimensionality complications for autism neur...
cloud_computing_Infrastucture_as_cloud_p
A comparative study of natural language inference in Swahili using monolingua...
Encapsulation_ Review paper, used for researhc scholars
Empathic Computing: Creating Shared Understanding
Diabetes mellitus diagnosis method based random forest with bat algorithm
TLE Review Electricity (Electricity).pptx
Group 1 Presentation -Planning and Decision Making .pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Reach Out and Touch Someone: Haptics and Empathic Computing
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
gpt5_lecture_notes_comprehensive_20250812015547.pdf
1. Introduction to Computer Programming.pptx

DevOps by examples - Azure Meetup Frankfurt 06-2017

Editor's Notes

  • #11: http://www.gartner.com/it-glossary/devops/ DevOps is a term used to refer to a set of practices that emphasize the collaboration and communication of both software developers and information technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment, where building, testing, and releasing software can happen rapidly, frequently, and more reliably. Wikipedia (2017)
  • #15: The 1975 book _Algorithms + Data Structures = Programs_ of Turing Award winner Niklaus Wirth is still relevant.
  • #25: http://martinfowler.com/articles/feature-toggles.html
  • #42: Nota con VSTS cloud non significa pubblico!
  • #75: Nota con VSTS cloud non significa pubblico!
  • #76: http://www.gartner.com/it-glossary/devops/ DevOps is a term used to refer to a set of practices that emphasize the collaboration and communication of both software developers and information technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment, where building, testing, and releasing software can happen rapidly, frequently, and more reliably. Wikipedia (2017)