Upgrade a self-installation of APM Server standalone to 8.15.0edit

This upgrade guide is for the standalone method of running APM Server. Only use this guide if both of the following are true:

  • You have a self-installation of the Elastic Stack, i.e. you’re not using Elastic Cloud.
  • You’re running the APM Server binary, i.e. you haven’t switched to the Elastic APM integration.
Prerequisitesedit
  1. Prior to upgrading to version 8.15.0, Elasticsearch, Kibana, and APM Server must be upgraded to version 7.17.

  2. Review the APM release notes, breaking changes, and Observability What’s new content.
Upgrade stepsedit
  1. Upgrade the Elastic Stack to version 8.15.0

    The Elastic Stack (Elasticsearch and Kibana) must be upgraded before APM Server. See the Elastic Stack Installation and Upgrade Guide for guidance.

  2. Install the APM integration via the Fleet UI

    Starting in version 8.0.0, Fleet uses the APM integration to set up and manage APM index templates, ILM policies, and ingest pipelines. APM Server will only send data to Elasticsearch after the APM integration has been installed.

    If you have an internet connection

    An internet connection is required to install the APM integration via the Fleet UI in Kibana.

    1. Open Kibana and select Add integrations > Elastic APM.
    2. Click APM integration.
    3. Click Add Elastic APM.
    4. Click Save and continue.
    5. Click Add Elastic Agent later. You do not need to run an Elastic Agent to complete the setup.
    If you don’t have an internet connection

    If your environment has network traffic restrictions, there are other ways to install the APM integration. See Air-gapped environments for more information.

    Option 1: Update kibana.yml

    Update kibana.yml to include the following, then restart Kibana.

    xpack.fleet.packages:
    - name: apm
      version: latest

    See Configure Kibana to learn more about how to edit the Kibana configuration file.

    Option 2: Use the Fleet API

    Use the Fleet API to install the APM integration. To be successful, this needs to be run against the Kibana API, not the Elasticsearch API.

    POST kbn:/api/fleet/epm/packages/apm/8.15.0
    { "force": true }

    See Kibana API to learn more about how to use the Kibana APIs.

  3. Install the 8.15.0 APM Server release

    See install to find the command that works with your system.

    If you install version 8.15.0 of APM Server before installing the APM integration, you will see error logs similar to the following. You must go back and install the APM integration before data can be ingested into Elasticsearch.

    ...
    {"log.level":"error","@timestamp":"2022-01-19T10:45:34.923+0800","log.logger":"beater","log.origin":{"file.name":"beater/waitready.go","file.line":62},"message":"precondition 'apm integration installed' failed: error querying Elasticsearch for integration index templates: unexpected HTTP status: 404 Not Found ({\"error\":{\"root_cause\":[{\"type\":\"resource_not_found_exception\",\"reason\":\"index template matching [traces-apm.sampled] not found\"}],\"type\":\"resource_not_found_exception\",\"reason\":\"index template matching [traces-apm.sampled] not found\"},\"status\":404}): to remediate, please install the apm integration: https://ela.st/apm-integration-quickstart","service.name":"apm-server","ecs.version":"1.6.0"}
    {"log.level":"error","@timestamp":"2022-01-19T10:45:37.461+0800","log.logger":"beater","log.origin":{"file.name":"beater/waitready.go","file.line":62},"message":"precondition 'apm integration installed' failed: error querying Elasticsearch for integration index templates: unexpected HTTP status: 404 Not Found ({\"error\":{\"root_cause\":[{\"type\":\"resource_not_found_exception\",\"reason\":\"index template matching [logs-apm.error] not found\"}],\"type\":\"resource_not_found_exception\",\"reason\":\"index template matching [logs-apm.error] not found\"},\"status\":404}): to remediate, please install the apm integration: https://ela.st/apm-integration-quickstart","service.name":"apm-server","ecs.version":"1.6.0"}
    ...
  4. Review your configuration file

    Some settings have been removed or changed. You may need to update your apm-server.yml configuration file prior to starting the APM Server. See Installation layout for help in locating this file, and Configure for a list of all available configuration options.

  5. Start the APM Server

    To start the APM Server, run:

    ./apm-server -e

    Additional details are available in start the APM Server.

  6. (Optional) Upgrade to the APM integration

    Got time for one more upgrade? See Switch to the Elastic APM integration.