Slide 1

Slide 1 text

No content

Slide 2

Slide 2 text

Umbraco HQ: The evolution of the Umbraco Cloud platform Martin Humlund Clausen - Cloud platform team lead Mikkel Holck Madsen - Umbraco Cloud mastermind

Slide 3

Slide 3 text

Who are we? Martin H. Clausen - Umbraco Cloud Platform team lead Mikkel H. Madsen - Umbraco Cloud mastermind

Slide 4

Slide 4 text

What is the platform team at Umbraco?

Slide 5

Slide 5 text

Who is the platform team at Umbraco?

Slide 6

Slide 6 text

"Umbraco Cloud should be the best place to run Umbraco.” Why this talk

Slide 7

Slide 7 text

Chapter 1 - Where we started Chapter 2 - … Chapter 3 - …

Slide 8

Slide 8 text

Cloud Team 2014/15 Team

Slide 9

Slide 9 text

Team

Slide 10

Slide 10 text

Azure

Slide 11

Slide 11 text

Platform

Slide 12

Slide 12 text

Platform

Slide 13

Slide 13 text

Platform

Slide 14

Slide 14 text

Platform

Slide 15

Slide 15 text

Platform

Slide 16

Slide 16 text

Platform

Slide 17

Slide 17 text

Azure

Slide 18

Slide 18 text

CQRS Event Sourcing Infinite storage SignalR Long running processes ASP.NET MVC 3 .NET 4 AngularJs Code

Slide 19

Slide 19 text

Code

Slide 20

Slide 20 text

It was perfect - until it wasn’t.. It was perfect

Slide 21

Slide 21 text

● Time to provision new hardware ● Maintaining File servers! ● SQL server optimization ● Team scalability ● Unable to extend the Hosting platform further!

Slide 22

Slide 22 text

Features Operations Single region

Slide 23

Slide 23 text

Features Operations Single region

Slide 24

Slide 24 text

Features Operations Features Operations Multi regions

Slide 25

Slide 25 text

Features Operations Features Operations Multi regions Features Operations

Slide 26

Slide 26 text

No content

Slide 27

Slide 27 text

Chapter 1 - Where we started Chapter 2 - We need to do something, or else.. Chapter 3 - …

Slide 28

Slide 28 text

"Umbraco Cloud should be the best place to run Umbraco.”

Slide 29

Slide 29 text

To not repeat history we had to ask ourselves "What do we need to change internally and what is the most important things to get done right”

Slide 30

Slide 30 text

Provide guidelines and best practices Infrastructure as code Automated testing Observability Release with confidence Guiding principles

Slide 31

Slide 31 text

Rethink Identify challenges with the infrastructure, and figure solutions to those challenges.

Slide 32

Slide 32 text

● Storage of website data ● CDN ● Control of traffic ● We don’t want to manage hardware ● Identity management ● Proven technology ● Hosting support ● We want to get back to deliver features to customers Challenges

Slide 33

Slide 33 text

2020 2021 2022 ● Make us independent from the whitelabel solution ● Take ownership of hosting data ● Move to Azure blob for image storage ● Identity management - Umbraco Id

Slide 34

Slide 34 text

2020 2021 2022 ● Introduce native Azure hosting ● Decomposing the monolith into dedicated services ● Remember “23.100.15.180” ? ● Introducing Cloudflare - taking control of traffic ● Migrated all websites away from AP and on to the new platform

Slide 35

Slide 35 text

2020 2021 2022

Slide 36

Slide 36 text

2020 2021 2022

Slide 37

Slide 37 text

2020 2021 2022 ● Enabled CDN caching on content and media as well as automatic minification of css, js and html ● Regional Hosting

Slide 38

Slide 38 text

2020 2021 Automatic Upgrades - old platform 2022

Slide 39

Slide 39 text

2020 2021 Automatic Upgrades - old platform Online 24/7 2022

Slide 40

Slide 40 text

2020 2021 Automatic Upgrades - old platform Online 24/7 2022

Slide 41

Slide 41 text

2020 2021 Automatic Upgrades - old platform Online 24/7 2022

Slide 42

Slide 42 text

2020 2021 Automatic Upgrades - old platform Online 24/7 Constraints on - Scalability (time to run upgrades increased) - Performance - Hardware sitting idle for weeks 2022

Slide 43

Slide 43 text

2020 2021 Automatic Upgrades - new platform 2022

Slide 44

Slide 44 text

2020 2021 Automatic Upgrades - new platform On demand 2022

Slide 45

Slide 45 text

2020 2021 Automatic Upgrades - new platform 2022

Slide 46

Slide 46 text

2020 2021 Automatic Upgrades - new platform 2022

Slide 47

Slide 47 text

2020 2021 Automatic Upgrades - new platform 2022

Slide 48

Slide 48 text

2020 2021 Automatic Upgrades - new platform 2022 done

Slide 49

Slide 49 text

2020 2021 2022

Slide 50

Slide 50 text

Chapter 1 - Where we started Chapter 2 - This is meh, we need to do something, or else Chapter 3 - To infinity and beyond

Slide 51

Slide 51 text

Umbraco Cloud is in a good place The foundation is right

Slide 52

Slide 52 text

Idea: Feature environments

Slide 53

Slide 53 text

Idea: Bring your own repository

Slide 54

Slide 54 text

See you around at Codegarden Don’t be a stranger! We want to talk tech! Thank you for listening Microservices AKS (Kubernetes) Azure API Management Docker .NET 6 Azure App Configuration KeyVault Terraform Cloudflare Domain Driven Design principles Event driven Automated testing Yaml pipelines SpecFlow Playwright Azure B2C