The use of lightweight and portable containers is growing in popularity. In fact, according to a recent Gartner report, by 2023, more than 70% of global organizations will be running containerized applications in production.
How does this affect monitoring solutions?
With this growing popularity comes challenges in the area of monitoring. Container environments
are inherently dynamic – containers are provisioned and de-provisioned across hosts based on
business requirements and infrastructure load. This in turn means that your monitoring targets
are no longer static.
Furthermore, the shift from monolithic to microservice architectures for enterprise applications
complicates monitoring even more. You now have to be able to collect and correlate monitoring
data for your applications from multiple containers across many hosts before you are able to
make reliable decisions for alerting and troubleshooting.
Monitoring Containers with Polaris
Polaris automatically discovers containers as they come and go on each monitored host by
continuously following their individual life cycles. Polaris comes with robust and configurable
metric aggregations, application log monitoring, alerting and visualization functionality to
continuously, reliably collect monitoring data from your containerized apps, non-containerized
apps and container hosts in a uniform manner. By monitoring both hosts and containerized apps,
Polaris can perform advanced correlations from data across the board. This provides the utmost
level of real-time precision monitoring, troubleshooting and performance management.
In the following demo you will see the Polaris solution in action. The environment includes two
Apache httpd docker containers representing frontend load balancers and one WebLogic Server
container representing backend applications. For each one of the three containers, Polaris will
dynamically follow its docker logs in order to collect metrics or events that interest us. For
the frontend Apache containers, Polaris will collect and aggregate HTTP response codes and
latencies by API endpoint. For the backend WebLogic Server container Polaris will collect and
aggregate application error codes by application and severity. At the same time, Polaris will
also monitor the egress throughput of the container host by network interface.
Fully Customizable Kubernetes Monitoring and Alerting
Clusters of containers (Kubernetes, Docker Swarm, OpenShift) are becoming a pervasive and
efficient way to manage the ever growing needs of dynamic and flexible business environments.
This translates into complex and fluid environments where traditional monitoring solutions find
it difficult to provide uncomplicated monitoring that automatically and effortlessly integrate
with these environments.
Whether you need to monitor 5 containers or 500, Polaris gives you a fully customizable platform
to collect the metrics you need to gain visibility at all layers. With our easy to build
dashboards, you’ll be able to create insightful visualizations in minutes.
An Enterprise Ready Solution
- Polaris was designed with enterprises in mind. Monitor your whole k8 environment without affecting performance.
- Gain visibility into container orchestration and easily manage clusters of containers from a single pane of glass.
- Leverage advanced capacity planning features to improve operational costs and reduce excess capacity.
- Create insightful visualizations and custom dashboards that focus on the information you are interested in
Kubernetes and Containerized Environment Monitoring Challenges
Enterprises face a number of challenges when considering monitoring and alerting solutions to fit the needs of their Kuberenetes and other containerized environments including:
- Clustered – with multiple servers in private or public cloud environments
- Multiple Clusters for different environments such as test and production or across logical boundaries
- Dynamic Containers are provisioned, replicated, started and stopped according to load and business requirements
- Lack of Visibility – because these environments are clustered and fragmented it becomes difficult to have visibility into application and business performance/health
- Microservice Architectures – monolithic applications are transitioned to microservice architectures. This means that a single logical transaction may involve multiple microservices or applications across multiple containers
- Huge Volumes of monitoring and log data
- Absence of single pane of glass into all environments
Monitoring Requirements
When searching for the right monitoring and alerting tool for containerized environments, many enterprises struggle to find a solution that meets their requirements...
- Monitoring both container and host level metrics and logs
- Automatic discovery of monitoring targets such as pods, containers and logs
- Automatic service discovery of application level metric endpoints (such as Prometheus exporters)
- Metric and log storage from multiple clusters into a single location
- Single point for alerting configurations and evaluation for all clusters and containers
- Centralized monitoring configurations that automatically get distributed to cluster nodes on demand
- Distributed tracing for microservices and/or applications. This is the ability for example to access all log entries related to an event or transaction spanning many microservices or applications – “grepping” across multiple files or indexes does not scale!
Where Poalris fits in...
Polaris offers an all-in-one platform to help tackle the challenges faced when monitoring containerized environments.
- A single agent service (daemon) installed once on each of your container host servers
- Monitoring logic via agent plugins that get automatically installed and updated on demand
- Monitoring configurations centrally managed through git and automatically distributed to agents/plugins on demand with automatic updating on change
- Agents follow pod/container life-cycle events resulting in truly dynamic monitoring
- Automatic discovery of container metric endpoints such as JMX and Prometheus exporters
- Automatic following of container application logs and shipping to a single store
- Reliable, scalable and easily accessible SQL-based store for both metrics and events:
- Automated retention, compression and downsampling policies so that you do not have to worry about storage requirements explosion – i.e. store as much as you need, for however long you want and can afford
- Stores events in high dimensional cardinality in a single place so that distributed tracing becomes second nature
- Powerful analytics
- Alerting based on metrics and/or events from one or many containers
- Single UI to configure, manage, analyze and investigate, all in one place
- Everything containerized, virtualized or bare metal in one place
- A platform, not a tool, so that it can adapt to whatever you need to monitor and analyze