Installing Python 3

Certain CDP services such as Cloudera Manager and Hue use Python 3.x. Installing Python 3.x is mandatory to deploy CDP Private Cloud Base. Review the supported operating systems (OS) and use the corresponding instructions to install the recommended Python version.

Cloudera Manager 7.11.3 is supported only on the following operating systems. The following table lists the supported operating systems, the Python version that is distributed with those operating systems, and the Python 3 versions required for deploying CDP:
Operating system Python version distributed with the OS Python version required for deploying CDP Installation required?
RHEL 7.9 Python 2 Python 3.8 Yes
RHEL 7.9 FIPS Python 2 Python 3.8 Yes
RHEL 8.6 Python 3.6 Python 3.8 Yes
RHEL 8.8 Python 3.6 Python 3.8 Yes
RHEL 8.8 FIPS Python 3.6 Python 3.8 Yes

For 7.1.9 SP1

RHEL 8.10
Python 3.6 Python 3.8 Yes
RHEL 9.1 Python 3.9 Python 3.9 Yes

For 7.1.9 GA upto 7.1.9 CHF6

SLES 15 SP4
Python 3.6 Python 3.8 Yes

For 7.1.9 SP1

SLES 15 SP4
Python 3.6 Python 3.10 Yes

For 7.1.9 SP1

SLES 15 SP5
Python 3.11 Python 3.10 Yes
CentOS 7.9 Python 2 Python 3.8 Yes
CentOS 7.9 FIPS Python 2 Python 3.8 Yes
CentOS 8 None Python 3.8 Yes
Oracle 8.8 UEK Python 3.6 Python 3.8 Yes

For 7.1.9 SP1

Oracle 8.10 (supported with Red Hat Compatible Kernel (RHCK) only)
Python 3.6 Python 3.8 Yes
Ubuntu 20.04 Python 3.8 Python 3.8 No

For 7.1.9 SP1

Ubuntu 22.04
Python 3.10 Python 3.10 No

Cloudera Manager 7.11.3 does not work with Python 2.7. While using Cloudera Manager 7.11.3 with Cloudera Runtime 7.1.8 or 7.1.9 version, you may remove all Python 2 versions from the operating system, only when the operating system allows you to remove the Python 2 version.

If you are running Cloudera Runtime 7.1.7 SP2 or below versions with Cloudera Manager 7.11.3, then Python 2.7 is still required for the Cloudera Runtime components. In this scenario, you must install both Python 2.7 (for Cloudera Runtime components) and Python 3 (for Cloudera Manager 7.11.3).

Difference between standard and custom Python packages

The term standard Python package in Cloudera documentation refers to the Python package that is distributed with the OS, or an unmodified Python binary that is compiled from the source. If you have made modifications or customizations to the Python source code and then compiled the binaries into a package, then that is referred to as the custom Python package.

Deployment options for Python 3

You can install Python in a standard or custom location on your filesystem. In Cloudera documentation, the term standard location refers to one of the following default locations where Python is installed, depending on the package:
  • /usr/bin
  • /usr/local/python38/bin
  • /usr/local/bin
  • /opt/rh/rh-python38/root/usr/bin

A custom location is any location on the filesystem other than these standard locations.

Typically, all standard packages that are distributed with an OS are installed in the standard locations. However, you have an option to install custom Python 3 packages in standard or custom locations, or standard Python binaries in standard or custom locations.

If the supported Python 3 version (standard package) is distributed with the OS, you can use the OS’s package manager to install Python, which gets installed in the standard location. If you want to install a standard Python binary at a standard or custom location, then you must manually download, build, and install the corresponding version of the Python binaries from the source code.