For any cloud-native application, observability plays an important role. Monitoring containerized applications within Kubernetes poses various challenges due to the transient nature of the containers and the number of resources and metrics that require monitoring.
Like dynamic containers, application monitoring has to be dynamic. Concerning security, it is important to protect your workloads from malicious actors and hackers.
You can do that by:
- Monitoring the network utilization
- Monitoring for suspicious activity
- Monitoring for failed and unsuccessful logins
- Monitoring for vulnerabilities and risks
When it comes to security monitoring, logs are one of the most critical data that is used to detect anomalies. Centralized logging is a highly recommended practice when it comes to any enterprise. The central repository also forms the source for any auditing tools or processes.
Additionally, without cost management, there is a high chance of the costs exceeding the budget due to how containers and Kubernetes work. It is critical to have proper cost management tools in place.
The sections below review popular recommended tools for different Kubernetes on VMware use cases.
Log Aggregation: Fluentd
Fluentd is an open-source data collector, while the Fluent Bit is a lightweight agent that acts as a data forwarder for Fluentd. Fluentd can aggregate all your logging data and then push it to tools like Elasticsearch for analytics. Kibana acts as the visualization interface.
This combination of Elasticsearch, Fluentd, and Kibana is the EFK stack. Alternatively, there is also an ELK stack, which replaces Fluentd with Logstash.
Monitoring: Prometheus and Grafana / Aria Operations
Prometheus and Grafana are the most preferred open-source tool combinations when monitoring Kubernetes clusters. Together they can give detailed insights on performance bottlenecks, metrics, the overall health of the Kubernetes cluster, network usage, and help with across-the-board observability. Prometheus is excellent at monitoring multidimensional data, including time-series data. Grafana is an open-source metrics dashboard to display data.
As part of its Tanzu portfolio, VMware offers VMware Aria Operations, which also works with non-Kubernetes environments. It has over 250 integrations, and you can integrate your existing diverse monitoring tools with VMware Aria to get a single pane of glass view.
Security: VMware Carbon Black
VMware Carbon Black is a container image scanning tool with a central dashboard for vulnerability monitoring. VMware Carbon Black integrates seamlessly into CI/CD pipelines and helps to shift security left. It also allows container deployments using specific white-listed registries and repositories.
Cost Optimization: Kubecost
Kubecost is one of the best solutions to monitor your Kubernetes cost and optimize it. For every company, it is important to balance the cost and the performance, and with the multi-cloud and hybrid nature of Kubernetes, cost management becomes very tricky.
Kubecost resolves this issue by giving you a single view of your cost across multiple clusters. The cost allocation feature within Kubecost allows you to assign various costs — like the cost of the server, licenses required, etc. — to derive the accurate cost of running a Kubernetes cluster.