Establishing performance and configuration baselines is critical to understanding the current state of your application environment before migrating to the cloud. Without these, measuring your cloud migration success becomes a challenge.
At the start of your cloud migration journey, it's crucial to define a clear set of KPIs that establish the foundation for measuring the success of your cloud migration efforts. Application discovery then plays a key role by identifying and mapping all components and interdependencies within your enterprise environment.
This article will cover how generating cloud baselines contributes to achieving the ultimate objective of migrating workloads to the cloud.
What is Benchmarking in the Cloud?
Cloud benchmarking is the practice of measuring and recording the current performance and configurations of an application environment, typically carried out early in the cloud migration timeline. Within the 5Ds of IT-Conductor's Cloud Migration Strategy, this activity takes place in the Distill stage, immediately following the Discovery stage, where application discovery occurs.
Both cloud baselines and application discovery complement each other during the validation stage, also known as the post-migration phase, where the cloud migration assessment occurs. Cloud baselines provide a reference point for evaluating performance, while application discovery ensures a complete understanding of your environment. Together, they facilitate a seamless transition to the cloud by delivering insights into performance metrics, resource dependencies, proper sizing, and optimization opportunities.
Questions to Keep in Mind
When generating cloud baselines, use the following questions as a guide to effectively plan, measure, and document the performance of your existing monitored systems.
-
What are the peak values (lowest and highest) of the metric being measured?
-
What is the average value of the metric being measured?
-
What time range should be used when measuring the peak and average values?
-
How many data points should be used when measuring performance metrics?
-
What are the error rates of transactions/processes/metrics in the application and infrastructure domain?
When evaluating user experience metrics, it’s important to revisit the business objectives defined during the initial planning phase. Baselines should be generated in alignment with these objectives. For example, if one of your goals is to improve transaction processing time, you can establish baselines by measuring peak and average processing times for a set number of transactions during both high- and low-activity periods.
Benchmarking Challenges
So far, we've covered why benchmarking is important in cloud migrations. It’s equally important to anticipate the potential challenges you may face when generating performance and configuration baselines.
1. Long Preparation & Execution Time for Manual Benchmarking
Collecting data for baselines can be time-consuming without tools that export performance and configuration reports. Manual benchmarking often requires logging directly into devices, capturing data points through queries or GUI-based wizards, refining the results to align with business objectives and KPIs, and then organizing them to match the structure of your environment.
2. Dynamic Nature of Distributed Systems
Distributed systems consist of interdependent components, making them inherently complex and highly sensitive to change. These changes can stem from fluctuating user demands, software updates, hardware failures, or scaling adjustments.
When migrating such systems to the cloud, their dynamic nature makes it challenging to predict performance in the new environment. What holds true on-premises may not directly translate to the cloud, complicating the process of establishing accurate baselines. Because data can quickly become outdated as conditions shift, it’s essential to have monitoring in place before migration. Continuous monitoring allows you to adapt real-time benchmarks and stay aligned with the evolving behavior of systems during and after the migration.
3. Performance Isolation
In distributed systems, an application’s behavior can be influenced by other applications and services running simultaneously, making it difficult to measure performance metrics for each component. Without tools that can identify and monitor components individually, isolating performance becomes a challenge. As a result, issues in one component may cascade into others, reducing service quality and overall system performance.
Generating Cloud Baselines in IT-Conductor
Key performance baselines to capture include resource utilization metrics such as CPU, memory, storage, and network. With IT-Conductor, these metrics can be gathered directly from the service grid, where you can easily drill up or down through components to collect the data needed for generating performance baselines of your source environment.
Figure 1: Expanded Service Grid in IT-Conductor
Aside from these performance metrics, it’s important to capture snapshots of your source application environment’s last known working configuration. This ensures you can quickly revert to a stable state if issues arise during deployment.
Leverage the landscape discovery data from the Discovery stage to document the various components running in your source environment.
Figure 2: SAP Landscape Discovery
You can export landscape inventory data with the compute, storage, and networking profiles.
IT-Conductor can also generate customized reports tailored to your requirements. For example, in SAP landscapes, you can specify which transactions and jobs to measure and generate a report for your source environment. After migration, you can create the same reports for your cloud resources, enabling a direct comparison.
These baselines serve as a reference point during the validation stage, helping you quickly perform targeted tuning or, if needed, revert to a previous stable state.
In summary, baselines are generated from the Distill stage, and they provide important inputs for the subsequent activities, such as: