Python environment

TPAは、ターゲットインスタンスの distribution it detects に基づいて、使用するPythonインタープリターを決定します。可能な限りPython 3を使用し、やむを得ない場合にのみPython 2にフォールバックします。

tpaexec configure コマンドは、ディストリビューションに従ってpreferred_python_version を設定します。

Distribution

Python 2

Python 3

Debian 10/buster

✓

✓ (3.7)

Debian 9/stretch

✓

✓ (3.5)

Debian 8/jessie

✓

✗ (3.4)

Ubuntu 16.04/xenial

✓

✓ (3.5)

Ubuntu 18.04/bionic

✓

✓ (3.6)

Ubuntu 20.04/focal

✗

✓ (3.8)

Ubuntu 22.04/jammy

✗

✓ (3.10)

RHEL 7.x

✓

✗ (3.6)

RHEL 8.x

✗

✓ (3.6)

Ubuntu 20.04、22.04、およびRHEL 8.xは、Python 3でのみ使用できます。

RHEL 7.xはPython 3.6に同梱されていますが、Python 3のlibrpmバインディングは利用できないため、TPAは代わりにPython 2を使用する必要があります。 Debian 8には、Ansibleのサポートに必要なPython 3.5+がありません。

他のディストリビューションについて python2 またはpython3 のどちらを好むかを決定できますが、新しいクラスターのデフォルトはpython3 です。

下位互換性

既存のクラスターとの互換性のため、 preferred_python_version のデフォルト値はpython2 ですが、 python2 で既にデプロイされているシステムでもpython3 を明示的に選択できます。

cluster_vars:
  preferred_python_version: python3

TPAは、Python 3を使用できないディストリビューションでは、この設定を無視します。