  Cloud computing provides on-demand access to affordable hardware (multi-core
CPUs, GPUs, disks, and networking equipment) and software (databases,
application servers and data processing frameworks) platforms with features
such as elasticity, pay-per-use, low upfront investment and low time to market.
This has led to the proliferation of business critical applications that
leverage various cloud platforms. Such applications hosted on single or
multiple cloud provider platforms have diverse characteristics requiring
extensive monitoring and benchmarking mechanisms to ensure run-time Quality of
Service (QoS) (e.g., latency and throughput). This paper proposes, develops and
validates CLAMBS:Cross-Layer Multi-Cloud Application Monitoring and
Benchmarking as-a-Service for efficient QoS monitoring and benchmarking of
cloud applications hosted on multi-clouds environments. The major highlight of
CLAMBS is its capability of monitoring and benchmarking individual application
components such as databases and web servers, distributed across cloud layers,
spread among multiple cloud providers. We validate CLAMBS using prototype
implementation and extensive experimentation and show that CLAMBS efficiently
monitors and benchmarks application components on multi-cloud platforms
including Amazon EC2 and Microsoft Azure.
