SlideShare una empresa de Scribd logo
1 de 44
Descargar para leer sin conexión
www.aspex.be 1
Modernizing Existing Apps
Using the Azure platform
www.aspex.be 22
We work closely with you to build up technical
insight into your software.
We give you full SaaS support and offer added-value
through our experience and management tools.
---
Visit www.aspex.be for more information
Thomas Van Laere
2015 - TODAY
Microsoft Azure
Consultant
@Thomas_VanLaere
www.aspex.be 3
www.aspex.be 4
Why modernize?
www.aspex.be 5
Why modernize?
5
— Standardization
— DevOps with CI/CD
— High-availability
— Analytics
— Infrastructure cost
— Maintenance
www.aspex.be 6
Great! Where do we start?
www.aspex.be 7
#define modernize types
7
— Full rewrite
— Infrastructure upgrade
— Refactor feature
— Software upgrade
www.aspex.be 8
Where do we start - Approaches
8
Cloud
Infrastructure
Ready
Cloud
Native
Cloud
DevOps
Ready
Existing
Application or
Service
www.aspex.be 9
Approach A: Cloud Infrastructure Ready
9
Rehost the on-premise application using IaaS on Azure
Existing Apps
On-Premise
IaaS
PROS
— Architecture remains
— Quick migration
— Least amount of effort
www.aspex.be 10
Approach A: Cloud Infrastructure Ready
10
Scenario: Filtering naughty requests with Azure Application Gateway
Application
Gateway
VM Scale Set
SQL Injection
XSS Attack
Valid Request
Azure VM
Azure VM
Azure VM
HTTP(S)
www.aspex.be 11
Approach A: Cloud Infrastructure Ready
11
Tools
Azure Migrate *Preview
www.aspex.be 12
Approach A: Cloud Infrastructure Ready
12
vCenter Server and
vSphere support
6.5, 6.0, 5.5
Windows Guest OS
support
Windows Server 2016 NEW
Windows Server 2012 R2
Windows Server 2012
Windows Server 2008 R2
Linux Guest OS support RHEL 5.*, 6.* and 7.*
Cent OS 5.*, 6.* and 7.*
Ubuntu 14.04 and 16.04 LTS NEW
SUSE Enterprise Server 11 SP3, SP4
OEL 6.4 and 6.5
Debian 7 and 8 support NEW
Azure platform support Managed Disk NEW
Up to 4TB data disk support NEW
Encrypted Storage NEW
Azure Hybrid Use Benefit NEW
www.aspex.be 13
Approach A: Cloud Infrastructure Ready
13
Other Tools
Azure Site Recovery
Azure Database Migration Service
Database Migration Service
www.aspex.be 14
Approach A: Cloud Infrastructure Ready
14
Rehost the on-premise application using IaaS on Azure
Existing Apps
On-Premise
IaaS
CONS
— Smaller value
— Manual patching
— Manual upgrades
— No auto scaling
— No auto high availability
PROS
— Architecture remains
— Quick migration
— Least amount of effort
www.aspex.be 15
Where do we start - Approaches
15
Cloud
Infrastructure
Ready
Cloud
Native
Existing
Application or
Service
Cloud
DevOps
Ready
www.aspex.be 16
Approach B: Cloud DevOps Ready
16
Increase benefits by Containerizing with Windows Server Containers and
deploying them to Azure or on-premises
Existing Apps
On-Premise
Lift & Shift PROS
— Architecture remains
— Increased density
— Lower deployment cost
— Improved productivity
— High Availability
— Orchestration tooling
— Azure Service Fabric
— Azure Container Service
+ Potential
other Azure
services
www.aspex.be 17
Approach B: Cloud DevOps Ready
www.aspex.be 18
Approach B: Cloud DevOps Ready
18
Virtual Machines vs Docker Containers
www.aspex.be 19
Approach B: Cloud DevOps Ready
19
Virtual Machines vs Docker Containers
www.aspex.be 20
Approach B: Cloud DevOps Ready
20
Docker Images & Containers - 30.000 feet view
https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/
Security Patches
.NET Core
Debian 8.9 “Jessie”
Layer 3
Layer 2
Layer 1
www.aspex.be 21
Approach B: Cloud DevOps Ready
21
Docker Images & Containers - 30.000 feet view
https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/
File 2
File 1
File 3 File 4
File 5 Layer 3
Layer 2
Layer 1
www.aspex.be 22
Approach B: Cloud DevOps Ready
22
Docker Images & Containers - 30.000 feet view
https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/
File 2File 1 File 4File 5
www.aspex.be 23
Approach B: Cloud DevOps Ready
23
Docker Engine - 30.000 feet view
Docker Client
>_
Docker Engine
deamon
containerd
runc
*As of Docker 1.11 (2016)
www.aspex.be 24
Approach B: Cloud DevOps Ready
24
Docker 💖 .NET
.NET Framework images
— Windows Server Core
.NET Core images
— Linux
— Windows Nano Server
www.aspex.be 25
Approach B: Cloud DevOps Ready
25
Building Docker Images
Requirements
— Dockerfile
— Application Binaries
Optionally
— Docker Compose files
www.aspex.be 26
Approach B: Cloud DevOps Ready
26
Image2Docker
— PowerShell
— Simplify creation of Dockerfiles
— Open Source tool with support
from Docker Inc.
— Built-in artifact discovery
www.aspex.be 27
Approach B: Cloud DevOps Ready
27
Scenario: Deploy to Azure VM through Docker Engine
Dev environment
(Windows 10 w/ Docker for Windows)
SQL Server Container
Windows Server Core
ASP.NET 4.6.2 Container
Windows Server Core
Docker
Image
Repository
1 > docker-compose build
2> docker-compose
Azure VM (Test/Accept)
(Windows 10 w/ Docker for Windows)
SQL Server Container
Windows Server Core
ASP.NET 4.6.2 Container
Windows Server Core
Docker
Image
Repository
2b> docker run
www.aspex.be 28
Approach B: Cloud DevOps Ready
28
Scenario: Deploy to Azure VM through Azure Container Registry
ACRDev environment
(Windows 10 w/ Docker for Windows)
SQL Server Container
Windows Server Core
ASP.NET 4.6.2 Container
Windows Server Core
Docker
Image
Repository
1 > docker-compose build
Azure VM (Test/Accept)
(Windows 10 w/ Docker for Windows)
SQL Server Container
Windows Server Core
ASP.NET 4.6.2 Container
Windows Server Core
Docker
Image
Repository
4> docker-compose up
www.aspex.be 29
Approach B: Cloud DevOps Ready
29
Scenario: Deploy to Azure VM through your CI/CD pipeline (IaaS)
1. Dev environment
2. Code repo 3. Build
ACR
4. Release 5. Test/Accept
SQL
Web
SQL
Web
www.aspex.be 30
Approach B: Cloud DevOps Ready
30
Scaling, High Availability in Production
ASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server CoreASP.NET 4.6.2 Container
Windows Server Core
— Azure SQL Database Single/Elastic Pools
— Azure SQL Database Managed Instance
— SQL Server Cluster
www.aspex.be 31
Approach B: Cloud DevOps Ready
31
Azure Container Service - Kubernetes
Kubernetes Cluster – Production
Windows Server 2016 nodes
Private VNETNode
Docker HostNode
Docker HostNode
Docker HostNode
Docker HostNode
Web_1
Web_2
Master Node
-Deployment
-Proxy
-Scheduling
-Etc..
K
Pod 1
Pod 2
www.aspex.be 32
Approach B: Cloud DevOps Ready
32
Previous Scenario: Deploy to Azure VM through your CI/CD pipeline (IaaS)
1. Dev environment
2. Code repo 3. Build
ACR
4. Release 5. Test/Accept
SQL
Web
SQL
Web
www.aspex.be 33
Approach B: Cloud DevOps Ready
33
Scenario: Deploy to Orchestrators in Production (IaaS)
1. Dev environment
2. Code repo 3. Build
ACR
4. Release 5. Production
ACS
SQL
Web
www.aspex.be 34
Approach B: Cloud DevOps Ready
34
Scenario: Move to Azure Container Instances (PaaS)
1. Dev environment
2. Code repo 3. Build
ACR
4. Release 5. Production
ACI
SQL
Web
*Preview
www.aspex.be 35
Approach B: Cloud DevOps Ready
35
Increase benefits by Containerizing with Windows Server Containers and
deploying them to Azure or on-premises
Existing Apps
On-Premise
Lift & Shift
CONS
— Learning Curve
— Paradigm Shift
PROS
— Architecture remains
— Increased density
— Lower deployment cost
— Improved productivity
— High Availability
— Orchestration tooling
+ Potential
other Azure
services
www.aspex.be 36
Where do we start - Approaches
36
Cloud
Infrastructure
Ready
Cloud
Native
Cloud
DevOps
Ready
Existing
Application or
Service
www.aspex.be 37
Approach C: Cloud Optimized
37
Extend apps with Azure Cloud Services
Existing Apps
On-Premise
PROS
— Optimized for long term Agility
— Optimized for scale
— Optimized for high availability
— Modern architecture
Cloud-optimized
www.aspex.be 38
Approach C: Cloud Optimized
Traditional Application
— Few Processes
— Componentized with layers and
libraries
— Scaling achieved by cloning the app
— Multiple VMs/Containers
— Split up functionality into multiple
processes
— Scaling achieved through cloning
individual processes.
Microservices Application
www.aspex.be 39
Approach C: Cloud Optimized
39
Traditional Application Microservices Application
App X App X
www.aspex.be 40
Approach C: Cloud Optimized
40
What about Azure App Services? (aka Azure Web Apps)
ASP.NET
MCV
Web Forms
Web API
SignalR
Web Pages
WCF
App has
Server/Custom
Dependencies?
Cloud Optimized Approach
Azure App Service
No
Cloud DevOps Approach
Yes
www.aspex.be 41
Approach C: Cloud Optimized
41
Extend apps with Azure Cloud Services
Existing Apps
On-Premise
CONS
— Increased time and budget
— Code refactoring
— New features
— Learning curve
PROS
— Optimized for long term Agility
— Optimized for scale
— Optimized for high availability
— Modern architecture
Cloud-optimized
www.aspex.be 42
Data Migration
42
Data Migration
Azure SQL DB Managed Instance
— Built-in HA
— Built-in Scaling
— Built-in Patching
— Built-in Upgrades
— Private IP address via VNET
SQL Server – On-Premise
— No migration / changes
— Hybrid scenarios
— S2S-VPN / ExpressRoute
— Latency
SQL Server – Azure VMs
— Fast migration
— Hybrid scenarios
— Manual HA
— Manual Scaling
— Manual Patching
www.aspex.be 43
Other Recommended Improvements
43
Other Recommended Improvements
.NET Versions
— Recompile .NET 2.0, 3.5 apps to 4.x
ASP.NET Caching
— InProc vs. Distributed Caching
— Azure Redis Cache
Centralized Logging
— Native support for log tracing and diagnostics
Security
— Encryption, MFA, RBAC, HSM, etc..
Identity
— Azure Active Directory, AD Connect
www.aspex.be 44
THANK YOU
QUESTIONS?

Más contenido relacionado

La actualidad más candente

CI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the TimeCI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the TimeAmazon Web Services
 
Building Developer Pipelines with PKS, Harbor, Clair, and Concourse
Building Developer Pipelines with PKS, Harbor, Clair, and ConcourseBuilding Developer Pipelines with PKS, Harbor, Clair, and Concourse
Building Developer Pipelines with PKS, Harbor, Clair, and ConcourseVMware Tanzu
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSAmazon Web Services
 
Hybris install telco accelerators on aws-ec2
Hybris   install telco accelerators on aws-ec2Hybris   install telco accelerators on aws-ec2
Hybris install telco accelerators on aws-ec2Venugopal Gummadala
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realistsKarthik Gaekwad
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as codeAxel Quack
 
Operational Best Practices in the Cloud
Operational Best Practices in the CloudOperational Best Practices in the Cloud
Operational Best Practices in the CloudRightScale
 
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Amazon Web Services
 
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Animesh Singh
 
Pivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First LookPivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First LookVMware Tanzu
 
AWS Webcast - Continuous integration with AWS and Ravello
AWS Webcast - Continuous integration with AWS and RavelloAWS Webcast - Continuous integration with AWS and Ravello
AWS Webcast - Continuous integration with AWS and RavelloAmazon Web Services
 
