Skip to content

Latest commit

 

History

History

apm-server

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

apm-server

apm-server is the server receives data from the Elastic APM agents and stores the data into a datastore like Elasticsearch.

Introduction

This chart deploys apm-server agents to all the nodes in your cluster via a DaemonSet.

By default this chart only ships a single output to a file on the local system. Users should set config.output.file.enabled=false and configure their own outputs as documented

Prerequisites

  • Kubernetes 1.9+

Installing the Chart

To install the chart with the release name my-release, run:

$ helm install --name my-release stable/apm-server

After a few minutes, you should see service statuses being written to the configured output, which is a log file inside the apm-server container.

Tip: List all releases using helm list

Uninstalling the Chart

To uninstall/delete the my-release deployment:

$ helm delete my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

The following table lists the configurable parameters of the apm-server chart and their default values.

Parameter Description Default
image.repository The image repository to pull from docker.elastic.co/apm/apm-server
image.tag The image tag to pull 6.2.4
image.pullPolicy Image pull policy IfNotPresent
kind Install as Deployment or DaemonSet Deployment
replicaCount Number of replicas when kind is Deployment 1
updateStrategy Allows setting of RollingUpdate strategy {}
service.enabled If true, create service pointing to APM Server true
service.type type of service ClusterIP
service.port Service port 8200
service.portName Service port name None
service.clusterIP Static clusterIP or None for headless services None
service.externalIPs External IP addresses None
service.loadBalancerIP Load Balancer IP address None
service.loadBalancerSourceRanges Limit load balancer source IPs to list of CIDRs (where available) []
service.nodePort NodePort value if service.type is NodePort None
service.annotations Kubernetes service annotations None
service.labels Kubernetes service labels None
ingress.enabled If true, create ingress pointing to service false
ingress.annotations Kubernetes ingress annotations None
ingress.labels Kubernetes service labels None
ingress.hosts List of ingress accepted hostnames apm-server-ingress.example.com
ingress.tls Ingress TLS configuration []
rbac.create If true, create & use RBAC resources true
rbac.serviceAccount existing ServiceAccount to use (ignored if rbac.create=true) default
config The content of the configuration file consumed by apm-server. See the apm-server documentation for full details
plugins List of apm-server plugins
extraVars A map of additional environment variables
extraVolumes, extraVolumeMounts Additional volumes and mounts, for example to provide other configuration files
resources.requests.cpu CPU resource requests
resources.limits.cpu CPU resource limits
resources.requests.memory Memory resource requests
resources.limits.memory Memory resource limits
nodeSelector Node labels for pod assignment {}
tolerations List of node taints to tolerate []
affinity Node/Pod affinities None
autoscaling HorizontalPodAutoscaler for the deployment {}
runAsUser User id to use when running the pod 1000
runAsGroup Group id to use when running the pod 1000

Specify each parameter using the --set key=value[,key=value] argument to helm install. For example,

$ helm install --name my-release \
    --set rbac.create=true \
    stable/apm-server

Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,

$ helm install --name my-release -f values.yaml stable/apm-server

Tip: You can use the default values.yaml