在升级 vCenter Server Appliance 之前,必须下载 vCenter Server 安装程序 ISO 文件并将其挂载到要通过其执行升级的网络虚拟机或物理服务器。

通过其升级设备的计算机必须在满足操作系统要求的 Windows、Linux 或 Mac 操作系统上运行。请参见vCenter Server 安装程序的系统要求

在升级 vCenter Server Appliance 之前,必须准备清单中的 ESXi 主机。

升级使用外部 Platform Services ControllervCenter Server 部署之前,必须先将外部 Platform Services Controller 融合为嵌入式 Platform Services Controller,然后再执行升级。请参见知识库文章 68137

如果 vCenter Server Appliance 使用外部 Oracle 数据库,则必须确定现有数据库的大小。

如果 vCenter Server Appliance 使用外部 Update Manager 实例,则必须在运行 Update Manager 的计算机上运行 Migration Assistant。

vCenter Server 安装程序的系统要求

可以从受支持版本的 Windows、Linux 或 Mac 操作系统上运行的网络客户机运行 vCenter Server GUI 或 CLI 安装程序。

为确保 GUI 和 CLI 安装程序的最佳性能,请使用满足最低硬件要求的客户机。

表 1. GUI 和 CLI 安装程序的系统要求
操作系统 受支持的版本 确保最佳性能的最低硬件配置
Windows
  • Windows 10、11
  • Windows 2016 x64 位
  • Windows 2019 x64 位
  • Windows 2022 x64 位
4 GB RAM、2 个 2.3 GHz 四核 CPU、32 GB 硬盘、1 个网卡
Linux
  • SUSE 15
  • Ubuntu 18.04、20.04、21.10
4 GB RAM、1 个 2.3 GHz 双核 CPU、16 GB 硬盘、1 个网卡
注: CLI 安装程序要求 64 位操作系统。
Mac
  • macOS 10.15、11、12
  • macOS Catalina、Big Sur 和 Monterey
8 GB RAM、1 个 2.4 GHz 四核 CPU、150 GB 硬盘、1 个网卡
注: 对于在 Mac 10.15 或更高版本上运行的客户机,不支持使用 GUI 同时部署多个设备。必须按顺序部署设备。
注: 需要安装 Visual C++ 可再发行库,以在低于 Windows 10 的 Windows 版本上运行 CLI 安装程序。这些库的 Microsoft 安装程序位于 vcsa-cli-installer/win32/vcredist 目录中。
注: 要使用 GUI 部署 vCenter Server Appliance,分辨率至少必须为 1024x768 才能正常显示。更低的分辨率会截断 UI 元素。

下载并挂载 vCenter Server 安装程序

VMware 发布了 vCenter Server Appliance ISO 映像,其中包含 vCenter Server Appliance 的 GUI 和 CLI 安装程序。

使用包含在 vCenter Server 安装程序中的 GUI 和 CLI 可执行文件,您可以:
  • 部署 vCenter Server Appliance。
  • 升级 vCenter Server Appliance。
  • 将具有外部 Platform Services Controller 的旧版本 vCenter Server 融合到当前版本的 vCenter Server
  • 从基于文件的备份还原 vCenter Server Appliance。

前提条件

过程

  1. 登录到 VMware Customer Connect。
  2. 导航到产品和帐户 > 所有产品
  3. 找到 VMware vSphere,然后单击查看下载组件
  4. 选择版本下拉菜单中选择 VMware vSphere 版本。
  5. 选择 VMware vCenter Server 的版本,然后单击转到下载
  6. 下载 vCenter Server Appliance ISO 映像。
  7. 使用 MD5 校验和工具确认 md5sum 正确无误。
  8. 将 ISO 映像挂载到要从其部署、升级、迁移或还原设备的客户机。
    注: 不支持禁用八个以上目录级别的 ISO 挂载软件,例如,Windows 上的 MagicISO Maker。

    对于 Linux OS 和 Mac OS,不支持存档管理器。

    对于 Mac OS,您可以使用 DiskImageMounter。
    对于 Ubuntu 14.04,您可以使用 Disk Image Mounter。
    对于 SUSE 12 OS,您可以使用终端。
    $ sudo mkdir mount_dir
    $ sudo mount -o loop VMware-vCSA-all-version_number-build_number.iso mount_dir
    
    重要说明: 由于 MacOS Catalina 中的安全更改,您必须修改计算机上的安全设置,直到 vCenter Server 部署完成。如果您尝试在 MacOS Catalina 下运行安装程序而不修改安全设置,vCenter Server 安装程序会报告以下错误: ovftool cannot be opened because the developer cannot be verified。有关更多信息,请参见 KB 79416

