Splunk® Enterprise

Python 3 Migration

Splunk Enterprise version 8.2 is no longer supported as of September 30, 2023. See the Splunk Software Support Policy for details. For information about upgrading to a supported version, see How to upgrade Splunk Enterprise.
This documentation does not apply to the most recent version of Splunk® Enterprise. For documentation on the most recent version, go to the latest release.

Python 3 migration with ITSI

This page helps identify prerequisites, required changes, and steps for migrating IT Service Intelligence (ITSI) to Python 3 alongside your Splunk Enterprise deployment. This topic covers the following upgrade scenarios:

  • Migrating ITSI and Splunk Enterprise to Python 3
  • Upgrading to Splunk Enterprise version 8.x with Python 2
  • Upgrading to ITSI 4.4.x or higher without upgrading to Splunk Enterprise version 8.x

Scenario 1: Migrate ITSI and Splunk Enterprise to Python 3

You must upgrade ITSI and all other associated add-ons to the newest versions before upgrading to Splunk Enterprise version 8.x. If you upgrade Splunk Enterprise first, ITSI breaks.

In order to upgrade to Splunk Enterprise 8.x, you must also upgrade to ITSI version 4.4.x or higher. All ITSI versions prior to 4.4.x are incompatible with Splunk Enterprise version 8.x, even if you use the Python 2.7 runtime. For more information about ITSI compatibility with Splunk Enterprise, see the Splunk products version compatibility matrix.

The only post-upgrade impact for Python 3 migration relates to ITSI Predictive Analytics customers. If you currently leverage ITSI's Predictive Analytics capabilities, you must retrain all of your predictive models after you migrate ITSI to Python 3. For information about Predictive Analytics, see Overview of Predictive Analytics in ITSI.

Perform the following steps in this order to migrate ITSI to Python 3. Some steps are only required if you're using Predictive Analytics.

1. Upgrade to ITSI version 4.4.x or higher

For more information, see Upgrade IT Service Intelligence on a single instance or Upgrade IT Service Intelligence in a search head cluster environment depending on your deployment architecture.

2. Upgrade the Machine Learning Toolkit

If you're using Predictive Analytics, upgrade your MLTK to version 5.0.0 or later. For ITSI version compatibility with the MLTK, see ITSI compatibility with other apps and add-ons.

3. Upgrade required add-ons

If you have an integration with ServiceNow and/or leverage ITSI's bidirectional ticketing functionality, you must upgrade the Splunk Add-on for ServiceNow and the Common Information Model (CIM) to the newest releases which are Python 3 compatible.

For ITSI version compatibility with these add-ons, see ITSI compatibility with other apps and add-ons.

4. Upgrade Splunk Enterprise using the Python 3 runtime

Upgrade your Splunk Enterprise instance to version 8.x and perform the Python 3 migration. For more information, see Upgrade using the Python 3 runtime and dual-compatible Python syntax in custom scripts in the Splunk Enterprise Installation Manual.

In distributed environments, always run the same Python version on both indexers and search heads.

5. Retrain Predictive Analytics models

If you're using Predictive Analytics, confirm that data ingested to train any predictive models is still stored in Splunk software. If data has exceeded retention timeframes, re-ingest the data to feed the models.

Retrain all predictive models saved into each of your services. Retraining a model automatically replaces the existing model. For instructions, see Retrain a predictive model in ITSI.

Scenario 2: Upgrade to Splunk Enterprise 8.x with Python 2

If you upgrade to Splunk Enterprise version 8.x but want to use the Python 2 runtime, you still need to upgrade ITSI to version 4.4.x or higher. However, you must use a pre-5.0.0 version of the Machine Learning toolkit.

1. Upgrade Splunk Enterprise using the Python 2 runtime

Upgrade your Splunk Enterprise instance to version 8.x using the Python 2 runtime. For more information, see Upgrade using the Python 2 runtime and make minimal changes to Python code in the Splunk Enterprise Installation Manual.

2. Upgrade to ITSI version 4.4.x or higher

For more information, see Upgrade IT Service Intelligence on a single instance or Upgrade IT Service Intelligence in a search head cluster environment depending on your deployment architecture.

3. (Optional) Upgrade required add-ons

The Splunk Add-on for ServiceNow and the Common Information Model (CIM) can remain on older versions, or you can upgrade them if needed. For ITSI compatibility with these add-ons, see ITSI compatibility with other apps and add-ons.

Scenario 3: Upgrade to ITSI 4.4.x or higher without Splunk Enterprise 8.x

ITSI version 4.4.x and higher supports both the Python 2.7 and Python 3.7 runtimes. Therefore, you can upgrade to ITSI 4.4.x or higher while still remaining on Splunk Enterprise versions 7.2.x - 7.3.x. For ITSI compatibility with Splunk Enterprise, see Splunk Enterprise system requirements.

The Splunk Add-on for ServiceNow and the Common Information Model (CIM) can remain on older versions, or you can upgrade them if needed. For ITSI compatibility with these add-ons, see ITSI compatibility with other apps and add-ons.

Do not upgrade the Machine Learning Toolkit to version 5.0.0. Version 5.0.0 is only compatible with Python 3.

Upon startup, you might encounter errors stating you have an invalid Python version. You can ignore these warnings as they have no impact on functionality. Once you upgrade to Splunk Enterprise version 8.0.0 or later the warnings no longer appear.

Last modified on 06 February, 2024
Python with Splunk Enterprise Security   Update Splunk MLTK models for Python 3

This documentation applies to the following versions of Splunk® Enterprise: 7.0.0, 7.0.1, 7.0.2, 7.0.3, 7.0.4, 7.0.5, 7.0.6, 7.0.7, 7.0.8, 7.0.9, 7.0.10, 7.0.11, 7.0.13, 7.1.0, 7.1.1, 7.1.2, 7.1.3, 7.1.4, 7.1.5, 7.1.6, 7.1.7, 7.1.8, 7.1.9, 7.1.10, 7.2.0, 7.2.1, 7.2.2, 7.2.3, 7.2.4, 7.2.5, 7.2.6, 7.2.7, 7.2.8, 7.2.9, 7.2.10, 7.3.0, 7.3.1, 7.3.2, 7.3.3, 7.3.4, 7.3.5, 7.3.6, 7.3.7, 7.3.8, 8.0.0, 8.0.4, 8.0.5, 8.0.6, 8.0.7, 8.0.8, 8.0.9, 8.0.10, 8.1.0, 8.1.1, 8.1.2, 8.1.3, 8.1.5, 8.1.6, 8.1.7, 8.1.8, 8.1.9, 8.1.4, 8.1.10, 8.1.11, 8.1.12, 8.1.13, 8.1.14, 8.2.0, 8.2.1, 8.2.2, 8.2.3, 8.2.4, 8.2.5, 8.2.6, 8.2.7, 8.2.8, 8.2.9, 8.2.10, 8.2.11, 8.2.12, 7.3.9, 8.0.1, 8.0.2, 8.0.3


Was this topic useful?







You must be logged into splunk.com in order to post comments. Log in now.

Please try to keep this discussion focused on the content covered in this documentation topic. If you have a more general question about Splunk functionality or are experiencing a difficulty with Splunk, consider posting a question to Splunkbase Answers.

0 out of 1000 Characters