Service Fabric is the foundational technology introduced by Microsoft Azure to empower the large-scale Azure service. In this session, you’ll get an overview of containers like Docker after an overview of Service Fabric, explain the difference between it and Kubernetes as a new way To Orchestrate Microservices. You’ll learn how to develop a Microservices application and how to deploy those services to Service Fabric clusters and the new serverless Service Fabric Mesh service. We’ll dive into the platform and programming model advantages including stateful services and actors for low-latency data processing and more. You will learn: Overview of containers Overview of Service Fabric Difference between Kubernetes and Service Fabric Setup Environment to start developing an application using Microservices with Service Fabric.
Shared as part of Cloud Community Days on 17th June 2020 - ccdays.konfhub.com
3. Faster delivery of features.
Digital transformation and business needs
Hight availability of services
Prepare a qualitative model for estimating migration costs.
Perform the migration by limiting the impacts on the company
9. Benefits of Microservices
Microservices
allow to evolve,
deploy and scale
parts of the
application
independently.
Microservices
offer great
distributed
software
challenges.
Microservices is
for large, scalable
and long-term
evolving
applications.
11. Patterns Technologies
Microservices
Bounded Context
API Gateway
Event Bus
Commands
Events
Domain Events
Mediator
Aggregates
Domain Entity
CQRS simplified
Domain-Driven Design
Message Brokers
Async. communication
Autonomous
Decoupled
Isolated
Service Discovery
Transient Failures Handling
Resiliency
Health Checks
Retries with Exponential Backoff
Circuit Breakers
Nomad & addressable services
Docker Containers
Docker Image
Docker Registry
Docker Hub
Azure Container Registry
Docker Host
Azure Container Service
Azure Service Fabric
Kubernetes
Docker Swarm
Mesos DC/OS
Linux Containers
Windows Containers
RabbitMQ
Azure Service Bus
NServiceBus
MassTransit
Hyper-V Containers
Brighter
Stateful Services
Actors
Orchestrators
Polly
12. Optimizing
for microservice
development
Tracking multiple deployment
pipelines while maintaining
agile updates
Focusing on business logic
instead of microservice
platform maintenance
Dealing with the complexity
of network communications
Monitoring and
governance at overarching and
granular levels
Achieving reliable state and
data consistency without
latency issues
Running highly
secure applications
at scale
</>
.NET
</>
13. Containers in Azure: a complete Set of Choices
Container Instances BatchService Fabric Kubernetes ServiceApp Service
14. PaaS vs CaaS vs FaaS
PaaS et CaaS
Azure Service Fabric
Azure Service Fabric Mesh
CaaS
Azure Container Instance
Azure Kubernetes
FaaS
Azure Functions
1 2 3
15. Service Fabric is a
large-scale
microservices
execution platform
Azure Service
Fabric is a
Microsoft PaaS
Service Fabric overview
Service Fabric is a
distributed systems
platform
Service Fabric can be
deployed on Azure or
AWS or OpenStack
Service Fabric
is not only an
Orchestrator
for Container
16. • Service Fabric cluster: a network-connected set of virtual machines
(VMs) into which your microservices are deployed and managed.
• The nodes are the VMs that belong to the Service Fabric cluster.
Service Fabric Cluster structure
17. Optimizing
for microservice
development
Tracking multiple
deployment pipelines while
maintaining agile updates
Focusing on business logic
instead of microservice
platform maintenance
Dealing with the complexity
of interactions and network
communications
Monitoring and
governance at overarching
and granular levels
Achieving reliable state
and data consistency
without latency issues
Running highly
secure applications
at scale
Build Deploy Operate
Flexible
infrastructure
Lifecycle
management
24/7 availability
& performance
Elastic
scalability
Microservice
and container
orchestration
Security &
compliance
Health &
monitoring
Challenges
</>
Azure Service Fabric
.NET
</>
Build and deploy containers and microservices on Windows and Linux, at any scale, on any cloud
18. Programming
Models
Dev & Ops
Tooling
Orchestration Lifecycle
Management
Health &
Monitoring
Always On
Availability
Auto
Scaling
AzureOn-premises infrastructureAny cloudDev machine
Service Fabric: cloud application platform
Build OperateDeploy
19. Azure Service Fabric offerings
Bring your own infrastructure
Service Fabric Standalone
On-premisesAny cloud
Dev machine
Dedicated Azure clusters
Azure
Service Fabric
Azure
Service Fabric Mesh
Serverless microservices
Service Fabric
Full Control Fully managed
20. Azure Service Fabric offerings
Bring your own infrastructure
Service Fabric Standalone
On-premisesAny cloud
Dev machine
Dedicated Azure clusters
Azure
Service Fabric
Azure
Service Fabric Mesh
Serverless microservices
Virtual machines
OS patching
Runtime upgrades
Capacity planning
Network and storage
Micro-billing
App deployment
You
Azure
Responsibility
Cluster capacity
Network and storage
App deployment
Virtual machines
OS patching
Runtime upgrades
Hardware
OS patching
Runtime upgrades
Cluster capacity
Network and storage
App deployment
21. Azure Service Fabric is designed for mission-critical services
Power BI
Dynamics
365
Intune
Cortana Skype for
business
Cosmos DB
IoT Hub
Event Hub
SQL Database
Azure
Monitor
Core Azure
Services
Archive
Storage
Visual Studio
Team Services
Stream Analytics
Azure Database
for PostgreSQL
Azure Database
for MySQL
Azure
Container
Registry
Event Grid
24. Monitoring and diagnostics
Azure Service Fabric
Explorer
Azure Monitoring
• Application monitoring
• Cluster monitoring
• Infrastructure monitoring
• Watchdogs
25. Prerequisites Environment
• Windows 10 is required for Docker installation.
• Visual Studio 2019 or 2017 has built-in support for Docker
• .NET Core SDK
• SDK Microsoft Service Fabric
• Docker for Windows (optional)
• Docker Tools(optional)
26. Set up your windows
development environment to
buid Service Fabric
27. Let’s start …
Install Visual Studio 2019
To use Visual Studio 2017 or 2019
Install the Microsoft Azure Service Fabric SDK
To use Visual Studio 2015 (requires Visual Studio 2015 Update 2 or later)
Install the Microsoft Azure Service Fabric SDK and Tools
SDK installation only
If you only need the SDK, you can install this package:
Install the Microsoft Azure Service Fabric SDK
37. Stateless Services and Stateful Services
Stateless Services - no state is maintained in the service. è Covered in this
session
Stateful Services - state is stored with the service. èNot Covered in this
session.
Stateful ServicesStateless Services
38. Conclusion
Microservices Overview
Introduction to Service Fabric and architecture
Prepare the environment
Demo:
ü Set up a local service Fabric Cluster
ü Create a Service Fabric using Visual Studio
ü Publish a Service Fabric in Visual Studio
ü Overview Monitoring and diagnostics
ü Build a .NET Service Fabric application
ü Deploy a Service Fabric application to a cluster in Azure
ü Build and execute Docker container in Service Fabric