IP Library › Granted Patent US 11,777,831
Granted Patent B2
US 11,777,831 · App. 17/572,539 · Granted Oct 3, 2023

Aggregation-based determination of cloud computing service resiliency to chaos events

Inventors: David Dominic Anderson (Renton, WA); Piyush Gupta (Sammamish, WA); Jeremy Michael Bares (Seattle, WA); Weili Zhong McClenahan (Seattle, WA); Craig Henry Wittenberg (Clyde Hill, WA); Christopher Grant Ashton (Redmond, WA); Ritchie Nicholas Hughes (Salt Lake City, UT)
Assignee: Microsoft Technology Licensing, LLC
H04L43/16G06F16/285
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,777,831
App. No.
17/572,539
Granted
Oct 3, 2023
Kind
B2
Abstract

Techniques are described herein that are capable of performing an aggregation-based determination of resiliency of a cloud computing service to chaos events. Chaos events are executed against a cloud computing service during a time frame that includes multiple time periods. For each chaos event, service health indexes (SHIs) that correspond to the time periods are calculated. Each SHI indicates an extent to which indicators, which represent respective measurements of performance of the cloud computing service during the respective time period, satisfy respective criteria. The SHIs for each chaos event are analyzed to provide a respective resiliency score. At least some of the resiliency scores of the respective chaos events are aggregated to provide an aggregated resiliency score, which represents resiliency of the cloud computing service to the chaos events.

Claims (83)

1. A system comprising:

a memory; and

a processing system coupled to the memory, the processing system configured to:

analyze a first reaction of a cloud computing service to execution of a first chaos event during a time frame by calculating a first plurality of service health indexes that correspond to a first plurality of respective time periods;

analyze a second reaction of the cloud computing service to execution of a second chaos event during the time frame by calculating a second plurality of service health indexes that correspond to a second plurality of respective time periods, each service health index of the first plurality of service health indexes and the second plurality of service health indexes indicating an extent to which a respective measurement of performance of the cloud computing service satisfies a respective criterion during a respective time period of the first plurality of respective time periods or the second plurality of respective time periods, respectively;

provide a first resiliency score by analyzing the first plurality of service health indexes for the first chaos event;

provide a second resiliency score by analyzing the second plurality of service health indexes for the second chaos event; and

provide an aggregated resiliency score by aggregating the first and second resiliency scores, the aggregated resiliency score representing resiliency of the cloud computing service to the first and second chaos events.

2. The system of claim 1 , wherein the processing system is further configured to:

provide a first plurality of weighted service health indexes by combining the first plurality of service health indexes with a first plurality of respective weights; and

provide a second plurality of weighted service health indexes by combining the second plurality of service health indexes with a second plurality of respective weights.

3. The system of claim 2 , wherein the processing system is further configured to:

determine an extent to which the cloud computing service is used during each time period of the first plurality of respective time periods and the second plurality of respective time periods;

establish the first plurality of respective weights to represent the respective extents to which the cloud computing service is used during the first plurality of respective time periods; and

establish the second plurality of respective weights to represent the respective extents to which the cloud computing service is used during the second plurality of respective time periods.

4. The system of claim 1 , wherein the processing system is further configured to:

determine an extent to which the cloud computing service is used during each time period of the first plurality of respective time periods and the second plurality of respective time periods; and

compare the extent to which the cloud computing service is used during each time period of the first plurality of time periods and the second plurality of time periods to a usage threshold;

wherein the first resiliency score is based on each of the first plurality of service health indexes that corresponds to a first respective time period of the first plurality of respective time periods during which the extent to which the cloud computing service is used is greater than or equal to the usage threshold; and

wherein the second resiliency score is based on each of the second plurality of service health indexes that corresponds to a second respective time period of the second plurality of respective time periods during which the extent to which the cloud computing service is used is greater than or equal to the usage threshold.

5. The system of claim 1 , wherein the respective criterion is defined by a service level objective that is associated with the cloud computing service.

6. The system of claim 1 , wherein the first resiliency score is based at least in part on a time to recover from the first chaos event;