How to build the Cloud Native applications the way you want – not the way the...
How to build the Cloud Native applications the way you want – not the way the...How to build the Cloud Native applications the way you want – not the way the...
How to build the Cloud Native applications the way you want – not the way the...Eficode
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesSlideTeam
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSDanilo Poccia
 
Developer Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve ParityDeveloper Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve ParityMichael Hofmann
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Amazon Web Services
 

La actualidad más candente (20)

IaC on AWS Cloud
IaC on AWS CloudIaC on AWS Cloud
IaC on AWS Cloud
 
CI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the TimeCI/CD on AWS Deploy Everything All the Time
CI/CD on AWS Deploy Everything All the Time
 
Building Developer Pipelines with PKS, Harbor, Clair, and Concourse
Building Developer Pipelines with PKS, Harbor, Clair, and ConcourseBuilding Developer Pipelines with PKS, Harbor, Clair, and Concourse
Building Developer Pipelines with PKS, Harbor, Clair, and Concourse
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
AWS Code Services
AWS Code ServicesAWS Code Services
AWS Code Services
 
Hybris install telco accelerators on aws-ec2
Hybris   install telco accelerators on aws-ec2Hybris   install telco accelerators on aws-ec2
Hybris install telco accelerators on aws-ec2
 
Containers and microservices for realists
Containers and microservices for realistsContainers and microservices for realists
Containers and microservices for realists
 
