Before you migrate any applications to the cloud, verify that the applications and their underlying server infrastructures are candidates for migration. When you instrument every layer of an application’s architecture, you get end-to-end visibility and are able to identify additional cloud migration risks or dependencies. Such analysis provides a more focused cloud migration priority list.
Use the following steps to prioritize the application migration order:
1. Identify components
Create a list all of applications, services, and their underlying server infrastructures in your application portfolio that you want to migrate to the cloud.
2. Instrument applications
Before you install any New Relic agents, review the compatibility and requirements for New Relic agents. Then, install the agents in your environment.
After installing the agents, review the architecture of all the applications that you instrumented with an agent. Take note of the host for each tier of the application stack (database, application, web server, etc.), as you will install Infrastructure agents on each of those hosts in the next step.
3. Instrument hosts
After reviewing the requirements for New Relic Infrastructure, follow the instructions for installing the Infrastructure agent on all hosts in your application stack:
- Install for Linux
- Install for Windows Server
- Install on AWS Elastic Beanstalk
- Install with a configuration management tool
Also, in order to report data to New Relic, Infrastructure agents must have outbound access to certain domains and ports. If your system requires a proxy to connect to these domains, use the proxy setting.
To gain extended visibility into applications that your code depends on, deploy on-host integrations. New Relic supports several commonly used application components, such as MySQL, Apache, and NGNIX.
If you discover any applications, dependencies, or server infrastructure that you did not include in your list of components, instrument them with New Relic by installing the appropriate agents before moving forward.
4. Identify and track issues
Each unhandled exception generates a transaction error event in Insights, and the dashboards are updated in real time. Event data is a record of a single event at a particular moment in time and consists of default attributes, like a timestamp, and an event type. You can also add custom attributes to provide more context.
5. Create baselines
One of the benefits of using APM while you are planning your cloud migration is that you get a deeper understanding of your application’s baseline. A baseline is a measurement of the current performance and availability of your application, which you then use as a comparison after your migration to validate your business case.
6. Determine next steps
Use the following New Relic features to determine the next steps for your application:
- Use Service Maps to find connections
After you install the APM agent, use Service Maps to get a full view into your application’s architecture. Service Maps allow you to identify any external services, web services, databases, or APIs that the application might be connecting to.
Once you have an application node on the map, you can add its connections to the map, including New Relic Browser apps, databases, or external services (for example, third-party APIs). Every node you add is automatically connected to the map, so you see the shape of your application’s architecture emerge.
- Use Health Maps to analyze ownership
At this point, you can also see the data of your instrumented applications and their underlying infrastructures. To view this information at a glance, use Health Maps by going to maps.newrelic.com > Health Map. Then, use the Select a view list to toggle between Applications and related hosts and the Hosts and related applications views.
From the Health Map, you can:
Group applications by labels, or group infrastructure by filter sets:
Identify which users will be affected by a migration.
Discover application architecture details, such as the number of tiers and data sources.
Discover any dependencies.
Extract operational costs of each application or group.
- Use the Inventory page to identify components
Infrastructure's Inventory page gives you visibility into the software packages installed on your servers. New Relic Infrastructure reports detailed information about a system’s per-host configuration, including system modules, configuration files, metadata, packages, services, user sessions, and more. The Inventory page provides a real-time, filterable, searchable view into each host’s configuration. Use this data to identify various components of the applications you want to migrate.
Analyze these criteria for each of your apps to determine the next steps for your migration:
Should you move your app to a new host or platform, or re-factor its code before migrating it?
Should you retire the application without moving it to the cloud?
By using the information that New Relic provides, you are better equipped to create a prioritized list of applications ready for cloud migration.
Expert tips for organizing your data
In APM, use labels to group the instrumented applications into meaningful categories like environments, functional areas, technologies, business units. Or, you can separate them for development or operational teams.
For more detailed information about using labels in APM, check out New Relic University’s tutorial Application List View.
In Infrastructure, use filter sets to organize hosts into cluster, environment, role, or any Infrastructure attribute based on criteria that you define.
For more help
Explore the New Relic Platform.