Tuned installation failure due to Python 3.14 incompatibility
search cancel

Tuned installation failure due to Python 3.14 incompatibility

book

Article ID: 439181

calendar_today

Updated On:

Products

VMware Telco Cloud Automation VMware Telco Cloud Platform

Issue/Introduction

  • During CNF instantiation or manual package management, the tuned service fails to install or start.
  • Investigation reveals a version mismatch where tuned inadvertently triggers an installation of Python 3.14, which is currently incompatible with the package in specific Photon OS environments.

Environment

TCA 3.0, 3.1, 3.2, 3.3, 3.3.0.1, 3.4

TCP: 3.0, 4.0, 5.0, 5.0.1, 5.0.2, 5.1

Photon OS: 5

Cause

  • A dependency conflict exists in the Photon OS 5.0 repositories.
  • The tuned package requires certain versions of pciutils.
  • In both Airgap and Non-Airgap environments, attempting to resolve these dependencies can lead to the package manager selecting the Python 3.14 branch, which breaks tuned functionality.

Resolution

Workaround

Airgap Deployments

  1. Clean up the Repository

    1. Download and move the the attached remove-pkg.sh file onto the airgap appliance as the root user.

      Note: This script is strictly for Photon 5 repositories. DO NOT run the script against a Photon 3 repository.

    2. Set the permissions:

      chmod 755 remove-pkg.sh

    3. Run against the updates or release repo

      • ./remove-pkg.sh /photon-reps/updates/photon5-updates

OR

      • ./remove-pkg.sh /photon-reps/release/photon5

    • Note: Monitor progress within the /usr/local/airgap/logs/rpm_cleanup_photon5-updates_[TIMESTAMP].log file

  1. Rebuild Repository Metadata

    1. createrepo -po /photon-reps/release/photon5 /photon-reps/release/photon5/

    2. createrepo -po /photon-reps/updates/photon5-updates /photon-reps/updates/photon5-updates/

    3. chown -R nobody:nogroup /photon-reps

  2. On all control-plane and worker nodes, refresh the cache and reinstall the compatible version:

    1. tdnf clean all

    2. tdnf makecache

  3. Remove incompatible components

    tdnf remove python3 python3-pyudev tuned

  4. Install compatible components

    tdnf install python3 tuned

  5. Restart the following services:

    • systemctl daemon-reload

    • systemctl restart tuned

    • systemctl status tuned

  6. Retry instantiating the CNF. 

Non-Airgap Deployments

  • In standard deployments, the BYOI template often points to a specific snapshot that lacks the required pciutils version.

  • Removing the snapshot restriction without a safety filter causes the system to pull Python 3.14.

Execute the following commands on all the cluster nodes:

  1. Exclude Python 3.14: Add an exclusion rule to the global tdnf configuration.

    sed -i 's/^excludepkgs=.*/excludepkgs=photon-repos* python3 python3-*/' /etc/tdnf/tdnf.conf

  2. Backup and modify repo files to allow access to necessary pciutils versions.

    1. cp -rv /etc/yum.repos.d /etc/yum.repos.d.bak

    2. sed -i '/^snapshot=/d' /etc/yum.repos.d/*

    3. tdnf clean all && tdnf makecache

  3. Retry instantiating the CNF.

Attachments

remove-pkg.sh get_app