vSphere Agent Probleme mit vSphere 7.0

Hallo zusammen,
ich weiß nicht ob es damit zusammenhängt, aber ich habe ein ähnliches Phänomen und ggf. einen Lösungsvorschlag - bin aber was Python angeht eher unerfahren.

Zum Problem:
Wir wollen mit 1.6.0p18 CEE ein neues vCenter 7.0 abfragen und bekommen immer die Meldungen

“Cannot login to vSphere Server. Login response is not ‘OK’. Please check the credentials”

Wir haben sowohl lokale Nutzer, als auch AD Nutzer in verschiedensten Angaben der Domäne (@vsphere.local, vsphere.local\ usw.) geprüft.
Wir haben dann anstatt dem agent_vsphere das ganze mit dem agent_vsphere.pysphere versucht und folgenden Fehler erhalten:

Traceback (most recent call last):
  File "/omd/sites/adpqa/share/check_mk/agents/special/agent_vsphere.pysphere", line 260, in <module>
    esx_version_num = float(esx_version)
ValueError: invalid literal for float(): 7.0.1.1

Wie sich herausgestellt hat erwartet das Script eine Komazahl von der API. Bei 6.5 (und evtl. 6.7) kam diese wohl noch von der API zurück. Seit 7.0 gibt es aber mehr als eine Ziffer nach der Versionsnummer.
Ich habe es mir jetzt sehr einfach gemacht und die Zeile 260 ein bisschen überarbeitet

esx_version = host.get_api_version()
esx_version_num = esx_version[:3] # Nur 3 Stellen - sonst float nicht möglich
esx_version_num = float(esx_version_num)

Vielleicht kann mir jemand mitteilen ob ich damit auf dem richtigen Weg bin?
Ich werde mal prüfen wie sich der Agent beim ESXi 7.0u1 verhält und hier berichten.

1 Like