Infrastructure as code
Infrastructure as codeInfrastructure as code
Infrastructure as code
 
Cloud Foundry Overview
Cloud Foundry OverviewCloud Foundry Overview
Cloud Foundry Overview
 
Operational Best Practices in the Cloud
Operational Best Practices in the CloudOperational Best Practices in the Cloud
Operational Best Practices in the Cloud
 
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
Managing Your Application Lifecycle on AWS: Continuous Integration and Deploy...
 
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
Introducing Cloud Native, Event Driven, Serverless, Micrsoservices Framework ...
 
Pivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First LookPivotal Cloud Foundry 2.0: First Look
Pivotal Cloud Foundry 2.0: First Look
 
AWS Webcast - Continuous integration with AWS and Ravello
AWS Webcast - Continuous integration with AWS and RavelloAWS Webcast - Continuous integration with AWS and Ravello
AWS Webcast - Continuous integration with AWS and Ravello
 
How to build the Cloud Native applications the way you want – not the way the...
How to build the Cloud Native applications the way you want – not the way the...How to build the Cloud Native applications the way you want – not the way the...
How to build the Cloud Native applications the way you want – not the way the...
 
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation SlidesKubernetes Concepts And Architecture Powerpoint Presentation Slides
Kubernetes Concepts And Architecture Powerpoint Presentation Slides
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
CI/CD on AWS
CI/CD on AWSCI/CD on AWS
CI/CD on AWS
 
Developer Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve ParityDeveloper Experience Cloud Native - Become Efficient and Achieve Parity
Developer Experience Cloud Native - Become Efficient and Achieve Parity
 
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
Continuous Integration and Deployment Best Practices on AWS (ARC307) | AWS re...
 

Similar a Modernizing Your Existing Applications

Containers in Microsoft Azure
Containers in Microsoft AzureContainers in Microsoft Azure
Containers in Microsoft AzureSergii Kryshtop
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudMicrosoft Tech Community
 
What's new in containers
What's new in containersWhat's new in containers
What's new in containersMicrosoft
 
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
 
Rackspace Best Practices for DevOps on AWS
Rackspace Best Practices for DevOps on AWSRackspace Best Practices for DevOps on AWS
Rackspace Best Practices for DevOps on AWSAmazon Web Services
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSAmazon Web Services
 
Application Portability using Cloud Native Technology: Docker, Kubernetes
Application Portability using Cloud Native Technology: Docker, KubernetesApplication Portability using Cloud Native Technology: Docker, Kubernetes
Application Portability using Cloud Native Technology: Docker, KubernetesAarno Aukia
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...Ian Choi
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics sbbabu
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET DevelopersLorenzo Barbieri
 
Kubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformKubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformLorenzo Barbieri
 
IPv6 on Container Plattforms
IPv6 on Container PlattformsIPv6 on Container Plattforms
IPv6 on Container PlattformsAarno Aukia
 
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...Digicomp Academy AG
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsMichael Elder
 
Pivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformPivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformRonak Banka
 
AWS ECS Copilot DevOps Presentation
AWS ECS Copilot DevOps PresentationAWS ECS Copilot DevOps Presentation
AWS ECS Copilot DevOps PresentationVarun Manik
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and KubernetesNills Franssens
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesPatrick Chanezon
 
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAmazon Web Services
 

Similar a Modernizing Your Existing Applications (20)

Containers in Microsoft Azure
Containers in Microsoft AzureContainers in Microsoft Azure
Containers in Microsoft Azure
 
Modernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloudModernizing existing .NET applications with Windows Containers and Azure cloud
Modernizing existing .NET applications with Windows Containers and Azure cloud
 
What's new in containers
What's new in containersWhat's new in containers
What's new in containers
 
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”
 
Rackspace Best Practices for DevOps on AWS
Rackspace Best Practices for DevOps on AWSRackspace Best Practices for DevOps on AWS
Rackspace Best Practices for DevOps on AWS
 
Continuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWSContinuous Integration and Deployment Best Practices on AWS
Continuous Integration and Deployment Best Practices on AWS
 
Application Portability using Cloud Native Technology: Docker, Kubernetes
Application Portability using Cloud Native Technology: Docker, KubernetesApplication Portability using Cloud Native Technology: Docker, Kubernetes
Application Portability using Cloud Native Technology: Docker, Kubernetes
 
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
 
