3. Who am I?
• Udaiappa Ramachandran ( Udai )
• CTO, Akumina, Inc.,
• Focus on Cloud Computing
• Microsoft Azure, Amazon Web Services and Google
• New Hampshire Cloud User Group (http://www.meetup.com/nashuaug )
• Introduction to Service Fabric (SF)
• SF Environments
• Service Fabric Mesh
• SF Mesh Resource Model
• How does it work?
• Things to Know
5. Service Fabric (SF)
• Cluster (network connected set of VMs or Physical Servers)
• Application platform for building Microservices
• Native programming model
• Reliable Actors, Reliable Services
• Containers, ASP.NET CORE, GUEST EXECUTABLE
• Microsoft Products
• Azure DocumentDB, Intune, Skype for Business, Bing Cortana, Azure Event Hubs, Azure SQL
• Cluster Security (enabled at cluster creation time)
• Stateless and Stateful support
• State and Application life cycle management with monitoring
7. SF Mesh
• Focus on application not the infrastructure like PaaS
• Fully managed cluster (code named Seabreeze)
• Application platform use of container
• Actors and Reliable Collections will be exposed part of mesh
• Per Second Billing for AKS/ACS/Mesh
• Ability to deploy from CICD
• Auto Scaling
• Blue/Green deployments
• Serverless notion
8. SF Resource Model
• Code Package (Containers)
• Volume (Azure File Storage Vs Reliable Disk)
9. How does it work?
10. Things to know in Preview
• Number of applications: 5
• Cores per application: 12
• Total RAM per application: 48 GB
• Network and Ingress end points: 5
• Azure Volumes that you can attach: 10
• Number of Service replicas: 3
• The largest container you can deploy is limited to 4 cores and 16GB RAM.
• You can allocate partial cores to your containers in increments of 0.5 cores, up to a maximum of
• Services can run continuously 48 hours after that it will be shutdown
• HNA failed with error
11. Key Commands to Deploy App
1. az login
2. az account set --subscription "<subscriptionName>"
3. az acr repository list --name <ACR-NAME>
4. docker build -t <SERVICENAME> .
5. docker tag <SERVICENAME> <ACR-NAME>.azurecr.io/<SERVICENAME>:1.0
6. az acr login -n <ACR-NAME>
7. docker push <ACR-NAME>.azurecr.io/<SERVICENAME>:1.0
8. az mesh deployment create --resource-group <RESOURCEGROUPNAME> --template-file
c:tempmesh_rp.windows.json --parameters c:tempmesh_rp.windows.parameters.json
9. az mesh gateway show --resource-group <RESOURCEGROUPNAME> --name
10. az mesh app show --resource-group <RESOURCEGROUPNAME> --name <SFAPPNAME>
11. az mesh code-package-log get --resource-group <RESOURCEGROUPNAME> --application-
name <SFAPPNAME> --service-name <SERVICENAME> --replica-name 0 --code-package-
Prevent against failures
A Service Fabric cluster is a network-connected set of virtual or physical machines into which your microservices are deployed and managed
An actor is an isolated, independent unit of compute and state with single-threaded execution. The actor pattern is a computational model for concurrent or distributed systems in which a large number of these actors can execute simultaneously and independently of each other. Actors can communicate with each other and they can create more actors.
The Reliable Services programming model for stateless and stateful services.
Reliable Services – Reliability, Availability, Scalability, Consistency
Service Fabric is an open-source platform technology that several different services and products are based on. Microsoft provides the following options:
Service Fabric Mesh: A fully managed service for running Service Fabric applications in Microsoft Azure.
Azure Service Fabric: The Azure hosted Service Fabric cluster offering. It provides integration between Service Fabric and the Azure infrastructure, along with upgrade and configuration management of Service Fabric clusters.
Service Fabric standalone: A set of installation and configuration tools to deploy Service Fabric clusters anywhere (on-premises or on any cloud provider). Not managed by Azure.
Service Fabric development cluster: Provides a local development experience on Windows, Linux, or Mac for development of Service Fabric applications.
Serverless- negativeness cold start. But in SF container will not be removed when not using, so serverless world doesn’t apply to SFMesh
--took away of owning their own infrastructure and managing of it
There is no direct access to node
.YML and .JSON format
Routes- ex., define 20% from Service A to B
Secrets – interacting with keyvault, etc.,)
Volume-use Azure Storage as Azure volume driver; volume driver (volumes)-attaching a disk
Input Model – Request for 10 containers, 5 CPU, 20GB
Cluster Allocator – Ask it
Invntoray Manager – if there is a threshold Ex., 68% utilized and I want to go create more then uses “SF RP” to allocate clusters