Businesses are moving to the cloud in increasing numbers. Enterprises users recognize cloud advantages that help speed innovation, accelerate business processes, and reduce time to revenue. Generally speaking, cloud computing involves delivery of computing as a service rather than a product, whereby shared resources (software, storage resources, etc.) are provided to computing devices as a service. The resources are shared over a network such as the internet. Cloud computing thus provides a quick and scalable access to computing resources and information technology (IT) services.
For a better understanding of the solution, embodiments will now be described, purely by way of example, with reference to the accompanying drawings, in which:
Cloud computing is a delivery model for technology-enabled services that provides on-demand and pay-as-you-use access to an elastic pool of shared computing resources. Some examples of such resources may include applications, servers, storage, networks, etc. Cloud computing allows rapid provisioning of computing resources that could be scaled up or down depending on the requirements of a customer. Thus, these assets may be consumed “as a service”.
There are many models of cloud computing such as Infrastructure-as-a-Service (IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS). Depending on a client's requirement, a cloud service provider may provide either of the aforementioned services, each of which may require provisioning of certain resources on a cloud.
A cloud service provider may use a cloud management software for providing a cloud service (such as, IaaS, PaaS, SaaS, etc.). Such tools provide standard service templates that may be used by a customer of the cloud service provider to deploy a cloud application or service. Although convenient, cloud services or workloads deployed using such generic templates may come short during an actual deployment since they may not offer further service distinction. Said differently, cloud services created from the same template may not be distinguishable in terms of specific business characteristics and attributes. Needless to say, this is not desirable from the perspective of a cloud user. Since business requirements vary among customers, a cloud service provided by a cloud service provider address business needs of a user. An ideal cloud service should be specific to a business solution, and provide complete control to an enterprise over its business processes that are managed through the cloud service. Presently, it is not possible to implement or enforce additional or specific business requirements (such as, security, availability, etc.) via a cloud service created from a generic template.
To address these issues, the present disclosure describes various examples for providing a customized cloud service. In an example, a cloud system may receive Key Service Indicators (KSI) for a cloud service or workload. The cloud system may associate the Key Service Indicators with a cloud service template for providing the cloud service. The cloud system may then identify, based on the Key Service Indicators, resources required for providing the cloud service.
The example implementations mentioned herein enable creation of unique custom solutions in a cloud by using Key Service Indicators (KSI) for a business. It helps enterprises have a better control over their business processes. For instance, it may help organizations make informed decisions at the time of creating a customized cloud solution. These may include, for instance, deployment of application workload on specific hosts in a manner that two or more critical business applications are never on the same host; allocating sufficient resources such that critical needs of a business application are constantly met; and restricting unwanted collection of metrics and monitoring where undesired thereby using cloud resources optimally and providing cost benefit to organizations.
As used herein, the term “cloud service” may include any resource that is provided over the Internet. Some non-limiting examples of common cloud service resources may include Software as a Service (SaaS), Platform as a Service (PaaS) and Infrastructure as a Service (IaaS).
As used herein, the term cloud system (or “cloud”) 102 may include a public cloud, a private cloud, or a hybrid cloud. To explain briefly, cloud system 102 may be termed as a public cloud if cloud computing services are rendered over a public network such as the internet. On the other hand, a private cloud is a proprietary network that supplies services to a specific set of users. A hybrid cloud combines private and public cloud services.
Cloud system 102 may offer, provide or deploy various types of cloud services for a user or customer. These could include Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), and so forth. Cloud system 102 may include various types of service elements (or computing resources). These computing resources may be hardware resources, software resources, or any combinations thereof. For example, hardware resources may include computer systems, computer servers, workstations, or any other computer devices. And, software resources may include operating system software (machine executable instructions), firmware, and/or application software. Computing resources may also include virtual machines, virtual servers, storage resources, load balancers, firewalls, etc. In an implementation, some or all of the computing resources provided by cloud system 102 may be utilized by a user (customer) of cloud system 102.
Referring to
A cloud service template 106, thus, defines various resources, such as server, network, memory, and storage, that may be required to provide a cloud service A cloud service template 106 may also include a provision to install applications as desired by a subscriber of the cloud service. Although
In an example, cloud system 102 may include a cloud platform. A cloud platform may be used by a user or customer to request a new cloud service and manage an existing cloud service. Users may also use the cloud platform to view status of a pending cloud service request, pending approvals, and approved service subscriptions. Users may also use the cloud platform to request modifications in a cloud service subscription, cancel a cloud service subscription, and perform other actions related to their cloud services. In other words, cloud platform may be used to design, publish, and manage a cloud service.
Computing system 104 may represent any type of computing device capable of reading machine-executable instructions. Examples of computing system 104 may include, without limitation, a server, a desktop computer, a notebook computer, a tablet computer, a thin client, a mobile device, a personal digital assistant (PDA), a phablet, and the like. In the example of
The term “module” may refer to a software component (machine executable instructions), a hardware component or a combination thereof. A module may include, by way of example, components, such as software components, processes, tasks, co-routines, functions, attributes, procedures, drivers, firmware, data, databases, data structures, Application Specific Integrated Circuits (ASIC) and other computing devices. The module may reside on a volatile or non-volatile storage medium and configured to interact with a processor of a computing device.
Key Service Indictors (KSI) module 108 may include machine-readable instructions to receive Key Service Indictors (KSI) for a cloud service or workload. As used herein, Key Service Indicators (KSI) may be defined as those factors that may help an organization define and measure progress toward pre-defined goals from a cloud service. KSI may be quantifiable parameters that may reflect an organization's expectations from a cloud service. Some non-limiting examples of KSI may include performance, security, latency, availability, scalability, relevance, and cost. KSI may differ depending on the enterprise. They may also vary depending on the cloud service KSI may be assigned measurable (for example, 5, 10.8, etc.) or non-measurable values (for example, reliable, very reliable, highly reliable, etc.).
In an example, Key Service Indictors (KSI) module 108 may receive Key Service Indictors (KSI) from a user or customer of a cloud service. In another instance, Key Service Indictors (KSI) may be provided by a cloud service provider or an intermediary (for example, a cloud broker) between a cloud service provider and a customer. Key Service Indictors (KSI) module may also receive individual values for the Key Service Indictors (KSI) defined for a cloud service. Computer system 300 may include a user interface component (for example, a Graphical User Interface) for receiving Key Service Indictors (KSI) for a cloud service. In an example, such user interface component may be provided by the Key Service Indictors (KSI) module.
In an example, different KSI may be defined for different time periods (for example, daily, weekly, monthly, weekdays-weekends, regular season-festival season, holidays, etc.). Further, KSI may be specified for a specific time range or duration (for example, 9 AM to 9 PM).
Link module 110 may include machine-readable instructions to associate Key Service Indictors (KSI), received by Key Service Indictors (KSI) module, with a cloud service template that may provide the cloud service. The cloud service template may be present in a cloud system. In an example, link module may associate the Key Service Indictors (KSI) with a cloud service template for a specific time period. In such case, the associated Key Service Indictors (KSI) would apply to the cloud service template only for the specified period. In an example, different KSI may be associated with a cloud service template for different time periods (for example, daily, weekly, monthly, weekdays-weekends, regular season-festival season, holidays, etc.). Further, KSI may be associated with a cloud service template for a specific time range or duration (for example, 9 AM to 9 PM).
Computer system 300 may include a user interface component (for example, a Graphical User Interface) for associating the Key Service Indicators with the cloud service template in the cloud system. In an example, such user interface component may be provided by the Link module.
In an example, link module 110 may be coupled with a cloud service template designer module (not shown). Cloud service template designed module may be used by a user to design a cloud service template. As mentioned earlier, a cloud service template may specify cloud service components and their relationships to define a cloud service lifecycle. In said example, Key Service Indictors (KSI) may be associated with a cloud service template when it is created.
Identification module 112 may include machine-readable instructions to identify, based on the received Key Service Indictors (KSI), resources required for providing the cloud service. Such “resources” may include computing resources, as described earlier. For instance, these resources may be hardware resources, software resources, or any combinations thereof. For example, hardware resources may include computer systems, computer servers, workstations, or any other computer devices. And, software resources may include operating system software (machine executable instructions), firmware, and/or application software. Computing resources may also include virtual machines, virtual servers, storage resources, load balancers, firewalls, etc. In an example, the aforementioned resources may be present in cloud system. Upon identification, identification module may provision such resources for providing the cloud service.
As mentioned earlier, different KSI may be defined for different time periods (or for a specific duration). In such case, identification module 112 may identify a different set of computing resources for each time period. To provide an example, let's consider a scenario wherein a set of Key Service Indictors (KSI) i.e. “Cloud type” and “Availability” may be associated with a cloud service template. In an instance, these KSI may be assigned different values for different time periods. For instance, during regular days in the month of December, “Cloud type” and “Availability” may include values “public cloud” and “seven nines”, respectively. However, during holidays between Christmas and a New Year, these KSI may include values “public cloud” and “three nines-five nines”, respectively. In such case, identification module may identify different computing resources for each time period. For instance, for the holiday period, identification module may identify a server(s) with less number of CPU cores, since the KSI value for “Availability” i.e. “three nines-five nines” is less as compared to the requirement during the regular days. Thus, identification module 112 may identify different computing resources for different time periods based on the Key Service Indictors (KSI) associated with a cloud service template for a particular time period.
In an example, computer system may include a monitoring module (not shown) for monitoring Key Service Indictors (KSI) associated with a cloud service template for various time periods. Monitoring module may be coupled to the identification module 112. Once the monitoring module determines the Key Service Indictors (KSI) associated with the cloud service template for a particular time period, it may passes on the information to the identification module 112. The identification module, in turn, may use such information to identify and provision resources for providing a cloud service for such time period only. Identification module 112 may also use such information to modify previously provisioned resources, reclaim resources, turn on or turn off features or functionalities of existing tools, modify, migrate, or redeploy a cloud service with a changed configuration, if required.
Once the resources required for providing a cloud service, based on KSI associated with a cloud template used for deploying the cloud service, are identified by identification module 112, cloud system 102 may provision such resources and provide the cloud service to a user. In an example, further to such deployment, monitoring module may continue to monitor selection of Key Service Indictors (KSI), by a user, for association with a cloud service template(s) in a cloud system 120, over a period. Such kind of feedback information may be used by the identification module 102 of the computer system 104 to identify, for instance, an appropriate set of resources, tools and configurations for the deployment of a cloud service for a particular user. Such information may also be used by the cloud system 102 to offer a new or refined cloud service template.
Machine-readable storage medium 604 may store instructions 606, 608, and 610. In an example, instructions 606 may be executed by processor 602 to receive Key Service Indicators (KSI) for a cloud service. Instructions 604 may be executed by processor 602 to associate the Key Service Indicators with a cloud service template for providing the cloud service. The instructions to associate may further include instructions to associate distinct Key Service Indicators (KSI) with the cloud service template, for different time periods; monitor the distinct Key Service Indicators (KSI) associated with the cloud service template, for different time periods; and identify, based on the distinct Key Service Indicators, resources required for providing the cloud service during different time periods. Instructions 604 may be executed by processor 602 to identify, based on the Key Service Indicators, resources required for providing the cloud service.
Machine-readable storage medium 604 may further store instructions executable by processor 602 to modify an existing cloud service template or generate a new cloud service template based on the identified Key Service Indicators. Machine-readable storage medium 604 may further store instructions executable by processor 602 to identify computing resources for providing the cloud service.
For the purpose of simplicity of explanation, the example method of
It may be noted that the above-described examples of the present solution is for the purpose of illustration only. Although the solution has been described in conjunction with a specific embodiment thereof, numerous modifications may be possible without materially departing from the teachings and advantages of the subject matter described herein. Other substitutions, modifications and changes may be made without departing from the spirit of the present solution. All of the features disclosed in this specification (including any accompanying claims, abstract and drawings), and/or all of the steps of any method or process so disclosed, may be combined in any combination, except combinations where at least some of such features and/or steps are mutually exclusive.
Number | Date | Country | Kind |
---|---|---|---|
4728/CHE/2014 | Sep 2014 | IN | national |
This application is a continuation of U.S. patent application Ser. No. 17/590,802, filed on Feb. 1, 2022, now U.S. Pat. No. 11,700,188, issued on Jul. 11, 2023, which is a continuation of U.S. patent application Ser. No. 15/500,036, filed on Jan. 28, 2017, now U.S. Pat. No. 11,240,124, issued on Feb. 1, 2022, which is the U.S. National Stage Entry of PCT/US2014/065460, filed on Nov. 13, 2014, which claims priority to Indian Patent Application No. 4728/CHE/2014, filed on Sep. 26, 2014, the entire disclosure of which are incorporated by reference herein.
Number | Name | Date | Kind |
---|---|---|---|
11240124 | Balakrishnan | Feb 2022 | B2 |
11700188 | Balakrishnan | Jul 2023 | B2 |
20040045001 | Bryant | Mar 2004 | A1 |
20060235732 | Miller et al. | Oct 2006 | A1 |
20080312986 | Braun et al. | Dec 2008 | A1 |
20110219434 | Betz et al. | Sep 2011 | A1 |
20120072597 | Teather et al. | Mar 2012 | A1 |
20120179671 | Turner et al. | Jul 2012 | A1 |
20130018994 | Flavel et al. | Jan 2013 | A1 |
20130054301 | Nezhad et al. | Feb 2013 | A1 |
20130145033 | Polla et al. | Jun 2013 | A1 |
20130227137 | Damola et al. | Aug 2013 | A1 |
20130232463 | Nagaraja et al. | Sep 2013 | A1 |
20130291052 | Hadar et al. | Oct 2013 | A1 |
20140006350 | Fukui et al. | Jan 2014 | A1 |
20140047099 | Flores et al. | Feb 2014 | A1 |
20140129389 | Patel et al. | May 2014 | A1 |
20140129703 | Patel et al. | May 2014 | A1 |
20140173089 | Li et al. | Jun 2014 | A1 |
20140207944 | Emaru | Jul 2014 | A1 |
20150006733 | Khan et al. | Jan 2015 | A1 |
20150081907 | Scharf et al. | Mar 2015 | A1 |
20150135305 | Cabrera et al. | May 2015 | A1 |
20150293060 | Jacobsen | Oct 2015 | A1 |
20150304240 | Mandaleeka et al. | Oct 2015 | A1 |
20160072886 | Lin et al. | Mar 2016 | A1 |
20160092253 | Crowell et al. | Mar 2016 | A1 |
20160192312 | Lambert et al. | Jun 2016 | A1 |
20190174449 | Shan et al. | Jun 2019 | A1 |
20190174466 | Zhang et al. | Jun 2019 | A1 |
20190281587 | Zhang et al. | Sep 2019 | A1 |
20200389876 | Islam et al. | Dec 2020 | A1 |
20210007149 | Li et al. | Jan 2021 | A1 |
20210022018 | Belov et al. | Jan 2021 | A1 |
20210298048 | Sosnin et al. | Sep 2021 | A1 |
20220015150 | Ye et al. | Jan 2022 | A1 |
20220038935 | Xiong et al. | Feb 2022 | A1 |
20220095240 | Ying et al. | Mar 2022 | A1 |
20220095260 | Shan | Mar 2022 | A1 |
20220104053 | Ye | Mar 2022 | A1 |
20220109515 | Chervyakov | Apr 2022 | A1 |
20220109546 | Panteleev | Apr 2022 | A1 |
20220110112 | Wei | Apr 2022 | A1 |
20220123902 | Panteleev | Apr 2022 | A1 |
20220124531 | Miao | Apr 2022 | A1 |
20220124723 | Li | Apr 2022 | A1 |
20220174735 | Li et al. | Jun 2022 | A1 |
Number | Date | Country |
---|---|---|
3198793 | Aug 2017 | EP |
4271068 | Nov 2023 | EP |
2016048393 | Mar 2016 | WO |
Number | Date | Country | |
---|---|---|---|
20230318939 A1 | Oct 2023 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 17590802 | Feb 2022 | US |
Child | 18327024 | US | |
Parent | 15500036 | US | |
Child | 17590802 | US |