下一步做什么

打开 readme.txt 文件并查看有关 vCenter Server Appliance ISO 映像中的其他文件和目录的信息。

同步 vSphere 网络连接上的时钟

验证 vSphere 网络上所有组件的时钟是否均已同步。如果 vSphere 网络中的物理机时钟不同步,则可能无法在网络计算机之间的通信中将时间敏感的 SSL 证书和 SAML 令牌 识别为有效。

时钟不同步可能会引起身份验证问题,从而导致安装失败或 vCenter Servervmware-vpxd 服务无法启动。

vSphere 中的时间不一致可能会导致首次引导环境中的组件在不同的服务处失败,具体取决于哪段环境时间不准确以及时间何时同步。目标 vCenter Server 的目标 ESXi 主机与 NTP 或 PTP 不同步时,通常会出现问题。同样,如果目标 vCenter Server 迁移到因 DRS 完全自动化而设置为不同时间的 ESXi 主机,也会出现问题。

要避免时间同步问题,请在安装、迁移或升级 vCenter Server 实例之前,确保以下项正确。

  • 要部署目标 vCenter Server 的目标 ESXi 主机同步到 NTP 或 PTP。

  • 运行源 vCenter Server 的 ESXi 主机同步到 NTP 或 PTP。

  • 从 vSphere 6.7 升级或迁移到 vSphere 8.0 时,如果 vCenter Server Appliance 连接到外部 Platform Services Controller,请确保运行外部 Platform Services ControllerESXi 主机同步到 NTP 或 PTP。

  • 如果从 vSphere 6.7 升级或迁移到 vSphere 8.0,请确认源 vCenter ServervCenter Server Appliance 以及外部 Platform Services Controller 的时间正确。

验证运行 vCenter Server 的任何 Windows 主机是否与网络时间协议 (Network Time Protocol, NTP) 服务器同步。请参见 VMware 知识库文章,网址为 https://kb.vmware.com/s/article/1318

要将 ESXi 时钟与 NTP 或 PTP 服务器同步,可以使用 VMware Host Client。有关编辑 ESXi 主机时间配置的信息,请参见《vSphere 单台主机管理 - VMware Host Client》文档中的“在 VMware Host Client 中编辑 ESXi 主机的时间配置”主题。

要了解如何更改 vCenter Server 的时间同步设置,请参见《vCenter Server 配置》文档中的“配置系统时区和时间同步设置”主题。

要了解如何使用 vSphere Client 编辑主机的时间配置,请参见《vCenter Server 和主机管理》文档中的“编辑主机的时间配置设置”主题。

从现有 vCenter Server Appliance 传输数据

通常在升级停机过程中进行数据传输。但是,在某些情况下,您可以选择在升级或迁移后传输部分数据,以最大限度缩短停机时间。

在以下情况下,支持在升级或迁移后传输数据:

  • 将 Windows 的 vCenter Server 迁移到 vCenter Server Appliance

  • 升级具有外部数据库的 vCenter Server 设备

    注: 升级或迁移后,只能在后台将数据从外部数据库传输到嵌入式 PostgreSQL 数据库。不支持在升级或迁移后将数据从一个嵌入式 PostgreSQL 数据库传输到另一个嵌入式 PostgreSQL 数据库。

您可以只传输升级期间正常运行所需的最少数据量。稍后,您可以将其余数据从外部数据库传输到嵌入式 PostgreSQL 数据库,从而保留部署的历史事件和性能数据。

从使用外部数据库的以下 vCenter Server 版本升级或迁移到 vCenter Server Appliance 中的嵌入式 PostgreSQL 数据库后,可以传输历史数据。

