BACKGROUND IMAGE: iSTOCK/GETTY IMAGES
There are probably a hundred or more combinations of software that you can use to deploy and manage application containers.
Keep in mind the formula: Container strategy is the product of container software plus container orchestration. Let's explore a container management system market baseline that represents what most users pick for their strategy in both basic software and orchestration. Beyond that baseline are special container requirements and special user constraints that could drive you to different purchasing decisions to meet your business needs.
The container deployment baseline is the simple orchestration capability of container software itself, so that basic hosting capability is all you need. If your container strategy focuses on private deployment in a single data center and if you have no more than a dozen off-the-shelf applications to deploy, then everything you need for success is likely available from a basic container hosting software package, such as Docker. The ultimate container strategy would be to select a product that can support the whole system without adding any other tools.
According to CIMI Corp. enterprise surveys, over two-thirds of all container users fall in this "simple tool" category, and the key technical issue will be the scale of the deployment. If you work for a small or midsize business, you almost surely fit in this category. A larger business with currently narrow container plans might also fall into this category but could eventually find that its container needs are larger than expected. Container strategy plans should take a long view, as well as account for short-term needs.
Add more tools to the container strategy
Almost a third of container users can't meet their needs with basic container software alone. You should consider these four technical and business factors to determine if you require more:
- very specific regulatory or internal compliance requirements that dictate extreme measures to secure some of your applications;
- multiple data centers, multiple cloud providers and a lot of hybrid cloud operations;
- dozens or hundreds of applications or application components targeted for container deployment; and
- deployment plans that focus more on public cloud than on your own data center.
The first main path off of the common baseline is for businesses that fit points two and three, which concern the scale and complexity of planned container use. This pathway is still a main road in that it represents the most popular more-than-container software setup: a basic container platform paired with orchestration. While the majority of application container users are Docker-only, the majority of deployed containers follow this path.
Adding even a simple orchestration tool to the primary container software facilitates container deployment on public and hybrid cloud, as well as across multiple data centers. It can also help organize multicomponent applications, particularly those that share components among applications. Large enterprises should look into this path to achieve container success.
The second trail off of the main container highway is for businesses with stringent security and compliance requirements. There are many ways to separate containers within a given server, and not all of them offer the same level of security. The most basic container software is the most popular, but not the most secure. If you have applications that demand an exceptionally high level of isolation and control, such as financial applications and even cloud applications involved in storefront missions, you may want to use something designed for that purpose.
You can use most common orchestration tools with the more secure container software options. In fact, adding orchestration will bolster security by replacing manual work with automated, policy-driven processes that enforce compliance rules and application deployment and lifecycle consistency. A secure container software product, plus a good orchestration tool, is sufficient to protect most containerized applications.
A solid strategy for general container deployments can fail if it involves massive data center resource pools, large-scale public cloud and multi-cloud, or both. For these users, an abstraction layer or resource orchestration process above the container systems' hosting options can harmonize a wide variety of public and private deployment locations.
This kind of resource abstraction simplifies application deployment and redeployment by making many different resource types look the same. This process depends totally on the chosen orchestration tool. Without it, the heterogeneous hosting environments could require different techniques or tools to support hybrid applications. This problem usually occurs for gigantic application deployments, and it primarily impacts the largest businesses, particularly those who have a global footprint.
Public cloud container applications
If you turn to other options outside the main Docker container strategy, you'll be on the path best suited for public cloud users. Public cloud use means that the organization puts its containerized applications in the cloud. Other applications that are not containerized can stay on owned servers. The three primary infrastructure as a service (IaaS) public cloud providers -- Amazon, Google and Microsoft -- all offer container tools, and it's smart to consider these first.
If you have an application in containers on public cloud, you should consider whether to deploy your own container software on VMs that are hosted by the public IaaS. The advantage of using a container-on-IaaS approach is that it's easier to hybridize these applications with your own data center applications. In fact, you can use the same container tools in both places.
The disadvantage to using a private container toolkit in the public cloud is that it may be more difficult to integrate your applications with the cloud provider's web services. If you anticipate that your application will rely on cloud services, you'll need to take the time to understand how to coordinate access to those features when you use separate container tools to deploy and redeploy in the cloud. At minimum, always evaluate what your current or prospective public cloud provider offers in the way of container tools and how easily you can use them to work with your data center container plans if necessary.
Generally, public cloud providers' container support focuses on orchestration more than basic software for container hosting. All of the public cloud providers support the Kubernetes orchestration tool, and all host Docker containers. So, if you have a strong commitment to public cloud, it may be wise to select compatible tools for your data center. This is why you should strategize how your use of the public cloud will evolve. It is possible to host and orchestrate container deployments differently in and out of the public cloud, but it requires a higher level of technical skill to do so.
Businesses that lack considerable technical depth in their IT operations group should not consider any container strategy other than the one illustrated on the figure, leading to a simple-container or container-plus-orchestration model. Experts in open source and container use can obtain open source container software directly from the appropriate portal and build their own deployments as needed for a given purpose.
At the other end of the spectrum are companies that plan to host third-party software in containers and have little technical depth in their staff. SMBs fit this model; hence, they should look at whether the application software provider has a containerized distribution available and strongly consider that option. Software providers also can recommend custom professional integration services if that is needed or if multiple providers that use different container tools are in play.
The most popular container and orchestration software is available from third parties, bundled and customized, with support included. These bundles range from repackaging of a single tool to customization of it for a single use in order to complete container toolkits that have everything you're likely to need. Even if these packages have a few things you don't need, they might be the best option, preparing you for expanded container use in the future.
With extensive research into container management software, TechTarget editors focused this series of articles on vendors that provided the following functionalities: orchestration, container networking and hybrid cloud portability. We are featuring vendors that either offer leading-edge unique technology or hold significant market share or interest from enterprises. Our research included Gartner and TechTarget surveys.