如何重新指向和重新注册 vCenter Server 5.1/5.5 及组件
search cancel

如何重新指向和重新注册 vCenter Server 5.1/5.5 及组件

book

Article ID: 338879

calendar_today

Updated On:

Products

VMware vCenter Server

Issue/Introduction

Symptoms:

免责声明:本文为 How to repoint and re-register vCenter Server 5.1 / 5.5 and components (2033620) 的翻译版本。尽管我们会不断努力为本文提供最佳翻译版本,但本地化的内容可能会过时。有关最新内容,请参见英文版本。



注意:本文特定于 VMware vCenter Server 5.1 和 5.5。如果使用的是 vCenter Server Appliance 5.5,请参见 Re-pointing and re-registering VMware vCenter Server Appliance 5.5.x and components (2094888)

在对 VMware vSphere 部署拓扑图进行特定更改后,您可能需要将 vCenter Server 组件重新指向或重新注册到 vCenter Inventory Service 或 vCenter Single Sign-On 及 vCenter Lookup Service,以确保这些组件可继续进行通信。

注意:请先生成 vCenter Server 快照或备份,然后再继续。如果在单独的系统中安装了 vCenter Single Sign-On、vCenter Inventory Service、vSphere Web Client 及其他服务,则还需生成这些系统的快照或备份。


注意:密码问题会导致重新指向操作失败。有关详细信息,请参见 vSphere 5.5 Single Sign-On [email protected] password issues (2060637)

如果 vCenter Single Sign-On 实例失败或损坏,则任何关联的 vCenter Server、Inventory Service 实例和 vSphere Web Client 实例都将无法访问 vSphere。在这种情况下,提供了以下几种选择:
注意:重定位 vCenter Server 实例或对 vCenter Inventory Service 进行更改时,您必须向 vCenter Inventory Service 重新注册 vCenter Server。


Environment

VMware vCenter Server 5.5.x
VMware vCenter Server 5.1.x

Resolution

如果您正在对失败的 Single Sign-On 实例做出响应,请按顺序执行以下步骤:

  1. 移除 Inventory Service 帐户

    注意:仅当您正在向 vCenter Inventory Service 最初注册到的同一 Single Sign-On 实例重新注册 vCenter Inventory Service 时,才需要执行此步骤。
  2. 向 vCenter Single Sign-On 重新注册 vCenter Inventory Service
  3. 向其他 vCenter Single Sign-On 实例注册 vCenter Server
  4. 向 Inventory Service 重新注册 vCenter Server
  5. 向其他 vCenter Single Sign-On 实例注册 vSphere Web Client
  6. 移除未使用的 Single Sign-on 节点
注意:如果 vCenter Server 与另一 vCenter Server 处于链接模式,请先取消其链接,然后再继续执行本文中的任何步骤。要取消链接 vCenter Server,请参见 Disabling Linked Mode for VMware vCenter Server 4.x and 5.x (1010432)

移除 Inventory Service 帐户


仅当您向 vCenter Inventory Service 最初注册到的同一 Single Sign-On 实例重新注册 Inventory Service 时,才需要执行此步骤。向同一 Single Sign-On 实例重新注册 Inventory Service 时,必须先从 Single Sign-On 应用程序用户中移除 Inventory Service 帐户。否则,重新注册将失败并出现AlreadyRegistered错误。

要移除 Inventory Service 帐户,请执行以下操作:
  1. 在 vSphere Web Client 中,转到系统管理
  2. SSO 用户和组 中,单击应用程序用户
  3. 删除 Inventory Service 帐户。

向 vCenter Single Sign-On 重新注册 vCenter Inventory Service

在 vCenter Inventory Service 安装或升级期间,将向 vCenter Single Sign-On 实例注册 Inventory Service,且 Inventory Service 将存储 vCenter Single Sign-On 实例的位置。重定位 vCenter Single Sign-On 实例或切换到其他 Single Sign-On 实例时,更新相应的 Inventory Service 实例。如果 Single Sign-On 实例失败或损坏,还可以使用此步骤将 Inventory Service 重新指向其他 Single Sign-On 实例。

如果其中任意实体发生更改,则使用以下项向 vCenter Single Sign-On 重新注册 Inventory Service:
  • vCenter Single Sign-On 实例的 IP 地址
  • vCenter Inventory Service 主机 DNS 或 IP 地址
  • vCenter Inventory Service 证书
