gecman47
Contributor
Contributor

VMWare CLI Hard Broke on RHEL

Title says it all, VMWare CLI is busted on RHEL. Follow the official instructions to install (just download the package and run the installer) and what you'll see is:

/usr/bin/perl: symbol lookup error: /usr/lib64/perl5/auto/XML/LibXML/Common/Common.so: undefined symbol: Perl_Gthr_key_ptr

There's a post from 2015 about it https://morgajel.net/2015/05/20/1676​ that covers everything in gory detail. VMWare says RHEL is supported... is that not the case? It looks like this thing has been busted for upwards of three years now with the same error.

Edit: I'm testing on CentOS 7.5

Tags (2)
0 Kudos
3 Replies
gecman47
Contributor
Contributor

Update: I tried using CPAN to pull everything by answering no on the installer. You end up with:

CPAN not able to install following Perl modules on the system. These must be

installed manually for use by vSphere CLI:

Class::MethodMaker 2.10 or newer

0 Kudos
gecman47
Contributor
Contributor

Figured it out. You have to do the following before running the installer:

yum install e2fsprogs-devel libuuid-devel openssl-devel perl-devel

yum install glibc.i686 zlib.i686

yum install perl-XML-LibXML libncurses.so.5 perl-Crypt-SSLeay

yum group install "Development Tools"

Then when you are asked if you want to use precompiled modules you want to say yes.

Edit: The problem was I had to go hunt down the document that had the prereqs for 6.7 specifically. Google searching got me 5 and they've changed to the above.

0 Kudos
gecman47
Contributor
Contributor

Update

Have continued playing with this. Cannot find any way to connect to the host. I successfully added a host to the cred store by doing the following on a lab box:

-----------------------

Add yourself to the credentials store:

/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.1.7 --username <USERNAME> --password <PASS>

Get the cert by browsing to: https://192.168.1.7/host/ssl_cert

Save it to disk

Run "openssl x509 -noout -fingerprint -sha1 -inform pem -in <CERT FILE>" on the file

That should give you output like: SHA1 Fingerprint=5F:2F:92:8C:F4:19:37:F0:80:B9:27:2F:40:03:B4:2B:E5:0F:24:5D

Run "/usr/lib/vmware-vcli/apps/general/credstore_admin.pl add --server 192.168.1.7 --thumbprint 5F:2F:92:8C:F4:19:37:F0:80:B9:27:2F:40:03:B4:2B:E5:0F:24:5D" to add the server's thumbprint

-----------------------

However with esxcli you get:

[2018-08-11 14:38:45,457 root CRITICAL] Exception:[Errno 8] _ssl.c:480: EOF occurred in violation of protocol

[2018-08-11 14:38:45,457 root CRITICAL] Traceback (most recent call last):

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/Session.py", line 724, in Login

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/Session.py", line 853, in _GetServiceContent

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/VmomiSupport.py", line 543, in <lambda>

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/VmomiSupport.py", line 352, in _InvokeMethod

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/SoapAdapter.py", line 1235, in InvokeMethod

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/SoapAdapter.py", line 1320, in GetConnection

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/SoapAdapter.py", line 891, in _VerifyThumbprint

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/SoapAdapter.py", line 1350, in ConnectDisableNagle

   File "/build/mts/release/bora-2503622/bora/build/esxcli/release/build/pyVmomi/SoapAdapter.py", line 948, in connect

   File "/build/toolchain/lin64/python-2.6.1/lib/python2.6/httplib.py", line 1073, in connect

   File "/build/toolchain/lin64/python-2.6.1/lib/python2.6/ssl.py", line 350, in wrap_socket

   File "/build/toolchain/lin64/python-2.6.1/lib/python2.6/ssl.py", line 118, in __init__

   File "/build/toolchain/lin64/python-2.6.1/lib/python2.6/ssl.py", line 293, in do_handshake

SSLError: [Errno 8] _ssl.c:480: EOF occurred in violation of protocol

I've seen that reported in a couple of other places with no fix action.

--------------------------

I've also tried vmware-cmd. Instead of erroring out it just hangs indefinitely.

0 Kudos