309679576
Contributor
Contributor

A general system error occurred: internal error: vmodl.fault.HostCommunication

Добрый день, не могу подключить ESXi 5 к vcenter server 5, сообщение об ошибке:

A general system error occurred: internal error: vmodl.fault.HostCommunication

DNS в порядке, порты 80, 443, 902 открыты, vsphere client цепляется к ESXi хосту без проблем, в чем еще может быть причина?

0 Kudos
12 Replies
EGarbuzov
VMware Employee
VMware Employee

По IP хосты добавляются?

Что-то подозрительное по этому поводу в /var/log/hostd.log?

0 Kudos
309679576
Contributor
Contributor

Нет, по IP тоже не добавляется. Притом что один хост уже подключен, не получается добавить второй. Кликаю "Add host", ввожу данные - адрес, имя, пароль, vcenter находит хост, получает с него информацию - машины, хранилища, лицензии, жму на кнопку "Finish" и получаю ошибку. В hostd.log вроде ничего подозрительного, но я, видимо, могу ошибаться, поэтому кусок лога прилепил

0 Kudos
templier
Enthusiast
Enthusiast

1) Попробуйте зайти в консоль проблемного хоста и потестировать разрешение DNS-имен с помощью NSLookup;

2) Включите подробный (Verbose) режим логирования vCenter и повторите попытку добавления хоста.

http://vmind.ru
0 Kudos
309679576
Contributor
Contributor

1) проверял, резолвит и короткое имя, и полное, и адрес в имя тоже

2) это тоже делал, сам ничего полезного в логе не увидел, кусоук лога приаттачил на всякий случай

0 Kudos
templier
Enthusiast
Enthusiast

1) В логе странная запись

"Failed to communicate with the FDM service on host brisbanevmhost: Invalid response code: 400 Bad Request"

Вроде бы это проблемный хост, можно попробовать глянуть логи FDM (/var/log/*)

2) На хосте самоподписанный сертификат?

В логах еще одна странная запись

"[02208 error 'HttpConnectionPool'] [ConnectComplete] Connect error SSL Exception: The remote host certificate has these problems:
--> * unable to get local issuer certificate
--> * Host name does not match the subject name(s) in certificate."

Зайдите на хост через HTTPS и посмотрите, какой сертификат отдает сервер. Как минимум, должно совпадать имя сервера в сертификате.

Хотя вот здесь сказано, что сертификат хоста не самоподписный:

"ERROR task-internal-6413 -- datacenter-2 -- vim.Datacenter.queryConnectionInfo: vim.fault.SSLVerifyFault:
--> Result:
--> (vim.fault.SSLVerifyFault) {
-->    dynamicType = <unset>,
-->    faultCause = (vmodl.MethodFault) null,
-->    selfSigned = false,
-->    thumbprint = "31:8E:C0:FA:D4:51:85:7D:93:E8:88:2B:6E:67:35:A9:2F:3A:1B:74",   "

Если сертификат хоста выдан вашим CA, возможно, вы немного накосячили с заменой сертификата.

Адекватность сертификата на хосте можно проверить с помощью команды отсюда (http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=100487...)

cat -v /etc/vmware/ssl/rui.crt

http://vmind.ru
0 Kudos
309679576
Contributor
Contributor

1) fdm.log на хосте пустой

2) действительно, имя хоста не совпадало с тем, что в сертификате, сертификат был дефолтовый, выпущенный vmware installer для localhost.localdomain, я перевыпустил скриптом generate-certificates, теперь имя в сертификате соответствует, но это проблему не решило. Сейчас ошибка сертификата в логе тоже есть, связана, видимо с тем, что vcenter не может проверить CA. Я не думаю, что дело в сертификате, т.к. на втором, подключенном, хосте также сертификат, выданный для localhost.localdomain. В тестовой среде также хост подключается нормально с такой же ошибкой в логе. В самом начале подключения vcenter server выдает предупреждение о сертификате, но позволяет его проигнорировать.

0 Kudos
EGarbuzov
VMware Employee
VMware Employee

Вы хост добавляете на уровень датацентра или сразу в какой-то кластер?

0 Kudos
309679576
Contributor
Contributor

Добавляю на уровне датацентра, кластеров нет

0 Kudos
templier
Enthusiast
Enthusiast

Перечитал файл hostd и на эту статью натолкнулся

http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=100371...

Помимо проверки версии агента (vpxa) и его переустановки можно глянуть в его лог, а также удалить пользователя vpxuser на хосте...

http://vmind.ru
0 Kudos
309679576
Contributor
Contributor

Удалось только попробовать удалить пользователя vpxuser, но это не помогло.

Разные номера билдов vcenter server - version 5.0.0 build 455964, проблемный хост - version 5.0.0 build 504890, но вряд ли это причина - в тестовой среде точно такие же версии и хост подключается без проблем.

Из остального в статье применить к ESXi 5 можно только удаление HA агента, но у меня на хостах нет скрипта /opt/vmware/uninstallers/VMware-fdm-uninstall.sh и вообще директории /opt/vmware/uninstallers

Вот 100% уверен, что не вижу какую-ту мелочь...

0 Kudos
templier
Enthusiast
Enthusiast

С vCenter пинг по имени проходит, добавляете хост под локальным root'ом, брандмауэров посередине нет?

Другие хосты, добавленные к vCenter имеют идентичное железо / ПО? То есть, одинаковый дистрибутив ESXi к примеру с одинаковым набором апдейтов?

Может, проще переставить ESXi5 с нуля и попробовать еще раз?

http://vmind.ru
0 Kudos
309679576
Contributor
Contributor

Да , пинги проходят, добавляю под локальным рутом, брэндмауэров нет. Но железо разное, разные бренды, и дистрибутивы ESXi разные, в одном случае - предустановленный производителем ESXi 5, во втором - проблемный - ставили сами довольно давно, изначально был ESXi 4.0. Сами уже тоже склоняемся к тому, что переустановить его начисто

0 Kudos