Assess - Migration Lens

Assess

In the assess phase of migration to AWS, it's important to evaluate performance requirements for your workloads and ensure your existing OS platforms align with those needs. Efficient data transfer methods and the selection of the most suitable storage options are key considerations. Additionally, identifying network requirements and implementing a strategy for managing IP address conflicts and DNS requirements are vital steps for a smooth and successful migration process.

MIG-PERF-01: Have you evaluated performance requirements for the workloads that you are migrating?

AWS has various options for instance class, sizes, purchase options, scaling options, and managed services. Consider how using these capabilities during and after migration can lead to improved performance in your cloud infrastructure.

MIG-PERF-BP-1.1: Understand the performance characteristics of your current infrastructure to select the best performant optimized cloud infrastructure

This BP applies to the following best practice areas: Architecture selection

Implementation guidance

Suggestion 1.1.1: Use discovery tools for a comprehensive view of IT inventory.

Discovery tools offer a comprehensive view of an organizations IT environment, including physical servers, virtual machines, applications and their inter-dependencies. This enhanced visibility enables better planning and decision-making during the migration process. Organizations can identify potential bottlenecks, performance issues, and optimization opportunities using discovery tools.

Discovery tools collect various information, such server names, CPU, disk, and memory utilized. They also collect both server and database configuration information. Server information includes hostnames, IP addresses, and MAC addresses, as well as the resource allocation and utilization details of key resources such as CPU, network, memory, and disk. Collected database information includes the database engine identity, version, and edition. Once collected, this information can be used to size AWS resources as part of migration planning. Addressing these issues before migration can lead to improved performance in the cloud environment.

Accurate information provided by the discovery tools helps determine the appropriate resource allocation and instance sizing on AWS. By understanding the resource utilization patterns and peak loads of application, organizations can provision the right type and size of AWS instance to support the migrated workloads efficiently.

MIG-PERF-02: Have you identified your existing OS platforms to meet your performance requirements?

Gain insights into the assessment and selection process for your current OS platforms and the migration tools considered to meet your performance requirements.

MIG-PERF-BP-2.1: Evaluate operating systems and versions that are running in your environment

This BP applies to the following best practice areas: Compute and hardware

Implementation guidance

Suggestion 2.1.1: Consider an assessment for a legacy workload migration.

Many companies are still running legacy and non-x86 systems in their datacenters, such as mainframe, midrange, or UNIX proprietary systems. Additionally, some applications run on legacy operating systems like Windows Server 2003, 2008, and 2012. Migrating these workloads across hardware architectures to AWS can be a complex process, but there are several best practices to improve the likelihood of a successful transition.

To embark on a successful migration process, it is essential to conduct a comprehensive evaluation of your current systems, delving into their interdependencies, configurations, and resource demands. Pay close attention to any legacy operating system versions and non-x86 hardware that might still be in operation. Equipped with this understanding, create a migration plan that outlines clear objectives and a well-defined timeline. This plan should serve as the roadmap for a smooth transition, making the migration process efficient and minimizing potential disruptions to your operations.

Suggestion 2.1.2: When dealing with non-x86 architectures, there are primarily two approaches: emulation and virtualization. Evaluate both.

  • Emulation involves the system simulating the behavior of a different architecture. Essentially, it acts as if it were the target architecture, translating instructions as needed. While emulation is crucial when running software designed for a completely distinct architecture, it can be relatively slower and less efficient than native running or virtualization. It might also consume more system resources, potentially impacting performance compared to the native architecture.

  • Virtualization, on the other hand, involves creating a virtual machine (VM) that can run an operating system designed for a specific architecture. Virtualization is generally more efficient and provides better performance compared to emulation because it leverages the underlying hardware and allows multiple VMs to run on the same physical server. While this approach often requires more initial setup, it's a popular choice for running non-x86 architectures in data centers.

The choice between emulation and virtualization depends on your specific use case, performance requirements, and the compatibility of the software you want to run with the chosen method. For more detail, see the following:

MIG-PERF-03: How do you find the best transfer methods for efficiently transferring storage data into and out of AWS?

Planning is crucial when migrating data to the cloud. Data is the foundation for successful application deployments, analytics, and machine learning. Customers frequently perform bulk migrations of their application data when moving to the cloud. There are different online and offline methods for moving your data to the cloud. When proceeding with a data migration, data owners must consider the amount of data, transfer time, frequency, bandwidth, network costs, and security concerns. No matter how data makes its way to the cloud, customers often ask us how they can transfer their data to the cloud as quickly and as efficiently as possible.

