Cloud Monitoring: Insight and Recommendations for Choosing Efficient Monitoring Tool
By Dr. Vincent Emeakaroha
Irish Centre for Cloud Computing and Commerce IC4, Dept. of Computer Science, University College Cork
In recent times, the topic of cloud computing has received considerable attention from both industry and academia. The continued focus of academic research in the area, couple with an ever increasing range of service offerings from public cloud service providers, such as AWS and Rackspace, serves as proof that enterprises and consumers have recognised the benefits and value in consuming cloud-based services.
Recent Cloud market research indicates that spending on public Cloud services has reached $47.4 billion in 2013 and is expected to be more than $107 billion in 2017. Over the 2013–2017 forecast period, public Cloud services will have a compound annual growth rate (CAGR) of 23.5%, five times that of the industry overall. By 2017, it is expected that public IT Cloud services will drive 17% of the IT product spending and nearly half of all growth across five technology categories: Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), Data centres and Basic services. SaaS including applications will remain the largest public Cloud services category, capturing 59.7% of revenues in 2017.
An essential factor enabling the management of Clouds, in the face of its large-scale resource capacity, is monitoring. Powerful and convenient monitoring tools are indispensible for the management and usage of Cloud services. Cloud monitoring plays a central role in different aspects of Cloud service provisioning.
Cloud monitoring is beneficial to both providers and consumers. The new style of provisioning services in Clouds allows consumers to pay only for the services used and frees them from the management overhead of the underlying infrastructure. This enables low initial set-up cost for business owners. In spite of the pricing advantage, consumers tend to be sceptical about the quality of service offered. They require insight into their service operations. Providers on the other hand have the responsibility of maintaining the underlying infrastructure and provisioning services that meet the terms of the service level agreements (SLAs) they have with their customers. They require visibility to achieve these SLAs and monitoring provides this. In the following areas, we elaborate on the role of monitoring.
- Service / Resource Provisioning: This activity involves the optimal allocation of resources to match workload demand, which is essential to achieve elasticity. Cloud computing promises on-demand resource provisioning based on consumer/workload requirements. The ability to measure the overall resource consumption, along with the ability to measure per service consumption (i.e., the amount of resources each individual service consumes), is essential for effective provisioning decisions. Monitoring enables these required capabilities.
- Service Level Agreement (SLA) Management: SLA represents a contract signed between a provider and a customer stipulating the terms of a service and the penalties in cases of violations. Demonstrating compliance with customer SLA terms is crucial for a provider in order to build credibility and to attract more customers. To achieve this, they require deep insight into the Cloud resource utilisations and service application behaviours. On the other hand consumers need independent verification of their SLA terms. Monitoring enables these requirements.
- Accounting and Billing: The notion of providing computing as a utility service in Clouds relies heavily on the ability to meter consumer usage information for billing. Accurate accounting and billing should reflect the correct amount of Cloud resources consumed by services (e.g. compute hour used, bandwidth used). Monitoring facilitates this ability.
- Security Management: The risk of compromising security and privacy is one of the major hindrances against the adoption of Cloud services, especially, in the case of business critical applications with sensitive data. The capability of detecting security breaches or attacks is necessary to secure such application provisioning. Monitoring is necessary to achieve this goal.
There are many other areas where monitoring plays major roles, such as capacity planning, configuration management, etc. Cloud monitoring is a key enabler of Cloud computing success. Without monitoring, Cloud provisioning would be unmanageable.
Currently, there are many monitoring tools in existence. They can be classified as open source, commercial third party and provider owned tools. To choose a monitoring tool has become extremely challenging for users due to their similarity and lack of overview. Based on our recent monitoring research and new developments in Cloud provisioning, the following features are recommended to distinguish a monitoring tool.
- Scalability: With the large-scale nature of Clouds consisting of thousands of nodes. The monitoring of such environment requires monitoring tools that are capable of scaling along side with the resources. This is necessary in order to deliver the monitored information in a timely and flexible manner. A modern monitoring tool should provide this capability.
- Non-intrusiveness: Since there are large numbers of resources to be monitored in Clouds, the computational power consumed by a monitoring tool to carry out this activity can impact the performance of the overall system. An efficient monitoring tool should be non-intrusive. That is, it should consume as little resource capacity as possible on the monitored systems.
- Interoperability: Cloud environments may include dozens of independent, heterogeneous data centres operating mostly as stand-alone resources. Many business analysts have predicted the need for interoperable federated Clouds to achieve economic advantages by providers and consumers. The management of such federation demands sophisticated monitoring to share information between heterogeneous Cloud Platforms. A good monitoring tool should be capable of supporting this objective. Cloud federation is gaining attention and will definitely contribute enormously to the future of Cloud computing.
- Multi-tenancy: Cloud service provisioning includes multi-tenant offers where multiple tenants share the same physical resources and application instances. This strategy tends to increase resource utilisation and drive down cost. However, its management is complex. A good monitoring tool should be capable of concurrently monitoring isolated tenants and presenting their monitored information separately.
- Extensibility: As Cloud computing is still evolving; there are continuous changes and extensions to this technology especially in the area of management. Since monitoring techniques are fundamental to Cloud management, a good monitoring tools should be extensible in order to adapt to new demands.
Any Cloud monitoring tool that is not capable of providing these features is not posed to address the requirements of today and future Cloud management.
Business Benefits of Monitoring
Providers/consumers who use the right solution for monitoring Cloud resources and applications are more likely to realise these benefits:
- Prevention and resolution of performance issues in a timely manner: Providers who have an insight into Cloud resource utilization are more likely to make informed and timely decisions about resource allocation, and therefore, to prevent performance problems before they impact their business users. The consumers using monitoring gains substantial information about their service, for example, to hold provider responsible in case of poor service performance.
- Ability to facilitate changes in business demand. Providers who have end-to-end visibility into the performance of their Cloud services and internal infrastructures are able to make better decisions about adding or subtracting resources to support changes in business demand, This then allows them to ensure a high level of quality of end-user experience at optimal cost.
There are many other benefits of Cloud monitoring besides these two.
Establishing and maintaining control of Cloud environments has proven beneficial to both service providers and consumers. Providers need real time information about their Cloud environment to make informed management and business decisions. Consumers on the other hand need access to information that verifies the performance of their services. Monitoring plays the central role in providing this information. It is indispensible for the management and usage of Cloud services.
Recently, the number of monitoring tool has increased due to the recognition of its importance in the Cloud market. This increase has consequently made it challenging for users to make particular choice. We propose that the choice of a Cloud monitoring tool must be based on its ability to support the management of current and future Cloud service provisioning strategies.