Migrate
As you migrate your workload, you need to consistently compare the migrated workload against the performance requirements that you identified through KPIs or benchmarks. To do this, you need to perform the necessary testing on your migrated applications, capture any issues or lessons learned, and iterate for the next migration wave.
MIG-PERF-08: How do you ensure improved and consistent performance of your applications during migration? |
---|
Migration is an iterative process as most enterprise customers are migrating thousands of servers and applications. Migration is often planned in waves. Migration waves typically span four to eight weeks, and they can contain one or more migration events. Applications and their dependencies are combined into waves so customers can meet the challenges of dependency mapping. But how do you ensure good and consistent performance during this whole process?
MIG-PERF-BP-8.1: Perform stress and user acceptance tests on migrated workloads before the actual cutover.
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 8.1.1: Perform stress and user acceptance tests for quality check before the actual cutover.
Migration tools such as AWS Application Migration Service (AWS MGN)
For more detail, see the following:
MIG-PERF-BP-8.2: Review and implement the lessons learned from previous migration waves
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 8.2.1: Take note of lessons learned from previous migration waves.
As the migration program moves forward and more waves are migrated, it is key to evolve the migration wave plan based on lessons learned and changing business priorities. In particular, for long-running migration programs, it is important to reassess business drivers and organizational change, and to verify that the migration wave plan is still valid. Similarly, lessons learned from the migration influence the wave plan composition and the scope of each wave. To avoid losing visibility into what is happening, keep the wave plan up to date. The plan should reflect and track what is being delivered, and it should manage and assess change to the migration scope.
MIG-PERF-BP-8.3: Perform a Well-Architected Framework Review on each iteration of the migrated workload.
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 8.3.1: Review Well-Architected best practices after each iteration of your migration.
The review of architecture needs to be done in an iterative manner after each migration wave. This involves reviewing the current and target state architectures for future waves to see what can be improved performance wise. Each team member should take responsibility for the quality of their architecture. We recommend that the team members who build an architecture use the Well-Architected Framework to continually review their architecture after each migration wave, rather than conducting a formal performance review meeting.
For more detail, see the following:
Suggestion 8.4.1: Review the 7 Rs migration strategy.
After each migration wave, we recommend to review 7 R decision tree for your applications, considering the learnings throughout migration of the initial pilot applications or subsequent migration waves that had been completed. You need to ensure that the migration strategy continues to provide the best performance for the workload, and verify that it aligns with your initial assessment. The migration strategy is not only derived for the application component but also for the associated infrastructure. The final migration strategy should always provide and optimize the performance for the application and infrastructure. AWS Migration Hub strategy recommendations
For more detail, refer to the following:
MIG-PERF-09: How do you monitor the performance through all the phases of your migration journey? |
---|
Monitoring performance during the mobilize and migrate phase is essential for a successful migration. Monitoring can help remediate issues before they impact your customers. Monitoring metrics should be used to raise alarms when thresholds are breached. During the mobilize and migrate phases, look at the following best practices for setting up monitoring.
MIG-PERF-BP-9.1: Generate alarm-based notifications for metric's threshold breach
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 9.1.1: Generate alarm-based notifications using Amazon CloudWatch and Amazon SNS.
As you are migrating workloads, system performance can degrade over time. It is recommended to monitor the workload's performance to identify degradations and bottlenecks, and remediate them automatically. Amazon CloudWatch generates system-defined metrics, and customers can also create custom user-defined metrics. You can use these metrics to generate CloudWatch alarms and add an Amazon SNS
AWS X-Ray
MIG-PERF-BP-9.2: Determine the need for a real-time or a near real-time monitoring solution
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 9.2.1: Use a real-time or a near-real-time monitoring solution.
Most applications can tolerate some performance degradation and can be monitored in near-real-time. But some applications process data instantly, and therefore need to be monitored in real-time. It is essential to identify the performance needs for your migrated applications and implement a monitoring solution accordingly. Amazon CloudWatch delivers metrics and logs in near-real-time. Metric streams send CloudWatch metrics to destinations like Amazon S3, with near-real-time delivery and low latency. You could also monitor microservices and cloud-native applications in real-time with IBM Instana SaaS on AWS
MIG-PERF-BP-9.3: Implement CloudWatch or a Quicksight dashboard as a single pane view for visualizing all metrics
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 9.3.1: Implement CloudWatch or a Quicksight dashboard for monitoring metrics.
CloudWatch or a Quicksight dashboard can provide a single pane view of all the monitoring metrics. A single view for selected metrics and alarms help you assess the health of your resources and applications across regions. You can create CloudWatch cross-account observability dashboard
MIG-PERF-BP-9.4: Set up automated testing for your application metrics
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 9.4.1: Use CloudWatch synthetic monitoring for setting up automated testing for your applications.
Using CloudWatch synthetic monitoring, you can create canaries
MIG-PERF-BP-9.5: Re-evaluate your compute usage with AWS Trusted Advisor, AWS Compute Optimizer, or partner tools
This BP applies to the following best practice areas: Process and culture
Implementation guidance
Suggestion 9.5.1: Use Compute Optimizer for reviewing your performance metrics.
AWS Compute Optimizer collects resource utilization data and helps avoid over-provisioning and under-provisioning resources such as Amazon Elastic Compute Cloud