Exemplo n.º 1
0
        public void TestApplcationWithNullDeltaHealthPolicy()
        {
            CommandParameterGenerator generator = new CommandParameterGenerator(new TestFabricClientWrapper());

            PaasClusterUpgradePolicy clusterUpgradePolicy = CreateDefaultPaasClusterUpgradePolicy();

            clusterUpgradePolicy.DeltaHealthPolicy = null;

            ClusterHealth defaultClusterHealth = CreateDefaultClusterHealth(
                totalApplicationCount: 6,
                totalNodeCount: 5,
                unhealthyApplicationsCount: 0,
                unhealthyNodeCount: 0);

            CommandProcessorClusterUpgradeDescription result = generator.GetClusterUpgradeDescriptionAsync(
                clusterUpgradePolicy,
                defaultClusterHealth,
                CancellationToken.None).Result;

            VerifyCommandProcessorClusterUpgradeDescription(
                clusterUpgradePolicy,
                result,
                maxPercentageUnhealthyApplication: 100,
                expectedtMaxPercentUnhealthyPerServicesType: null);
        }
Exemplo n.º 2
0
        public void TestDefaultHealthPolicy()
        {
            CommandParameterGenerator generator = new CommandParameterGenerator(new TestFabricClientWrapper());

            PaasClusterUpgradePolicy defaultPaasClusterUpgradePolicy = CreateDefaultPaasClusterUpgradePolicy();
            ClusterHealth            defaultClusterHealth            = CreateDefaultClusterHealth(5, 5);

            CommandProcessorClusterUpgradeDescription result = generator.GetClusterUpgradeDescriptionAsync(
                defaultPaasClusterUpgradePolicy,
                defaultClusterHealth,
                CancellationToken.None).Result;

            VerifyCommandProcessorClusterUpgradeDescription(
                defaultPaasClusterUpgradePolicy,
                result,
                maxPercentageUnhealthyApplication: 0,
                expectedtMaxPercentUnhealthyPerServicesType: null);
        }
Exemplo n.º 3
0
        public void TestApplcationWithUnhealthySystemServiceHealthPolicy()
        {
            var testFabricClientWrapper         = new TestFabricClientWrapper();
            CommandParameterGenerator generator = new CommandParameterGenerator(testFabricClientWrapper);

            PaasClusterUpgradePolicy clusterUpgradePolicy = CreateDefaultPaasClusterUpgradePolicyWithSystemServicesPolicies();

            ClusterHealth defaultClusterHealth = CreateDefaultClusterHealth(
                totalApplicationCount: 6,
                totalNodeCount: 5,
                unhealthyApplicationsCount: 0,
                unhealthyNodeCount: 0,
                isSystemServicesUnhealthy: true);

            Service fssService = new StatefulService(new Uri("fabric:/System/ImageStoreService"), "FileStoreService", "1.0", true, HealthState.Error, ServiceStatus.Active);
            Service cmService  = new StatefulService(new Uri("fabric:/System/ClusterManagerService"), "ClusterManager", "1.0", true, HealthState.Ok, ServiceStatus.Active);
            Service hmService  = new StatefulService(new Uri("fabric:/System/HealthManagerService"), "HealthManager", "1.0", true, HealthState.Ok, ServiceStatus.Active);

            testFabricClientWrapper.GetServicesResult = new ServiceList(new List <Service>()
            {
                fssService, cmService, hmService
            });

            CommandProcessorClusterUpgradeDescription result = generator.GetClusterUpgradeDescriptionAsync(
                clusterUpgradePolicy,
                defaultClusterHealth,
                CancellationToken.None).Result;

            var expectedtMaxPercentUnhealthyPerServicesType = new Dictionary <string, byte>();

            expectedtMaxPercentUnhealthyPerServicesType.Add("FileStoreService", 100);
            expectedtMaxPercentUnhealthyPerServicesType.Add("ClusterManager", 0);
            expectedtMaxPercentUnhealthyPerServicesType.Add("HealthManager", 0);

            VerifyCommandProcessorClusterUpgradeDescription(
                clusterUpgradePolicy,
                result,
                0,
                expectedtMaxPercentUnhealthyPerServicesType);
        }