kalafoto - Fotolia

Tip

Maximizing containerized storage performance and flexibility

Are you taking full advantage of container storage? When properly deployed, containers can bring significant benefits, including better flexibility and performance.

It's an open-and-shut case: Containerized storage has arrived to answer numerous storage needs, including portability and mobility issues. However, many adopters are failing to drive the technology to anywhere near its maximum value.

Organizations are quickly adopting container storage technology to enable new levels of performance and flexibility for their IT infrastructure, said Itzik Reich, Dell EMC vice president of technology for the XtremIO and VxFlex OS product lines. "Generally speaking, maximizing the benefits of container storage technology begins with having an optimal storage array, which excels with high value-add capabilities," he said.

Such capabilities include the ability to quickly provision and delete volumes for running containers, as well as efficiently use the built-in array of data-saving technologies, such as deduplication and compression, since many containers run the same base image.

Containers bring simplicity to workload deployment, said J.P. Lavigne, product marketing manager for IBM Storage for Red Hat OpenShift. "However, challenges remain, such as managing resources outside the container and the ephemeral nature of the containers themselves," Lavigne said. "The lightweight and toss-away nature of containers challenges a business's ability and ... responsibility to protect and preserve the data consumed by the container-based workloads."

Getting started

Before deploying containerized storage, it's important to identify the target application and to investigate all possible alternatives. "You must continue to ... map out your goals until you determine that container storage is the solution," said Taylor Bird, vice president of AWS products and services at Onica, a cloud-native services provider.

There are numerous ways of maximizing container storage performance and flexibility. "The most performant way of writing data to storage is by bind-mounting your files or folders in a container to the local file system," said Edmond Cullen, practice principal architect at IT professional services firm SPR. "Make sure to use solid-state drives and ensure that your application is actually writing data to a mounted file system, not just to the container's writable layer," he said. This step is essential, since data that hasn't been saved to a file system will be lost as soon as the container shuts down.

An alternate approach is mounting and storing data on a volume. "This may not always be as performant, but it allows you to have your data easily persisted and separate from the host file system," Cullen said. "It also makes it easier to back up your data in the cloud."

A challenge also emerges when using block-level storage in which the application within a container believes it's interacting with a hard drive, as it would on a server. "This can be hard to do on Kubernetes because this wasn't its intent when the software was designed," Bird said.

Container benefits
Are you getting the most out of containerized storage?

Flexibility

Container flexibility is achieved by saying goodbye to DAS.

Container flexibility is achieved by saying goodbye to DAS. "Containers can migrate between servers and interact with shared data storage," said Alon Horev, co-founder and tech lead at storage technology provider Vast Data. "Therefore, admins should be looking to scale out NAS solutions that enable both the sharing and growth of data."

Maximizing containerized storage performance often comes down to keeping up with the application, Horev said. "If the application is blocked and waiting for I/O, the users end up paying for it in response times, longer job runtimes and also having their CPUs or GPUs sitting idle," he said. "As admins are servicing many concurrent applications with different usage patterns, they should be looking into all-flash storage systems that provide consistent latency and bandwidth for random bursting workloads."

Disaggregate

Containerized storage technology efficiency relies on getting storage out of the application's way. "As containers disaggregate applications from servers, container storage technology disaggregates applications from storage," Horev said.

A composable, disaggregated architecture ensures the best possible levels of flexibility and performance, said Kiran Chitturi, CTO architect for DR firm Sungard AS. "You can choose to have your storage cluster either outside of your container orchestration cluster or inside -- natively -- the cluster." Both options work well, he said. "The choice depends on whether there's a separate storage team that would like to manage the storage cluster outside of the application cluster or if you have a greenfield type of application that's fully self-contained," Chitturi said.

Next Steps

Get to know data storage containers and their terminology

5 ways container data storage can lower costs

Dig Deeper on Storage system and application software