cluster-agent

command module
v0.1.15 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 19, 2019 License: Apache-2.0 Imports: 17 Imported by: 0

README

AppDynamics ClusterAgent

AppDynamics ClusterAgent is an application for monitoring workloads on Kubernetes clusters. It is implemented in Golang as a native Kubernetes component. The ClusterAgent is designed to work with AppDynamics controller and is associated with a specific AppDynamics tenant.

The ClusterAgent has 2 purposes.

  • It collects metrics and state of Kubernetes resources and reports them to the AppDynamics controller.
  • It instruments AppDynamics application agents into workloads deployed to the Kubernetes cluster.

Cluster monitoring

The ClusterAgent monitors state of Kubernetes resources and derives metrics to provide visibility into common application impacting issues. The metrics are displayed in the cluster overview dashboard and the snapshot data is stored in AppDynamics analytics engine for drill-downs and further analysis.

Cluster Overview Dashboard

Cluster monitoring overview

Application instrumentation

The ClusterAgent can be configured to auto instrument Java and .Net Core workloads

Application instrumentation overview

Prerequisites

  • Kubernetes Metrics server enables collection of resource utilization metrics. If it is not already deployed to the cluster, run the following command: kubectl create -f metrics-server/
  • An AppDynamics user account must be setup for the ClusterAgent to communicate to the AppDynamics controller via REST API.
  • Access to AppDynamics Controller 4.5.5+
  • At least 1 APM license (Golang) and 1 Analytics license. AppDynamics offers a free trial

How to deploy

The ClusterAgent can be deployed and managed manually or with the AppDynamics ClusterAgent Operator.

When deploying manually, follow these steps:

  • Create namespace for AppDynamics components

    • Kubernetes kubectl create namespace appdynamics
    • OpenShift oc new-project appdynamics --description="AppDynamics"
  • Update controller URL in the configMap (deploy/cluster-agent/cluster-agent-config.yaml). The controller URL must be in the following format: <protocol>://<controller-url>:<port>

  • Create Secret cluster-agent-secret.

    • The "api-user" key with the AppDynamics user account information is required. It needs to be in the following format @:, e.g user@customer1:123.
    • The other 2 keys, "controller-key" and "event-key", are optional. If not specified, the ClusterAgent will attempt to obtain them automatically.
kubectl -n appdynamics create secret generic cluster-agent-secret \
--from-literal=api-user="username@customer1:password" \
--from-literal=controller-key="" \
--from-literal=event-key="" \
  • Update the image reference in the ClusterAgent deployment spec, if necessary (deploy/cluster-agent/appd-cluster-agent.yaml).
Images

By default "docker.io/appdynamics/cluster-agent:latest" is used.

AppDynamics images are also available from Red Hat Container Catalog. Here are the steps to enable pulling in OpenShift.

Create a secret in the ClusterAgent namespace. In this example, namespace appdynamics is used and appdynamics-operator account is linked to the secret.

$ oc -n appdynamics create secret docker-registry redhat-connect 
--docker-server=registry.connect.redhat.com 
--docker-username=REDHAT_CONNECT_USERNAME 
--docker-password=REDHAT_CONNECT_PASSWORD --docker-email=unused
$ oc -n appdynamics secrets link appdynamics-operator redhat-connect 
--for=pull 

To build your own image, use the provided ./build.sh script:

	./build.sh appdynamics/cluster-agent <version>
  • Deploy the ClusterAgent kubectl create -f deploy/cluster-agent/

Configuration properties

The ClusterAgent behavior is driven by configuration settings. Refer to the list of configuration settings for details

Support

Support is provided by the author. Please post your inquiries and bug reports in the Issues area. To expedite issue resolution, please include the first 30 lines of logs with the ClusterAgent version and AppDynamics controller version, along with the log of the actual error.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL