IP Library Granted Patent US 10,025,678
Granted Patent B2
US 10,025,678 · App. 14/833,880 · Granted Jul 17, 2018

Method and system for automatically detecting and resolving infrastructure faults in cloud infrastructure

Inventors: Ian Alderman (Madison, WI); Chris M. Chalfant (Fishers, IN); Ian Chesal (Santa Clara, CA); Douglas Clayton (Durham, NC); S. Robert Futrick (Austin, TX); Daniel Harris (New Haven, CT); Andrew Kaczorek (Carmel, IN); Jason Stowe (Greenwich, CT); Adrian Johnson (Oakland, CA); Ben Watrous (Greenwich, CT); David Watrous (Schenectady, NY); Archit Kulshrestha (Weehawken, NJ)
Assignee: Microsoft Technology Licensing, LLC
G06F11/20G06F11/0709G06F11/0793G06F11/36G06F11/3604G06F11/3668H04L41/5035H04L41/5038H04L41/5096H04L43/04H04L67/10G06F2201/805
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 10,025,678
App. No.
14/833,880
Granted
Jul 17, 2018
Kind
B2
Abstract

Systems and methods are provided for any party in a cloud ecosystem (cloud providers of such resources, the intermediate management software for such resources, and the end user of such resources) to detect and resolve faulty resources synchronously or asynchronously, before said faults adversely affect the users' workloads. The system requests a service or set of one or more resources within a cloud, automatically checking the infrastructure for various faults that would cause it to be non-functional, including pre-defined and user-defined checks, and resolving them before including the infrastructure in the working service cluster of resources. The system presents an API to the user that returns only functional, production-quality resources that are not in a faulty state. An API that tests and resolves bad infrastructure can be registered during the request or a preceding/subsequent API call, removing the need for the end-user to deal with various types of infrastructure faults.

Claims (29)

1. A process for returning selected infrastructure to a user in a cloud computing system that will keep the selected infrastructure in use to a user below any limits imposed by a provider of the cloud computing system, comprising:

determining the limits of resources to be provided by the provider to a user;

allocating and providing resources to a user, while checking to determine whether the resources are non-faulty and within the limits of resources to be provided to a user; and;

continuing to keep the resources within the resource limits to be provided to a user, and continuing to keep the resources non-faulty without increasing those resources.

2. A cloud computing system comprising a processor and an application programming interface (API) comprising a plurality of instructions which, when executed by the processor, cause the processor to perform the steps comprising:

tests selected resources within an infrastructure for faults;

resolves any faults in the resources within the infrastructure; and

registers any faulty resource within the infrastructure during a request or a preceding/subsequent API call and keeping any faulty resource within the infrastructure from being provided to a user, thereby removing the need for an end-user to deal with and receive resource infrastructure faults in user-defined fault checks.

3. A cloud computing system for validating a service or set of one or more resources within a cloud, comprising a processor and an application programming interface (API) comprising a plurality of instructions which, when executed by the processor, cause the processor to perform the steps comprising:

automatically checks resources within an infrastructure to detect for any faults including pre-defined and user-defined checks that would cause the resources within an infrastructure to be non-functional;

resolves any faults in the resources that are detected;

includes only non-faulty resources in the infrastructure in a working service cluster of resources; and

presents to the user only functional resources that are free of faults.

4. The cloud computing system of claim 3 , wherein the API performs the step of fault resolution asynchronously.

5. A cloud computing system for using management or client software, comprising a processor and an application programming interface (API) comprising a plurality of instructions which, when executed by the processor, cause the processor to perform the steps comprising:

receives resources from a cloud application programming interface that may be non-faulty or faulty resources;

runs fault tests against the resources to detect for the presence of faults in the resources;

makes any detected faulty resources non-faulty; and

communicates only the non-faulty resources to a client application.

6. A cloud computing system for validating cloud-based resources in order to maintain a list of fault-free resources, comprising a processor and an application programming interface (API) comprising a plurality of instructions which, when executed by the processor, cause the processor to perform the steps comprising:

(a) tests the ability of a user to log into an infrastructure server;

(b) tests the ability of a user to access a file system within the infrastructure server;

(c) alerts the results of steps (a) and (b) back to fault detection and resolution software, in at least one of Cloud, Management, or Client software; and

if a fault is detected in any of steps (a)-(c), has the ability to perform all and any of the following:

(d) hold the resources for examination,

(e) ensure that any faulty resource detected is not re-acquired by a user, and

(f) shut down the faulty resource until rendered non-faulty.

7. The cloud computing system of claim 6 , wherein the API performs at least one of steps (a)-(f) synchronously.

8. The cloud computing system of claim 6 , wherein the API performs at least one of steps (a)-(f) asynchronously.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 20, 2017
From: ALDERMAN, IAN; CHALFANT, CHRIS M.; CHESAL, IAN; CLAYTON, DOUGLAS; FUTRICK, S. ROBERT; HARRIS, DANIEL; KACZOREK, ANDREW; STOWE, JASON; JOHNSON, ADRIAN; WATROUS, BEN; WATROUS, DAVID; KULSHRESTHA, ARCHIT
To: CYCLE COMPUTING, LLC
Reel/Frame 043920/0691 →
Continuity (3)
Continuation 13919769 · Jun 17, 2013
Provisional Application 61660300 · Jun 15, 2012
Related Publication 20150363281A1 · Dec 17, 2015