wherein a relatively lesser time to recover has a positive effect on the resiliency score; and

wherein a relatively greater time to recover has a negative effect on the resiliency score.

7. The system of claim 1 , wherein the processing system is further configured to:

calculate an average of the first and second resiliency scores; and

calculate a ratio of the average of the first and second resiliency scores to a target resiliency score;

wherein the aggregated resiliency score is based at least in part on the ratio.

8. The system of claim 1 , wherein the processing system is further configured to:

determine that the aggregated resiliency score is less than a score threshold; and

notify a provider of the cloud computing service that the aggregated resiliency score is less than the score threshold.

9. The system of claim 1 , wherein the aggregated resiliency score is a first aggregated resiliency score; and

wherein the processing system is further configured to:

analyze a third reaction of a cloud computing service to execution of the first chaos event during a second time frame by calculating a third plurality of service health indexes that correspond to a third plurality of respective time periods;

analyze a fourth reaction of the cloud computing service to execution of the second chaos event during the second time frame by calculating a fourth plurality of service health indexes that correspond to a fourth plurality of respective time periods, each service health index of the third plurality of service health indexes and the fourth plurality of service health indexes indicating an extent to which a respective measurement of performance of the cloud computing service satisfies a second respective criterion during a respective time period of the third plurality of respective time periods or the fourth plurality of respective time periods, respectively;

provide a third resiliency score by analyzing the third plurality of service health indexes for the first chaos event;

provide a fourth resiliency score by analyzing the fourth plurality of service health indexes for the second chaos event;

provide a second aggregated resiliency score by aggregating the third and fourth resiliency scores, the second aggregated resiliency score representing resiliency of the cloud computing service to the first and second chaos events;

determine that the second aggregated resiliency score is less than the first aggregated resiliency score; and

notify a provider of the cloud computing service that the second aggregated resiliency score is less than the first aggregated resiliency score.

10. A method implemented by a computing system, the method comprising:

analyzing a first reaction of a cloud computing service to execution of a first chaos event during a time frame by calculating a first plurality of service health indexes that correspond to a first plurality of respective time periods;

analyzing a second reaction of the cloud computing service to execution of a second chaos event during the time frame by calculating a second plurality of service health indexes that correspond to a second plurality of respective time periods, each service health index of the first plurality of service health indexes and the second plurality of service health indexes indicating an extent to which a respective measurement of performance of the cloud computing service satisfies a respective criterion during a respective time period of the first plurality of respective time periods or the second plurality of respective time periods, respectively;

providing a first resiliency score by analyzing the first plurality of service health indexes for the first chaos event;

providing a second resiliency score by analyzing the second plurality of service health indexes for the second chaos event; and

providing an aggregated resiliency score by aggregating the first and second resiliency scores, the aggregated resiliency score representing resiliency of the cloud computing service to the first and second chaos events.

11. The method of claim 10 , wherein the first resiliency score is provided based at least in part on a severity of the first chaos event being less than or equal to a severity from which the cloud computing service is capable of recovering; and

wherein the second resiliency score is provided based at least in part on a severity of the second chaos event being less than or equal to the severity from which the cloud computing service is capable of recovering.

12. The method of claim 11 , wherein the severity of the first chaos event is based at least in part on a number of machines for which operational performance is reduced by the first chaos event; and

wherein the severity of the second chaos event is based at least in part on a number of machines for which operational performance is reduced by the second chaos event.

13. The method of claim 11 , wherein the severity of the first chaos event is based at least in part on an extent to which operational performance of a machine is reduced by the first chaos event; and

wherein the severity of the second chaos event is based at least in part on an extent to which operational performance of a machine is reduced by the second chaos event.

14. The method of claim 11 , wherein the severity of the first chaos event is based at least in part on an amount of time over which the first chaos event occurs; and

wherein the severity of the second chaos event is based at least in part on an amount of time over which the second chaos event occurs.

15. The method of claim 10 , further comprising:

analyzing a third reaction of a second cloud computing service to execution of the first chaos event during a second time frame by calculating a third plurality of service health indexes that correspond to a third plurality of respective time periods;

