Red Hat preview: App performance with container-based systems

As the 2015 Red Hat Summit takes place, attendees are dealing with the fact that container-based systems have changed the game for app performance.

The 2015 Red Hat Summit takes place this week in Boston, and with app performance and system optimization being a key concern in this new world of virtualized and container based systems, topping the list of desirable personalities to chat with is Jeremy Eder.

Eder, a principal software engineer at Red Hat, will deliver three sessions at the summit about topics such as virtualization, containerization, system optimization and the performance analysis and tuning of Red Hat Enterprise Linux (RHEL).

So what's new in terms of RHEL and app performance optimization? It's no secret that Docker, along with the emerging set of competing containerization engines, has completely changed the way companies manage and deploy applications. Trailing closely behind in the fast-moving containerization trend, the Red Hat performance team has produced the Red Hat Enterprise Linux Atomic Tools Container (RHEL Tools Container), a lightweight system designed to facilitate interactions between containers and the host system.

Crosshairs on performance concerns

The goal of the RHEL Tools Container is to identify and solve performance issues that exist between the container, the underlying Red Hat system and the actual hardware on which the OS is running.

"The RHEL Tools Container allows us to strip down RHEL Atomic significantly and take all of the normal debug and performance analysis, and even some statistic utilities, out of the base OS and move them to the debug container," said Eder. "For anyone doing any investigation on performance, or even just basic debugging on RHEL Atomic, you're going to want to check out the RHEL Tools Container."

For anyone doing any investigation on performance, you're going to want to check out the RHEL tools container.

Jeremy Eder, principal software engineer, Red Hat

As popular as the containerization trend is, one can't lose track of the fact that real performance is achieved by optimizing the space between the bare metal and the host operating system, a topic about which Eder is one of the industry's top experts, especially when it comes to RHEL. And according to Eder, there have been big changes over the years in terms of how app performance can be optimized for the latest generation of hardware.

Focus efforts on optimizing infrastructure

The tricks that may have worked as little as five years ago can't be guaranteed to work today. "Everything in the last five years has been what's called a NUMA system, which means cores and memory have different access time," said Eder. "Cores and memory are not equidistant from each other. So depending on where your application runs, your swings can be in the 20% to 30% range." NUMA balancing is a major feature in RHEL 7, but it is still an issue for which system administrators need to be aware.

According to Eder, "Optimizing for the latest generation of hardware, optimizing for the infrastructure they are running on and optimizing the workloads they are running" remain the three key areas on which organizations must focus their performance tuning efforts. Tuning profiles exist in all Red Hat offerings, but these profiles are simply starting points, as all systems are different and need to be tuned accordingly. But when the right amount of effort is put into the job of tuning the software with the hardware, the benefits are significant.

Eder's three sessions at the Red Hat Summit will discuss the following topics:

And for those who can't be in attendance, listen to the accompanying podcast to hear Jeremy Eder's insights on the ins and outs of RHEL performance optimizations in the world of NUMA systems and Docker-style containers.

How are you optimizing the performance of your container based systems? Let us know.

Next Steps

More on Red Hat containers

Dig Deeper on DevOps-driven, cloud-native app development

App Architecture
Software Quality
Cloud Computing