Unleash Opportunities With Compute options on Azure

Welcome!

HOW DO I ASK A QUESTION?

  • If you have a technical or content-related question, please use the Q&A window
  • We will address the questions as they come in

CAN I VIEW THIS PRESENTATION AFTER THE WEBINAR?

  • There will not be a recording of the session, slides will be shared in the GitHub repository
  • Due to the PII we are not keeping the recording of the session

Agenda!

  • Why Application Innovation is important?
  • Decision Matrix for the compute options on Azure
  • Overview of each compute services and recent updates
  • Why you need to design differently on the cloud
  • Reference Architecture
  • Demo on Event Driven Scaling ( AKS + Azure functions)
  • Kahoot Quiz


Traditional application has a set of challenges

Aging infrastructure

  • Aging hardware, operating systems, and business applications in the datacenter can impact:
  • Operational costs, effciency, and reliability.
  • Capital expenditure requirements.
  • Security, audit and reulatory compliance.

lack of agility

  • Deployment time of new services
  • Operation is time (and budget) consuming.
  • Innovation is happening outside IT inside business areas.

Legacy applications

  • Longer release cycles, monolithic and highly coupled architecture.
  • Highly IT dependent
  • Low application performance and time to market compromise business agility.

The (application) Journey to the Cloud

Azure Cloud Adoption Framework

Cloud app continuum

Lift and Shift (Rehost)

When to consider

  • Ideal when your goal is to improve operational efficiencies, and free up data center space
  • Maintenance apps for which the hardware is not worth additional investment.
  • Compute-intensive applications that are built for parallelism but don't require high-performance interprocess communications (IPC) and have independent datasets, and applications for which load balancing already increases scalability and availability.

Benefits

  • Drives instant reduction in TCO - 30% on average
  • No need to manage data centers
  • Enjoy flexible and scalable infrastructure

Core technologies

  • VM, VM Scale Set


Source: Decision Point for Choosing a Cloud Application Migration Strategy, Gartner. Published: 29 March 2016

Refactor

When to consider

  • You want to leverage existing development skills and codebase is paramount
  • When code portability is a concern.
  • You prefer a quick way to modernize your apps

Benefits

  • Drive continuous innovation by leveraging built-in DevOps for PaaS or using Containers
  • Existing programming models,languages and frameworks that can be easily used and extended.
  • Easily scale up or down to meet the changing needs of the business

Core technologies

  • Containers, container ochestration
  • DevOps tools


Source: Decision Point for Choosing a Cloud Application Migration Strategy, Gartner. Published: 29 March 2016

Rebuild

When to consider

  • You want to build for cloud-native PaaS environments from ground up.
  • Leverage previous investment in a cloud platform, e.g. when customer data has already moved to the Cloud.
  • Rapid prototyping is crucial or the scope of a current application is too limited in terms of functionality and lifespan.

Benefits

  • Reduce TCO
  • Fully leverage the cloud native capabilities and build applications faster
  • Expedite your business innovation

Core technologies

  • Serverless, Pass


Source: Decision Point for Choosing a Cloud Application Migration Strategy, Gartner. Published: 29 March 2016

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



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


What is Cloud Native App Development?

Package app code & dependencies in Kubernetescontainers

Deploy as microservices

Manage app withDevOpsprocesses & tools

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

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


Common cloud native scenarios

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

Virtual Machines

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


Container Service

The container advantage

Developers love Kubernetes


*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

Deploy and manage Kubernetes with ease

Accelerate containerized application development

Set up CI/CD in a few clicks

Secure your Kubernetes environment

Scale and run applications with confidence

Work how you want with open-source tools & APIs

Scenarios for AKS

Microservices with AKS

Azure Container Registry

Azure Container Instances (ACI)

Azure App Service

Reference Architecture for Managed Web

KindArchitectureResources Stack
Basic Web

✓Service plan

✓Deployment

✓Authentication

✓SQL DB

✓Diagnostics

Improving Scalability

✓WebJobs

✓Cache

✓CDN

✓Other storages

✓API App

Improving Availability

✓Hosting in paired region

✓Traffic manager

✓Geo-replication

Serverless stands out as the technology

What is servierless?



Full abstraction of servers

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

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.

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

FaaS is the center of serverless

ICONDescription

Single responsibility

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

Short lived

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

Stateless

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

Event driven & scalable

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

Azure Functions Programming Model

Scenarios for Serverless

  • Anything that needs to respond to events.

Azure Doc: Decision Tree



Bestbuy

ArchetectureKey Point

  • Must be able to scale to billions of events
  • If an error occurs, Kafka should retry / not checkpoint
  • Ordering must be preserved
  • No labels
Write a comment…