Mellanox NEO - performance provider fails to start in version 2.7.20 (also in 2.7.10), how to fix?

Just installed Mellanox NEO 2.7.20 and I see it has the same problem as the previous 2.7.10 release, namely the performance provider fails to start, here’s the output from “/opt/neo/neoservice start”:

/opt/neo/neoservice start

checking ha-mode : … [ OK ]

Checking Localhost resolving … [ OK ]

Checking Disk space usage … [ OK ]

Starting neo-access-credentials: [ OK ]

Starting neo-controller: [ OK ]

Starting neo-device-manager: [ OK ]

Starting neo-eth-discovery: [ OK ]

Starting neo-host-manager: [ OK ]

Starting neo-ib: [ OK ]

Starting neo-ip-discovery: [ OK ]

Starting neo-monitor: [ OK ]

Starting neo-performance: [FAILED]

Starting neo-provisioning: [ OK ]

Starting neo-solution: [ OK ]

Starting neo-telemetry: [ OK ]

Starting neo-virtualization: [ OK ]

Redirecting to /bin/systemctl start monit.service

Looking at the console.log of the performance provider, located under /opt/neo/providers/performance/log/, I see this:

:0: UserWarning: You do not have a working installation of the service_identity module: ‘cannot import name ‘opentype’’. Please install it from https://pypi.python.org/pypi/service_identity and make sure all of its dependencies are satisfied. Without the service_identity module, Twisted can perform only rudimentary TLS client hostname verification. Many valid certificate/hostname mappings may be rejected.

2021-08-12 16:11:09.408 netservice INIT Starting Provider…

-E- Could not find version file.

I guess the warning is just a warning, and the error is the “Could not find version file” part, does anyone know how to fix that?

Hello Ivan,

Thank you for posting your question on the Mellanox Community.

Looking at the shared snippet of the logs, it looks like you are missing the python module, service_identity

Please try using the following command

pip3 install service_identity

Let us know if this resolves your issue or if you need further assistance

Thanks and regards,

~Mellanox Technical Support

I had the same problem and in the end I managed to solve it.

After some debug, “-E- Could not find version file.” refers to the “gperf” version.

Downgrading from “3.0.4-8.el7” to official package version, all works:

yum downgrade ./neo-2.7.20-4.el7/neo/packages/gperf-3.0.0-6.noarch.rpm