Skip to content

Commit 6cd6ce2

Browse files
authored
Merge pull request #57710 from rwike77/clusterupgrade
Cluster upgrade
2 parents 7ae56a0 + 5141dc7 commit 6cd6ce2

10 files changed

+531
-390
lines changed
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
title: Upgrade the configuration of an Azure Service Fabric cluster | Microsoft Docs
3+
description: Learn how to upgrade the configuration that runs a Service Fabric cluster in Azure using a Resource Manager template.
4+
services: service-fabric
5+
documentationcenter: .net
6+
author: dkkapur
7+
manager: timlt
8+
editor: ''
9+
10+
ms.assetid: 66296cc6-9524-4c6a-b0a6-57c253bdf67e
11+
ms.service: service-fabric
12+
ms.devlang: dotnet
13+
ms.topic: conceptual
14+
ms.tgt_pltfrm: na
15+
ms.workload: na
16+
ms.date: 11/09/2018
17+
ms.author: dekapur
18+
19+
---
20+
# Upgrade the configuration of a cluster in Azure
21+
22+
This article describes how to customize the various fabric settings for your Service Fabric cluster. For clusters hosted in Azure, you can customize settings through the [Azure portal](https://portal.azure.com) or by using an Azure Resource Manager template.
23+
24+
> [!NOTE]
25+
> Not all settings are available in the portal. In case a setting listed below is not available via the portal customize it using an Azure Resource Manager template.
26+
> 
27+
28+
## Customize cluster settings using Resource Manager templates
29+
Azure clusters can be configured through the JSON Resource Manager template. To learn more about the different settings, see [Configuration settings for clusters](service-fabric-cluster-fabric-settings.md). As an example, the steps below show how to add a new setting *MaxDiskQuotaInMB* to the *Diagnostics* section using Azure Resource Explorer.
30+
31+
1. Go to https://resources.azure.com
32+
2. Navigate to your subscription by expanding **subscriptions** -> **\<Your Subscription>** -> **resourceGroups** -> **\<Your Resource Group>** -> **providers** -> **Microsoft.ServiceFabric** -> **clusters** -> **\<Your Cluster Name>**
33+
3. In the top right corner, select **Read/Write.**
34+
4. Select **Edit** and update the `fabricSettings` JSON element and add a new element:
35+
36+
```json
37+
{
38+
"name": "Diagnostics",
39+
"parameters": [
40+
{
41+
"name": "MaxDiskQuotaInMB",
42+
"value": "65536"
43+
}
44+
]
45+
}
46+
```
47+
48+
You can also customize cluster settings in one of the following ways with Azure Resource Manager:
49+
50+
- Use the [Azure portal](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template) to export and update the Resource Manger template.
51+
- Use [PowerShell](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template-powershell) to export and update the Resource Manager template.
52+
- Use the [Azure CLI](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template-cli) to export and update the Resource Manager template.
53+
- Use the Azure RM PowerShell [Set-AzureRmServiceFabricSetting](https://docs.microsoft.com/powershell/module/azurerm.servicefabric/Set-AzureRmServiceFabricSetting) and [Remove-AzureRmServiceFabricSetting](https://docs.microsoft.com/powershell/module/azurerm.servicefabric/Remove-AzureRmServiceFabricSetting) commands to modify the setting directly.
54+
- Use the Azure CLI [az sf cluster setting](https://docs.microsoft.com/cli/azure/sf/cluster/setting) commands to modify the setting directly.
55+
56+
## Next steps
57+
* Learn about the [Service Fabric cluster settings](service-fabric-cluster-fabric-settings.md).
58+
* Learn how to [scale your cluster in and out](service-fabric-cluster-scale-up-down.md).
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
---
2+
title: Upgrade the configuration of a standalone Azure Service Fabric cluster | Microsoft Docs
3+
description: Learn how to upgrade the configuration that runs a standalone Service Fabric cluster.
4+
services: service-fabric
5+
documentationcenter: .net
6+
author: dkkapur
7+
manager: timlt
8+
editor: ''
9+
10+
ms.assetid: 66296cc6-9524-4c6a-b0a6-57c253bdf67e
11+
ms.service: service-fabric
12+
ms.devlang: dotnet
13+
ms.topic: conceptual
14+
ms.tgt_pltfrm: na
15+
ms.workload: na
16+
ms.date: 11/09/2018
17+
ms.author: dekapur
18+
19+
---
20+
# Upgrade the configuration of a standalone cluster
21+
22+
For any modern system, the ability to upgrade is key to the long-term success of your product. An Azure Service Fabric cluster is a resource that you own. This article describes how to upgrade the configuration settings of your standalone Service Fabric cluster.
23+
24+
## Customize cluster settings in the ClusterConfig.json file
25+
Standalone clusters are configured through the *ClusterConfig.json* file. To learn more about the different settings, see [Configuration settings for a standalone Windows cluster](service-fabric-cluster-manifest.md).
26+
27+
You can add, update, or remove settings in the `fabricSettings` section under the [Cluster properties](./service-fabric-cluster-manifest.md#cluster-properties) section in *ClusterConfig.json*.
28+
29+
For example, the following JSON adds a new setting *MaxDiskQuotaInMB* to the *Diagnostics* section under `fabricSettings`:
30+
31+
```json
32+
{
33+
"name": "Diagnostics",
34+
"parameters": [
35+
{
36+
"name": "MaxDiskQuotaInMB",
37+
"value": "65536"
38+
}
39+
]
40+
}
41+
```
42+
43+
After you've modified the settings in your ClusterConfig.json file, [test the cluster configuration](#test-the-cluster-configuration) and then [upgrade the cluster configuration](#upgrade-the-cluster-configuration) to apply the settings to your cluster.
44+
45+
## Test the cluster configuration
46+
Before you initiate the configuration upgrade, you can test your new cluster configuration JSON by running the following PowerShell script in the standalone package:
47+
48+
```powershell
49+
TestConfiguration.ps1 -ClusterConfigFilePath <Path to the new Configuration File> -OldClusterConfigFilePath <Path to the old Configuration File>
50+
```
51+
52+
Or use this script:
53+
54+
```powershell
55+
TestConfiguration.ps1 -ClusterConfigFilePath <Path to the new Configuration File> -OldClusterConfigFilePath <Path to the old Configuration File> -FabricRuntimePackagePath <Path to the .cab file which you want to test the configuration against>
56+
```
57+
58+
Some configurations can't be upgraded, such as endpoints, cluster name, node IP, etc. The new cluster configuration JSON is tested against the old one and throws errors in the PowerShell window if there's an issue.
59+
60+
## Upgrade the cluster configuration
61+
To upgrade the cluster configuration upgrade, run [Start-ServiceFabricClusterConfigurationUpgrade](https://docs.microsoft.com/powershell/module/servicefabric/start-servicefabricclusterconfigurationupgrade). The configuration upgrade is processed upgrade domain by upgrade domain.
62+
63+
```powershell
64+
Start-ServiceFabricClusterConfigurationUpgrade -ClusterConfigPath <Path to Configuration File>
65+
```
66+
67+
## Upgrade cluster certificate configuration
68+
A cluster certificate is used for authentication between cluster nodes. The certificate rollover should be performed with extra caution because failure blocks the communication among cluster nodes.
69+
70+
Four options are supported:
71+
72+
* Single certificate upgrade: The upgrade path is Certificate A (Primary) -> Certificate B (Primary) -> Certificate C (Primary) ->....
73+
74+
* Double certificate upgrade: The upgrade path is Certificate A (Primary) -> Certificate A (Primary) and B (Secondary) -> Certificate B (Primary) -> Certificate B (Primary) and C (Secondary) -> Certificate C (Primary) ->....
75+
76+
* Certificate type upgrade: Thumbprint-based certificate configuration <-> CommonName-based certificate configuration. For example, Certificate Thumbprint A (Primary) and Thumbprint B (Secondary) -> Certificate CommonName C.
77+
78+
* Certificate issuer thumbprint upgrade: The upgrade path is Certificate CN=A,IssuerThumbprint=IT1 (Primary) -> Certificate CN=A,IssuerThumbprint=IT1,IT2 (Primary) -> Certificate CN=A,IssuerThumbprint=IT2 (Primary).
79+
80+
81+
## Next steps
82+
* Learn how to customize some [Service Fabric cluster settings](service-fabric-cluster-fabric-settings.md).
83+
* Learn how to [scale your cluster in and out](service-fabric-cluster-scale-up-down.md).
84+
* Learn about [application upgrades](service-fabric-application-upgrade.md).
85+
86+
<!--Image references-->
87+
[getfabversions]: ./media/service-fabric-cluster-upgrade-windows-server/getfabversions.PNG

articles/service-fabric/service-fabric-cluster-fabric-settings.md

Lines changed: 4 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -14,73 +14,19 @@ ms.devlang: dotnet
1414
ms.topic: reference
1515
ms.tgt_pltfrm: NA
1616
ms.workload: NA
17-
ms.date: 10/08/2018
17+
ms.date: 11/13/2018
1818
ms.author: aljo
1919

2020
---
2121
# Customize Service Fabric cluster settings
22-
This article describes how to customize the various fabric settings for your Service Fabric cluster. For clusters hosted in Azure, you can customize settings through the [Azure portal](https://portal.azure.com) or by using an Azure Resource Manager template. For standalone clusters, you customize settings by updating the ClusterConfig.json file and performing a configuration upgrade on your cluster.
22+
This article describes the various fabric settings for your Service Fabric cluster that you can customize. For clusters hosted in Azure, you can customize settings through the [Azure portal](https://portal.azure.com) or by using an Azure Resource Manager template. For more information, see [Upgrade the configuration of an Azure cluster](service-fabric-cluster-config-upgrade-azure.md). For standalone clusters, you customize settings by updating the *ClusterConfig.json* file and performing a configuration upgrade on your cluster. For more information, see [Upgrade the configuration of a standalone cluster](service-fabric-cluster-config-upgrade-windows-server.md).
2323

24-
> [!NOTE]
25-
> Not all settings are available in the portal. In case a setting listed below is not available via the portal customize it using an Azure Resource Manager template.
26-
> 
27-
28-
## Description of the different upgrade policies
24+
There are three different upgrade policies:
2925

3026
- **Dynamic** – Changes to a dynamic configuration do not cause any process restarts of either Service Fabric processes or your service host processes.
3127
- **Static** – Changes to a static configuration will cause the Service Fabric node to restart in order to consume the change. Services on the nodes will be restarted.
3228
- **NotAllowed** – These settings cannot be modified. Changing these settings requires that the cluster be destroyed and a new cluster created.
3329

34-
## Customize cluster settings using Resource Manager templates
35-
The steps below show how to add a new setting *MaxDiskQuotaInMB* to the *Diagnostics* section using Azure Resource Explorer.
36-
37-
1. Go to https://resources.azure.com
38-
2. Navigate to your subscription by expanding **subscriptions** -> **\<Your Subscription>** -> **resourceGroups** -> **\<Your Resource Group>** -> **providers** -> **Microsoft.ServiceFabric** -> **clusters** -> **\<Your Cluster Name>**
39-
3. In the top right corner, select **Read/Write.**
40-
4. Select **Edit** and update the `fabricSettings` JSON element and add a new element:
41-
42-
```json
43-
{
44-
"name": "Diagnostics",
45-
"parameters": [
46-
{
47-
"name": "MaxDiskQuotaInMB",
48-
"value": "65536"
49-
}
50-
]
51-
}
52-
```
53-
54-
You can also customize cluster settings in one of the following ways with Azure Resource Manager:
55-
56-
- Use the [Azure portal](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template) to export and update the Resource Manger template.
57-
- Use [PowerShell](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template-powershell) to export and update the Resource Manager template.
58-
- Use the [Azure CLI](https://docs.microsoft.com/azure/azure-resource-manager/resource-manager-export-template-cli) to export and update the Resource Manager template.
59-
- Use the Azure RM PowerShell [Set-AzureRmServiceFabricSetting](https://docs.microsoft.com/powershell/module/azurerm.servicefabric/Set-AzureRmServiceFabricSetting) and [Remove-AzureRmServiceFabricSetting](https://docs.microsoft.com/powershell/module/azurerm.servicefabric/Remove-AzureRmServiceFabricSetting) commands to modify the setting directly.
60-
- Use the Azure CLI [az sf cluster setting](https://docs.microsoft.com/cli/azure/sf/cluster/setting) commands to modify the setting directly.
61-
62-
## Customize cluster settings for standalone clusters
63-
Standalone clusters are configured through the ClusterConfig.json file. To learn more, see [Configuration settings for a standalone Windows cluster](./service-fabric-cluster-manifest.md).
64-
65-
You can add, update, or remove settings in the `fabricSettings` section under the [Cluster properties](./service-fabric-cluster-manifest.md#cluster-properties) section in ClusterConfig.json.
66-
67-
For example, the following JSON adds a new setting *MaxDiskQuotaInMB* to the *Diagnostics* section under `fabricSettings`:
68-
69-
```json
70-
{
71-
"name": "Diagnostics",
72-
"parameters": [
73-
{
74-
"name": "MaxDiskQuotaInMB",
75-
"value": "65536"
76-
}
77-
]
78-
}
79-
```
80-
81-
After you've modified the settings in your ClusterConfig.json file, follow the directions in [Upgrade the cluster configuration](./service-fabric-cluster-upgrade-windows-server.md#upgrade-the-cluster-configuration) to apply the settings to your cluster.
82-
83-
8430
The following is a list of Fabric settings that you can customize, organized by section.
8531

8632
## ApplicationGateway/Http
@@ -864,7 +810,4 @@ The following is a list of Fabric settings that you can customize, organized by
864810
|X509StoreName | string, default is "My"|Dynamic|X509StoreName for UpgradeService. |
865811

866812
## Next steps
867-
Read these articles for more information on cluster management:
868-
869-
[Add, Roll over, remove certificates from your Azure cluster ](service-fabric-cluster-security-update-certs-azure.md)
870-
813+
For more information, see [Upgrade the configuration of an Azure cluster](service-fabric-cluster-config-upgrade-azure.md) and [Upgrade the configuration of a standalone cluster](service-fabric-cluster-config-upgrade-windows-server.md).

0 commit comments

Comments
 (0)