Back to Charts

⚠️ Repo Archive Notice

stable/apm-server/README.md

latest6.9 KB
Original Source

⚠️ Repo Archive Notice

As of Nov 13, 2020, charts in this repo will no longer be updated. For more information, see the Helm Charts Deprecation and Archive Notice, and Update.

apm-server

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

DEPRECATION NOTICE

This chart is deprecated and no longer supported.

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:

bash
$ 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:

bash
$ 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.

ParameterDescriptionDefault
image.repositoryThe image repository to pull fromdocker.elastic.co/apm/apm-server
image.tagThe image tag to pull6.2.4
image.pullPolicyImage pull policyIfNotPresent
kindInstall as Deployment or DaemonSetDeployment
replicaCountNumber of replicas when kind is Deployment1
updateStrategyAllows setting of RollingUpdate strategy{}
service.enabledIf true, create service pointing to APM Servertrue
service.typetype of serviceClusterIP
service.portService port8200
service.portNameService port nameNone
service.clusterIPStatic clusterIP or None for headless servicesNone
service.externalIPsExternal IP addressesNone
service.loadBalancerIPLoad Balancer IP addressNone
service.loadBalancerSourceRangesLimit load balancer source IPs to list of CIDRs (where available)[]
service.nodePortNodePort value if service.type is NodePortNone
service.annotationsKubernetes service annotationsNone
service.labelsKubernetes service labelsNone
ingress.enabledIf true, create ingress pointing to servicefalse
ingress.annotationsKubernetes ingress annotationsNone
ingress.labelsKubernetes service labelsNone
ingress.hostsList of ingress accepted hostnamesapm-server-ingress.example.com
ingress.tlsIngress TLS configuration[]
rbac.createIf true, create & use RBAC resourcestrue
rbac.serviceAccountexisting ServiceAccount to use (ignored if rbac.create=true)default
configThe content of the configuration file consumed by apm-server. See the apm-server documentation for full details
pluginsList of apm-server plugins
extraVarsA map of additional environment variables
extraVolumes, extraVolumeMountsAdditional volumes and mounts, for example to provide other configuration files
resources.requests.cpuCPU resource requests
resources.limits.cpuCPU resource limits
resources.requests.memoryMemory resource requests
resources.limits.memoryMemory resource limits
nodeSelectorNode labels for pod assignment{}
tolerationsList of node taints to tolerate[]
affinityNode/Pod affinitiesNone
autoscalingHorizontalPodAutoscaler for the deployment{}
runAsUserUser id to use when running the pod1000
runAsGroupGroup id to use when running the pod1000

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

bash
$ 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,

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

Tip: You can use the default values.yaml