cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Jeanie.Kedia
AppDynamics Team (Retired)

How do I deploy a containerized app using Kubernetes to EKS, AKS, and GKE 

Air-Date August 2, 2018

Run Time: 60 minutes

@Mark.Prichard and @Eric.Johanson take a look at a detailed example of a containerized application and how to successfully deploy it using Kubernetes to each of the three main container management services:

  • Amazon Elastic Container Service for Kubernetes (EKS)
  • Microsoft Azure Kubernetes Service (AKS)
  • Google Kubernetes Engine (GKE)   


In this technical session, designed for operations teams who manage cloud-native deployments,
we took an in-depth look at: 

  • How to deploy applications to the cloud with full Application Performance Monitoring of the application, container, and orchestration layers
  • Compared the experience of managing and monitoring applications using Kubernetes services between each of the “Big Three” (EKS, AKS, GKE)
  • Shared best practices and design decisions that you should consider when moving services and applications to the cloud-native space

 

Resource Links | Monitoring Kubernetes in the Cloud on EKS, AKS, and GKE

 

Q&A 

 

Do you provide Docker images with AWS monitors built-in?

We don't provide it currently, but we would take it as an action item. Following the same approach that we showed you in the webinar, we could package the Docker image with built-in AWS monitoring and make it available on the Docker Store. The AppDynamics Java Agents have tags and we could build Machine Agents for AWS with certain tags and built-in extensions, so it is doable.

Back to TOC

Does the AppDynamics Agent need to be installed in every pod in Kubernetes, or does installing it in a single container apply to all containers in a pod?

Kubernetes monitoring is application-based. What we showed you today in the webinar is Java-based application monitoring on EKS, AKS, and GKE. Our example used the Java Agent, but AppDynamics provides different types of Application Agents. We don't want you to think that Kubernetes monitoring is only Java-based, so we would do a webinar based on another agent type.

 

You have containerized application components that you want to monitor with APM. Depending on the runtime, you install the corresponding type of APM Agent on the containers. On each Kubernetes worker node where your application is running, you install the Machine Agent to have those containers monitored. If you don't have a Machine Agent installed and if you have containers that are unrelated or that are not being monitored through APM or infrastructure components, you don't need AppDynamics App Agents.

Back to Table of Contents

Do you have instructions on how to build the Machine Agent Docker image with AWS monitors (e.g., AWS Cloud watch, Cloud search, etc)?

We will publish a blog to demonstrate how to build and deploy Docker images with AWS monitors. We will also include the Docker file with the blog to show you how to build it, and if you don't want the component you can comment it out and rebuild it. We will also post the image on the Docker store.

Back to Table of Contents

What are the new enhancements in 4.5 as per release notes?

One of the major enhancements in 4.5 is Dynamic Monitoring Mode (DMM) for all Docker Visibility Metrics. See Dynamic Monitoring Mode and Docker Visibility to learn how it works.

 

Basically, it is a flag that you can set on the AppDynamics Controller and it selectively controls the number of Docker Visibility metrics reported for individual containers. The default is the standard Key Performance Indicator (KPI) mode. Diagnostic mode and Advanced Diagnostic mode help with detailed troubleshooting. In normal operations, we use KPI mode and if you detect any issue on a particular node or a server, you can turn advanced modes on to collect additional metric data to diagnose problems.

Back to Table of Contents

Can we install AppDynamics in our VMs rather than in a container using Docker or Kubernetes?

The examples we demonstrated today are specific to Docker and Kubernetes but you can run AppDynamics replication on VMs like many of our customers do. Many AppDynamics customers are running Docker and Kubernetes on top of VMs too.

Back to Table of Contents

Can we use AppDynamics with OpenShift?

AppDynamics supports RedHat OpenShift. See RedHat OpenShift for instruction on using it. We are also planning a webinar on this topic, covering features such as rolling upgrade. OpenShift and Kubernetes are identical and they are 99% the same. OpenShift has a security framework and its deployment model is enterprise-grade. 

Back to Table of Contents

Can AppDynamics integrate with tools like CloudWatch and monitor the end-to-end application like PurePath?

AppDynamics has introduced a rich set of extensions that handles AWS. We use different AWS APIs. Putting those things together and building a Docker image is doable.

Back to Table of Contents

(Can AppDynamics integrate with) hybrid applications?

We do see a hybrid application pattern as well. Supporting applications on hybrid cloud is one of the beauties of the Kubernetes approach. GKE is offering on-prem and there are others setting up Kubernetes on-prem.

 

The main challenge is in security and authentication. Having those things ironed out to be working across cloud, hybrid application is a possibility.

Back to Table of Contents

How do I install agents on microservice-based container applications?

Some of the topics we discussed in this session are relevant to this question. There is a fundamental trade-off between operational convenience and flexibility. You can either use the AppDynamics base image and extend it to include your application code, or build your own if you have certain code standards to follow.

 

From an operational perspective, it is easy. The downside of using your own image is the proliferation of images, with different tags and versions that you have to manage. Another scheme is dynamically managing it using a sidecar method as we showed in our previous webinar.

 

What we showed was to have the agents loaded into a subnet network storage and pull them into the container as needed. It requires more operational setup and you need to specify the path you use in order to pull the image file. But, it will resolve in smaller and lighter images so it is faster to load. You can also turn APM off in development mode. Run the container without APM and dynamically inject when you need them. Customers favor one of these methods but all these boils down to what you chose - operational convenience or flexibility.

Back to Table of Contents

Will you share the installation steps with us? 

The installation steps can be found here: Monitoring Applications in Docker Containers

Back to Table of Contents

Is it open source or is licensed a offered?

It is not open source. You need a Server Visibility license to use it. See Monitoring Docker Containers for more information.

Back to Table of Contents

Is there a road map to support Vagrant, Apache Mesos, and RancherOS?

We have customers interested in monitoring these platforms. Considering the way we do container monitoring, AppDynamics APM could work on those technologies.

 

We would certainly publish best practice guides and examples either on Github or in a blog that shows how to package and deploy the agents for those technologies. We would also make the Docker images for a wider range of agents available on the Docker store.

 

Source code is available for the agents and it's a matter of putting them together to make it deployment-specific.

Back to Table of Contents

 

Version history
Last update:
‎07-01-2021 09:52 PM
Updated by: