Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Choosing Migration strategy and technology

ObjectivesCloud strategy

Options to

consider

RehostRefactorRearchitectRe-buildReplace
Innovation1Deliver new capabilities faster


V
PaaS, Serverless
2Provide multichannel access, including mobil


VVPaaS, Serverless
3Enable business agility with continuous innovation
VV

PaaS, Containers
Differentiation1More easily integrate with other web and cloud apps

VV
PaaS, Serverless
2Infuse intelligence into processes leveraging existing investments
VV

PaaS, Serverless
3Increase agility & support scalability requirements of existing applications more cost effectively
VV

PaaS, Containers
Record

1Free up data center space quicklyV


VVMs, SaaS
2Reduce capital expenditure of existing applications V


VVMs, SaaS
3Achieve rapid time to cloudV



VMs



Info

Note: Some of the objective might apply to more than one category of applications


What is Cloud Native App Development?

Image AddedPackage app code & dependencies in Kubernetescontainers

Image Added

Deploy as microservices

Image Added

Manage app withDevOpsprocesses & tools

Info

By 2020, 35% of production apps will be cloud native

Info

Source: IDC FutureScape: Worldwide Developer and DevOps2019 Predictions, Oct 2018


Common cloud native scenarios

Image Added

Image Added

Image Added

Image Added

Modernize business critical applicationsSaaS deliveryReal-time telemetryGeo-distributed applications

Key Components of Cloud Native

ResourcesDescription
ContainersTool to package your app, run it portably on different hosts in a consistent way.
Serverless

Platform for running and scaling apps where almost all of the operations tasks are managed by the cloud provider.

Optimized to let developers focus on code and business value.


Kubernetes

Platform to manage and scale your app reliably (made up of containers) that may span many physical and virtual machines.

A tool for operations, noet development.


Azure: The Power Of Choice

Compute

Image Added

Image Added

Virtual Machines

  • Ubuntu, Red Hat, Windows, SUSE, CoreOS
  • DevOps Extensions with Chef and Puppet Multiple sizes
  • Hundreds of items in marketplace


Container Service

Image Added

The container advantage

Image Added

Developers love Kubernetes

Image Added


Info

*According to the new 2020 State of Cloud Native Development Report developed for CNCF by SlashData

AKS: Simplify the deployment, nanagement, and operations of Kubernetes

ICONDescription

Image Added

Deploy and manage Kubernetes with ease

Image Added

Accelerate containerized application development

Image Added

Set up CI/CD in a few clicks

Image Added

Secure your Kubernetes environment

Image Added

Scale and run applications with confidence

Image Added

Work how you want with open-source tools & APIs

Scenarios for AKS

Image Added

Microservices with AKS

Image Added

Azure Container Registry

Image Added

Azure Container Instances (ACI)

Image Added

Azure App Service

Image Added

Image Added

Image Added

Reference Architecture for Managed Web

KindArchitectureResources Stack
Basic Web

Image Added

✓Service plan

✓Deployment

✓Authentication

✓SQL DB

✓Diagnostics

Improving Scalability

Image Added

✓WebJobs

✓Cache

✓CDN

✓Other storages

✓API App

Improving Availability

Image Added

✓Hosting in paired region

✓Traffic manager

✓Geo-replication

Serverless stands out as the technology

What is servierless?



Image Added

Full abstraction of servers

Developers can just focus on their code - there are no distractions around server management, capacity planning, or availability.

Image Added

Instant, event-driven scalability

Application components react to events and triggers in near real-time with virtually unlimited scalability; compute resources are used are needed.

Image Added

Pay-per-use

Only pay for what you use: billing is typically calculated on the number of function calls, code execution time, and memory used.*


*Supporting services, like storage and networking, may be charged separately.

Azure serverless ecosystem

Image Added

FaaS is the center of serverless

ICONDescription

Image Added

Single responsibility

Functions are single-purposed, reusable pieces of code that process an input and return a result.

Image Added

Short lived

Functions don't stick around when finished executing, freeing up resources for further executions.

Image Added

Stateless

Functions don't hold any persistent state and don't rely on the state of any other processes.

Image Added

Event driven & scalable

Functions respond to predefined events, and are instantly replicated as many times as needed.

Azure Functions Programming Model

Image Added

Scenarios for Serverless

  • Anything that needs to respond to events.
  • Image Added

Azure Doc: Decision Tree

Image Added


Info

https://aka.ms/comparecompute

Image Added


Info

https://docs.microsoft.com/en-us/azure/architecture/guide/technology-choices/compute-decision-tree

Bestbuy

ArchetectureKey Point

Image Added

  • Must be able to scale to billions of events
  • If an error occurs, Kafka should retry / not checkpoint
  • Ordering must be preserved