Cloud application performance management (CAPM) is ferent from non-cloud application performance management in its nature and deployment. Software consultant Nari Kannan explains CAPM and how to choose the right tools for deploying your solution.
Cloud applications are deployed, for the most part, in private cloud instances first, and then as demand increases, public cloud instances may be pressed into service. Challenges arise from monitoring cloud application performance using this medley of resources, some in-house, some from an external vendor and those, only as needed. Here are ten insights into cloud application performance management which will illustrate the challenges and solutions.
1. Resource vs. application performance monitoring:
Cloud application performance is often confused with monitoring resources like CPU, disk and memory utilization. Application performance deals only with the end-to-end latencies and performance the user sees at various times, and possibly from various distances for remote locations. Monitoring and management of the end user experience needs to be the focus of cloud application performance management. What are the end-to-end response times the user sees when using the application?
2. Private and public instances:
Computing resources could be sourced as private cloud instances that are within the control of the organization but when demand exceeds supply, public cloud instances could be pressed into service. Monitoring resources breaks down because while you know which private resources you are using, you have no visibility into which specific physical computing resources of the public cloud provider you are using. The physical resources used by the public instances could be dynamically reshuffled by the public cloud provider.
3. Topology discovery:
Topology discovery of cloud instances and tracking them as they change may be needed for CAPM, especially when private clouds are used. Since the private part of the cloud is under the control of the organization, you could take more extensive corrective actions as needed, at least for the private cloud instances.
4. Cloud application performance components:
Cloud application performance starts with response times and latencies that a typical user sees end-to-end. This could also be simulated from virtual users from many parts of the world for true cloud application performance measurement. At the cloud instance level, you need to separate the performance components into network, user interface, application and database response times for a deeper analysis of root causes for performance improvements.
5. Internet as part of the infrastructure:
Cloud computing, by using the public Internet as part of the communication mechanism, introduces unknown and unpredictable performance characteristics into the overall measurement. Only by measuring performance over a large number of instances and averaging them can someone get a reliable performance measure. This is because when using public Internet in your infrastructure, your network path could change dynamically, is unpredictable and cannot be reproduced for analysis.
6. Agents and applications:
When monitoring agents are accompanying applications to instances, whether they are public or private instances, they are able to measure and report on the various components of cloud application performance such as user interface, database, and application response times. Now you are able to compare performance in a uniform and reliable way since private and public instances have copies of the same agent.
Feel free to contact E-SPIN for Application Performance Monitoring infrastructure and application security, infrastructure availability and performance monitoring solution.