Why New Relic
Delivers end-to-end visibility and a single source of truth across a diverse, on-premises technology stack and cloud-native, containerized environments on Amazon Web Services.
- Accelerates application migration to AWS to enable decommissioning of 20 data centers when completed
- Gives engineering the confidence to proactively troubleshoot and remediate issues quickly, resulting in a significant reduction in system downtime
- Provides a unified platform to manage a wide spectrum of technology in a hybrid cloud environment, from containerized workloads running on AWS ECS to databases remaining in the data centers
Energy is behind everything that World Fuel Services (WFS) does. Whether it’s a fleet of delivery trucks, a transatlantic container ship, or a vast agricultural operation, business cannot function without fuel. For more than 30 years, the WFS team of experts has been solving customers’ energy challenges across land, air, and sea.
Ranked 83 on the Fortune 500 list, WFS delivers energy solutions at more than 8,000 locations in more than 200 countries and territories around the world.
WFS is using technology to transform how it does business, making interactions faster, easier, and more intuitive for customers. Most recently, the company turned to Kinect Consulting, Amazon Web Services (AWS), technologies such as containers, and New Relic to fuel a transformative path to the cloud.
Paving the path for future growth with AWS and DevOps
Over the past decade, the company has achieved exceptional growth, in part from successful mergers and acquisitions. Frequent acquisitions meant that the technology group was faced with an ever-increasing array of tools, applications, and technology to manage. “Because of our growth, our technology stack was a mix of many different solutions and tools, running in our 20 data centers around the world,” says Sunith Ravindran, application development leader at WFS.
Seeing an opportunity to both rationalize and reduce the number of different environments and tools, as well as accelerate the delivery of innovative new products and features, WFS made the decision to adopt cloud computing and DevOps.
“We have committed to moving everything running on-premises to the cloud and shutting down our data centers as quickly as possible,” says Sunith Ravindran. “At the same time, we’re changing how we operate by adopting DevOps and taking advantage of cloud native technologies to help us deliver capabilities faster than ever, and at a higher quality.”
The company chose AWS as its cloud partner. “One of our mantras is to partner with companies that have models that we can learn from,” says Sunith Ravindran. “We chose AWS because Amazon has been more than a vendor for us. They are helping us be successful by sharing their extensive experience working with companies like ours to move from on-premise to the cloud.”
Applying best practices prior to migration
“Our migration strategy includes using a combination of rehosting and replatforming of our existing applications,” says Sunith Ravindran. “At the same time, development of new capabilities is all happening on AWS.”
Before applications could be migrated, however, WFS had to find a way to gain full visibility and take an inventory of what was running in their data centers. Lack of baseline data and an understanding of application dependencies would create risky blind spots and slow the migration to the new environment. Prior to implementing New Relic, WFS didn’t necessarily know which hosts were used for development or testing as opposed to production, and in many cases didn’t have visibility into existing operating system versions, patch levels, or applications.
To resolve the visibility problem, WFS and its consulting partner, Kinect Consulting, turned to New Relic. “We deployed New Relic to help us understand current WFS workloads, create an accurate inventory, and set a performance baseline,” says Dave Shanker, director of platform engineering at Kinect Consulting. Following the New Relic implementation, the WFS team tagged hosts by application and environment, which now allows them to more easily understand and manage provisioned resources and cost.
Planning for performance and capacity backed by data
Baseline data captured by New Relic helped Kinect Consulting create a migration plan, size the new environment properly, and perform acceptance testing once applications moved to AWS.
“New Relic monitors both our applications running in our data centers, as well as new, native applications that are running on AWS,” says Sunith Ravindran. “This gives us baseline performance that we can compare once we rehost an application on AWS. With this data, we can make decisions on what else we can do to further improve performance.”
Kinect Consulting uses New Relic to properly perform capacity planning for new applications that have moved to WFS’ AWS environments. “Over time, the resource requirements and usage of applications changes,” says Shanker. “With New Relic, we can understand what the performance levels need to be before we deploy an application in a production environment and purchase reserved instances based on real capacity needs.”
WFS has migrated roughly one-third of its applications from its data centers to AWS, decommissioning 7 out of 20 data centers so far. “We plan to be fully migrated within the next year,” says Sunith Ravindran.
Optimizing the container environment
WFS faced a number of operational challenges when it first deployed on Amazon Elastic Container Service (ECS). “We experienced issues around performance within the cluster,” says Shanker. “We had containers using 100% of the networking resources while CPU and memory usage remained low. Because they were running on a shared host, other applications in the cluster suffered and we didn’t know why.”
With New Relic working together with AWS, the team gained top-to-bottom visibility into the cluster and the applications running within the cluster. “We’re now able to easily troubleshoot and prevent issues,” says Shanker. “We have monitoring alerts that go to a Slack channel when thresholds hit 50 or 60% of resource utilization so that we can scale the environment if needed before problems arise.”
According to Shanker, downtime has decreased significantly. “New Relic helps drive a DevOps culture for our customers by giving them a deeper dive into the infrastructure,” he says. “With New Relic, they can easily identify the application that's having an issue, see the host, the load balancer or the database that might be causing the issue.”
“New Relic helps drive a DevOps culture for our customers by giving them a deeper dive into the infrastructure. With New Relic, developers can easily identify the application that's having an issue, see the host, the load balancer or the database that might be causing the issue.”
Understanding application health and performance
Beyond the health of hosts, WFS also uses New Relic to understand application performance. Services are built with Java, JSP or .NET, and New Relic’s breadth of language and framework support means teams can understand performance and errors, even for applications not modified in years.
“By setting a flag in a properties file, developers are able to utilize CI/pipeline automation built by Kinect Consulting to automatically inject New Relic into an application, making it super simple for developers to take advantage of instrumentation,” says Shanker. “This helps drive adoption and fosters a continuous monitoring, DevOps culture.”
One of WFS’ many workloads is a Spring Framework-based REST API for fuel, which is used by partners. With New Relic, WFS can understand service load, latency, errors, and query performance problems with an Oracle database still located on-premises. The service is a Docker container deployed on the WFS ECS cluster. When issues arise, the team has full visibility into every layer (application services, database queries, cluster health, host health) so it can route the issue to the appropriate people on the team, dramatically reducing mean time to resolution (MTTR).
Shifting to a proactive approach
Previously, WFS operated in a reactive mode when it came to managing the health of its digital applications. “We didn’t know that something was wrong until someone called in to report it,” says Sunith Ravindran.
Today, the application team uses New Relic Alerts to notify them when there are negative trends happening in key transactions. “When we start seeing something like slow transactions, we know that we need to address the issue before it gets worse and leads to a greater problem,” says Sunith Ravindran. “We can now review slow queries in New Relic and troubleshoot where and why potential bottlenecks are occurring. New Relic has been instrumental in helping us understand how we can make our operations more efficient and proactive.”
WFS also uses New Relic for synthetic monitoring to stay ahead of issues with its customer portal applications as well as third-party integrations. “For our dispatch application, the websites and services from our suppliers must be running or it prevents our order from completing,” says Sunith Ravindran. “We use New Relic to proactively monitor the status of our third-party integrations so that we not only know whether our infrastructure is up, but whether the services from our partners are up. There have already been instances where we’ve notified a supplier that their services were down.”
Supplying metrics that close the feedback loop
To document the transformation and successes WFS is achieving on its cloud and DevOps journeys, it’s beginning to track DevOps key performance indicators using New Relic. For example, WFS is now starting to track “near misses.”
“Everybody remembers the most recent outage, but nobody remembers the outages that didn’t happen because we prevented them,” says Sunith Ravindran. “Near misses is a useful metric for us to track the results of our proactive efforts around performance monitoring. At the same time, we’re also looking to track and understand the percentage of issues that we discover versus ones that were reported to us.” The organization is also tracking metrics that include the number of deployments, failure rate, mean time to recover, and cycle time.
Sunith Ravindran’s team is eager to better track and understand how new features are being used by customers. “Typically, we build features because someone asked for them, but we never went back and measured actual usage,” says Sunith Ravindran. “With New Relic, our goal is to improve our understanding of how our applications and features are used. What time of day are they most used? Which parts of the world are accessing our portals? What type of experiences are customers having? What browsers are they using? What devices are they using? This information is extremely helpful when we’re planning for new features and releases.”
“New Relic is one the partners that we can learn from and grow with,” says Sunith Ravindran. “It has been instrumental in helping us be successful throughout our cloud and DevOps journeys.”
“New Relic is one of the partners that we can learn from and grow with. It’s been instrumental in helping us be successful throughout our cloud and DevOps journeys.”