Service Fabric 7.0 Release

Published Nov 18 2019 12:27 PM 15.4K Views

Azure Service Fabric 7.0 is now available! You will be able to update to 7.0 through the Azure Portal or via an Azure Resource Manager deployment. Due to customer feedback on releases around the holiday period we will not begin automatically updating clusters set to receive automatic upgrades.

In January, we will resume the standard roll-out procedure and clusters with automatic upgrades enabled will begin to receive the 7.0 update automatically. We will provide another announcement before the roll-out begins.

  We will also update our planned release dates to indicate that we take this policy into consideration. Looks for updates to release roadmap here.


What is new in Service Fabric 7.0?

  We are excited to announce that the next release of Service Fabric is loaded with key features and   improvements.


Key Announcements

  • KeyVaultReference support for application secrets (Preview): Service Fabric applications that have enabled Managed Identities can now directly reference a Key Vault secret URL as an environment variable, application parameter, or container repository credential. Service Fabric will automatically resolve the secret using the application's managed identity. 
  • Improved upgrade safety for stateless services: To guarantee availability during an application upgrade, we have introduced new configurations to define the minimum number of instances for stateless services to be considered available. Previously this value was 1 for all services and was not changeable. With this new per-service safety check, you can ensure that your services retain a minimum number of up instances during application upgrades, cluster upgrades, and other maintenance that relies on Service Fabric’s health and safety checks.
  • Resource Limits for User Services: Users can set up resource limits for the user services on a node to prevent scenarios such as resource exhaustion of the Service Fabric system services. 
  • Very High service move cost for a replica type. Replicas with Very High move cost will be moved only if there is a constraint violation in the cluster that cannot be fixed in any other way .Please see the docs for additional information on when usage of a “Very High” move cost is reasonable and for additional considerations.
  • Additional cluster safety checks: In this release we introduced a configurable seed node quorum safety check. This allows you to customize how many seed nodes must be available during cluster life-cycle and management scenarios. Operations which would take the cluster below the configured value are blocked. Today the default value is always a quorum of the seed nodes, for example, if you have 7 seed nodes, an operation that would take you below 5 seed nodes would be blocked by default. With this change, you could make the minimum safe value 6, which would allow only one seed node to be down at a time.
  • Added support for managing the Backup and Restore service in Service Fabric Explorer. This makes the following activities possible directly from within SFX:
    • discovering the backup and restore service
    • creating backup policies
    • enabling automatic backups
    • taking adhoc backups
    • triggering restore operations
    • browsing existing backups
  • Announcing availability of the ReliableCollectionsMissingTypesTool: This tool helps validate that types used in reliable collections are forward and backward compatible during a rolling application upgrade. This helps prevent upgrade failures or data loss and data corruption due to missing or incompatible types.
  • Enable stable reads on secondary replicas: Stable reads will restrict secondary replicas to returning values which have been quorum-acked.

In addition, this release contains other new features, bug fixes, and supportability, reliability, and performance improvements. For the full list of changes, please refer to the release notes.


Current And Upcoming Breaking Change Announcements

  • Starting with Service Fabric version 7.0, we have changed the default value for the PreferUpgradedUDs config flag to FALSE in the PlacementAndLoadBalancing section of the ClusterManifest. Based on numerous cases and customer issues, this default behavior should allow clusters to remain more balanced during upgrades. If you want to preserve today’s behavior for your workload, please perform a cluster configuration upgrade to explicitly set the value to true either prior to or as a part of upgrading your cluster to 7.0.
  • Starting with Service Fabric version 7.0, we have fixed a calculation bug in the Cluster Resource Manager which impacts how node resource capacities are calculated in cases where a user manually provides the values for node resource capacities. The impact of this fix is that the Cluster Resource Manager will now consider there to be less usable capacity in the cluster. For more information, see resource governance.
  • Starting with Service Fabric version 7.0, customers using  Service Fabric Managed Identities, please switch to new environment variables ‘IDENTITY_ENDPOINT’ and ‘IDENTITY_HEADER’. The prior environment variables 'MSI_ENDPOINT', ‘MSI_ENDPOINT_’ and 'MSI_SECRET' are now deprecated in this release and will be removed in 7.0 CU1.
  • For customers using service fabric to export certificates into their Linux containers, the export mechanism will change in an upcoming CU. This change will encrypt the private key included in the .pem file, with the password being stored in an adjacent .key file.
  • Today Service Fabric performs equality comparison for Boolean in placement constraints using a case-sensitive lexical comparison Starting in a subsequent release, we will be changing this comparison to be case-insensitive. This change will only apply to Boolean placement properties/constraints. Other string and numeric constraint values will continue to be treated as they are today (with case sensitive and numeric comparisons, respectively).
  • Currently Service Fabric ships the following nuget packages as a part of our ASP.Net Integration and support:
  • ServiceFabric.AspNetCore.Abstractions
  • ServiceFabric.AspNetCore.Configuration
  • ServiceFabric.AspNetCore.Kestrel
  • ServiceFabric.AspNetCore.HttpSys
  • ServiceFabric.AspNetCore.WebListener

