SlideShare a Scribd company logo
1 of 46
How to not fail with Azure.
As a dev, an ops and an architect
Martin Gutenbrunner
@MartinGoodwell
About me
 Failed in oh so many numerous ways, and learned from it
 as a developer
 mainly Java, Javascript, a bit of .net, some scripts. From browser to database
 as an operator
 set up and maintain Dev, Int, and Prod environments; deploy to them and monitor them
 and as an architect
 with every new project, tried to structure things better, to make projects grow healthier over time.
What about Azure then?
The Cloud comes with lots of best-practices built-in
Let's start with a comparison
Amazon Web Services
Amazon Web Services - Products
Google Cloud Platform - Locations
Google Cloud Platform - Products
Azure - Locations
Azure - Products
Azure specifics
 more cloud locations than AWS and Google combined
 dedicated regional cloud locations, like Azure Deutschland
 Azure Stack for your local datacenter to cover hybrid needs
Microsoft
Microsoft is in it's third era now
 Bill Gates – A Windows computer on every desk
 Steve Ballmer – Enterprise focus
 Satya Nadella – Use whatever tech you want; and you can run it on Azure
Azure or not Azure?
That's just like Java vs. .net
Disclaimer – What is the Cloud?
 The Cloud as such is "just" another datacenter, that's designed to be self-serviceable
 "The Cloud is not about where you run it, but how you build your systems"
 If you're happy with on-prem, non-cloud, keep doing.
 once you reach a certain scale, you might want to think about alternatives.
 The Cloud use-case is really about
 if downtime is not an option
 environments that are too big to be handled manually
 be able to scale at any time
 scale at a very fine-coarsed granularity – scale single services instead of just duplicating instances
 being able to scale also means being able to fail-over
 scalability at that level comes at a lower TOC
How I failed as a Developer
(Developers depicted as Rocket Man?
Dream on, dude)
Um, I didn't
Just joking, of course I did
Don't mistake "failure" for "I wasn't even aware
that there's a better way of doing it"
You'll absolutely need version control, dependency management, build servers,
CI/CD, ...
I'll show you how to do that in Azure
I should have told you about the following things up to now
 Use version control – a no brainer
 If you're going open-source, share your code from first check-in
 because no one's code is perfect
 don't say "I'll share, but I'll have to clean up my code first"
 Use dependency management
 Do Unit-Tests, continuous integration, deployment automation
How I failed as an Operator
(Operators wearing tighs? Sure)
I once installed MongoDB manually
instead of using the distribution package.
When I had to setup the database server from
scratch, I spent half a day looking for that d*mn
license file
having a VM image would have helped safe so much time
When I first played with the Cloud, all I did was
setting up a VM and wondering what all this fuzz
was all about
until I discovered Infrastructure-as-Code and all the Cloud-specific goodies.
On to Azure. I'll show you some things
aaaaand we're back
I should have told you about the following things up to now
 Know, how to spin up all your infrastructure automatically
 requires at least VMs, don't run on bare-metal. Ever.
 I mean it
 Check, whether required databases, queues, etc are available as a service
 even if they are more expensive than self-maintenance, check worst-case pricing
 Don't just run VMs in the Cloud
 Don't lift-and-shift
 Makes no op's life easier. Only services do.
