Service Fabric

Official Documentation

Service Description

The Service Fabric is the latest member in the Compute Services family. Apps written for the Service Fabric differ from Apps in other compute modes in terms of structure and deployment. With Service Fabric, applications can be made up of microservices that can be installed dynamically and distributed to a pool of provisioned virtual machines. The instances of a microservice can share the resources with other microservices, i.e., more than one microservice instance can be executed on a virtual machine. An advantage over the other execution options is the significantly more flexible resource allocation and better utilization of the machines. Applications can scale more flexibly, specifically at the microservice level. Individual functions can be packaged into microservices and then scaled very individually (if, e.g., a load peak occurs only in a certain application function). However, applications have to be written very specifically for the Azure Service Fabric.

Getting Started

  1. Design modern microservice applications on Microsoft Azure Service Fabric
    9/30/2016, Video, 1:18:26
  2. Building Microservices Applications on Azure Service Fabric
    9/25/2016, Mva
  3. What is Azure Service Fabric Cluster?
    11/9/2016, Video, 0:18:11
  4. Azure for Developers - From App Services to Service Fabric
    2/10/2017, Video, 1:17:34
  5. Architecting Modern Web Applications with ASP.NET Core and Microsoft Azure
    8/9/2017, Ebook
  6. Microservices Design and Patterns
    6/23/2016, Mva



Latest Content

Subscribe to News about Service Fabric

Title  
Blog
Blog
Blog
Blog
Blog
Video
Blog
Blog
Blog
Blog
Blog
Blog
more...


Azure Documentation

1. Service Fabric Documentation
2. Overview
     2.1. What is Service Fabric?
3. Quickstarts
     3.1. Create .NET application
     3.2. Deploy a Linux container application
     3.3. Deploy a Windows container application
4. Tutorials
     4.1. Deploy a .NET app
          4.1.1. 1- Build a .NET application
          4.1.2. 2- Deploy the application
          4.1.3. 3- Configure CI/CD
          4.1.4. 4- Monitor and Diagnose
     4.2. Containerize an existing .NET app
          4.2.1. 1- Create a secure cluster on Azure
          4.2.2. 2- Deploy a .NET app using Docker Compose
          4.2.3. 3- Monitor your container
     4.3. Create a Linux container app
          4.3.1. 1- Create container images
          4.3.2. 2- Package and deploy containers
          4.3.3. 3- Fail over and scale
     4.4. Create and manage a cluster
          4.4.1. 1- Create a cluster on Azure
               4.4.1.1. 1a- Create a Windows cluster
               4.4.1.2. 1b- Create a Linux cluster
          4.4.2. 2- Deploy API Management with Service Fabric
5. Samples
     5.1. Code samples
     5.2. Azure PowerShell
     5.3. Service Fabric CLI