注意:如果您正在向同一 Single Sign-On 实例重新注册 Inventory Service,则必须先从 Single Sign-On 应用程序用户中移除 Inventory Service 帐户。有关详细信息,请参见本文的移除 Inventory Service 帐户部分。

要向 vCenter Single Sign-On 重新注册 Inventory Service,请执行以下操作:
  1. 在 Inventory Service 主机上打开命令提示符。

  2. 将目录更改为:

    C:\Program Files\VMware\Infrastructure\Inventory Service\scripts

    注意
    • 如果 vCenter Inventory Service 的安装位置不同于默认C:\Program Files\,请调整该路径。
    • 通常,短名称未被禁用。但是,如果您已在系统上禁用短名称,或者已针对 Inventory Service 和 vCenter Server 的安装文件夹移除短名称,请执行以下步骤:

      1. 使用文本编辑器打开regTool.cmd文件。regTool.cmd文件的位置如下:

        installation_path\Inventory Service\sso

      2. 在以set LOG4J_CONF=开头的行中,使用引号将%TOOL_DIR%引起来:

        "%TOOL_DIR%"

        注意:如果命令失败,请在不加引号的情况下重试。

      3. 保存并关闭文件。

  3. 运行is-change-sso.bat命令更新 Inventory Service 的存储配置信息:

    is-change-sso.batssoServerUrl"ssoAdminuser" "ssoAdminPassword"

    使用以下示例作为模型:

    在 vCenter Server 5.1 中:

    is-change-sso.bat https://machinename.corp.com:7444/lookupservice/sdk "admin@System-Domain" "SSO_pw1@"

    在 vCenter Server 5.5 中:

    is-change-sso.bat https://machinename.corp.com:7444/lookupservice/sdk "[email protected]" "SSO_pw1@"

    在本例中,7444 是 vCenter Single Sign-On 的默认 HTTPS 端口号。如果您使用自定义端口,请将示例中的端口号替换为您使用的端口号。需要使用引号对 Single Sign-On 用户名和密码中的特殊字符进行转义。

  4. 重新启动 Inventory Service:

    net stop vimQueryService
    net start vimQueryService
vCenter Inventory Service URL 配置现已更新,且已向 vCenter Single Sign-On 重新注册 Inventory Service。

注意:如果您正在向同一 Single Sign-On 实例重新注册 Inventory Service,则还必须向 Inventory Service 重新注册 vCenter Server。有关详细信息,请参见本文中的向 Inventory Service 重新注册 vCenter Server部分。

向其他 vCenter Single Sign-On 实例注册 vCenter Server

在安装或升级期间,将针对 vCenter Single Sign-On 实例向 Lookup Service 注册 vCenter Server。您可以为其他 Single Sign-On 实例更改此类向 Lookup Service 的注册。如果原始 Single Sign-On 实例失败,或者如果您添加新的 Single Sign-On 节点并希望将 vCenter Server 与新节点关联,则可以向其他 vCenter Single Sign-On 实例注册 vCenter Server。

注意:向新 Single Sign-On 实例注册 vCenter Server 时,您将失去以下权限:
  • 为来自 Single Sign-On 系统标识源的用户创建的所有权限
  • 为来自新的 Single Sign-On 实例中不存在的标识源的用户授予的所有权限
  • 为本地操作系统用户授予的所有权限
要向其他 vCenter Single Sign-On 实例注册 vCenter Server,请执行以下操作:
  1. 以管理员身份在 vCenter Server 主机上打开命令提示符。

  2. 将目录更改为:

    C:\Program Files\VMware\Infrastructure\VirtualCenter Server\ssoregtool

    注意:如果 vCenter Server 的安装位置不是默认C:\Program Files\文件夹,请调整该路径。此外,在repoint.cmd文件中,请确保JAVA_HOME指向正确的 vCenter Server 安装位置。

  3. 解压sso_svccfg.zip文件。

    注意:最佳做法是将这些文件解压到新的文件夹,并在执行下一步之前将目录切换到该新的文件夹。

  4. 运行以下命令以向其他 Single Sign-On 实例注册 vCenter Server:

    repoint.cmd configure-vc --lookup-serverlookup_service_url--usersingle_sign_on_admin_user--passwordsingle_sign_on_admin_password--openssl-path "path_to_OpenSSL_bin_directory/"

    注意:如果 vCenter Server 的安装位置不同于默认位置,则必须将以下选项添加到re-point命令:

    --vc-install-dir "path_to_vCenter_Server_install_directory"

    openssl-path路径必须用引号括起来,并后跟一个尾部正斜杠。使用新的 Lookup Service 和 Single Sign-On 证书更新信任存储时需要openssl-path参数。如果您未提供它,该命令将成功执行,但必须手动更新证书信任存储。有关为 vCenter Server 组件更新证书存储的详细信息,请参见 Implementing CA signed SSL certificates with vSphere 5.1 (2034833)

    使用以下示例作为模型:

    在 vCenter Server 5.1 中:

    repoint.cmd configure-vc --lookup-server https://machinename.corp.com:7444/lookupservice/sdk --user "admin@System-Domain" --password "SSO_pw1@" --openssl-path "C:\Program Files\VMware\Infrastructure\Inventory Service\bin/"

    在 vCenter Server 5.5 中:

    repoint.cmd configure-vc --lookup-server https://machinename.corp.com:7444/lookupservice/sdk --user "[email protected]" --password "SSO_pw1@" --openssl-path "C:\Program Files\VMware\Infrastructure\Inventory Service\bin/"

    在本例中,7444 是 vCenter Single Sign-On 的默认 HTTPS 端口号。如果您使用自定义端口,请将示例中的端口号替换为您使用的端口号。需要使用引号对 Single Sign-On 用户名和密码中的特殊字符进行转义。

    注意
    • 如果收到错误The system cannot find the path specified,请验证repoint.cmd脚本中设置的JAVA_HOME位置:

      对于 vSphere 5.1,将其设置为:

      C:\Program Files\VMware\Infrastructure\jre

      如果此 JRE 文件夹不存在,请检查C:\Program Files\VMware\Infrastructure\jre1是否存在,如果存在,请更新脚本以指向正确的JAVA_HOME位置并重试该命令。

      对于 vSphere 5.5,将其设置为:

      C:\Program Files\Common Files\VMware\VMware vCenter Server - Java Components\

      例如,将

      set JAVA_HOME=blank

      更改为

      set JAVA_HOME=C:\Program Files\Common Files\VMware\VMware vCenter Server - Java Components\

    • 如果收到此错误:

      Abnormal command failure: exception 'Cannot locate configuration source C:\Program Files\VMware\Infrastructure\VirtualCenter Server\ssoregtool\vcsso.properties'

      请创建文件夹结构C:\Program Files\VMware\Infrastructure\VirtualCenter Server\ssoregtool并将vcsso.properties文件复制到ssoregtool文件夹。

    • 如果 VMware Inventory Service 位于单独的服务器上,请复制C:\Program Files\VMware\Infrastructure\Inventory Service\.中的bin文件夹。该命令现在如下所示:

      repoint.cmd configure-vc --lookup-server https://machinename.corp.com:7444/lookupservice/sdk --user "[email protected]" --password "SSO_pw1@" --openssl-path "C:\<path to copied bin folder>\bin/"

    • 如果收到错误InternalError / 254,请参见 Repointing VMware vCenter Server to vCenter Single Sign-On fails with InternalError / 254 (2083179)

  5. 重新启动 VMware VirtualCenter ServerVMware VirtualCenter Management Webservices 服务:

    1. 在“管理工具”控制面板中,单击服务
    2. 右键单击 VMware VirtualCenter Server,然后单击重新启动
    3. 右键单击 VMware VirtualCenter Management Webservices,然后单击重新启动
现在,已向新的 Single Sign-On 实例注册了 vCenter Server。

向 Inventory Service 重新注册 vCenter Server

在安装或升级期间,将向 vCenter Inventory Service 注册 vCenter Server,且 Inventory Service 将存储 vCenter Server 的位置。重定位 vCenter Server 实例或对 vCenter Inventory Service 进行更改时,您必须更新相应的 Inventory Service 实例。

如果以下任何实体发生更改,请向 vCenter Server 重新注册 Inventory Service:
  • vCenter Inventory Service 证书
  • vCenter Server IP 地址或主机名
  • vCenter Inventory Service 地址或主机名
如果在相同计算机上重新安装 Inventory Service 且以下任何条件适用,则还必须向 Inventory Service 重新注册 vCenter Server:
  • 在重新安装期间覆盖 Inventory Service 数据库
  • 使用不同路径将 Inventory Service 重新安装到安装目录
  • 更改 Inventory Service 端口号
要向 Inventory Service 重新注册 vCenter Server,请执行以下操作:
  1. 打开命令提示符。
  2. 将目录更改为:

    C:\Program Files\VMware\Infrastructure\VirtualCenter Server\isregtool

    注意:如果 vCenter Server 的安装位置不是默认C:\Program Files\,请调整该路径。

  3. 运行register-is.bat命令更新 Inventory Service 的存储配置信息:

    register-is.batvCenter_Server_URL Inventory_Service_URL Lookup_Service_URL

    使用以下示例作为模型:

    register-is.bat https://machinename.corp.com:443/sdk https://machinename.corp.com:10443 https://machinename.corp.com:7444/lookupservice/sdk

    在本例中,443、10443 和 7444 分别是 vCenter Server、Inventory Service 和 vCenter Single Sign-On 的默认 HTTPS 端口号。如果您使用自定义端口,请将示例中的端口号替换为您使用的端口号。应为machinename.corp.com使用服务器 FQDN,而不是 IP 地址。如果使用了 IP 地址,您可能会看到SslHandshakeFailed=1错误。

  4. 重新启动 vCenter Server。
vCenter Inventory Service URL 配置现已更新,且已向 Inventory Service 重新注册了 vCenter Server。

向其他 vCenter Single Sign-On 实例注册 vSphere Web Client

将针对 vCenter Single Sign-On 实例向 Lookup Service 注册 vSphere Web Client。 如果 Single Sign-On 实例失败或发生更改,则可能需要向其他 vCenter Single Sign-On Lookup Service 注册 vSphere Web Client。

如果 vCenter Single Sign-On 服务器失败或损坏,可以安装新的 Single Sign-On 实例,并向该新的 Single Sign-On 实例注册 vSphere Web Client。或者,可以安装新的 vSphere Web Client,并将其注册到新的 Single Sign-On 实例。有关详细信息,请参见 VMware vSphere 5.5 Installation and Setup guide

如果将 vCenter Server 和 vCenter Inventory Service 从失败的 Single Sign-On 实例重新指向其他现有的 Single Sign-On 实例,则可以使用已向该失败的 Single Sign-On 实例注册的 vSphere Web Client。

要向其他 vCenter Single Sign-On Lookup Service 注册 vSphere Web Client,请执行以下操作:
  1. 打开命令提示符。

  2. 将目录更改为:

    C:\Program Files\VMware\Infrastructure\vSphereWebClient\scripts

    注意:如果 vSphere Web Client 的安装位置不是默认C:\Program Files\,请调整该路径。

  3. 运行client-repoint.bat命令向其他 vCenter Single Sign-On 和 Lookup Service 注册 vSphere Web Client:

    client-repoint.batlookup_service_url"single_sign_on_admin_user" "single_sign_on_admin_password"

    使用以下示例作为模型:

    对于 vCenter Server 5.1:

    client-repoint.bat https://machinename.corp.com:7444/lookupservice/sdk "admin@System-Domain" "SSO_pw1@"

    对于 vCenter Server 5.5:

    client-repoint.bat https://machinename.corp.com:7444/lookupservice/sdk "[email protected]" "SSO_pw1@"

    在本例中,7444 是 vCenter Single Sign-On 的默认 HTTPS 端口号。如果您使用自定义端口,请将示例中的端口号替换为您使用的端口号。需要使用引号对 Single Sign-On 用户名和密码中的特殊字符进行转义。

现在,已向 vCenter Single Sign-On and Lookup Service 注册了 vSphere Web Client。

注意:如果执行前面的步骤后 vCenter Server 无法启动,请参见 VMware vCenter Server 5.1/5.5 fails to start after re-registering with vCenter Single Sign-On (2048753)

移除未使用的 Single Sign-on 节点

注意:如果将 Single Sign-On 从嵌入式节点迁移到外部节点,则需要卸载嵌入式 Single-Sign on。

要移除未使用的 Single Sign-On 实例,请从“程序和功能”卸载 vCenter Single Sign-On。


Additional Information

How to repoint and re-register vCenter Server 5.1 / 5.5 and components