How I failed as an Architect
(Architects and brains?
I don't get it.)
Once we wanted to add MongoDB to our project
The problem was, that Ops didn't want us to, because they didn't know how to
operate MongoDB
Which was lucky, because MongoDB wouldn't have made any sense in that
context 
Me and a fellow architect decided to have both of
our applications use the same way of
authentication
by using the same database and tables.
I didn't look into new concepts, because I thought
I already know everything I need.
I should have told you about the following things up to now
 Don't run for every hype, even though the Cloud makes it much easier to use new technology
 And don't use a different language for each problem just because you can.
 Focus of tech-choice should be your human resources, not the tech that's optimized to the last bit
 Know the trades of what makes a microservice-based architecture
 Know about bounded-contexts (Domain-Driven-Design)
 You want to share functionality?
 Make it a service
 But don't just wrap CRUD operations into it's own layer
 Be open-minded
"The Cloud is not about where you run it, but how you build
your systems"
So, how to actually build your system, so it's
"Cloud"?
Lessons learned, for DevOps and architecture
 Think about human scalability first, not about technical scalability
 If something feels wrong, think again
 Right/wrong is not a black/white thing. You might be 80% right already
 Honor bounded contexts (this is primarily for devs and architects)
 a single chapter in the book Domain-Driven-Design by Eric Evans
 Read about microservices, and keep reading. Lots of good blogs out there, especially company blogs
 even if you don't want to build upon them.
 much of the magic is in the domain model
 Practice
 Don't expect your first project or microservice to be the perfect one
 Start with something of secondary priority / importance
 lower traffic, less interdependencies
 Don't fix what's not broken (big-bang refactorings, just for the sake of it)
Be a team player
TEAM
There is no "I" in
?
TEAM
Oh, there is. I've found it:
It's in the A-hole.
Productize
Try to productize your workflow.
Even if you're a project-centric team. Productizing
sets a clear mind for automation of workflows and
stuff.
Right, but don't over-engineer 
Don't re-invent the wheel. Build upon what's there
PaaS, Service Bus, Application Gateway, Storage, ...
References
 http://azureplatform.azurewebsites.net/en-us/
 https://cloud.google.com/docs/
 https://aws.amazon.com/products/?hp=tile&so-exp=below
Q & A
www.dynatrace.com
Monitoring Hero

More Related Content

What's hot

Inkscape: Mockup that site
Inkscape: Mockup that siteInkscape: Mockup that site
Inkscape: Mockup that siteDonna Benjamin
 
Chaos Patterns
Chaos PatternsChaos Patterns
Chaos PatternsBruce Wong
 
KnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsKnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsShaw Innes
 
Apache Mesos Distributed Computing Talk
Apache Mesos Distributed Computing Talk Apache Mesos Distributed Computing Talk
Apache Mesos Distributed Computing Talk brandongulla
 
Scaling Your Web Application
Scaling Your Web ApplicationScaling Your Web Application
Scaling Your Web ApplicationKetan Deshmukh
 
Crafting build pipelines with Docker
Crafting build pipelines with DockerCrafting build pipelines with Docker
Crafting build pipelines with DockerAshley Davis
 
AWS Customer Presentation - SchoolofEverything
AWS Customer Presentation - SchoolofEverythingAWS Customer Presentation - SchoolofEverything
AWS Customer Presentation - SchoolofEverythingAmazon Web Services
 
Chaos Driven Development
Chaos Driven DevelopmentChaos Driven Development
Chaos Driven DevelopmentBruce Wong
 
The Case for Chaos
The Case for ChaosThe Case for Chaos
The Case for ChaosBruce Wong
 
Programming pillars
Programming pillarsProgramming pillars
Programming pillarsIan Stuart
 
Vagrant: Your Personal Cloud
Vagrant: Your Personal CloudVagrant: Your Personal Cloud
Vagrant: Your Personal CloudJames Wickett
 
Node.js - Greece JS Meetup 2012
Node.js - Greece JS Meetup 2012Node.js - Greece JS Meetup 2012
Node.js - Greece JS Meetup 2012Kostas Karolemeas
 

What's hot (14)

Inkscape: Mockup that site
Inkscape: Mockup that siteInkscape: Mockup that site
Inkscape: Mockup that site
 
Chaos Patterns
Chaos PatternsChaos Patterns
Chaos Patterns
 
KnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOpsKnowledgeHut - Switching On DevOps
KnowledgeHut - Switching On DevOps
 
Apache Mesos Distributed Computing Talk
Apache Mesos Distributed Computing Talk Apache Mesos Distributed Computing Talk
Apache Mesos Distributed Computing Talk
 
Scaling Your Web Application
Scaling Your Web ApplicationScaling Your Web Application
Scaling Your Web Application
 
Crafting build pipelines with Docker
Crafting build pipelines with DockerCrafting build pipelines with Docker
Crafting build pipelines with Docker
 
Functional javascript
Functional javascriptFunctional javascript
Functional javascript
 
AWS Customer Presentation - SchoolofEverything
AWS Customer Presentation - SchoolofEverythingAWS Customer Presentation - SchoolofEverything
AWS Customer Presentation - SchoolofEverything
 
Chaos Driven Development
Chaos Driven DevelopmentChaos Driven Development
Chaos Driven Development
 
The Case for Chaos
The Case for ChaosThe Case for Chaos
The Case for Chaos
 
React native
React nativeReact native
React native
 
Programming pillars
Programming pillarsProgramming pillars
Programming pillars
 
Vagrant: Your Personal Cloud
Vagrant: Your Personal CloudVagrant: Your Personal Cloud
Vagrant: Your Personal Cloud
 
Node.js - Greece JS Meetup 2012
Node.js - Greece JS Meetup 2012Node.js - Greece JS Meetup 2012
Node.js - Greece JS Meetup 2012
 

Similar to DevOne - How to not fail with Azure

Agile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystemAgile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystemTurja Narayan Chaudhuri
 
Agile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native EcosystemAgile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native EcosystemCloud Study Network
 
Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1Turja Narayan Chaudhuri
 
Introduction to cloud computing - za garage talks
Introduction to cloud computing -  za garage talksIntroduction to cloud computing -  za garage talks
Introduction to cloud computing - za garage talksVijay Rayapati
 
PUBLISHED: Cloud Computing Architecture
PUBLISHED: Cloud Computing ArchitecturePUBLISHED: Cloud Computing Architecture
PUBLISHED: Cloud Computing ArchitectureRichardBatka
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspectiveHARMAN Services
 
Herding cats in the Cloud
Herding cats in the CloudHerding cats in the Cloud
Herding cats in the CloudDewey Sasser
 
Deploying deep learning models with Docker and Kubernetes
Deploying deep learning models with Docker and KubernetesDeploying deep learning models with Docker and Kubernetes
Deploying deep learning models with Docker and KubernetesPetteriTeikariPhD
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - DevClint Edmonson
 
Putting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/TestPutting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/TestRobert MacLean
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: ServerlessDoug Vanderweide
 
Embracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyEmbracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyChad Currie
 
Real World Azure - IT Pros
Real World Azure - IT ProsReal World Azure - IT Pros
Real World Azure - IT ProsClint Edmonson
 
IBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksIBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksDejan Glozic
 
Node.js and MongoDB from scratch, fully explained and tested
Node.js and MongoDB from scratch, fully explained and tested Node.js and MongoDB from scratch, fully explained and tested
Node.js and MongoDB from scratch, fully explained and tested John Culviner
 
Aws vs azure bakeoff
Aws vs azure bakeoffAws vs azure bakeoff
Aws vs azure bakeoffSoHo Dragon
 
Austin Web Architecture
Austin Web ArchitectureAustin Web Architecture
Austin Web Architecturejoaquincasares
 
Step by Step guide to start your cloud journey
Step by Step guide to start your cloud journeyStep by Step guide to start your cloud journey
Step by Step guide to start your cloud journeyJubin Aghara
 

Similar to DevOne - How to not fail with Azure (20)

Agile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystemAgile architectures in a modern cloud-native ecosystem
Agile architectures in a modern cloud-native ecosystem
 
Agile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native EcosystemAgile Architecture in a Modern Cloud-Native Ecosystem
Agile Architecture in a Modern Cloud-Native Ecosystem
 
Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1Cloud lunchn learn_howtobecomeacloudarchitect_part1
Cloud lunchn learn_howtobecomeacloudarchitect_part1
 
Introduction to cloud computing - za garage talks
Introduction to cloud computing -  za garage talksIntroduction to cloud computing -  za garage talks
Introduction to cloud computing - za garage talks
 
PUBLISHED: Cloud Computing Architecture
PUBLISHED: Cloud Computing ArchitecturePUBLISHED: Cloud Computing Architecture
PUBLISHED: Cloud Computing Architecture
 
Cloud computing - an architect's perspective
Cloud computing - an architect's perspectiveCloud computing - an architect's perspective
Cloud computing - an architect's perspective
 
Jumpstart Azure
Jumpstart AzureJumpstart Azure
Jumpstart Azure
 
Herding cats in the Cloud
Herding cats in the CloudHerding cats in the Cloud
Herding cats in the Cloud
 
Deploying deep learning models with Docker and Kubernetes
Deploying deep learning models with Docker and KubernetesDeploying deep learning models with Docker and Kubernetes
Deploying deep learning models with Docker and Kubernetes
 
Real World Azure - Dev
Real World Azure - DevReal World Azure - Dev
Real World Azure - Dev
 
Putting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/TestPutting the DOT in .NET - Dev/Ops/Test
Putting the DOT in .NET - Dev/Ops/Test
 
Micro services
Micro servicesMicro services
Micro services
 
The Next Big Thing: Serverless
The Next Big Thing: ServerlessThe Next Big Thing: Serverless
The Next Big Thing: Serverless
 
Embracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think ResponsivelyEmbracing Uncertainty: Learning to Think Responsively
Embracing Uncertainty: Learning to Think Responsively
 
Real World Azure - IT Pros
Real World Azure - IT ProsReal World Azure - IT Pros
Real World Azure - IT Pros
 
IBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New TricksIBM and Node.js - Old Doge, New Tricks
IBM and Node.js - Old Doge, New Tricks
 
Node.js and MongoDB from scratch, fully explained and tested
Node.js and MongoDB from scratch, fully explained and tested Node.js and MongoDB from scratch, fully explained and tested
Node.js and MongoDB from scratch, fully explained and tested
 
Aws vs azure bakeoff
Aws vs azure bakeoffAws vs azure bakeoff
Aws vs azure bakeoff
 
Austin Web Architecture
Austin Web ArchitectureAustin Web Architecture
Austin Web Architecture
 
Step by Step guide to start your cloud journey
Step by Step guide to start your cloud journeyStep by Step guide to start your cloud journey
Step by Step guide to start your cloud journey
 

More from Martin Gutenbrunner

Old code doesn't stink - Detroit
Old code doesn't stink - DetroitOld code doesn't stink - Detroit
Old code doesn't stink - DetroitMartin Gutenbrunner
 
APIs in production - we built it, can we fix it?
APIs in production - we built it, can we fix it?APIs in production - we built it, can we fix it?
APIs in production - we built it, can we fix it?Martin Gutenbrunner
 
Pushing the hassle from production to developers. Easily
Pushing the hassle from production to developers. EasilyPushing the hassle from production to developers. Easily
Pushing the hassle from production to developers. EasilyMartin Gutenbrunner
 
Monitoring 101 - Leveraging on the power of JMX
Monitoring 101 - Leveraging on the power of JMXMonitoring 101 - Leveraging on the power of JMX
Monitoring 101 - Leveraging on the power of JMXMartin Gutenbrunner
 
Performance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environmentsPerformance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environmentsMartin Gutenbrunner
 

More from Martin Gutenbrunner (7)

Smart Home - 10 Jahre danach
Smart Home - 10 Jahre danachSmart Home - 10 Jahre danach
Smart Home - 10 Jahre danach
 
Old code doesn't stink - Detroit
Old code doesn't stink - DetroitOld code doesn't stink - Detroit
Old code doesn't stink - Detroit
 
Old code doesn't stink
Old code doesn't stinkOld code doesn't stink
Old code doesn't stink
 
APIs in production - we built it, can we fix it?
APIs in production - we built it, can we fix it?APIs in production - we built it, can we fix it?
APIs in production - we built it, can we fix it?
 
Pushing the hassle from production to developers. Easily
Pushing the hassle from production to developers. EasilyPushing the hassle from production to developers. Easily
Pushing the hassle from production to developers. Easily
 
Monitoring 101 - Leveraging on the power of JMX
Monitoring 101 - Leveraging on the power of JMXMonitoring 101 - Leveraging on the power of JMX
Monitoring 101 - Leveraging on the power of JMX
 
Performance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environmentsPerformance monitoring and call tracing in microservice environments
Performance monitoring and call tracing in microservice environments
 

Recently uploaded

Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作ys8omjxb
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)Christopher H Felton
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一Fs
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一Fs
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhimiss dipika
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一Fs
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Roomdivyansh0kumar0
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Dana Luther
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝soniya singh
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Roomishabajaj13
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts servicevipmodelshub1
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Roomdivyansh0kumar0
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Roomdivyansh0kumar0
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkataanamikaraghav4
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewingbigorange77
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一Fs
 
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on DeliveryCall Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Deliverybabeytanya
 
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdf
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdfThe Intriguing World of CDR Analysis by Police: What You Need to Know.pdf
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdfMilind Agarwal
 