6. Concepts
     6.1. Understand microservices
     6.2. Big picture
     6.3. Application scenarios
     6.4. Patterns and scenarios
     6.5. Architecture
     6.6. Terminology
     6.7. Build applications and services
          6.7.1. Supported programming models
               6.7.1.1. Overview
               6.7.1.2. Containers
                    6.7.1.2.1. Overview
                    6.7.1.2.2. Docker compose (preview)
                    6.7.1.2.3. Resource governance
               6.7.1.3. Reliable Services
                    6.7.1.3.1. Overview
                    6.7.1.3.2. Reliable Services lifecycle - C#
                    6.7.1.3.3. Reliable Services lifecycle - Java
                    6.7.1.3.4. Reliable Collections
                    6.7.1.3.5. Reliable Collection guidelines & recommendations
                    6.7.1.3.6. Working with Reliable Collections
                    6.7.1.3.7. Transactions and locks
                    6.7.1.3.8. Reliable Concurrent Queue
                    6.7.1.3.9. Reliable Collection serialization
                    6.7.1.3.10. Reliable State Manager and Reliable Collection internals
                    6.7.1.3.11. Advanced usage
               6.7.1.4. Reliable Actors
                    6.7.1.4.1. Overview
                    6.7.1.4.2. Architecture
                    6.7.1.4.3. Lifecycle and garbage collection
                    6.7.1.4.4. State management
                    6.7.1.4.5. Polymorphism
                    6.7.1.4.6. Reentrancy
                    6.7.1.4.7. Type serialization
          6.7.2. Application model
          6.7.3. Hosting model
          6.7.4. Services
               6.7.4.1. Service resources
               6.7.4.2. Service state
               6.7.4.3. Service partitioning
               6.7.4.4. Availability of services
               6.7.4.5. Replicas and instances
               6.7.4.6. Reconfiguration
               6.7.4.7. Service communication
                    6.7.4.7.1. Overview
                    6.7.4.7.2. DNS service
                    6.7.4.7.3. Reverse proxy
                    6.7.4.7.4. Configure reverse proxy for secure communication
                    6.7.4.7.5. Reverse proxy diagnostics
          6.7.5. Scalability of applications
          6.7.6. ASP.NET Core
          6.7.7. Plan application capacity
     6.8. Manage applications
          6.8.1. Overview
          6.8.2. The ImageStoreConnectionString setting
          6.8.3. Application upgrade
               6.8.3.1. Overview
               6.8.3.2. Configuration
               6.8.3.3. Application upgrade parameters
               6.8.3.4. Data serialization in application upgrades
               6.8.3.5. Application upgrades advanced topics
          6.8.4. Fault analysis overview
     6.9. Create and manage clusters
          6.9.1. Overview
          6.9.2. Plan and prepare
               6.9.2.1. Capacity planning
               6.9.2.2. Disaster recovery
          6.9.3. Describing a cluster
          6.9.4. Cluster security
          6.9.5. Feature differences between Linux and Windows
          6.9.6. Clusters on Azure
               6.9.6.1. Node types and VM Scale Sets
               6.9.6.2. Cluster networking patterns
          6.9.7. Cluster resource manager
               6.9.7.1. Overview
               6.9.7.2. Architecture
               6.9.7.3. Describe a cluster
               6.9.7.4. Application groups overview
               6.9.7.5. Configure Cluster Resource Manager settings
               6.9.7.6. Resource consumption metrics
               6.9.7.7. Use service affinity
               6.9.7.8. Service placement policies
               6.9.7.9. Manage a cluster
               6.9.7.10. Cluster defragmentation
               6.9.7.11. Balance a cluster
               6.9.7.12. Throttling
               6.9.7.13. Service movement
     6.10. Integrate with API Management
     6.11. Monitor and diagnose
          6.11.1. Overview
          6.11.2. Health model
          6.11.3. Diagnostics in stateful Reliable Services
          6.11.4. Diagnostics in Reliable Actors
          6.11.5. Performance counters for Reliable Service Remoting