These packages are built against AspNetCore 1.0.0 binaries which have gone out of support ( Starting in Service Fabric 8.0 we will start building Service Fabric AspNetCore integration against AspNetCore 2.1 and for netstandard 2.0. As a result, there will be following changes:

  1. The following binaries and their nuget packages will be released for netstandard 2.0 only. These packages can be used in applications targeting .net framework <4.6.1 and .net core >=2.0
    1. ServiceFabric.AspNetCore.Abstractions
    2. ServiceFabric.AspNetCore.Configuration
    3. ServiceFabric.AspNetCore.Kestrel
    4. ServiceFabric.AspNetCore.HttpSys
  2. The following package will no longer be shipped:
    1. ServiceFabric.AspNetCore.WebListener:
      1. Use Microsoft.ServiceFabric.AspNetCore.HttpSys instead.


Upcoming and Ongoing Work

There are some work items that are not a part of the 7.0 release. We want to let you know that work on these items is still ongoing. At this point we plan for these work items to GA in upcoming 7.0 CUs, or as separate packages available in the upcoming months. The specific delivery dates will be communicated as they get closer to GA.

  • General Availability of Service Fabric Managed Identities for SF apps
  • Support for using low priority/Azure Spot Virtual Machine Scale Sets in Service Fabric clusters
  • FabricObserver (FO) – A configurable and extensible watchdog service that runs as a Service Fabric application
  • Support for Ubuntu 18.04
  • Cross Availability Zone Clusters – Support for using a single Cross-AZ Virtual Machine Scale Set. Today’s workloads require one scale set per AZ. 
  • Increased information about historical cluster and application events in Service Fabric Explorer
  • Provide customers with diagnostics and insights through Azure Portal

Improve Application life cycle experience

  • Request drain - grace period to shutdown replicas
  • Enable Services that Run till Completion/Run Once
  • Support Readiness probe-based routing to replicas 
  • Support for Health Probes for containerized services
  • Support for Initializer Code Packages for Containerized applications

Image Store improvements

  • Compliance: Remove dependency on NTLM  
  • Validate integrity of files and folders downloaded
  • Enable cleanup of local files when an app is no longer running on a node
  • VMSS Ephemeral OS disk support

Reliable Collections Improvements

  • In memory only store support for stateful services using Reliable Collections


Occasional Visitor

In terms of upcoming and ongoing work: does the mention of "Support for Ubuntu 18.04" imply standalone deployment tooling for Linux clusters?

Senior Member

Congrats on the  release. I work for a large investment bank and Service Fabric has been a very good success and a 25% performance jump from the previous version. I know Service Fabric is not getting any press lately compared with Kubernetes but, technologically we feel Service Fabric is superior. I feel both Service Fabric [for Stateful Services and Ease of use] and Kubernetrs [for Linux and Stateless workloads] have a space to play in enterprise distributed computing. Keep up the release cadence going. Here's to many more releases.

Senior Member

@Przybylski  Support for Ubuntu 18.04 refers to host OS running the Service Fabric run-time. This will allow you to create a cluster on a host running Ubuntu 18.04.  There are no tooling announcements as part of this support.

Senior Member

Cross Availability Zone Clusters sounds interesting and may be just what we're waiting for...

As per MS Docs, we've chosen to run a single service fabric cluster spanning multiple regions and using placement constraints. Unfortunately, as far as I know, you still can't do this with Azure Service Fabric - as such, we've opted for a self-hosted Service Fabric cluster.

However, going forward:
a) Assuming this is coming to Azure Service Fabric - any time-frame prediction for this?
b) Would we be able to have some on-premise Nodes in the mix with Azure SF Nodes?
c) What about Azure Site Replication - does/will this support Service Fabric? This could be an alternative for us, but I can't find any info about whether or not SF would support this. For example, you'd run a +5 node Azure SF cluster in one Azure region, and then use Site Replication to another region for DR purposes only.

