Для загрузки OVA с использованием pyVmomi требуется подключение напрямую к вычислительному хосту. - PullRequest
0 голосов
/ 10 марта 2020

У меня проблема со скриптом, который построен на pyVmomi, пытающимся загрузить OVA в vSphere. Этот сценарий выполняется на виртуальной машине, которая имеет сетевое подключение к vCenter, но не к вычислительному хосту.

Этот сценарий очень похож на пример сообщества https://github.com/vmware/pyvmomi-community-samples/blob/master/samples/deploy_ovf.py. URL-адрес, полученный при аренде, предназначен для одного из вычислительных хостов, а не vCenter, т. Е. Соответствует этой строке: https://github.com/vmware/pyvmomi-community-samples/blob/master/samples/deploy_ovf.py#L197. Это, очевидно, не работает, когда мы позже используем запросы для загрузки на этот адрес, так как у нас нет сетевого подключения.

В конце концов мы сталкиваемся с ошибкой в ​​форме:

pyVmomi.VmomiSupport.SystemError: (vmodl.fault.SystemError) {
   dynamicType = <unset>,
   dynamicProperty = (vmodl.DynamicProperty) [],
   msg = <unset>,
   faultCause = <unset>,
   faultMessage = (vmodl.LocalizableMessage) [],
   reason = "HTTPSConnectionPool(host='10.2.3.4', port=443): Max retries exceeded with url: /nfc/52479c2d-e906-c312-7ee3-fe108cae2d7e/disk-0.vmdk (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x7f8970337fd0>: Failed to establish a new connection: [Errno 110] Connection timed out',))"
}

Где 10.2.3.4 - это вычислительный хост, а не vCenter.

Любой совет будет оценен, будь то это исправление кода или альтернативная библиотека / инструмент, который не требует сетевого подключения к вычислительному хосту.

...