Обновление VMware vCenter с версии 6.7 до 7.0

Дождавшись выхода VMware vSphere 7.0.0b, мы решились на обновление нашей инфраструктуры, построенной на платформе версии 6.7.

Для уменьшения количества граблей внимательно прочитали следующие документы:

Проблема с сертификатами

При попытке обновления вылезла ошибка с сертификатами:

Error: A vCenter Single Sign-On endpoint certificate validation error has occurred.
Resolution: Ensure that the endpoint service registrations in vmdir match their corrsponding machine SSL certificates in VECS. For more information, see Knowledge Base article KB 2121701

Как это бывает, КБшка не помогла, как и не помог совет в форуме VMware.

Обратились в ТП VMware, получили волшебный скрипт и инструкцию: ls_ssltrust_fixer_p3.

  1. Проверить наличие актуальной резервной копии и сделать snapshot.
  2. Подключиться к vCenter по SSH.
  3. Скопировать “ls_ssltrust_fixer.py” в папку /usr/lib/vmidentity/tools/scripts (например, с помощью WinSCP).
    1. Перейти в папку:
    2. Изменить права:
  4. Выполнить проверку ошибок “certificate thumbprint mismatch” с помощью команды:
  5. Выполнить исправление ошибок “certificate thumbprint mismatch” с помощью команды:

После магических пасов руками vCenter обновился.

Проблема с vLCM

Зная рецепт, обновили несколько vCenter и получили разную функциональность в обновлении Update Manager – vSphere Lifecycle Manager (vLCM). Местами он категорически отказывался показывать Image Depot и видеть обновления для ESXi 7.0. Недолго думая, мы решили сделать сброс БД, чтобы заодно её почистить от компонентов для ESXi6.0 –  Resetting VMware Update Manager Database on a vCenter Server Appliance 6.5/6.7/7.0 (2147284). Это исправило “видимость” семёрочных обновлений.

Проблема с безагентской антивирусной проверкой

Для безагентской антивирусной проверки требуются компоненты VMware NSX Data Center for vSphere, поддержка которого не была заявлена (вышел новый продукт) при релизе vSphere 7.0. Но, VMware одумалась и в этом месяце всё таки выпустила патч версии 6.4.7.

Проблема с плагином Veeam BR

Также отвалился плагин для Veeam BR – порешалось переустановкой.

P.S. В придачу слетел файловый бэкап vCenter ;). Требуется перенастройка.

5 thoughts on “Обновление VMware vCenter с версии 6.7 до 7.0”

  1. Более полный вариант инструкции со всем угрозами
    Файл https://vmind.ru/wp-content/uploads/2020/09/ls_ssltrust_fixer_p3_70.zip

    Перед применением сделайте снапшот VC

    Предварительно требуется переименовать скрипт из архива в ls_ssltrust_fixer.py
    Fixing SSL trust mismatch in lookup service registration using ls_ssltrust_fixer.py
    Symptoms
    • Lookupservice registration has endpoint SSL trust certificate mismatch to actual node certificate.
    Any situation leading to the procedure documented, see KB 2121701 or KB 78709 for 7.0

    Purpose
    The automated way of performing procedure documented in KB 2121701 or KB 78709 for 7.0

    Resolution
    ****Please use the tool under the supervision of the PSC/SSL Team and/or Escalation Engineer****

    NOTE:
    • The tool is applicable to only vSphere 6.x & 7.x. Partial upgrade state of 5.5 to 6.x is unsupported for this tool- 5.5 web client registration might change if fix used without validation.
    • Port 443 is hardcoded to retrieve machine SSL certificate, validate third-party registrations thoroughly
    • Current machine SSL certificate in use is collected using a live connection to the node, host not alive might impact the mismatch check.
    1. Download the file attached to this article
    Note:
    • For vCenter 6.0 and vCenter 6.5, Download “ls_ssltrust_fixer_p2.py” file and rename to “ls_ssltrust_fixer.py”
    • For vCenter 6.7, Download “ls_ssltrust_fixer_p3.py” file and rename to “ls_ssltrust_fixer.py”
    • For vCenter 7.0, Download “ls_ssltrust_fixer_p3_70.py” file and rename to “ls_ssltrust_fixer.py”

    2. Copy the file to lstool scripts folder.
    • For vCSA :
    • vCenter 6.x – /usr/lib/vmidentity/tools/scripts
    • vCenter 7.x – /usr/lib/vmware-lookupsvc/tools
    • For Windows
    • vCenter 6.x – C:\Program Files\VMware\vCenter Server\VMware Identity Services\lstool\scripts
    3. Change directory to the above path and perform a mismatch scan
    • For vCSA: python ls_ssltrust_fixer.py -f scan
    • For Windows: “%VMWARE_PYTHON_BIN%” ls_ssltrust_fixer.py -f scan
    4. IMPORTANT: Thoroughly validate the mismatches identified using spec files and cert files created in the log location:
    • For vCSA: /var/log/ls_ssltrust_fixer/
    • For Windows : C:\ProgramData\VMware\vCenterServer\logs\ls_ssltrust_fixer
    • File naming convention:
    • Current registration spec files: ( 5.5 registrations with format are neutralized to format)
    • Current certificate in use: newCert
    • Modified spec to reregister:
    newSpec
    • A good procedure to validate the mismatches is this:
    • Run the following command to get the entire directory:
    • vCenter 6.x – /usr/lib/vmidentity/tools/scripts/lstool.py list –url https://localhost/lookupservice/sdk –no-check-cert > /tmp/certs.txt
    • vCenter 7.x – /usr/lib/vmware-lookupsvc/tools/lstool.py list –url https://localhost/lookupservice/sdk –no-check-cert > /tmp/certs.txt
    • Have the certs.txt file open in one window and the mismatchIDs file in another window for comparison.
    • Looking at each entry in mismatchIDs, ensure that the matching service ID found in certs.txt is referencing the correct PSC/VC node according to the URL entry.
    • If you have are any questions regarding any mismatchID items, consult an escalation engineer for assistance.
    5. IMPORTANT: Remove the service IDs which are not intended to be updated post reviewing the spec files from the mismatchIDs file located in log location
    6. Perform Fix using the command – Only Service IDs found in mismatchIDs file will be used in fix workflow (Try to group service IDs based on PSC/VC nodes and perform fix one by one in complicated environment) :
    • For vCSA: python ls_ssltrust_fixer.py -f fix
    • For Windows: “%VMWARE_PYTHON_BIN%” ls_ssltrust_fixer.py -f fix

Leave a Reply

Your email address will not be published. Required fields are marked *