MIG-PERF-BP-3.1: Evaluate the different methods to migrate data and select the one best for you use case: online mode, offline mode, or hybrid approach

This BP applies to the following best practice areas: Data management

Implementation guidance

Suggestion 3.1.1: Review AWS Cloud Data Migration services for online, offline, and hybrid data transfer options.

Data is a cornerstone of successful application deployments, analytics workflows, and machine learning innovations. When moving data to the cloud, you need to understand where you are moving it for different use cases, the types of data you are moving, and the network resources available, among other considerations. AWS offers a wide variety of services and partner tools to help you migrate your data sets, whether they are files, databases, machine images, block volumes, or even tape backups. AWS provides a portfolio of data transfer services to provide the right solution for any data migration project. The connectivity is a major factor in data migration, and AWS has offerings that can address your hybrid cloud storage, online data transfer, and offline data transfer needs.

For more detail, see Best practices for accelerating data migrations using AWS Snowball Edge.

MIG-PERF-04: How do you select the best-performing storage option for your workload?

AWS offers a broad portfolio of reliable, scalable, and secure storage services for storing, accessing, protecting, and analyzing your data. This makes it easier to match your storage methods with your needs, and provides storage options that are not easily achievable with on-premises infrastructure. When selecting a storage service, aligning it with your access patterns is critical to achieve the performance you want. You can select from block, file, and object storage services, as well as cloud data migration options for your workload.

MIG-PERF-BP-4.1: Select the storage solution based on the characteristics of your workloads

Identify and document the workload storage needs and define the storage characteristics of each location. Examples of storage characteristics include: shareable access, file size, growth rate, throughput, IOPS, latency, access patterns, and persistence of data. Use these characteristics to evaluate if block, file, object, or instance storage services are the most efficient solution for your storage needs.

This BP applies to the following best practice areas: Data management

Implementation guidance

Suggestion 4.1.1: Understand storage characteristics and requirements.

Identify your workload's most important storage performance metrics and implement improvements as part of a data-driven approach, using benchmarking or load testing. Use this data to identify where your storage solution is constrained, and examine configuration options to improve the solution. Determine the expected growth rate for your workload and choose a storage solution that meets those rates. Research AWS storage offerings to determine the correct storage solution for your various workload needs. Provisioning storage solutions in AWS provide the opportunity for you to test storage offerings and determine if they are appropriate for your workload needs.

Suggestion 4.1.2: Make decisions based on access patterns and metrics.

Choose storage systems based on your workload's access patterns and by determining how the workload accesses data. Configure the storage options you choose to match your data access patterns.

How you access data impacts how the storage solution performs. Select the storage solution that aligns best to your access patterns, or consider changing your access patterns to align with the storage solution to maximize performance.

For example, creating a RAID 0 array allows you to achieve a higher level of performance for a file system than what you can provision on a single volume. Consider using RAID 0 when I/O performance is more important than fault tolerance. For example, you could use it with a heavily used database where data replication is already set up separately.

For storage systems that are a fixed size, such as Amazon EBS or Amazon FSx, monitor the amount of storage used versus the overall storage size and create automation if possible to increase the storage size when reaching a threshold.

For more detail, see the following:

Related videos:

Related examples:

MIG-PERF-BP-4.2: Choose the optimal storage solutions for specialized workloads, such as SAP and VMware cloud on AWS

This BP applies to the following best practice areas: Data management

Implementation guidance

Suggestion 4.2.1: Implement one of four categories of storage capabilities for VMware Cloud on AWS.

VMware Cloud on AWS is a jointly engineered solution by VMware and AWS that brings VMware's Software-Defined Data Center (SDDC) technologies to the global AWS infrastructure.

If you have workloads with varying storage requirements, it's important to understand the storage options available and how they could work best for different scenarios.

VMware Cloud on AWS offers VMware vSphere workloads with choice and flexibility to integrate with multiple storage services. However, each service is optimized for a specific scenario and no single approach is ideal for all workloads. To choose the right service, you must first understand the storage requirements and performance profiles of your VMware vSphere workloads. With that in mind, you can plan and implement your storage with cost, availability, and performance requirements optimized for your workloads.

Suggestion 4.2.2: Select the optimal storage solutions for your SAP workloads.