Senior Member



Not sure if this is sufficient, but currently you can have a SF cluster with three scalesets all of which are in a separate zone of an availability zone. When the article states "Support for using a single Cross-AZ Virtual Machine Scale Set" I believe what they are saying is that scale sets will natively support nodes in separate zones, so you won't need multiple scale sets (which are a pain to manage.)


Senior Member

Thank you @AdmiralBond for clarifying the upcoming cross-AZ scale set support - that makes sense!

I did quite a lot of digging and found the info on MSDOCs on how to configure a cross regional azure service fabric cluster - pretty cool as I incorrectly thought you could only have 1 node type marked as primary.

That said, I would still be very interested in using an Azure Site Recovery based solution instead. Specifically, it'll be much much cheaper as you're essentially only paying for blob storage costs to sync the Azure Nodes - not running the VMs... plus, in our case, we can then get away with running all our nodes in 1 Azure region. This together with the Service-Fabric-AppDRTool for restoring application state... should be a match made in heaven :hearteyes:! Unfortunately, I can't find any info on the inter webs on how one can actually configure and spin up an SF cluster via Site Recovery. I'll have a bit more detailed look at creating an Azure cluster via ARM templates... likely that would provide this option - just surprised no one as done/documented this process yet... 

Update: Azure Site Recovery doesn't support VM Scale Sets. The cross-regional SF cluster documentation from above seems to suggest spanning your nodes within a single Availability Zone (I'm guessing this is to ensure minimal latency between seed nodes). Our current On-premise SF cluster spans APAC/EMEA/NA regions - it's worked ok...except for periodic timeouts when registering packages; as far as I can tell, this is probably due to image store sync issues between SEED nodes located in different data centers. In any case, going forward, we decided it simpler/safer to do away with this concept and rather run independent clusters and use AppDRTool if/where required. At least this means we can use Azure hosted SF clusters now :)

Senior Member

For those running on-premise SF clusters and want to send cluster health telemetry to app insights - I've created a windows service that makes this pretty easy.

It uses Microsoft.ApplicationInsights.PerfCounterCollector so you can easily add additional perf counters. I've also added couple of Kusto queries to help you get started with a few simple dashboards (e.g. tracking when SF nodes go up/down)

Occasional Visitor

Pretty sure that currently the Service Fabric Explorer (SFX) only shows node level events and not application-specific events. Naruto Senki mod

Regular Visitor

Looking forward to this release! Is there any concrete date for the rollout now? Checking the roadmap on github, it still has 7.0 scheduled for Nov 2019.

Occasional Visitor

Thank you for clarifying the upcoming cross-AZ scale set support - that makes sense! Spotify Premium Mod Apk

Occasional Visitor

Looks great and seems a lot better than service fabric 6.0, Discord No Route Error the resource limit is the only issue I am facing right now so I am gonna wait for this version. 

Occasional Visitor

Thank you for all the support. Download Thop Tv app

Senior Member

Great. I look forward to the opportunity to experience this update by GB Whatsapp

Occasional Visitor

thanks for creating an info on new service fabric release congratulations microsoft

Occasional Visitor

Thank you so much for sharing this information. Fortnite Beach Party Locations

Occasional Visitor

So this information is really important to me so thanks to you. How to delete a page in word


Occasional Visitor

Thank you for all the support. I happened to see this information. Yowhatsapp

Occasional Visitor

Thanks for this post was really awesome! como conquistar um geminiano

Occasional Visitor

You might have already been anticipating that your child may need braces. One alternative is Invisalign in London. Invisalign costs about the same amount as traditional braces in about every markets.

Occasional Visitor

Thanks for sharing that post. See the Do you know about GBWhatsApp. This app have many feature. Try that.Download free Minecraft. See the Dramafire.

Occasional Visitor

This article gives me new level of energy for me project whatsapp gb

Version history
Last update:
‎Nov 19 2019 01:55 PM
Updated by: