Kubernetes is in, container registries are a dime a dozen, and maximum container density isn't the only detail that matters when running containers.
Those are some of the insights gleaned by Sysdig, maker of on-prem and in-cloud monitoring solutions, from customers for how they're using containers in 2017.
Using a snapshot of Sysdig's services that encompassed 45,000 running containers, Sysdig's 2017 Docker Usage Report shows that container adoption is getting diversified by workload, and it covers some of the hot-or-not aspects of the new container stack.
Packing it in
Containers allow for much higher density on a given host than VMs, but according to Sysdig's stats, the other benefits provided by containers are at least as important as how many you can cram into a given host. The average was 10 containers per host, but the spread was wide: Some hosts were running as many as 95 containers; some as few as one. (Note that Sysdig only gathered data about its in-cloud customers, not those running containers in on-prem environments.)
For on-prem users, Sysdig said that "the benefit for containerization to them is [not density but] the ability to develop, deploy, and scale software more quickly where Docker adds value," in other words, the end-to-end workflow enabled by containers. Barring orchestration, there's no specific discussion of what other container tooling organizations are using for deployment and scale, if only because Sysdig's reporting didn't cover those tools.
With orchestration, there was one obvious winner: Kubernetes. Around 43 percent of Sysdig's users employed Kubernetes (including OpenShift and Tectonic), while 9 percent used Mesos or DC/OS, and 7 percent stuck with Docker Swarm. When users didn't bother much with orchestration, they either "built their own custom orchestration, or just use Docker labels to manage everything manually."
It's likely that there will always be users who don't need any formal orchestration -- such as those only running one or a handful of containers per host -- but Sysdig has seen that number shrink over time and believes that trend will continue. But Kubernetes is fast transcending container infrastructure and is becoming an infrastructure unto itself. As such, its share of those numbers is only set to grow.
When it comes to the apps running in containers, the most common pieces are the open source elements of modern application stacks, with relatively little overlap between them: PostgreSQL (databases), Elastic (search and indexing), Redis (caching), MongoDB (NoSQL), and so on.
Holding sway at the top of the list are two key pieces of web application infrastructure, the Nginx and Apache web servers. It can be hard to tell which of the two is dominant, since Nginx is sometimes used as a proxy for Apache. Also near the top is an open source project with particular relevance to container stacks: the Fluentd logging system, one of several key pieces of container infrastructure shepherded by the Cloud Native Computing Foundation.
Sysdig noted that container users don't seem particularly opinionated about where they store their Docker images. Of the top three reported container registries based on container count, the top slice, Quay, was only at 22 percent. Google Container Registry was 13 percent, and Docker claimed 15 percent. From the look of it, there's little about any one registry that has a particularly compelling feature set, doubly so since most of them tend to have a lot of homogeneity in their features. Container vulnerability scanning, for instance, is something most everyone has now (Docker Cloud, Red Hat).