“For developers, [containers are] a really cool technology — a no-brainer in a lot of ways. But for operations engineers, to support and manage these containers on their infrastructure or in the cloud, it brings extra concerns about management, orchestration, security, availability and monitoring,” said Peter Arijs, product and marketing manager of CoScale. “That’s what we focus on — giving the right production guarantees when you move to these container environments.”
Containers introduce an extra layer of abstraction, which breaks traditional monitoring tools, he said. If you want full-stack visibility, you have to understand which containers are running and which resources they are using, but also how they’re tied to specific services, how these services behave inside the containers and ultimately the impact on end users.
The environment is dynamic with containers coming and going quickly, which creates challenges in instrumenting those containers. How can you get relevant performance metrics from them? How can you set up effective alerting rules?
And monitoring provides a deluge of data from many containers per host. There are different application components, each with its own metrics, which makes it almost unmanageable for a human to deal with.
Russ McKendrick detailed in The New Stack’s “Docker and Container Ecosystem” e-book on monitoring some various new monitoring approaches, including IBM’s Agentless System Crawler; the open source project Prometheus, which scrapes data from the data points on hosts; and in-container agents such those from Datadog and Dynatrace.
One popular approach, putting an agent in every container, creates too much overhead, breaks immutability and the concept of running only one process in the container, according to Arijs.
Instead CoScale uses a lightweight agent written in Go — either on the host or in a privileged container — that automatically recognize the images in the container and talks not only to the APIs of container and orchestration platforms, but also can launch plugins for specific applications that run inside the container, such as Nginx or Reddis. It can add a layer on top of that to measure how the performance is affecting end users.
It integrates with the different container orchestrators, such as Kubernetes or Docker Swarm, when scaling is taking place to provide extra context; with config management tools as Chef, Puppet, and Saltstack on deployment events; and with e-commerce tracking tools such as Google Analytics and Magento.
CoScale focuses on the service level, but also on suppressing unnecessary noise. The software uses machine learning aimed at automatically detecting anomalies for alerting and correlates anomalies to provide context about the environment.
“We learn what is normal behavior for a service and based on historical data, we make a prediction of what would be normal behavior today. Another kind of anomaly detection we use is outlier detection. We have groups of instances that behave in the same way. If a group of containers are part of the same service or a group that perform the same function. We take a learning period, but we combine different techniques to get the best algorithms based on each use case,” he said.
“We start out with generic anomaly detection techniques, but we found we have to build in some domain knowledge on things like CPU usage to detect specific patterns and incorporate that into the algorithms.”
It joins an increasingly crowded field in the infrastructure monitoring market. Big Panda, Dynatrace, IBM Bluemix, Netsil and SignalFx are just a few of the companies that use artificial intelligence to identify patterns and detect anomalies. Elastic also has added behavioral analytics integration with its acquisition of Prelert.
Founded in 2013, CoScale has largely been focused on the European market. However, it recently teamed up with Maryland-based consultancy Boxboat Technology to expand its business in the United States. The company has 25 employees.
Originally focused solely on engineering, the company has more recently been building out its partner ecosystem, which includes Docker and Red Hat OpenShift, Microsoft and Hewlett-Packard Enterprise.
Its customers include SAP, dating site Twoo, and most recently the UK government. While most of its customers use microservices in containers, it also can support microservices running on VMs and monolithic applications running in containers, Arijs said. It offers and on-prem and SaaS versions of its software.
“CoScale plays a vital role in maintaining our aggressive service levels on our container platform. We evaluated several monitoring solutions, but only CoScale provided us the flexibility to integrate our technical and business metrics in a single tool to give us complete visibility on our operations,” Maarten Verwaestm CEO and founder of digital video production site Limecraft.
Going forward, it’s looking beyond monitoring for performance reasons to include scheduling, improving resource utilization and leveraging the data being collected to create algorithms to make suggestions about gaining efficiency when companies are growing, Arijs said.