Recently uploaded (20)

Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
Potsdam FH学位证,波茨坦应用技术大学毕业证书1:1制作
 
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
A Good Girl's Guide to Murder (A Good Girl's Guide to Murder, #1)
 
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
定制(Lincoln毕业证书)新西兰林肯大学毕业证成绩单原版一比一
 
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
定制(AUT毕业证书)新西兰奥克兰理工大学毕业证成绩单原版一比一
 
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls KolkataVIP Call Girls Kolkata Ananya 🤌  8250192130 🚀 Vip Call Girls Kolkata
VIP Call Girls Kolkata Ananya 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Contact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New DelhiContact Rya Baby for Call Girls New Delhi
Contact Rya Baby for Call Girls New Delhi
 
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
定制(UAL学位证)英国伦敦艺术大学毕业证成绩单原版一比一
 
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With RoomVIP Kolkata Call Girl Dum Dum 👉 8250192130  Available With Room
VIP Kolkata Call Girl Dum Dum 👉 8250192130 Available With Room
 
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
Packaging the Monolith - PHP Tek 2024 (Breaking it down one bite at a time)
 
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
Call Girls in Uttam Nagar Delhi 💯Call Us 🔝8264348440🔝
 
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With RoomVIP Kolkata Call Girl Salt Lake 👉 8250192130  Available With Room
VIP Kolkata Call Girl Salt Lake 👉 8250192130 Available With Room
 
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts serviceChennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
Chennai Call Girls Alwarpet Phone 🍆 8250192130 👅 celebrity escorts service
 
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130  Available With RoomVIP Kolkata Call Girl Alambazar 👉 8250192130  Available With Room
VIP Kolkata Call Girl Alambazar 👉 8250192130 Available With Room
 
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130  Available With RoomVIP Kolkata Call Girl Kestopur 👉 8250192130  Available With Room
VIP Kolkata Call Girl Kestopur 👉 8250192130 Available With Room
 
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in  Rk Puram 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Rk Puram 🔝 9953056974 🔝 Delhi escort Service
 
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls KolkataRussian Call Girls in Kolkata Samaira 🤌  8250192130 🚀 Vip Call Girls Kolkata
Russian Call Girls in Kolkata Samaira 🤌 8250192130 🚀 Vip Call Girls Kolkata
 