Kubernetes for .NET Developers
Kubernetes for .NET DevelopersKubernetes for .NET Developers
Kubernetes for .NET Developers
 
Kubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platformKubernetes VS. App Service: When the orchestrator challenges the platform
Kubernetes VS. App Service: When the orchestrator challenges the platform
 
IPv6 on Container Plattforms
IPv6 on Container PlattformsIPv6 on Container Plattforms
IPv6 on Container Plattforms
 
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...
Swiss IPv6 Council – Case Study - Deployment von IPv6 in einer Container Plat...
 
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling CloudsElevating your Continuous Delivery Strategy Above the Rolling Clouds
Elevating your Continuous Delivery Strategy Above the Rolling Clouds
 
Pivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platformPivotal CloudFoundry on Google cloud platform
Pivotal CloudFoundry on Google cloud platform
 
AWS ECS Copilot DevOps Presentation
AWS ECS Copilot DevOps PresentationAWS ECS Copilot DevOps Presentation
AWS ECS Copilot DevOps Presentation
 
Containers and Kubernetes
Containers and KubernetesContainers and Kubernetes
Containers and Kubernetes
 
Cloud computing: highlights
Cloud computing: highlightsCloud computing: highlights
Cloud computing: highlights
 
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud ServicesGIDS 2019: Developing Apps with Containers, Functions and Cloud Services
GIDS 2019: Developing Apps with Containers, Functions and Cloud Services
 
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWSAWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
AWS January 2016 Webinar Series - Introduction to Deploying Applications on AWS
 

Más de ASPEX_BE

Human Ingenuity Amplified by Intelligent Technology
Human Ingenuity Amplified by Intelligent TechnologyHuman Ingenuity Amplified by Intelligent Technology
Human Ingenuity Amplified by Intelligent TechnologyASPEX_BE
 
Kubernetes: Container Orchestration for Production-grade People
Kubernetes: Container Orchestration for Production-grade PeopleKubernetes: Container Orchestration for Production-grade People
Kubernetes: Container Orchestration for Production-grade PeopleASPEX_BE
 
Aspex Tech Partner Event 2018 - Keynote
Aspex Tech Partner Event 2018 - KeynoteAspex Tech Partner Event 2018 - Keynote
Aspex Tech Partner Event 2018 - KeynoteASPEX_BE
 
Azure Management Basics
Azure Management BasicsAzure Management Basics
Azure Management BasicsASPEX_BE
 
Aspex tech partner event 12-12-17
Aspex tech partner event 12-12-17Aspex tech partner event 12-12-17
Aspex tech partner event 12-12-17ASPEX_BE
 
The Microsoft vision for Blockchain
The Microsoft vision for BlockchainThe Microsoft vision for Blockchain
The Microsoft vision for BlockchainASPEX_BE
 
2014 02 20_iamcp_partner_networking_aspe_xl
2014 02 20_iamcp_partner_networking_aspe_xl2014 02 20_iamcp_partner_networking_aspe_xl
2014 02 20_iamcp_partner_networking_aspe_xlASPEX_BE
 

Más de ASPEX_BE (7)

Human Ingenuity Amplified by Intelligent Technology
Human Ingenuity Amplified by Intelligent TechnologyHuman Ingenuity Amplified by Intelligent Technology
Human Ingenuity Amplified by Intelligent Technology
 
Kubernetes: Container Orchestration for Production-grade People
Kubernetes: Container Orchestration for Production-grade PeopleKubernetes: Container Orchestration for Production-grade People
Kubernetes: Container Orchestration for Production-grade People
 
Aspex Tech Partner Event 2018 - Keynote
Aspex Tech Partner Event 2018 - KeynoteAspex Tech Partner Event 2018 - Keynote
Aspex Tech Partner Event 2018 - Keynote
 
Azure Management Basics
Azure Management BasicsAzure Management Basics
Azure Management Basics
 
Aspex tech partner event 12-12-17
Aspex tech partner event 12-12-17Aspex tech partner event 12-12-17
Aspex tech partner event 12-12-17
 
The Microsoft vision for Blockchain
The Microsoft vision for BlockchainThe Microsoft vision for Blockchain
The Microsoft vision for Blockchain
 
2014 02 20_iamcp_partner_networking_aspe_xl
2014 02 20_iamcp_partner_networking_aspe_xl2014 02 20_iamcp_partner_networking_aspe_xl
2014 02 20_iamcp_partner_networking_aspe_xl
 

Último

Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsMonica Sydney
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdfMatthew Sinclair
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsMonica Sydney
 
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsMonica Sydney
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样ayvbos
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrHenryBriggs2
 
