Techniques for achieving high availability with multi-tenant storage when a partial fault occurs or when more than two complete faults occur
AssigneeCloudByte, Inc.
InventorsFelix Xavier, Umasankar Mukkara, Vishnu Govind Attur
Life of this patent
Estimating the term…
Abstract
Techniques for achieving high availability (HA) in a cloud environment are presented. Cloud storage provided to multiple tenants is accessed via a plurality of controllers via a switch. The controllers are organized in a ring and each controller is responsible for detecting failures in adjoining controllers within the ring. Storage services for the tenants are serviced without disruptions even when multiple nodes completely fail at the same time.
Claims20
A method implemented in a non-transitory machine-readable storage medium and processed by one or more processors of a machine configured to perform the method, comprising:
- detecting, on the machine, a failure of a storage controller in a cloud storage environment;
- configuring, from the machine, a different storage controller to process storage services that operated on the failed storage controller;
- instructing, from the machine, the different storage controller to start the storage services;
- and
- redirecting, via the machine, the tenants associated with the storage services from the failed storage controller to the different storage controller, wherein each tenant is a consumer to some amount of the cloud storage and the cloud storage is a multi-tenant environment and wherein each tenant consumes the storage services from the cloud storage but each tenant accesses a customized virtual application instance of the storage services for that tenant.
A method implemented in a non-transitory machine-readable storage medium and processed by one or more processors of a machine configured to perform the method, comprising:
- detecting, on the machine, a single storage service on a storage controller of a cloud storage environment that fails, the storage controller having other operational storage services;
- dynamically exporting, from the machine, the single storage service to a different storage controller within the cloud storage environment;
- and
- automatically connecting, via the machine, a tenant associated with the single storage service to the different storage controller having an operational version of the single storage service, and wherein the tenant is a consumer to some amount of the cloud storage environment and the cloud storage environment is a multi-tenant environment servicing multiple other tenants and the single storage service is a customized virtual application instance for the tenant.
A system, comprising:
- a cloud storage environment having one or more processors, memory, and storage, the cloud storage environment situated in a cloud environment and accessed over a network;
- and
- the memory configured with a high-availability (HA) manager implemented as executable instructions that process on the one or more processors of the cloud storage environment;
- wherein the HA manager is configured to detect complete failures of storage controllers or partial failures of particular storage services on particular storage controllers, and wherein the HA manager is configured to reconfigure the storage controllers to provide access to any failed storage service, and wherein the cloud storage environment is a multi-tenant environment that services multiple tenants, each tenant is a consumer that consumes some portion of the cloud storage environment and wherein each tenant consumes the storage services from the cloud storage environment but each tenant accesses a customized virtual application instance of the storage services for that tenant.
Dependencies are inferred from the claim text.