表 2. vCenter Server 数据库支持在升级或迁移后进行数据迁移
vCenter Server 版本 数据库 支持在升级或迁移后传输数据
vCenter Server Appliance 6.7 嵌入式 PostgreSQL 数据库 不受支持
适用于 Windows 的 vCenter Server 6.7 外部 Oracle 或 MS SQL 数据库 支持
嵌入式 PostgreSQL 数据库 不受支持
vCenter Server Appliance 7.0 嵌入式 PostgreSQL 数据库 不受支持
可将以下类型的数据从外部数据库迁移到 vCenter Server Appliance 版本 8.0 使用的嵌入式 PostgreSQL 数据库。
配置数据
必须至少从现有 vCenter Server Appliance 外部数据库传输此类型的数据,才能升级或迁移到正常运行的 vCenter Server Appliance 。可以在很短时间内传输此数据,从而最大限度缩短在升级到 vCenter Server 8.0 期间产生的停机时间。
配置数据和历史数据
除配置数据之外,您还可以选择传输历史数据,如使用情况统计信息、事件和任务。 vCenter Server 安装程序允许您一次性复制配置和历史数据,或者在升级过程中只复制配置数据。然后,您可以选择在启动新 vCenter Server 后在后台复制历史数据。
注意: 如果您选择一次复制所有数据,则在 vCenter Server 8.0 内将所有数据传输到嵌入式 PostgreSQL 数据库后,您才能启动 vCenter Server
配置数据、历史数据和性能衡量指标数据
这是您可以选择传输到 vCenter Server 的最大数据量。您只能在升级过程中复制配置数据,然后在升级或迁移到 vCenter Server 8.0 后在后台复制历史数据和性能数据。

监控和管理历史数据迁移过程

可以使用 vCenter Server 管理界面监控和管理在后台进行的历史数据迁移。可执行以下数据管理任务:
  • 监控数据迁移进度。
  • 暂停数据导入。
  • 取消数据导入。
    重要说明: 如果取消数据导入,历史数据将不会导入到嵌入式 PostgreSQL 数据库。如果取消数据导入操作,则无法恢复数据。如果取消数据导入并希望在稍后导入历史数据,则必须从 GUI 安装程序的第 1 阶段重新启动升级或迁移过程。

请参见监控和管理历史数据迁移过程

准备 ESXi 主机用于 vCenter Server Appliance 升级

在升级到 vCenter Server8.0 之前,必须准备好 ESXi 主机。

前提条件

要升级 vCenter Server Appliance,您的 ESXi 主机必须满足升级要求。

  • ESXi 主机必须运行版本 6.7 或更高版本。有关 ESXi 兼容性的信息,请参见《VMware 兼容性指南》
  • 源和目标 ESXi 主机不得处于锁定或维护模式,且不得属于全自动 DRS 集群。
  • 查看您的环境的证书颁发机构 (CA) 签名的 SSL 证书。要了解如何在 vSphere 环境中手动查看 CA 签名的 SSL 证书,请参见知识库文章 2111411

过程

  1. 如果您的证书是自定义或指纹证书,请参见ESXi 主机升级和证书确定准备步骤。
  2. 如果拥有 vSphere HA 集群,则必须启用 SSL 证书检查。
    如果升级 ESXi 主机时没有启用证书检查,则 vSphere HA 无法在主机上进行配置。
    1. vSphere Client 清单树中选择 vCenter Server Appliance 实例。
    2. 选择配置选项卡,然后选择设置下的常规
    3. 单击编辑
    4. 选择 SSL 设置
      验证已选中 vCenter Server 需要经过验证的主机 SSL 证书

结果

ESXi 主机已准备好执行 vCenter Server Appliance 升级。

ESXi 主机升级和证书

如果将 ESXi 主机升级到 ESXi 6.7 或更高版本,升级过程会将自签名(指纹)证书替换为 VMCA 签名证书。如果 ESXi 主机使用自定义证书,升级过程会保留这些证书,即使这些证书已过期或无效亦如此。

建议的升级工作流取决于当前证书。

使用指纹证书置备的主机

如果主机当前使用指纹证书,则在升级过程中会自动为其分配 VMCA 证书。

注: 无法使用 VMCA 证书置备旧版主机。必须将这些主机升级到 ESXi 6.7 或更高版本。

使用自定义证书置备的主机