Best SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasBest SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasDigicorns Technologies
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdfMatthew Sinclair
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge GraphsEleniIlkou
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptxAsmae Rabhi
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查ydyuyu
 
PowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxPowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxgalaxypingy
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfJOHNBEBONYAP1
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdfMatthew Sinclair
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtrahman018755
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Roommeghakumariji156
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolinonuriaiuzzolino1
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftAanSulistiyo
 

Último (20)

Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girlsRussian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
Russian Call girls in Abu Dhabi 0508644382 Abu Dhabi Call girls
 
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
20240509 QFM015 Engineering Leadership Reading List April 2024.pdf
 
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi EscortsIndian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
Indian Escort in Abu DHabi 0508644382 Abu Dhabi Escorts
 
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi EscortsRussian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
Russian Escort Abu Dhabi 0503464457 Abu DHabi Escorts
 
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
一比一原版(Curtin毕业证书)科廷大学毕业证原件一模一样
 
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrStory Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
Story Board.pptxrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr
 
Best SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency DallasBest SEO Services Company in Dallas | Best SEO Agency Dallas
Best SEO Services Company in Dallas | Best SEO Agency Dallas
 
20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf20240508 QFM014 Elixir Reading List April 2024.pdf
20240508 QFM014 Elixir Reading List April 2024.pdf
 
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
2nd Solid Symposium: Solid Pods vs Personal Knowledge Graphs
 
75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx75539-Cyber Security Challenges PPT.pptx
75539-Cyber Security Challenges PPT.pptx
 
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
APNIC Policy Roundup, presented by Sunny Chendi at the 5th ICANN APAC-TWNIC E...
 
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
哪里办理美国迈阿密大学毕业证(本硕)umiami在读证明存档可查
 
PowerDirector Explination Process...pptx
PowerDirector Explination Process...pptxPowerDirector Explination Process...pptx
PowerDirector Explination Process...pptx
 
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdfpdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
pdfcoffee.com_business-ethics-q3m7-pdf-free.pdf
 
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
20240510 QFM016 Irresponsible AI Reading List April 2024.pdf
 
APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53APNIC Updates presented by Paul Wilson at ARIN 53
APNIC Updates presented by Paul Wilson at ARIN 53
 
Real Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirtReal Men Wear Diapers T Shirts sweatshirt
Real Men Wear Diapers T Shirts sweatshirt
 
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac RoomVip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
Vip Firozabad Phone 8250092165 Escorts Service At 6k To 30k Along With Ac Room
 
Power point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria IuzzolinoPower point inglese - educazione civica di Nuria Iuzzolino
Power point inglese - educazione civica di Nuria Iuzzolino
 
Microsoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck MicrosoftMicrosoft Azure Arc Customer Deck Microsoft
Microsoft Azure Arc Customer Deck Microsoft
 