analyzing a fourth reaction of the second cloud computing service to execution of the second chaos event during the second time frame by calculating a fourth plurality of service health indexes that correspond to a fourth plurality of respective time periods, each service health index of the third plurality of service health indexes and the fourth plurality of service health indexes indicating an extent to which a respective measurement of performance of the second cloud computing service satisfies a second respective criterion during a respective time period of the third plurality of respective time periods or the fourth plurality of respective time periods, respectively;

providing a third resiliency score by analyzing the third plurality of service health indexes for the first chaos event;

providing a fourth resiliency score by analyzing the fourth plurality of service health indexes for the second chaos event; and

providing a second aggregated resiliency score by aggregating the third and fourth resiliency scores, the second aggregated resiliency score representing resiliency of the second cloud computing service to the first and second chaos events.

16. The method of claim 15 , further comprising:

determining that the second cloud computing service depends on the first cloud computing service;

wherein analyzing the first reaction of the second cloud computing service and analyzing the second reaction of the second cloud computing service are performed based at least in part on determining that the second cloud computing service depends on the first cloud computing service.

17. The method of claim 15 , further comprising:

determining that the first aggregated resiliency score of the first cloud computing service has a causal effect on the second aggregated resiliency score of the second cloud computing service; and

determining that the second cloud computing service depends on the first cloud computing service based at least in part on determining that the first aggregated resiliency score has the causal effect on the second aggregated resiliency score.

18. The method of claim 15 , wherein the first time frame and the second time frame are the same; and

wherein the method further comprises:

determining that the first aggregated resiliency score of the first cloud computing service is less than the second aggregated resiliency score of the second cloud computing service; and

notifying a provider of the first cloud computing service that the first aggregated resiliency score of the first cloud computing service is less than the second aggregated resiliency score of the second cloud computing service.

19. The method of claim 10 , further comprising:

determining an extent to which the cloud computing service is used during each time period of the first plurality of respective time periods and the second plurality of respective time periods; and

comparing the extent to which the cloud computing service is used during each time period of the first plurality of respective time periods and the second plurality of respective time periods to a usage threshold;

wherein providing the first resiliency score comprises:

considering each of the first plurality of service health indexes that corresponds to a first respective time period of the first plurality of respective time periods during which the extent to which the cloud computing service is used is greater than or equal to the usage threshold; and

wherein providing the second resiliency score comprises:

considering each of the second plurality of service health indexes that corresponds to a second respective time period of the second plurality of respective time periods during which the extent to which the cloud computing service is used is greater than or equal to the usage threshold.

20. A computer program product comprising a computer-readable storage medium having instructions recorded thereon for enabling a processor-based system to perform operations, the operations comprising:

analyzing a first reaction of a cloud computing service to execution of a first chaos event during a time frame by calculating a first plurality of service health indexes that correspond to a first plurality of respective time periods;

analyzing a second reaction of the cloud computing service to execution of a second chaos event during the time frame by calculating a second plurality of service health indexes that correspond to a second plurality of respective time periods, each service health index of the first plurality of service health indexes and the second plurality of service health indexes indicating an extent to which a respective measurement of performance of the cloud computing service satisfies a respective criterion during a respective time period of the first plurality of respective time periods or the second plurality of respective time periods, respectively;

providing a first resiliency score by analyzing the first plurality of service health indexes for the first chaos event;

providing a second resiliency score by analyzing the second plurality of service health indexes for the second chaos event; and

providing an aggregated resiliency score by aggregating the first and second resiliency scores, the aggregated resiliency score representing resiliency of the cloud computing service to the first and second chaos events.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2022
From: ANDERSON, DAVID DOMINIC; GUPTA, PIYUSH; BARES, JEREMY MICHAEL; MCCLENAHAN, WEILI ZHONG; WITTENBERG, CRAIG HENRY; ASHTON, CHRISTOPHER GRANT; HUGHES, RITCHIE NICHOLAS
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 058612/0764 →
Continuity (2)
Continuation 17145200 · Jan 8, 2021
Related Publication 20220224625A1 · Jul 14, 2022
Cited By (1)
US 12,531,775