AWS offers a wide range of services, including block, file, and object storage, to meet the storage needs of your SAP databases, applications, and backups. We recommend following the guidelines that have been benchmarked and certified by SAP. For SAP HANA, there are very specific guidelines. Other databases require more analysis to match your workload.

MIG-PERF-BP-4.3: Evaluate the different storage tiers at prices to meet your migrated workload's performance

This BP applies to the following best practice areas: Data management

By identifying the most appropriate destination for specific types of data, you can reduce Amazon Elastic Block Store (Amazon EBS) and Amazon Simple Storage Service (Amazon S3) cost while maintaining the required performance and availability. For example, where performance requirements are lower, using Amazon EBS Throughput Optimized HDD (st1) storage typically costs half as much as the default General Purpose SSD (gp2) storage option.

Implementation guidance

Suggestion 4.3.1: Understand EBS storage tiers to balance performance and cost in AWS.

  • Use provisioned IOPS SSD (io1) volumes for high performance databases and transactional workloads. io1 provides low latency and the ability to provision high IOPS. However, it is more expensive than other EBS types.

  • Use general purpose SSD (gp2) volumes for most workloads. gp2 provides a good blend of price and performance. You can provision up to 16,000 IOPS per volume.

  • Use throughput optimized HDD (st1) for large, sequential workloads like log processing. st1 provides low cost per GB of storage.

  • Use cold HDD (sc1) for infrequently accessed storage. sc1 is the lowest cost EBS storage.

  • Use EBS snapshots to take backups of EBS volumes. Snapshots only copy changed blocks, minimizing storage costs.

  • Resize EBS volumes up or down as needed to right-size storage to your current workload. This avoids over-provisioning expensive storage.

  • Use Elastic File System (EFS) for shared storage across multiple EC2 instances. EFS storage auto-scales on demand without needing to provision capacity ahead of time.

  • Use Lifecycle Manager to automatically move old EBS snapshots to cheaper S3 storage. This reduces your EBS storage costs.

  • Monitor your storage metrics in CloudWatch and adjust.

For more detail, see Cost-optimizing Amazon EBS volumes using AWS Compute Optimizer.

Suggestion 4.3.2: Lower your storage costs without sacrificing performance with Amazon S3.

If you have an increasing number of Amazon S3 buckets, spread across tens or even hundreds of accounts, you might be in search of a tool that makes it easier to manage your growing storage footprint and improve cost efficiencies. Amazon S3 Storage Lens is an analytics feature built in to the Amazon S3 console to help you gain organization-wide visibility into your object storage usage and activity trends, and to identify cost savings opportunities. Amazon S3 Storage Lens is available for all Amazon S3 accounts. You can also upgrade to advanced metrics to receive additional metrics, insights, and an extended data retention period.

For more detail, see Amazon S3 Storage Classes.

MIG-PERF-05: Have you identified the network requirements for your migration?

Establishing secure and reliable network connectivity is paramount to facilitating workload migrations in the AWS Cloud. In order to accomplish this, it is necessary to examine network requirements in detail, including on-premises firewall rules, traffic prioritization rules, and source change rates. This practice creates seamless communication during and after migration, minimizes disruptions, ensures optimal performance, and maintains uninterrupted connectivity. AWS offers a wide variety of connectivity options and features tailored to suit the migration requirements and existing network infrastructure of organizations.

MIG-PERF-BP-5.1: Establish a reliable network connectivity from on-premises to AWS to ensure performance

Implementation guidance

Suggestion 5.1.1: Use dedicated network connectivity options for reliably connecting on-premises to AWS.

There are public and private connectivity options, but data transfer over the internet may not be a reliable means of data communication. VPNs provide private connectivity, but they too use internet in the background, therefore relying heavily on external factors of the network. Such customers use a dedicated network channel or option such as AWS Direct Connect to ensure performance over network. AWS Direct Connect creates highly resilient network connections between Amazon Virtual Private Cloud and your on-premises infrastructure. As a result, it is a viable solution for workloads requiring low latency and high bandwidth, such as real-time applications and large data transfers.

Suggestion 5.1.2: Identify the network bandwidth required and supported for ensuring performance.

First of all, network bandwidth required and supported are two different identification points. Let's first look at how to identify network bandwidths required to ensure performance. The requirement depends on workloads or applications that you are looking to migrate. Sensitive applications that are heavily write intensive require continuous data protection mechanisms in order to migrate them to the cloud. The change rate (in Mbps or Gbps) on these source applications determine how much bandwidth you want to provision. Accordingly, you can provision the network bandwidth higher than the source change rate. AWS Direct Connect provides multiple options for connection speeds (1 Gbps, 10 Gbps, 100 Gbps) that you can leverage to provision higher network bandwidths than the source change rate.

