Пара хостов отвалилась от vcenter. Не помогает реконнект, не помогает удаление и добавление хоста. Не помогает перезагрузка хоста или перестарт агентов управления. Тег serverip файла vpxa.cfg стабильно меняется на 127.0.0.1, даже если его отредактировать на правильный ip. Обнаружили, что значение VirtualCenter.AutoManagedIPV4 установлено в 127.0.0.1. Для решения проблемы, видимо, надо туда поставить правильный IP нашего Vcenter. Как это можно сделать? Встречал пару похожих проблем, народ решал правкой БД. Если способ только правка БД напрямую, то неважно каким способом править БД? Например через ms sql management studio можно? Теподдержка vmware была, но сейчас уже нет, потому что vcenter версии 5.5.
Мы пробовали способ со сменой ip в файле vpxa.cfg и перезагрузкой агентов управления, не помогло. Логи частично смотрели, есть какие-нюансы, но в нашем понимании не влияет на нашу проблему. Отвалились два хоста из 6. Сетевые взаимодействия пробовали, есть, Nat-a нет, хосты и vcenter в одном влане. Ip адрес vcenter не менялся. Хосты не отваливались несколько лет. Интересно, в нормальной системе, например у Вас, что указано в поле virtualcenter.automanagedipv4? должно ли оно быть пустым? Или там должен стоять ip vcenter-а. И кем каким процессом заполняется это поле? Интересна в связи с этим такая статья. https://kb.vmware.com/s/article/1008030. Предлагается сравнить это поле со значением в vpxa.cfg. Но не написано, что если не совпадают, как менять поле virtualcenter.automanagedipv4. наблюдали еще такое: если поменять ip в vpxa.cfg на правильный и сделать рестарт сервиса hostd на хосте, ip адрес в vpxa.cfg тоже становится 127.0.0.1
Добрый день!
Посмотрите статью https://kb.vmware.com/s/article/1001493
Но не факт, что именно в этом дело.
Лучше начать с изучения логов и отслеживать их сразу после воспроизведения проблемы с добавлением хоста.
Это логи - vpxd.log на самом vcenter и hostd.log, vpxa.log на хостах.
Как вариант проверить, что vcenter корректно разрешает имя хоста, если вы добавляете его по имени. Или, что он корректно пингует адрес хоста и может подключиться по 443 и 902 портам.
Очень давно была например проблема, что хост не подключался к vcenter из-за того, что у виртуальной машины, работавшей на хосте, было более 32 снапшотов. Возможно это ваш случай.
Мы пробовали способ со сменой ip в файле vpxa.cfg и перезагрузкой агентов управления, не помогло. Логи частично смотрели, есть какие-нюансы, но в нашем понимании не влияет на нашу проблему. Отвалились два хоста из 6. Сетевые взаимодействия пробовали, есть, Nat-a нет, хосты и vcenter в одном влане. Ip адрес vcenter не менялся. Хосты не отваливались несколько лет. Интересно, в нормальной системе, например у Вас, что указано в поле virtualcenter.automanagedipv4? должно ли оно быть пустым? Или там должен стоять ip vcenter-а. И кем каким процессом заполняется это поле? Интересна в связи с этим такая статья. https://kb.vmware.com/s/article/1008030. Предлагается сравнить это поле со значением в vpxa.cfg. Но не написано, что если не совпадают, как менять поле virtualcenter.automanagedipv4. наблюдали еще такое: если поменять ip в vpxa.cfg на правильный и сделать рестарт сервиса hostd на хосте, ip адрес в vpxa.cfg тоже становится 127.0.0.1
Правка конфига не помогает, потому что с вероятностью 99% проблема не в нем.
Проверяйте гипотезу со снапшотами у виртуальных машин, проверяйте сертификаты на хостах\vcenter, прикрепляйте логи, чтобы их могли посмотреть другие.
Лечение по фотографии тут не поможет, увы.
Снапшотов мало, почти нет. Мы, конечно, не все методы еще попробовали, но натолклнулись на поле virtualcenter.automanagedipv4 со странным значением 127.0.0.1. Связь его значения с нашей проблемой очевидна: адрес в vpxa.cfg меняется именно на 127.0.0.1. и эту гипотезу хотелось бы отработать сейчас в первую очередь. Например такие вопросы: 1. Почему в этом поле 127.0.0.1? 2. Кто (какой процесс) его заполняет и по какому алгоритму? 3. В нормальном состоянии в этом поле должен быть ip адрес vcenter-а или оно должно быть пустым? И самое главное: 4. Как поменять это поле? Только прямой правкой БД?
Адрес в этом конфигурационном файле автоматически применяется на адрес VC, когда хост управляется через VC.
Очевидно, что в вашем случае хосты выведены из-под управления vcenter. Дополнительно проверить, что пишется про эти хосты, можно в табличке vpx_host. Полагаю, что их там нет.
Для чистоты эксперименты - разверните в виртуальной машине тестовый vcenter и проверьте, добавляются ли проблемные хосты к нему. Если все ок, попробуйте отключить и добавить их снова к вашему продуктивному vcenter.
Один раз пробовали удалять хост из vcenter и добавлять. Не помогло. Не знаю может попробуем еще раз. А можете посмотреть какое значение virtualcenter.automanagedipv4 стоит у Вас: пустое или ip vcenter-a? Посмотреть можно веб-клиентом в vcenter-е, кажется в профиле в конфигурации. Завтра точнее напишу, где.
Добавляйте проблемные хосты к тестовому vcenter.
Думаю, что к тестовому vcenter хосты добавятся, потому что в тестовой БД не будет заполнено поле VirtualCenter.AutoManagedIPV4, а к промышленному хосты не добавятся, потому что там это поле заполнено неправильно. Поле в веб клиенте ищется так: vcenter-manage-Settings-Advanced Settings. Прилагаю картинку.
Интересно, в нормальной среде в этом поле что? пусто или IP-адрес Vcenter-а?
Напишите кто-нибудь, пожалуйста. Если будем править БД, чтобы знать на что править.
Я теперь понял, о чем вы.
В этом поле пишется IP адрес vcenter.
Вы в последнее время интерфейсы дополнительные не добавляли? DNS не правили? или может какое-нибудь ПО безопасности ставили?
nslookup с vcenter по своему имени и IP корректные значения выдает? А с проблемных хостов? В hosts на vcenter нет каких-нибудь левых записей?
>Вы в последнее время интерфейсы дополнительные не добавляли?
Нет не добавляли, правда администраторов у нас несколько, один отсутствует.
>DNS не правили?
Нет
>или может какое-нибудь ПО безопасности ставили?
По осени переставляли антивирусы на сервере Vcenter и сервере БД Vcenter.
Поле VirtualCenter.AutoManagedIPV4 на 127.0.0.1 наверно могло поменяться и давно, например по осени, а проявиться недавно.
>nslookup с vcenter по своему имени и IP корректные значения выдает?
да, корректные.
>А с проблемных хостов?
C одного проблемного хоста попробовал, корректно выдает.
>В hosts на vcenter нет каких-нибудь левых записей?
нет. Вообще нет записей.
Вот похожая на наш случай проблема:
https://vninjadfw.github.io/esxidisconnect_vCSAIPchange/
Как я понял, решилась правкой БД.
Кроме правки БД есть другой способ? А если править БД, то неважно каким способом?
Если у вас vcenter на Windows и СУБД MS SQL, то правьте запросами через SQL Management Studio. В примере из статьи команды для postgres.