31
Azure Service Fabric

Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

  • Upload
    others

  • View
    11

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Azure Service Fabric

Page 2: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Run and secure

services reliably at

any scale

Operate

Deploy any code at

any scale using tools

you know

Deploy

Build new or

transform existing

applications

Build

Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud

Page 3: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Proven platform powering core Azure and Microsoft services

Microsoft has deep expertise in running global services

such as Cortana, Skype & Cosmos DB

Service Fabric is the foundational technology

powering these services & core Azure infrastructure

Sample scale of one of these services: 60 billion

events per day with millions of databases

About 30% of Azure’s cores run Service Fabric directly.

Service Fabric Manages Millions of Service upgrades

weekly within Microsoft alone

SQL

{ }Power BI

Dynamics

Intune

Cortana Skype

Cosmos DB

IoT Hub

Event Hub

SQL Database

Page 4: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Trusted by customers of all sizes

Page 5: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Scenarios powered by Service FabricEmpowering customers of all sizes to achieve more

Lift & shift to

containers

Mission-critical

business SaaS

IoT data

processing

Low-latency data

processing apps

…one powerful Microservices platform for Windows Server and Linux.

Any workload, running anywhere.

New cloud-

native apps

Page 6: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

To monolith or to Microservice?

... we support any stage you choose

New or

transformed

microservices app

5

Parts of existing

monolith

extracted

4

Existing Monolith + new

microservices

3

Monolith Hosted as

guest executable or

container

2

Traditional app

1

5 stages in a continuum…

Page 7: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

To build, deploy, and operate……containers or microservices on any OS on any cloud

Programming

Models

Dev & Ops

Tooling

Orchestration Lifecycle

Management

Health &

Monitoring

Always On

Availability

Auto

Scaling

Azure On-premises infrastructure Other cloudsDev machine

Page 8: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform
Page 9: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Reliability Subsystem

Orchestration,

reliability, availability,

replication

Management

Subsystem

Application and

microservice

lifecycle

Deployment,

upgrade

and monitoringTransport Subsystem

Secure point-to-point communication

Federation SubsystemFederates a set of nodes to form a consistent scalable cluster of machines

Communication

Subsystem

Microservice discovery

Reverse proxy

Hosting & Activation

Process & container

activation

Application Programming Models Declarative application description, .NET, Java, and C++ APIs

Your Scalable, Reliable, Managed Applications

Service Fabric Architecture

Testability

Subsystem

Fault injection,

test in production

Page 10: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Service Fabric - Deployment

App Type Packages Service Fabric Cluster VMs

Page 11: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Handling Machine Failures

#FAIL

App Type Packages Service Fabric Cluster VMs

Page 12: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Purple NodesGreen Nodes

App1 App2

Orchestration Basics - Constraints

App Type Packages Service Fabric Cluster VMs

Page 13: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Orchestration Basics - Capacity

App Type Packages Service Fabric Cluster VMs

Page 14: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Orchestration Basics - Balancing

App Type Packages Service Fabric Cluster VMs

Page 15: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Orchestration Basics – Scaleout Service

App Type Packages Service Fabric Cluster VMs

Page 16: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App1 App2

Orchestration Basics – Scaleout Cluster

App Type Packages

Page 17: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform
Page 18: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

UD3

UD2

UD1

App1 App2

Orchestration Basics - Upgrade

App2.1

App Type Packages Service Fabric Cluster VMs

Page 19: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Stateful Microservices - Replication

Primary

Secondary

Replication

App Type Packages Service Fabric Cluster VMs

Page 20: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Service Fabric Programming Models

Guest Executables/Containers

• Bring any exe

• Any language

• Any programming model

• Packaged as Application

• Gets versioning, upgrade,

monitoring, health, resource

governance

Reliable Services

• Stateless & stateful services

• Independent lifecycles

• High density

• Access to Reliable Collections

• Transactions across

collections

• Full platform integration

Reliable Actors

• Simplified programming

model

• Single Threaded model

• Requires totally disconnected

compute & state

• Removes access to some

advanced features

• Be careful

Page 21: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

• Reliable Services provide failure management, HA of code

• Reliable Collections provide HA of state

• ReliableDictionary, ReliableQueue, ReliableConcurrentQueue

Programming models: Reliable Services

Collections

• Single machine

• Single-threaded

Concurrent Collections

• Single machine

• Multi-threaded

Reliable Collections

• Multi-machine

• Replicated (HA)

• Persisted (durable)

• Asynchronous

• Transactional

Page 22: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

https://blogs.msdn.microsoft.com/azureservicefabric/2018/04/05/intelligent-routing-on-service-fabric-with-traefik/

https://traefik.io

https://github.com/jjcollinge/traefik-on-service-fabric

• Træfik is a reverse proxy that has been

developed with microservices in mind.

• Built-in support for dynamic

configuration, circuit breakers and

smart load balancing

• Integrated watchdog service with

Application Insights support

Page 23: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform
Page 24: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

Recent Milestones…

In the last year:

GA of support for Windows Containers

GA of support for integration with Azure API Management

GA of support for DNS addressing within the cluster

GA of Service Fabric on Linux

GA of support for Resource Governance of processes and containers

Preview of support for .NET Core (Really .NET Standard 2 APIs)

Many performance, stability, and usability improvements

Preview of full support for Java

Page 25: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

• Per-App network

• Stable IPs

• Service Mesh

Networking

So what’s next?

• API models inside

• Volume drivers

• Logs & Monitoring

Containers

• Resource

Governance

• Debugging

Improvements

Management

• Simplified APIs

• Serverless

• App Model

• Tools

Simplification

Page 26: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

App Control

Azure manages VMs, OS patching, runtime upgrades, capacity planning, provides micro-billing

Customer manages application deployment (serverless)

Service Fabric “SeaBreeze”

Control and ResponsibilityMore Less

1/16/2018

App & Cluster Control

Azure manages VMs, OS patching, runtime upgrades

Customer manages application deployment and cluster capacity

Service Fabric Hosted (SFRP)

App, Cluster and Hardware Control

Customer manages hardware, OS patching, runtime upgrades, cluster capacity & application deployment

Service Fabric Standalone

On-premises

Any cloud

Page 27: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform
Page 28: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-quickstart-dotnet

https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-quickstart-containers

https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-quickstart-containers-linux

Page 29: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

http://aka.ms/ServiceFabricSDK

https://mva.microsoft.com/en-US/training-courses/building-microservices-applications-on-azure-service-fabric-16747

http://aka.ms/ServiceFabricSamples

http://aka.ms/tryservicefabric

https://blogs.msdn.microsoft.com/azureservicefabric/2016/07/06/introduction-to-service-fabric-lab-part-1/

https://stackoverflow.com/questions/tagged/azure-service-fabric

http://aka.ms/ServiceFabricForum

https://github.com/azure/service-fabric-issues

http://aka.ms/ServiceFabricSlack here

here

Page 31: Azure Service Fabric - tom.blob.core.windows.net Fabric.pdf · Azure Service Fabric Build, deploy, and operate applications, using any OS, at any scale, on any cloud. Proven platform

© Copyright Microsoft Corporation. All rights reserved.