How to Monitor AWS EKS

Amazon Web Services Elastic Container Service for Kubernetes to give it it’s full title, is Amazon’s offering in the highly competitive Kubernetes as a Service (KaaS) marketplace. It provides a fully managed Kubernetes control plane across multiple availability zones. leaving the user to configure EC2 worker nodes via auto scaling groups to handle the workload.

To get a new Kubernetes (K8s) cluster up and running is a little more cumbersome on AWS than with some of the competitor’s offerings. There are a number of prerequisites that must be set up before creating the cluster, followed by the manual creation of the auto scaling group to provide the worker nodes. This is not necessarily a problem for the production use case but so not convenient if you just want to spin up a cluster for a quick test.

Instana monitors both the Kubernetes core services and the applications deployed on the cluster, providing deep insight into the infrastructure and the deployed microservices. Utilising a high level of AI powered automation the collected data is turned into actionable insights, maintaining speed of your CI/CD process when using Kubernetes as your deployment platform. All you need to do to take advantage of Instana’s automatic Kubernetes monitoring on EKS is, an AWS account and an Instana trial account. Once you have signed up just install the Instana Agent and in a few minutes you’ll see inside your microservices application.

Instana Agent Installation

Currently K8s versions 1.10 and 1.11 are available on EKS, check the Instana sensor documentation for the latest supported versions before creating your EKS cluster. Because EKS is a conformant implementation of K8s the Instana agent just works as it would with other implementations. The recommended way to install the agent is to use the helm chart.

  • Create a service account for helm
  • Initialise helm e.g. helm init –service-account tiller
  • Clone the helm chart: git clone https://github.com/instana/instana-helm-chart
  • Edit values.yaml to insert your unique key, end point and zone name
  • Install: helm install –name instana-agent –namespace instana-agent .


Watch the video above to see the entire process of installing the Instana agent on Kubernetes.

Fully Automatic Monitoring

Once the Instana agent has been installed into the EKS cluster, it will automatically discover all the containers running in the Pods. For the supported technologies it will automatically collect time series metrics and for the supported language runtimes it will start AutoTrace™ to capture every request end to end.

The screenshot shows automatically discovered infrastructure

Services and their Endpoints are automatically discovered and their KPIs automatically calculated: Rate, Errors and Duration. The dependencies between services, and services to data stores are automatically discovered and tracked. Error messages are automatically captured and indexed against each endpoint and rolled up to Service and Application level.

The screenshot shows automatically discovered service interdependency

Tracking the relationships between everything enables automatic root cause analysis, providing intelligent alerting. Indexing error messages against each endpoint facilitates immediate access to additional diagnostic context without the need to switch tools.

The screenshot shows trace detail for a single request

Every request is traced end to end. There is no averaging or sampling as data is presented. Instana AutoTrace does this entirely automatically without the need for any code modification or restarts for supported languages. All contextual information, including any error messages, are included in the trace, additional contextual information may be optionally added via API calls.

Conclusion

As the Kubernetes marketplace continues to mature, with increasing enterprise adoption by both providers and consumers, Instana is already providing performance management value to those organisations. The highly automated monitoring capabilities of Instana adapt to rapidly changing Kubernetes environments, providing actionable information with nearly zero configuration. Maintaining, and even accelerating, the speed of your CI/CD process is only possible with high levels of automation, EKS provides that automation for deployment and Instana provides that automation for monitoring application quality.

You can see Instana with EKS in action for yourself, just sign up for a free trial. If you do not have a microservices application that you can run in EKS and deploy the Instana agent to, download Stan’s Robot Shop our free sample microservices application.