Upgrade StackLight LMA using the Jenkins job

Upgrade StackLight LMA using the Jenkins job

This section describes how to upgrade StackLight LMA using the Deploy - upgrade Stacklight Jenkins job.

Warning

Verify that you have completed the steps described in Prerequisites.

To upgrade StackLight LMA using the Jenkins job:

  1. Log in to the Jenkins web UI.

  2. Open the Deploy - upgrade Stacklight pipeline job.

  3. Specify the following parameters:

    Parameter Description and values
    SALT_MASTER_URL The URL of Salt API.
    SALT_MASTER_CREDENTIALS Credentials for Salt API stored in Jenkins.
    STAGE_UPGRADE_SYSTEM_PART Select to upgrade the system part including Telegraf, Fluentd, and Prometheus Relay.
    STAGE_UPGRADE_ES_KIBANA Select to upgrade Elasticsearch and Kibana.
    STAGE_UPGRADE_DOCKER_COMPONENTS Select to upgrade the StackLight LMA components running in Docker Swarm.
  4. Click Build.

  5. Click Full stage view to track the upgrade process.

    The following table contains the details of the upgrade stages:

    The upgrade pipeline workflow
    # Stage Details
    1 Update grains and mines
    1. Refreshes grains on all nodes by applying the salt.minion.grains state.
    2. Refreshes modules on all nodes by running the saltutil.refresh_modules command.
    3. Updates mines on all nodes by running the mine.update command.
    2 Enable the Ceph Prometheus plugin If Ceph is installed in the cluster, enables the Ceph Prometheus plugin by applying the ceph.mgr state on the Ceph Monitor nodes.
    3 Upgrade system components

    For each service including Telegraf, Fluentd, Prometheus Relay, libvirt-exporter, and jmx-exporter:

    1. Prepares nodes with installed component, refreshes pillars and applies the linux.system.repo state.
    2. Updates the packages to the latest versions.
    3. Applies the corresponding Salt states for the changes to take effect.
    4. Shows the statuses of the services after the upgrade.
    4 Upgrade Elasticsearch and Kibana
    1. For Elasticsearch:
      1. Stops the service on all log nodes.
      2. Upgrades the package to the newest version.
      3. Reloads the systemd configuration.
      4. Starts the service on all log nodes.
      5. Verifies that the Elasticsearch cluster status is green.
      6. In case of a major upgrade, transforms the indices for the new version.
    2. For Kibana:
      1. Stops the service on all log nodes.
      2. Upgrades the package to the newest version.
      3. Starts the service on all log nodes.
      4. Shows the status of the service after the upgrade.
      5. In case of a major upgrade, migrates Kibana to the new index.
    5 Upgrade components running in Docker Swarm
    1. Disables and removes the previous versions of monitoring services.
    2. Rebuilds the Prometheus configuration by applying the prometheus state on the mon nodes.
    3. Disables and removes the previous version of Grafana.
    4. Starts the monitoring services by applying the docker state on the mon nodes.
    5. Synchronizes Salt modules by applying the saltutil.sync_all state.
    6. Applies the grafana.client state to refresh the Grafana dashboards.

Note

You may also enable additional functionality, such as Alerta or the Gainsight integration as required. For details, see Add new features to an existing StackLight LMA deployment.

Once done, proceed to Verify StackLight LMA after upgrade.