Once the network is provisioned for migrating data, you need to identify how much bandwidth does it actually support. You can check that by running any third-party network speed tests (like iperf).

MIG-PERF-BP-5.2: Assure that network performance is not impacted by external factors

Implementation guidance

Suggestion 5.2.1: Identify network bottlenecks on-premises.

Identify network bottlenecks in your on-premises firewalls, perimeter networks, proxies, routers, or any other traffic de-prioritizations. This could impact the network throughputs required for migrating data to cloud.

Suggestion 5.2.1: Provision the right AWS instance types and EBS volumes that support the required network bandwidth.

Make sure that the AWS instance types you provision for your target workloads support the network bandwidths required for the data migration. Each AWS instance type support a specific baseline and burst bandwidth, so make sure that you correctly right-size the instance type for your workload on AWS. Similarly, provision the right EBS volume to support the required IO performance.

For more detail, see the following:

MIG-PERF-06: Do you have a strategy to manage IP address conflicts and DNS requirements as part of the migration process?

In cloud migrations, the key elements of DNS, DHCP, and IP address considerations are essential for the seamless operation of applications and services in the cloud environment.

MIG-PERF-BP-6.1: Identify a migration strategy for your network components (DNS, IP addressing, and DHCP) migration

This BP applies to the following best practice areas: Networking and content delivery

Implementation guidance

Suggestion 6.1.1: Define a DNS management system for your migrated workloads on AWS.

The DNS management planning and setup is a pre-migration task. There are two options for setting up DNS for migrated workloads:

  1. Customers choose to use the same DNS management system on-premises while their workloads are migrated to AWS. In this scenario, customers can use AWS Route 53 Resolver endpoints to create a hybrid DNS solution between AWS and an on-premises network.

  2. Customers can set up DNS on Amazon Route 53 and migrate existing records, or create new records from the on-premises DNS environment to the public or private hosted zone on Amazon Route 53.

Suggestion 6.1.2: Design a migration strategy for IPs.

Request elastic IP addresses for resources requiring static public IP addresses, allocate appropriate CIDR blocks to VPCs and subnets to accommodate all migrated resources, and conduct meticulous IP range planning to prevent IP conflicts between on-premises and AWS environments post-migration. It is essential to determine if IP addresses need to be reassigned after migration to meet specific requirements during the migration process. A reassignment of IP addresses is likely necessary for compatibility with third-party systems that rely on fixed IP addresses to establish connections or communicate with the migrated resources.

It is also possible that certain regulatory requirements require the use of static private IP addresses for specific applications or services, necessitating the use of same private IP on AWS to comply with those requirements. For rehost migrations using AWS Application Migration service (AWS MGN), customer often use the copy private IP feature to use the same private IP from the source server on the target environment on AWS.

If you are looking to migrate from IPv4 to IPv6 within AWS, you can use the weighted routing feature with Amazon VPC Lattice to slowly shift the traffic.

Suggestion 6.1.3: Use Amazon-provided DHCP servers and option sets.

DHCP servers should be configured in the new infrastructure to provide IP addresses within the appropriate range if IP addresses are assigned using DHCP.

For more detail, see Hybrid Cloud DNS Options for Amazon VPC.

Suggestion 6.1.4: Consider the following network migration checklist.

Proper DNS configuration, IP planning, and DHCP are key factors to consider when migrating workloads to AWS. Familiarize yourself with the following items to plan for a successful network's components migration.

  1. Identify the most efficient method of collecting the existing and new IP schemes for to-be migrated systems. This fosters a seamless transition while ensuring accurate addressing for optimal performance.

  2. Implement a well-defined process to acquire the new and current DNS names for the systems undergoing migration. This helps with accurate name resolution while preserving seamless communication.

  3. Modify load balancers, proxies, or any other network devices in order to redirect to the new IP addresses or domains post-migration. This avoids interrupting resources.

  4. Update DNS settings after the migration to point towards the newly migrated cloud resources so that cloud-based services are properly routed and accessible.

  5. The DHCP configuration may need to be adjusted in order to accommodate the integration of new systems. This verifies that IP allocation and network settings accurately reflect the newly-migrated components.