Denver Web Design brochure for public viewing
Denver Web Design brochure for public viewingDenver Web Design brochure for public viewing
Denver Web Design brochure for public viewing
 
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
定制(Management毕业证书)新加坡管理大学毕业证成绩单原版一比一
 
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on DeliveryCall Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
Call Girls In Mumbai Central Mumbai ❤️ 9920874524 👈 Cash on Delivery
 
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdf
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdfThe Intriguing World of CDR Analysis by Police: What You Need to Know.pdf
The Intriguing World of CDR Analysis by Police: What You Need to Know.pdf
 

DevOne - How to not fail with Azure

  • 1. How to not fail with Azure. As a dev, an ops and an architect Martin Gutenbrunner @MartinGoodwell
  • 2. About me  Failed in oh so many numerous ways, and learned from it  as a developer  mainly Java, Javascript, a bit of .net, some scripts. From browser to database  as an operator  set up and maintain Dev, Int, and Prod environments; deploy to them and monitor them  and as an architect  with every new project, tried to structure things better, to make projects grow healthier over time.
  • 3. What about Azure then? The Cloud comes with lots of best-practices built-in
  • 4. Let's start with a comparison
  • 6. Amazon Web Services - Products
  • 7. Google Cloud Platform - Locations
  • 11. Azure specifics  more cloud locations than AWS and Google combined  dedicated regional cloud locations, like Azure Deutschland  Azure Stack for your local datacenter to cover hybrid needs
  • 13. Microsoft is in it's third era now  Bill Gates – A Windows computer on every desk  Steve Ballmer – Enterprise focus  Satya Nadella – Use whatever tech you want; and you can run it on Azure
  • 14. Azure or not Azure? That's just like Java vs. .net
  • 15. Disclaimer – What is the Cloud?  The Cloud as such is "just" another datacenter, that's designed to be self-serviceable  "The Cloud is not about where you run it, but how you build your systems"  If you're happy with on-prem, non-cloud, keep doing.  once you reach a certain scale, you might want to think about alternatives.  The Cloud use-case is really about  if downtime is not an option  environments that are too big to be handled manually  be able to scale at any time  scale at a very fine-coarsed granularity – scale single services instead of just duplicating instances  being able to scale also means being able to fail-over  scalability at that level comes at a lower TOC
  • 16. How I failed as a Developer (Developers depicted as Rocket Man? Dream on, dude)
  • 18. Just joking, of course I did
  • 19. Don't mistake "failure" for "I wasn't even aware that there's a better way of doing it" You'll absolutely need version control, dependency management, build servers, CI/CD, ...
  • 20. I'll show you how to do that in Azure
  • 21. I should have told you about the following things up to now  Use version control – a no brainer  If you're going open-source, share your code from first check-in  because no one's code is perfect  don't say "I'll share, but I'll have to clean up my code first"  Use dependency management  Do Unit-Tests, continuous integration, deployment automation
  • 22. How I failed as an Operator (Operators wearing tighs? Sure)
  • 23. I once installed MongoDB manually instead of using the distribution package.
  • 24. When I had to setup the database server from scratch, I spent half a day looking for that d*mn license file having a VM image would have helped safe so much time
  • 25. When I first played with the Cloud, all I did was setting up a VM and wondering what all this fuzz was all about until I discovered Infrastructure-as-Code and all the Cloud-specific goodies.
  • 26. On to Azure. I'll show you some things
  • 28. I should have told you about the following things up to now  Know, how to spin up all your infrastructure automatically  requires at least VMs, don't run on bare-metal. Ever.  I mean it  Check, whether required databases, queues, etc are available as a service  even if they are more expensive than self-maintenance, check worst-case pricing  Don't just run VMs in the Cloud  Don't lift-and-shift  Makes no op's life easier. Only services do.
  • 29. How I failed as an Architect (Architects and brains? I don't get it.)
  • 30. Once we wanted to add MongoDB to our project The problem was, that Ops didn't want us to, because they didn't know how to operate MongoDB Which was lucky, because MongoDB wouldn't have made any sense in that context 
  • 31. Me and a fellow architect decided to have both of our applications use the same way of authentication by using the same database and tables.
  • 32. I didn't look into new concepts, because I thought I already know everything I need.
  • 33. I should have told you about the following things up to now  Don't run for every hype, even though the Cloud makes it much easier to use new technology  And don't use a different language for each problem just because you can.  Focus of tech-choice should be your human resources, not the tech that's optimized to the last bit  Know the trades of what makes a microservice-based architecture  Know about bounded-contexts (Domain-Driven-Design)  You want to share functionality?  Make it a service  But don't just wrap CRUD operations into it's own layer  Be open-minded
  • 34. "The Cloud is not about where you run it, but how you build your systems"
  • 35. So, how to actually build your system, so it's "Cloud"?
  • 36. Lessons learned, for DevOps and architecture  Think about human scalability first, not about technical scalability  If something feels wrong, think again  Right/wrong is not a black/white thing. You might be 80% right already  Honor bounded contexts (this is primarily for devs and architects)  a single chapter in the book Domain-Driven-Design by Eric Evans  Read about microservices, and keep reading. Lots of good blogs out there, especially company blogs  even if you don't want to build upon them.  much of the magic is in the domain model  Practice  Don't expect your first project or microservice to be the perfect one  Start with something of secondary priority / importance  lower traffic, less interdependencies  Don't fix what's not broken (big-bang refactorings, just for the sake of it)
  • 37. Be a team player
  • 38. TEAM There is no "I" in ?
  • 39. TEAM Oh, there is. I've found it: It's in the A-hole.
  • 41. Try to productize your workflow. Even if you're a project-centric team. Productizing sets a clear mind for automation of workflows and stuff. Right, but don't over-engineer 
  • 42. Don't re-invent the wheel. Build upon what's there
  • 43. PaaS, Service Bus, Application Gateway, Storage, ...
  • 45. Q & A