如果主机使用自定义证书(通常是第三方 CA 签名的证书)置备,则这些证书在升级过程中将保留在原位。将证书模式更改为自定义,以确保稍后在证书刷新过程中不会意外替换证书。

注: 如果环境处于 VMCA 模式下,且您在 vSphere Client 中刷新证书,则任何现有证书将替换为 VMCA 签名的证书。

从今往后,vCenter Server 将在 vSphere Client 中监控证书并显示有关证书到期等的信息。

使用 Auto Deploy 置备的主机

对于使用 Auto Deploy 置备的主机,在其首次使用 ESXi 6.7 或更高版本软件引导时,将始终为其分配新证书。当升级使用 Auto Deploy 置备的主机时,Auto Deploy 服务器将为主机生成证书签名请求 (CSR) 并将其提交至 VMCA。VMCA 将存储主机的签名证书。Auto Deploy 服务器置备主机时,将从 VMCA 中检索证书并将其作为置备过程的一部分。

您可以将 Auto Deploy 与自定义证书配合使用。

更改 ESXi 证书模式

使用 VMware Certificate Authority (VMCA) 置备您环境中的 ESXi 主机,除非公司策略要求您使用自定义证书。要使用具有不同根 CA 的自定义证书,可以编辑 vCenter Server 高级设置 vpxd.certmgmt.mode。更改后,当您刷新证书时,将不再使用 VMCA 证书自动置备主机。您必须负责环境中的证书管理。

可以使用 vCenter Server 高级设置更改为指纹模式或自定义 CA 模式。只能将指纹模式用作后备选项。

过程

  1. vSphere Client 中,选择管理主机的 vCenter Server 系统。
  2. 单击配置,然后在“设置”下,单击高级设置
  3. 单击编辑设置
  4. 单击“名称”列中的筛选器图标,然后在“筛选器”框中输入 vpxd.certmgmt 以仅显示证书管理参数。
  5. 如果要管理自己的证书,请将 vpxd.certmgmt.mode 的值更改为自定义;如果要临时使用指纹模式,请将该值更改为指纹,然后单击保存
  6. 重新启动 vCenter Server 服务。
    有关重新启动服务的信息,请参见 《vCenter Server 配置》文档。

确定新设备的 Oracle 数据库大小和存储大小

在 Windows 上升级 vCenter Server Appliance 或迁移 vCenter Server(使用外部 Oracle 数据库)之前,必须确定现有数据库的大小。根据现有数据库的大小,您可以使用嵌入式 PostgreSQL 数据库计算新 vCenter Server Appliance 数据库的最小存储大小。

运行脚本以确定 Oracle 核心表大小、事件和任务表大小以及统计表大小。Oracle 核心表对应于 PostgreSQL 数据库的数据库 (/storage/db) 分区。Oracle 事件和任务表以及统计表对应于 PostgreSQL 数据库的统计信息、事件、警报和任务 (/storage/seat) 分区。

在设备升级期间,为新设备选择的存储大小必须至少是 Oracle 表大小的两倍。

在设备升级期间,可以选择传输到新设备的数据的类型。要达到新设备的最短升级时间和最低存储要求,可选择仅传输配置数据。

前提条件

您必须具有 vCenter Server 数据库登录凭据。