Modernizing Your Existing Applications

  • 1. www.aspex.be 1 Modernizing Existing Apps Using the Azure platform
  • 2. www.aspex.be 22 We work closely with you to build up technical insight into your software. We give you full SaaS support and offer added-value through our experience and management tools. --- Visit www.aspex.be for more information Thomas Van Laere 2015 - TODAY Microsoft Azure Consultant @Thomas_VanLaere
  • 5. www.aspex.be 5 Why modernize? 5 — Standardization — DevOps with CI/CD — High-availability — Analytics — Infrastructure cost — Maintenance
  • 7. www.aspex.be 7 #define modernize types 7 — Full rewrite — Infrastructure upgrade — Refactor feature — Software upgrade
  • 8. www.aspex.be 8 Where do we start - Approaches 8 Cloud Infrastructure Ready Cloud Native Cloud DevOps Ready Existing Application or Service
  • 9. www.aspex.be 9 Approach A: Cloud Infrastructure Ready 9 Rehost the on-premise application using IaaS on Azure Existing Apps On-Premise IaaS PROS — Architecture remains — Quick migration — Least amount of effort
  • 10. www.aspex.be 10 Approach A: Cloud Infrastructure Ready 10 Scenario: Filtering naughty requests with Azure Application Gateway Application Gateway VM Scale Set SQL Injection XSS Attack Valid Request Azure VM Azure VM Azure VM HTTP(S)
  • 11. www.aspex.be 11 Approach A: Cloud Infrastructure Ready 11 Tools Azure Migrate *Preview
  • 12. www.aspex.be 12 Approach A: Cloud Infrastructure Ready 12 vCenter Server and vSphere support 6.5, 6.0, 5.5 Windows Guest OS support Windows Server 2016 NEW Windows Server 2012 R2 Windows Server 2012 Windows Server 2008 R2 Linux Guest OS support RHEL 5.*, 6.* and 7.* Cent OS 5.*, 6.* and 7.* Ubuntu 14.04 and 16.04 LTS NEW SUSE Enterprise Server 11 SP3, SP4 OEL 6.4 and 6.5 Debian 7 and 8 support NEW Azure platform support Managed Disk NEW Up to 4TB data disk support NEW Encrypted Storage NEW Azure Hybrid Use Benefit NEW
  • 13. www.aspex.be 13 Approach A: Cloud Infrastructure Ready 13 Other Tools Azure Site Recovery Azure Database Migration Service Database Migration Service
  • 14. www.aspex.be 14 Approach A: Cloud Infrastructure Ready 14 Rehost the on-premise application using IaaS on Azure Existing Apps On-Premise IaaS CONS — Smaller value — Manual patching — Manual upgrades — No auto scaling — No auto high availability PROS — Architecture remains — Quick migration — Least amount of effort
  • 15. www.aspex.be 15 Where do we start - Approaches 15 Cloud Infrastructure Ready Cloud Native Existing Application or Service Cloud DevOps Ready
  • 16. www.aspex.be 16 Approach B: Cloud DevOps Ready 16 Increase benefits by Containerizing with Windows Server Containers and deploying them to Azure or on-premises Existing Apps On-Premise Lift & Shift PROS — Architecture remains — Increased density — Lower deployment cost — Improved productivity — High Availability — Orchestration tooling — Azure Service Fabric — Azure Container Service + Potential other Azure services
  • 17. www.aspex.be 17 Approach B: Cloud DevOps Ready
  • 18. www.aspex.be 18 Approach B: Cloud DevOps Ready 18 Virtual Machines vs Docker Containers
  • 19. www.aspex.be 19 Approach B: Cloud DevOps Ready 19 Virtual Machines vs Docker Containers
  • 20. www.aspex.be 20 Approach B: Cloud DevOps Ready 20 Docker Images & Containers - 30.000 feet view https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/ Security Patches .NET Core Debian 8.9 “Jessie” Layer 3 Layer 2 Layer 1
  • 21. www.aspex.be 21 Approach B: Cloud DevOps Ready 21 Docker Images & Containers - 30.000 feet view https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/ File 2 File 1 File 3 File 4 File 5 Layer 3 Layer 2 Layer 1
  • 22. www.aspex.be 22 Approach B: Cloud DevOps Ready 22 Docker Images & Containers - 30.000 feet view https://docs.docker.com/engine/userguide/eng-image/dockerfile_best-practices/ File 2File 1 File 4File 5
  • 23. www.aspex.be 23 Approach B: Cloud DevOps Ready 23 Docker Engine - 30.000 feet view Docker Client >_ Docker Engine deamon containerd runc *As of Docker 1.11 (2016)
  • 24. www.aspex.be 24 Approach B: Cloud DevOps Ready 24 Docker 💖 .NET .NET Framework images — Windows Server Core .NET Core images — Linux — Windows Nano Server
  • 25. www.aspex.be 25 Approach B: Cloud DevOps Ready 25 Building Docker Images Requirements — Dockerfile — Application Binaries Optionally — Docker Compose files
  • 26. www.aspex.be 26 Approach B: Cloud DevOps Ready 26 Image2Docker — PowerShell — Simplify creation of Dockerfiles — Open Source tool with support from Docker Inc. — Built-in artifact discovery
  • 27. www.aspex.be 27 Approach B: Cloud DevOps Ready 27 Scenario: Deploy to Azure VM through Docker Engine Dev environment (Windows 10 w/ Docker for Windows) SQL Server Container Windows Server Core ASP.NET 4.6.2 Container Windows Server Core Docker Image Repository 1 > docker-compose build 2> docker-compose Azure VM (Test/Accept) (Windows 10 w/ Docker for Windows) SQL Server Container Windows Server Core ASP.NET 4.6.2 Container Windows Server Core Docker Image Repository 2b> docker run
  • 28. www.aspex.be 28 Approach B: Cloud DevOps Ready 28 Scenario: Deploy to Azure VM through Azure Container Registry ACRDev environment (Windows 10 w/ Docker for Windows) SQL Server Container Windows Server Core ASP.NET 4.6.2 Container Windows Server Core Docker Image Repository 1 > docker-compose build Azure VM (Test/Accept) (Windows 10 w/ Docker for Windows) SQL Server Container Windows Server Core ASP.NET 4.6.2 Container Windows Server Core Docker Image Repository 4> docker-compose up
  • 29. www.aspex.be 29 Approach B: Cloud DevOps Ready 29 Scenario: Deploy to Azure VM through your CI/CD pipeline (IaaS) 1. Dev environment 2. Code repo 3. Build ACR 4. Release 5. Test/Accept SQL Web SQL Web
  • 30. www.aspex.be 30 Approach B: Cloud DevOps Ready 30 Scaling, High Availability in Production ASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server CoreASP.NET 4.6.2 Container Windows Server Core — Azure SQL Database Single/Elastic Pools — Azure SQL Database Managed Instance — SQL Server Cluster
  • 31. www.aspex.be 31 Approach B: Cloud DevOps Ready 31 Azure Container Service - Kubernetes Kubernetes Cluster – Production Windows Server 2016 nodes Private VNETNode Docker HostNode Docker HostNode Docker HostNode Docker HostNode Web_1 Web_2 Master Node -Deployment -Proxy -Scheduling -Etc.. K Pod 1 Pod 2
  • 32. www.aspex.be 32 Approach B: Cloud DevOps Ready 32 Previous Scenario: Deploy to Azure VM through your CI/CD pipeline (IaaS) 1. Dev environment 2. Code repo 3. Build ACR 4. Release 5. Test/Accept SQL Web SQL Web
  • 33. www.aspex.be 33 Approach B: Cloud DevOps Ready 33 Scenario: Deploy to Orchestrators in Production (IaaS) 1. Dev environment 2. Code repo 3. Build ACR 4. Release 5. Production ACS SQL Web
  • 34. www.aspex.be 34 Approach B: Cloud DevOps Ready 34 Scenario: Move to Azure Container Instances (PaaS) 1. Dev environment 2. Code repo 3. Build ACR 4. Release 5. Production ACI SQL Web *Preview
  • 35. www.aspex.be 35 Approach B: Cloud DevOps Ready 35 Increase benefits by Containerizing with Windows Server Containers and deploying them to Azure or on-premises Existing Apps On-Premise Lift & Shift CONS — Learning Curve — Paradigm Shift PROS — Architecture remains — Increased density — Lower deployment cost — Improved productivity — High Availability — Orchestration tooling + Potential other Azure services
  • 36. www.aspex.be 36 Where do we start - Approaches 36 Cloud Infrastructure Ready Cloud Native Cloud DevOps Ready Existing Application or Service
  • 37. www.aspex.be 37 Approach C: Cloud Optimized 37 Extend apps with Azure Cloud Services Existing Apps On-Premise PROS — Optimized for long term Agility — Optimized for scale — Optimized for high availability — Modern architecture Cloud-optimized
  • 38. www.aspex.be 38 Approach C: Cloud Optimized Traditional Application — Few Processes — Componentized with layers and libraries — Scaling achieved by cloning the app — Multiple VMs/Containers — Split up functionality into multiple processes — Scaling achieved through cloning individual processes. Microservices Application
  • 39. www.aspex.be 39 Approach C: Cloud Optimized 39 Traditional Application Microservices Application App X App X
  • 40. www.aspex.be 40 Approach C: Cloud Optimized 40 What about Azure App Services? (aka Azure Web Apps) ASP.NET MCV Web Forms Web API SignalR Web Pages WCF App has Server/Custom Dependencies? Cloud Optimized Approach Azure App Service No Cloud DevOps Approach Yes
  • 41. www.aspex.be 41 Approach C: Cloud Optimized 41 Extend apps with Azure Cloud Services Existing Apps On-Premise CONS — Increased time and budget — Code refactoring — New features — Learning curve PROS — Optimized for long term Agility — Optimized for scale — Optimized for high availability — Modern architecture Cloud-optimized
  • 42. www.aspex.be 42 Data Migration 42 Data Migration Azure SQL DB Managed Instance — Built-in HA — Built-in Scaling — Built-in Patching — Built-in Upgrades — Private IP address via VNET SQL Server – On-Premise — No migration / changes — Hybrid scenarios — S2S-VPN / ExpressRoute — Latency SQL Server – Azure VMs — Fast migration — Hybrid scenarios — Manual HA — Manual Scaling — Manual Patching
  • 43. www.aspex.be 43 Other Recommended Improvements 43 Other Recommended Improvements .NET Versions — Recompile .NET 2.0, 3.5 apps to 4.x ASP.NET Caching — InProc vs. Distributed Caching — Azure Redis Cache Centralized Logging — Native support for log tracing and diagnostics Security — Encryption, MFA, RBAC, HSM, etc.. Identity — Azure Active Directory, AD Connect