vCenter Server のアップグレードのステージ2 が "ソース ホストのサムプリントが、指定されたものと異なります。" のエラーにより失敗する
search cancel

vCenter Server のアップグレードのステージ2 が "ソース ホストのサムプリントが、指定されたものと異なります。" のエラーにより失敗する

book

Article ID: 424214

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

vCenter Server のアップグレードの Stage2 で下記のエラーによりアップグレードが失敗します。

ソース ホストのサムプリントが、指定されたものと異なります。
ソース ホストの SSL 証明書が正しいことを確認してください。

移行先の vCenter Server 側で下記のようなエラーログが確認できます。

YYYY-MM-DDThh:mm:ss.###Z INFO upgrade_commands Creating OpsManager (Ssh based).
YYYY-MM-DDThh:mm:ss.###Z INFO networking_utils isHostReachable(): try getaddrinfo('#####', '443', 0, SocketKind.SOCK_STREAM, 6)...
YYYY-MM-DDThh:mm:ss.###Z INFO networking_utils isHostReachable(): getaddrinfo() found 1 entries (first is used):
        FAMILY: AddressFamily.AF_INET, TYPE=SocketKind.SOCK_STREAM, PROTO=6, CANONNAME=, ADDR=('###.###.###.###', 443)
YYYY-MM-DDThh:mm:ss.###Z INFO networking_utils isHostReachable() succeeded: address //#####:443 is reachable
YYYY-MM-DDThh:mm:ss.###Z ERROR transport.guestops Different thumbprint from host //#####:443: SHA thumbprint mismatch. Expected: `#####################A`, actual: `#####################B`
Traceback (most recent call last):
  File "/usr/lib/vmware/cis_upgrade_runner/libs/sdk/transport/guestops.py", line 124, in _createServiceInstance
    self.serviceInstance.RetrieveContent()
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/VmomiSupport.py", line 618, in <lambda>
    self.f(*(self.args + (obj,) + args), **kwargs)
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/VmomiSupport.py", line 391, in _InvokeMethod
    return self._stub.InvokeMethod(self, info, args)
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/SoapAdapter.py", line 1555, in InvokeMethod
    conn = self.GetConnection()
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/SoapAdapter.py", line 1643, in GetConnection
    _VerifyThumbprint(self.thumbprint, result)
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/SoapAdapter.py", line 1122, in _VerifyThumbprint
    VerifyCertThumbprint(derCert, thumbprint)
  File "/usr/lib/vmware/cis_upgrade_runner/libs/pyVmomi.zip/pyVmomi/Security.py", line 45, in VerifyCertThumbprint
    raise ThumbprintMismatchException(thumbprint, shaDigest)
pyVmomi.Security.ThumbprintMismatchException: SHA thumbprint mismatch. Expected: `#######################################A`, actual: `#######################################B`

Environment

VMware vCenter Server

Cause

アップグレードのStage1 で vCenter Server を新しくデプロイする際、vCenter Server の installer は移行元 vCenter Server の管理元の SSL 証明書を upgrade.source.ssl.thumbprint のパラメータに設定します。

ただし Proxy SSL などが設定されている環境では、installer が Stage1 で参照する SSL 証明書と Stage2 で移行先 vCenter Server が参照する SSL 証明書と異なる可能性があります。
例えば installer は ESXi ホストと通信する際には Proxy SSL による代理証明書が提示され、vCenter Server が ESXi ホストとは直接通信する場合には ESXi ホストの証明書そのものを参照する場合がこれに該当します。

この場合、証明書情報の不整合が発生し上記エラーでアップグレードが進行できません。

Resolution

移行元、移行先 vCenter Server で下記コマンドを実行し現在 vCenter Server が参照している ESXi ホスト証明書のサムプリントに upgrade.source.ssl.thumbprint を変更します。

install-parameter upgrade.source.ssl.thumbprint -s "##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:##:BB"

もし vCenter Server のエラーログで下記のような出力があった場合

pyVmomi.Security.ThumbprintMismatchException: SHA thumbprint mismatch. Expected: `####################`, actual: `00112233445566778899aabbccddeeffgghhiijj`

実行するコマンドは下記の様に大文字, : 区切りにする必要があります。

install-parameter upgrade.source.ssl.thumbprint -s "00:11:22:33:44:55:66:77:88:99:AA:BB:CC:DD:EE:FF:GG:HH:II:JJ"

Additional Information

vCenter Server upgrade Stage2 failed with "The source host thumbprint is different than the provided one"