AUTOMATICALLY IDENTIFYING AND RIGHT SIZING INSTANCES
A system is disclosed. The system includes a resource monitor to monitor a resource utilization of a set of resources of one or more instances, the resource utilization corresponding to a first level of performance and cost and an instance type determiner to, based on the resource utilization, determine if there is an instance type for at least one of the one or more instances, with a resource profile, that will provide a second level of performance and cost that is closer to a default level of performance and cost than the first level of performance and cost. In addition, the system also includes an instance type recommender to, based on the determining, perform one of making and not making a recommendation to replace the instance type of the at least one of the one or more instances.
1 . A computer-implemented method for providing a cloud advisory service for a cloud computing service, comprising:
obtaining resource usage data for a set of database resources of a first set of one or more compute instances;
determining, based on the resource usage data, a first level of performance and cost;
determining a first compute instance of the first set of compute instances, wherein the first compute instance has a first instance type corresponding with a second instance type available in the cloud computing service different from the first instance type;
predicting, based on the resource usage data, a second level of performance and cost by replacing at least the first instance with the second instance type;
comparing the first level of performance and cost and second level of cost performance and cost; and
making, based on the comparing, a recommendation to migrate the set of one or more database resources to the second instance type having the second level of performance and cost.
2 . The method of claim 1 , wherein the obtaining resource usage data comprises:
collecting performance data for a workload from the set of database resources.
3 . The method of claim 2 , wherein the performance data comprises at least one selected from the group consisting of: CPU usage, memory usage, storage usage, and I/O (input/output) usage.
4 . The method of claim 2 , wherein the performance data is collected at predetermined time intervals.
5 . The method of claim 2 , wherein the performance data is collected for a predetermined amount of time to determine the workload.
6 . The method of claim 2 , wherein the performance data is aggregated to determine the workload.
7 . A non-transitory computer-readable memory (NTCRM) comprising instructions stored thereon, wherein execution of the instructions by a processor of a cloud computing service is to cause the cloud computing service to:
obtain resource usage data for a set of database resources of a first set of one or more compute instances;
determine, based on the resource usage data, a first level of performance and cost;
determine a first compute instance of the first set of compute instances, wherein the first compute instance has a first instance type corresponding with a second instance type available in the cloud computing service different from the first instance type;
predict, based on the resource usage data, a second level of performance and cost by replacing at least the first instance with the second instance type;
compare the first level of performance and cost and second level of cost performance and cost; and
make, based on the comparing, a recommendation to migrate the set of one or more database resources to the second instance type having the second level of performance and cost.
8 . The NTCRM of claim 7 , wherein the execution of the instructions to obtain resource usage data causes the cloud computing service the cloud computing service to collect performance data for a workload from the set of database resources.
9 . The NTCRM of claim 8 , wherein the performance data comprises at least one selected from the group consisting of: CPU usage, memory usage, storage usage, and I/O (input/output) usage.
10 . The NTCRM of claim 8 , wherein the performance data is collected at predetermined time intervals.
11 . The NTCRM of claim 8 , wherein the performance data is collected for a predetermined amount of time to determine the workload.
12 . The NTCRM of claim 8 , wherein the performance data is aggregated to determine the workload.
13 . A system to provide a cloud platform advisory service for a cloud computing service, the system comprising:
memory circuitry to store program code of a resource analyzer, a resource configuration determiner, and a resource type recommender; and
processor circuitry connected to the memory circuitry, wherein:
the processor circuitry is to operate the resource configuration determiner to obtain resource usage data for a set of database resources of a first set of one or more compute instances;
the processor circuitry is to operate the resource analyzer to determine, based on the resource usage data, a first level of performance and cost;
the processor circuitry is to operate the resource analyzer to determine a first compute instance of the first set of compute instances, wherein the first compute instance has a first instance type corresponding with a second instance type available in the cloud computing service different from the first instance type;
the processor circuitry is to operate the resource analyzer to predict, based on the resource usage data, a second level of performance and cost by replacing at least the first instance with the second instance type;
the processor circuitry is to operate the resource analyzer to compare the first level of performance and cost and second level of cost performance and cost; and
the processor circuitry is to operate the resource configuration determiner to determine make, based on the comparing, a recommendation to migrate the set of one or more database resources to the second instance type having the second level of performance and cost.
14 . The system of claim 13 , wherein the processor circuitry to operate the resource configuration determiner to obtain resource usage data collects performance data for a workload from the set of database resources.
15 . The system of claim 14 , wherein the performance data comprises at least one selected from the group consisting of: CPU usage, memory usage, storage usage, and I/O (input/output) usage.
16 . The system of claim 14 , wherein the performance data is collected at predetermined time intervals.
17 . The system of claim 14 , wherein the performance data is collected for a predetermined amount of time to determine the workload.
18 . The system of claim 14 , wherein the performance data is aggregated to determine the workload.