7. How-to guides
     7.1. Set up your development environment
          7.1.1. Windows
          7.1.2. Linux
          7.1.3. Mac OS
     7.2. Set up the Service Fabric CLI
     7.3. Build an application
          7.3.1. Create your first C# app in Visual Studio
          7.3.2. Build a guest executable service
               7.3.2.1. Host a Node.js application on Windows
               7.3.2.2. Deploy a guest executable
               7.3.2.3. Deploy multiple guest executables
          7.3.3. Build a container service
               7.3.3.1. Create a Windows container application
               7.3.3.2. Create a Linux container application
               7.3.3.3. Container security
               7.3.3.4. Docker compose (preview)
               7.3.3.5. Resource governance for containers and services
               7.3.3.6. Volume and logging drivers
               7.3.3.7. Services inside containers
               7.3.3.8. Container networking modes
          7.3.4. Build a Reliable Services service
               7.3.4.1. Overview
               7.3.4.2. Concepts
                    7.3.4.2.1. Reliable Services lifecycle - C#
                    7.3.4.2.2. Reliable Services lifecycle - Java
               7.3.4.3. Reliable Collections
                    7.3.4.3.1. Reliable Collections
                    7.3.4.3.2. Reliable Collection guidelines & recommendations
                    7.3.4.3.3. Working with Reliable Collections
                    7.3.4.3.4. Transactions and locks
                    7.3.4.3.5. Reliable Concurrent Queue
                    7.3.4.3.6. Reliable Collection serialization
                    7.3.4.3.7. Reliable State Manager and Reliable Collection internals
               7.3.4.4. Get started
                    7.3.4.4.1. C# on Windows
                    7.3.4.4.2. Java on Linux
                    7.3.4.4.3. Create C# application on Linux
               7.3.4.5. Communicate with services
                    7.3.4.5.1. Communicate with Reliable Services
                    7.3.4.5.2. Service Remoting - C#
                    7.3.4.5.3. Service Remoting - Java
                    7.3.4.5.4. WCF
                    7.3.4.5.5. Secure communications - C#
                    7.3.4.5.6. Secure communications - Java
               7.3.4.6. Configure
               7.3.4.7. Send notifications
               7.3.4.8. Backup and restore
          7.3.5. Build a Reliable Actors service
               7.3.5.1. Get started
                    7.3.5.1.1. C# on Windows
                    7.3.5.1.2. Java Actor on Linux
               7.3.5.2. Send notifications
               7.3.5.3. Set timers and reminders
               7.3.5.4. Configure KvsActorStateProvider
               7.3.5.5. Configure communications settings
               7.3.5.6. Configure ReliableDictionaryActorStateProvider
          7.3.6. Migrate old Java Application to support Maven
          7.3.7. Configure reverse proxy for secure communication
          7.3.8. Build an ASP.NET Core service
          7.3.9. Configure security
               7.3.9.1. Manage application secrets
               7.3.9.2. Configure security policies for your application
     7.4. Work in a Windows dev environment
          7.4.1. Manage applications in Visual Studio
          7.4.2. Configure secure connections in Visual Studio
          7.4.3. Configure your application for multiple environments
          7.4.4. Debug a .NET service in VS
          7.4.5. Common errors and exceptions
          7.4.6. Monitor and diagnose locally
     7.5. Work in a Linux dev environment
          7.5.1. Get started with Eclipse plugin for Java development
          7.5.2. Debug a Java service in Eclipse
          7.5.3. Monitor and diagnose locally
     7.6. Deploy API Management and Service Fabric to Azure
     7.7. Migrate from Cloud Services
          7.7.1. Compare Cloud Services with Service Fabric
          7.7.2. Migrate to Service Fabric
          7.7.3. Recommended practices
     7.8. Manage application lifecycle
          7.8.1. Package an application
          7.8.2. Deploy or remove applications
               7.8.2.1. Deploy applications on a local cluster
               7.8.2.2. Azure Resource Manager
               7.8.2.3. Azure PowerShell
               7.8.2.4. Service Fabric CLI
               7.8.2.5. Visual Studio
               7.8.2.6. FabricClient APIs
          7.8.3. Upgrade applications
               7.8.3.1. Upgrade using Azure PowerShell
               7.8.3.2. Upgrade using Visual Studio
               7.8.3.3. Troubleshoot application upgrades
          7.8.4. Test applications and services
               7.8.4.1. Test service-to-service communication
               7.8.4.2. Simulate failures
                    7.8.4.2.1. Using controlled chaos
                    7.8.4.2.2. Using test actions
                    7.8.4.2.3. During workloads
                    7.8.4.2.4. Using test scenarios
                    7.8.4.2.5. Using the node transition APIs
               7.8.4.3. Load test your application
          7.8.5. Set up continuous integration
               7.8.5.1. Set up continuous integration with VSTS
               7.8.5.2. Deploy your Linux Java application using Jenkins
     7.9. Create and manage clusters
          7.9.1. Clusters on Azure
               7.9.1.1. Create
                    7.9.1.1.1. Create your first cluster on Azure
                    7.9.1.1.2. Azure portal
                    7.9.1.1.3. Azure Resource Manager
               7.9.1.2. Scale
                    7.9.1.2.1. Manually
                    7.9.1.2.2. Programmatically
               7.9.1.3. Upgrade
               7.9.1.4. Set access control
               7.9.1.5. Configure
               7.9.1.6. Open a port in the load balancer
               7.9.1.7. Manage cluster certificates
               7.9.1.8. Delete
          7.9.2. Standalone clusters
               7.9.2.1. Plan and prepare for your deployment
               7.9.2.2. Create
                    7.9.2.2.1. Create your first standalone cluster
                    7.9.2.2.2. Create on-premises
                    7.9.2.2.3. Secure using certs
                    7.9.2.2.4. Secure using Windows security
                    7.9.2.2.5. Contents of the standalone package
               7.9.2.3. Scale
               7.9.2.4. Set access control
               7.9.2.5. Configure
               7.9.2.6. Upgrade
          7.9.3. Visualize a cluster
          7.9.4. Connect to a secure cluster
          7.9.5. Patch cluster nodes
          7.9.6. Manage and orchestrate cluster resources
               7.9.6.1. Cluster Resource Manager overview
               7.9.6.2. Cluster Resource Manager architecture
               7.9.6.3. Describe a cluster
               7.9.6.4. Application groups overview
               7.9.6.5. Configure Cluster Resource Manager settings
               7.9.6.6. Resource consumption metrics
               7.9.6.7. Use service affinity
               7.9.6.8. Service placement policies
               7.9.6.9. Manage a cluster
               7.9.6.10. Cluster defragmentation
               7.9.6.11. Balance a cluster
               7.9.6.12. Throttling
               7.9.6.13. Service movement
     7.10. Monitor and diagnose
          7.10.1. Monitor and diagnose applications
          7.10.2. Generate events
               7.10.2.1. Generate platform level events
                    7.10.2.1.1. Operational channel
                    7.10.2.1.2. Reliable Services events
                    7.10.2.1.3. Reliable Actors events
                    7.10.2.1.4. Performance metrics
               7.10.2.2. Generate application level events
          7.10.3. Inspect application and cluster health
               7.10.3.1. Monitor Service Fabric health
               7.10.3.2. Report and check service health
               7.10.3.3. Add custom health reports
               7.10.3.4. Troubleshoot with system health reports
               7.10.3.5. View health reports
               7.10.3.6. Monitor Windows Server containers
          7.10.4. Aggregate events
               7.10.4.1. Aggregate events with EventFlow
               7.10.4.2. Aggregate events with Azure Diagnostics
                    7.10.4.2.1. Windows
                    7.10.4.2.2. Linux
          7.10.5. Analyze events
               7.10.5.1. Analyze events with Application Insights
               7.10.5.2. Analyze events with OMS
          7.10.6. Troubleshoot your local cluster
