TL; DR – Look beyond the names of applications discovered, early adopters are using containers for microservices at scale
We had some interesting data published by Sysdig yesterday, in which they highlighted some trends in container usage they are seeing in their customer base. As with any data set it is important to note the implicit biases that exist, and in Sysdigs case their current user base is squarely in the technically savvy early adopter camp.
To my mind, the most interesting of the findings in the Sysdig data is the top three applications discovered – Nginx, etcd and consul. Stepping back from the number of instances discovered of a specific application, we need to think about what these applications are used for.
Consul is particularly heavily used for service discovery, with etcd a close second and nginx occasionally used for service discovery in addition to its more common use cases. For those not familiar with microservices, service discovery is a key component of any microservices architecture.
It is fair to say that most consumers of a service discovery mechanism will be custom applications, and the number of container instances will vastly outnumber the number of instances of the service discovery mechanism itself. With consul and etcd placing so highly in the Sysdig numbers it is reasonable to assume that they are monitoring large number of microservices deployments.
It is important to note that etcd is installed by default with Kubernetes, and given the high percentage of Sysdig users also using Kubernetes this may skew the numbers.
The PHP Conundrum
Sysdig also listed php-fpm, the PHP Fast CGI implementation, among their top ten most frequently seen applications. As we noted in our analysis of data shared with RedMonk by New Relic last year, PHP is a language frequently seen in container deployments.
This is a point of some contention, in our conversations with vendors in the cloud native space PHP is consistently dismissed as not being relevant, yet in almost all the data we consistently see PHP being used. As we have previously noted cloud native aficionados see no place for PHP – but its continued popularity – coming third in our latest programming language rankings – is not in doubt. We expect to see PHP based apps in containers long into the future.
Containers Per Host
We continue to find quotes about the number of containers running per host somewhat pointless, but vendors continue with the trend. As we approach DockerCon next week expect lots more releases of this sort from various vendors across the monitoring space – it also completely misses the value of containers.
Application types vary, some can be easily run in parallel, some have high memory requirements, some require access to GPUs and so forth. Without understanding the application profile, comments on the number of containers running on a host are, at best, meaningless, and at worst continue to focus traditional IT consumers on the idea that containers are a VM replacement rather than a contributor to business velocity.
Disclaimers: CoreOS (primary authors of etcd) and New Relic are current RedMonk clients.