过程

  1. 使用 vCenter Server 数据库用户登录到 SQL*Plus 会话。
  2. 通过运行以下脚本确定核心表大小。
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
      FROM   user_segments s
      WHERE  (s.segment_name,s.segment_type)
                    IN (SELECT seg_name, seg_type FROM
                             (SELECT t.table_name seg_name, t.table_name tname,
                               'TABLE' seg_type
                               FROM   user_tables t
                              UNION
                              SELECT i.index_name, i.table_name,
                              'INDEX'
                               FROM   user_indexes i
                             ) ti
                        WHERE  (ti.tname LIKE 'VPX_%'
                                OR ti.tname LIKE 'CL_%'
                                OR ti.tname LIKE 'VDC_%')
                            AND ti.tname NOT LIKE 'VPX_SAMPLE_TIME%'
                            AND ti.tname NOT LIKE 'VPX_HIST_STAT%'
                            AND ti.tname NOT LIKE 'VPX_TOPN%'
                            AND ti.tname NOT LIKE 'VPX_SDRS_STATS_VM%'
                            AND ti.tname NOT LIKE 'VPX_SDRS_STATS_DATASTORE%'
                            AND ti.tname NOT LIKE 'VPX_TASK%'
                            AND ti.tname NOT LIKE 'VPX_EVENT%'
                            AND ti.tname NOT LIKE 'VPX_PROPERTY_BULLETIN%');
    该脚本返回数据库存储大小 (MB)。
  3. 通过运行以下脚本确定事件和任务表大小。
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
    FROM   user_segments s
    WHERE  (s.segment_name,s.segment_type)
                 IN (SELECT seg_name, seg_type FROM
                          (SELECT t.table_name seg_name, t.table_name tname,
                            'TABLE' seg_type
                            FROM   user_tables t
                           UNION
                           SELECT i.index_name, i.table_name,
                           'INDEX'
                            FROM   user_indexes i
                          ) ti
                     WHERE
                        ti.tname LIKE 'VPX_TASK%'
                     OR ti.tname LIKE 'VPX_EVENT%');
    该脚本返回事件和任务存储大小 (MB)。
  4. 通过运行以下脚本确定统计表大小。
    SELECT ROUND(SUM(s.bytes)/(1024*1024)) SIZE_MB
    FROM   user_segments s
    WHERE  (s.segment_name,s.segment_type)
                 IN (SELECT seg_name, seg_type FROM
                          (SELECT t.table_name seg_name, t.table_name tname,
                            'TABLE' seg_type
                            FROM   user_tables t
                           UNION
                           SELECT i.index_name, i.table_name,
                           'INDEX'
                            FROM   user_indexes i
                          ) ti
                     WHERE
                        ti.tname LIKE 'VPX_SAMPLE_TIME%'
                     OR ti.tname LIKE 'VPX_TOPN%'
                     OR ti.tname LIKE 'VPX_TASK%'
                     OR ti.tname LIKE 'VPX_EVENT%'
                     OR ti.tname LIKE 'VPX_HIST_STAT%');
    该脚本返回统计存储大小 (MB)。
  5. 计算要在升级期间部署的新设备的最小存储大小。
    1. 嵌入式 PostgreSQL 数据库的数据库 (/storage/db) 分区大小必须至少是在步骤 2 中返回的 Oracle 核心表大小的两倍。
    2. 嵌入式 PostgreSQL 数据库的统计信息、事件、警报和任务 (/storage/seat) 分区大小必须至少是在步骤 3步骤 4 中返回的 Oracle 事件和任务表以及统计表大小之和的两倍。
    例如,如果 Oracle 核心表为 100 MB,事件和任务表为 1,000 MB,且统计表为 2,000 MB,则 Postgres /storage/db 分区必须至少为 200 MB,而 /storage/seat 分区必须至少为 6,000 MB。

在源 Update Manager计算机上下载并运行 VMware Migration Assistant

在升级使用外部 Update ManagervCenter Server Appliance 过程中,Migration Assistant 必须在源Update Manager 计算机上运行。此过程说明如何在升级之前手动下载和运行 Migration Assistant

Migration Assistant可加快将 Update Manager 服务器和数据库迁移到新升级的 vCenter Server Appliance 的过程。默认情况下, Migration Assistant使用端口 9123。如果您的 Update Manager计算机上的其他服务使用了端口 9123, Migration Assistant 将自动查找其他可用端口来使用。

或者,如果您计划使用 CLI 安装程序来升级 vCenter ServerAppliance,则可以在 JSON 模板中添加 source.vum section 部分和run.migration.assistant 子部分。有关 CLI 升级配置参数的信息,请参见vCenter Server Appliance 的 CLI 升级的升级配置参数

前提条件

过程

  1. vCenter ServerAppliance 安装程序包中,将 migration-assistant 目录复制到源 Update Manager 计算机。
  2. migration-assistant 目录中,双击 VMware-Migration-Assistant.exe 并提供 vCenter Single Sign-On 管理员密码。
  3. 使 Migration Assistant 窗口保持打开状态,直到 vCenter ServerAppliance 的升级完成为止。

结果

完成预检查并解决所有错误之后,源 Update Manager系统已准备好进行升级。

小心: 关闭 Migration Assistant 窗口会导致升级过程停止。