8. Reference
     8.1. Azure PowerShell
     8.2. PowerShell
     8.3. Azure CLI (az sf)
     8.4. Service Fabric CLI (sfctl)
          8.4.1. sfctl application
          8.4.2. sfctl chaos
          8.4.3. sfctl cluster
          8.4.4. sfctl compose
          8.4.5. sfctl is
          8.4.6. sfctl node
          8.4.7. sfctl partition
          8.4.8. sfctl replica
          8.4.9. sfctl rpm
          8.4.10. sfctl service
          8.4.11. sfctl store
     8.5. Java API
     8.6. .NET
     8.7. REST
9. Resources
     9.1. Azure Roadmap
     9.2. Common questions
     9.3. Learning path
     9.4. MSDN Forum
     9.5. Pricing
     9.6. Pricing calculator
     9.7. Sample code
     9.8. Support options
     9.9. Service Updates
     9.10. Videos

Online Training Content

Date Title
5/30/2017 Azure211x - Azure Application Deployment and Management
5/24/2017 Developing Microsoft Azure Solutions
5/5/2017 Cloud-Anwendungsentwicklung
3/5/2017 Cloud Application Development
9/25/2016 Building Microservices Applications on Azure Service Fabric
6/23/2016 Introduction to Microservices
6/23/2016 Microservices Design and Patterns
12/11/2015 Build Always-On, Hyper-Scalable Microservice-based Cloud Services

Tools

Tool Description
Create Azure service fabric cluster with ARM template and powershell Create Azure service fabric cluster with ARM template and powershellThis step-by-step guide walks you through setting up a secure Azure Service Fabric cluster with scale set, storage accounts, load balancer in Azure by using Azure Resource Manager.note - Key vault , Reverse proxy

Videos

Date Title Length
10/16/2017 Cloud Tech 10 - 16th October 2017 - Batch AI, Durable Functions, File Share Snapshots and more! 0:05:59
10/2/2017 Cloud Tech 10 - Ignite 2017 Edition - 2nd October 2017 0:06:16
9/30/2017 Azure Service Fabric for Linux 1:07:48
9/28/2017 Azure Friday: Azure Service Fabric on Linux 0:12:49
9/28/2017 Modernizing existing .NET applications with Windows Containers and Azure cloud 1:10:55
9/28/2017 Orchestrating one million containers with Azure Service Fabric 1:04:15
9/28/2017 Managing, securing, and scaling Azure Service Fabric clusters and applications 1:17:12
9/28/2017 Continuous delivery on Microsoft Azure using Visual Studio Team Services 1:18:06
9/27/2017 Azure Service Fabric for Linux 1:07:48
9/26/2017 Azure Service Fabric on Linux 0:12:48

Page 1 of 10