运行 CLI 命令升级 vCenter ServerAppliance 之前,必须准备包含升级规范的配置参数及其值的 JSON 文件。
vCenter Server安装程序包含所有升级类型的 JSON 模板。有关模板的信息,请参见vCenter Server Appliance 的 CLI 升级的 JSON 模板。
通过将值设置为适用于您的规范的 JSON 模板中的配置参数,您可以使用最少配置升级设备。可以编辑预设值、移除配置参数,并为自定义配置添加配置参数。
有关配置参数及其描述的完整列表,请导航到操作系统的安装程序子目录并运行 vcsa-deploy upgrade --template-help命令,或者参见vCenter Server Appliance 的 CLI 升级的升级配置参数。
前提条件
- 您必须熟悉 JSON 语法。
- 下载并挂载 vCenter Server 安装程序。
过程
下一步做什么
您可以根据升级规范的需要创建并保存其他模板。
vCenter Server Appliance 的 CLI 升级的 JSON 模板
vCenter Server Appliance 安装程序包含一些 JSON 模板,这些模板位于 vcsa-cli-installer/templates 目录中。在 upgrade 子文件夹中,您可以找到 JSON 模板,这些模板包含所有升级类型的最少配置参数。
每种升级类型有一个模板用于在 ESXi 主机上部署新设备,还有另一个模板用于在 vCenter Server 实例上部署新设备。
位置 | 模板 | 描述 |
---|---|---|
vcsa-cli-installer\templates\upgrade\vcsa\6.7 | embedded_vCSA_on_ESXi.json | 包含在 ESXi 主机上将具有嵌入式 Platform Services Controller 部署的 vCenter Server Appliance 6.7 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 |
embedded_vCSA_on_VC.json | 包含在 vCenter Server 实例上将具有嵌入式 Platform Services Controller 部署的 vCenter Server Appliance 6.7 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 | |
vCSA_on_ESXi.json | 包含在 ESXi 主机上将具有外部 Platform Services Controller 部署的 vCenter Server Appliance 6.7 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 | |
vCSA_on_VC.json | 包含在 vCenter Server 实例上将具有外部 Platform Services Controller 部署的 vCenter Server Appliance 6.7 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 | |
vcsa-cli-installer\templates\upgrade\vcsa\7.0 | embedded_vCSA_on_ESXi.json | 包含在 ESXi 主机上将具有嵌入式 Platform Services Controller 部署的 vCenter Server Appliance 7.0 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 |
embedded_vCSA_on_VC.json | 包含在 vCenter Server 实例上将具有嵌入式 Platform Services Controller 部署的 vCenter Server Appliance 7.0 升级到 vCenter Server Appliance 8.0 所需的最少配置参数。 |
关于使用 CLI 升级具有外部 Platform Services Controller部署的 vCenter Server
升级使用外部 Platform Services Controller的 vCenter Server Appliance 时,会将其转换为在设备中嵌入这些服务部署的vCenter Server 实例。因此,必须在 JSON 升级模板中指定复制合作伙伴参数。
- SSO 域中的单个 vCenter Server和单个 Platform Services Controller 实例。
- 包含多个 vCenter Server的 SSO 域中的第一个 vCenter Server 和 Platform Services Controller 实例。
- 复制 SSO 域中的 vCenter Server和 Platform Services Controller 实例,并且必须将这些实例指向作为复制合作伙伴的现有 vCenter Server 7.0 实例。
使用外部 Platform Services Controller的部署通常称为 MxN 部署,其中 M 表示 vCenter Server,N 表示外部Platform Services Controller。在表示域中的多个 vCenter Server和 Platform Services Controller 实例时,此部署表示为 MnxNn,其中 n 是实例的数量。例如,M2xN2表示同一域中的两个 vCenter Server 实例和两个Platform Services Controller 实例。升级此类部署时,首先要将一个实例升级到版本 8.0,然后将第二个实例升级到 8.0,并将两个实例中的第一个实例指定为复制合作伙伴。
JSON 升级模板中的复制参数为 first_instance
和 replication_partner_hostname
,位于模板的 sso
部分中。
参数名 | 描述 |
---|---|
first_instance |
first_instance 参数将 vCenter Server 标识为 vCenter Server SSO 域中的第一个实例,或者将其标识为复制合作伙伴。 如果它是第一个 vCenter Server实例,请将 |
replication_partner_hostname * |
如果将 |
-
在 ESXi上升级时使用
vCSA_on_ESXi.json
模板,或者在 vCenter Server 部署上升级时使用vCSA_on_VC.json
模板,升级拓扑中的 vCenter Server 实例。 -
对于包含单个 vCenter Server和 Platform Services Controller( M1xN1 部署)的部署拓扑,请编辑模板的
sso
部分,以便将first_instance
参数设置为true
,并移除replication_partner_hostname
参数。"sso": { "__comments": [ This is the first instance (M1) vCenter Server management node, with "first_instance" set to "true" and "replication_partner_hostname" removed. ], "first_instance": true }
- 在 JSON 模板中指定其余升级配置参数,并使用 CLI 将 vCenter Server升级到版本8.0。请参见使用 CLI 升级 vCenter ServerAppliance。
- 成功升级 vCenter Server后,取消配置Platform Services Controller。请参见取消配置 Platform Services Controller。
重要说明: 仅在升级和融合拓扑中的所有 vCenter Server实例后,才取消配置 Platform Services Controller 实例。
-
在 ESXi上升级时使用
vCSA_on_ESXi.json
模板,或者在 vCenter Server 部署上升级时使用vCSA_on_VC.json
模板,升级部署中的 vCenter Server 实例。 -
对于第一个 vCenter Server实例 ( M1),编辑模板的
sso
部分,以便将first_instance
参数设置为true
,并移除replication_partner_hostname
参数。"sso": { "__comments": [ This is the first instance (M1) vCenter Server management node, with "first_instance" set to "true" and "replication_partner_hostname" removed. ], "first_instance": true }
-
对于其余 vCenter Server实例 ( M2),编辑模板的
sso
部分,以便将first_instance
参数设置为false
,并提供要将第二个节点复制到的 vCenter Server 实例的 FQDN 或 IP 地址。复制合作伙伴是您升级到版本 8.0的第一个 vCenter Server 实例 ( M1),该实例已与其 Platform Services Controller 实例融合。"sso": { "__comments": [ This is the second instance (M2) vCenter Server management node, with "first_instance" set to "false" and "replication_partner_hostname" set to the hostname of the replication partner.], "first_instance": false, "replication_partner_hostname": "FQDN_or_IP_address"
- 在 JSON 模板中指定其余升级配置参数,然后使用 CLI 完成升级。请参见使用 CLI 升级 vCenter ServerAppliance。
- 成功升级拓扑中的所有 vCenter Server实例后,取消配置Platform Services Controller 实例。请参见取消配置 Platform Services Controller。
重要说明: 仅在升级和融合拓扑中的所有 vCenter Server实例后,才取消配置 Platform Services Controller 实例。
vCenter Server Appliance 的 CLI 升级的升级配置参数
为 CLI 升级准备 JSON 配置文件时,您必须设置参数和值,提供升级 vCenter Server Appliance 所需的输入数据。
JSON 升级文件中的配置参数的部分和子部分
用于 CLI 升级的 JSON 配置文件中的配置参数按部分和子部分进行组织。
部分 | 子部分 | 描述 |
---|---|---|
new_vcsa - 描述要部署的新设备。 |
esxi |
仅当要直接在 ESXi 主机上部署新设备时才应使用。 |
vc |
仅当要在 vCenter Server 实例清单上部署新设备时才应使用。 包含描述目标 ESXi 主机或 vCenter Server 清单的 DRS 集群的配置参数。请参见
注: 您必须填充此子部分或
esxi 子部分。
目标 vCenter Server 实例不能是要升级的 vCenter Server Appliance。在这种情况下,请使用 |
|
appliance |
包含描述新设备的配置参数。请参见new_vcsa 部分的 appliance 子部分中的配置参数 |
|
os |
仅包含 ssh_enable 配置参数,用来在新设备上设置 SSH 管理员登录。 |
|
ovftool_arguments |
可选。使用此子部分可以将任意参数及其值添加到安装程序所生成的 OVF Tool 命令。
重要说明:
vCenter Server Appliance 安装程序不验证
ovftool_arguments 子部分中的配置参数。如果设置了 OVF Tool 无法识别的参数,部署可能会失败。
|
|
temporary_network |
包含描述新设备的临时网络设置的配置参数。请参见new_vcsa 部分的 temporary_network 子部分中的配置参数 |
|
user_options |
仅包含 vcdb_migrateSet 配置参数,用来设置要从旧设备传输到新设备的数据类型。请参见new_vcsa 部分的 user_options 子部分中的配置参数 |
|
source_vc - 描述要升级的现有设备。 |
managing_esxi_or_vc |
包含配置参数,用于描述要升级的设备驻留在的源 ESXi 主机或 vCenter Server Appliance 实例。请参见 source_vc 部分的 managing_esxi_or_vc 子部分中的配置参数。 |
vc_vcsa |
包含描述要升级的源设备的配置参数。请参见 source_vc 部分的 vc_vcsa 子部分中的配置参数。 |
|
source_vum - 描述源 VMware Update Manager 实例。 要在 VMware Update Manager 实例上自动运行 Migration Assistant 时应使用。 |
run_migration_assistant |
如果要升级的源 vCenter Server Appliance 已连接到在 Windows 虚拟机上运行的 VMware Update Manager 实例,则是可选的。仅当要在源 VMware Update Manager 实例上自动运行 Migration Assistant 时才应使用此子部分。 包含描述将迁移到新的已升级 vCenter Server Appliance 的源 VMware Update Manager 实例的配置参数。请参见
注: 默认情况下,
Migration Assistant 使用端口 9123。如果端口 9123 已由
Update Manager 计算机上的其他服务使用,
Migration Assistant 将自动查找其他可用端口。无法为
Migration Assistant 设置自定义端口。
|
ceip - 描述是否加入 VMware 客户体验提升计划 (CEIP)。 |
settings |
仅包含 仅当要升级具有嵌入式 Platform Services Controller 部署或 Platform Services Controller 设备的 vCenter Server Appliance 时才需要。
注: 如果
ceip_enabled 配置参数设置为
true ,则必须使用
--acknowledge-ceip 参数运行 CLI 部署命令。
有关 CEIP 的信息,请参见《vCenter Server 和主机管理》中的“配置客户体验提升计划”一节。 |
要设置包含反斜杠 (\) 或引号 (") 字符的值,必须在该字符之前附加反斜杠 (\) 字符。例如,"password":"my\"password"
可设置密码 my"password,"image":"G:\\vcsa\\VMware-vCenter-Server-Appliance-8.0.0.XXXX-YYYYYYY_OVF10.ova"
可设置路径 G:\vcsa\VMware-vCenter-Server-Appliance-8.0.0.XXXX-YYYYYYY_OVF10.ova。
Boolean 值必须仅包含小写字符。可以是 true
或 false
。例如,"ssh_enable":false
。
new_vcsa
部分中的配置参数
名称 | 类型 | 描述 |
---|---|---|
hostname |
string | 要在其上部署新设备的目标 ESXi 主机的 IP 地址或 FQDN。 |
username |
string | 对目标 ESXi 主机具有管理特权的用户名,例如 root。 |
password |
string | 对目标 ESXi 主机具有管理特权的用户的密码。 |
deployment_network |
string | 要将新设备连接到的网络的名称。 网络必须属于目标 ESXi 主机或 vCenter Server Appliance 实例(如
注: 必须可从要升级的设备所在的源
ESXi 主机或
vCenter Server Appliance 实例(如
managing_esxi_or_vc 配置参数所标识)访问该网络。该网络必须还可以从执行升级的客户机访问。
如果目标 ESXi 主机仅具有一个网络,则忽略此参数。 |
datastore |
string | 要将新设备的虚拟机配置文件和虚拟磁盘存储到的数据存储的名称。 该数据存储必须对目标 ESXi 主机可用。
注: 该数据存储必须具有至少 25 GB 的可用空间。
|
port |
integer | 目标 ESXi 主机的 HTTPS 反向代理端口。 默认端口为 443。仅当目标 ESXi 主机使用自定义 HTTPS 反向代理端口时才应使用。 |
ssl_certificate_verification |
string | CLI 将验证服务器的安全证书是否由证书颁发机构 (Certificate Authority, CA) 签名,并建立安全连接。如果证书是自签名证书,则 CLI 会停止升级,除非您指定以下 SSL 证书配置选项之一: 指定安全哈希算法 1 (Secure Hash Algorithm 1, SHA-1) 证书指纹。证书指纹是一个十六进制字符串,用于唯一地标识证书。指纹使用指纹算法根据证书的内容计算而得。 "thumbprint": "certificate SHA-1 thumbprint" 将 "verification_mode": "NONE" 如果您使用自签名证书连接到服务器,并且未指定 SHA-1 证书指纹或者未将验证模式设置为 您还可以使用 vcsa-deploy upgrade 命令参数 |
名称 | 类型 | 描述 |
---|---|---|
hostname |
string | 要在其上部署新设备的目标 vCenter Server 实例的 IP 地址或 FQDN。 |
username |
string | 目标 vCenter Server 实例上的 vCenter Single Sign-On 管理员用户名,例如 [email protected]。 |
password |
string | 目标 vCenter Server 实例上的 vCenter Single Sign-On 管理员用户的密码。 |
deployment_network |
string | 要将新设备连接到的网络的名称。 该网络必须是目标 ESXi 主机或 DRS 集群网络配置的一部分。
注: 必须可从要升级的设备所在的源
ESXi 主机访问该网络。该网络必须还可以从执行升级的客户机访问。
如果目标 ESXi 主机或 DRS 集群只有一个网络,则忽略此参数。 |
datacenter |
array | 包含要在其上部署新设备的目标 ESXi 主机或 DRS 集群的 vCenter Server 数据中心。
如果数据中心位于文件夹或文件夹结构中,请将值指定为逗号分隔的字符串列表。例如,
["parent_folder", "child_folder", "datacenter_name"] 如果数据中心上没有任何文件夹路径,则仅使用数据中心名称。例如, ["datacenter_name"]或 "datacenter_name"
注: 值区分大小写。
|
datastore |
string | 要将新设备的所有虚拟机配置文件和虚拟磁盘存储到的数据存储的名称。
注: 该数据存储必须对目标
ESXi 主机或 DRS 集群可用。
该数据存储必须具有至少 25 GB 的可用空间。 |
port |
integer | 目标 vCenter Server 实例的 HTTPS 反向代理端口。 默认端口为 443。仅当目标 vCenter Server 实例使用自定义 HTTPS 反向代理端口时才应使用。 |
target |
array | 要在其中部署新设备的目标集群、ESXi 主机或资源池。这是您使用
重要说明: 必须提供
vCenter Server 清单中显示的名称。例如,如果目标
ESXi 主机的名称是
vCenter Server 清单中的一个 IP 地址,则不能提供 FQDN。
注: 所有值均区分大小写。
如果要在数据中心层次结构中的不同位置列出已部署的设备,请使用本部分稍后描述的 vm_folder 参数。
如果目标集群、
ESXi 主机或资源池位于文件夹或文件夹结构中,请将值指定为逗号分隔的字符串列表。例如,
["parent_folder", "child_folder", "esxi-host.domain.com"]
如果目标
ESXi 主机是集群的一部分,请将路径指定为逗号分隔的字符串列表。例如,
["cluster_name","esxi-host.domain.com"] 如果要部署到资源池,请在资源池名称前面添加 Resources。例如: ["cluster_name", "Resources", "resource_pool_name"]
注: 预检查只会验证资源池的内存。
|
vm_folder |
string | 可选。要将新设备添加到的虚拟机 (VM) 文件夹的名称。 |
名称 | 类型 | 描述 |
---|---|---|
thin_disk_mode |
Boolean | 设置为 true 可部署具有精简虚拟磁盘的新设备。 |
deployment_option |
string | 新设备的大小。
注: 必须考虑要升级的设备的数据库大小。有关外部数据库,请参见
确定新设备的 Oracle 数据库大小和存储大小。
|
image |
string | 可选。指向 vCenter Server Appliance 安装包的本地文件路径或 URL。 默认情况下,安装程序使用包含于 ISO 文件中的安装包,该文件位于 vcsa 文件夹中。 |
name |
string | 新设备的虚拟机名称。 必须仅包含除百分号 (%)、反斜杠 (\) 或正斜杠 (/) 以外的 ASCII 字符,并且长度不能超过 80 个字符。 |
ovftool_path |
string | 可选。指向 OVF Tool 可执行文件的本地文件路径。 默认情况下,安装程序使用包含于 ISO 文件中的 OVF Tool 实例,该文件位于 vcsa/ovftool 文件夹中。 |
license |
string | 可选。要应用于设备的许可证密钥。如果未提供许可证密钥,则将使用评估许可证。 |
名称 | 类型 | 描述 |
---|---|---|
ip_family |
string | 新设备的临时网络的 IP 版本。 请设置为 |
mode |
string | 新设备的临时网络的 IP 分配。 请设置为 |
ip |
string | 新设备的临时 IP 地址。 仅当使用静态分配(也就是将 必须设置与临时网络 IP 版本对应的 IPv4 或 IPv6 地址,也就是设置为 IPv4 地址必须符合 RFC 790 准则。 IPv6 地址必须符合 RFC 2373 准则。 |
dns_servers |
string 或 array | 新设备的临时网络的一个或多个 DNS 服务器的 IP 地址。
要设置多个 DNS 服务器,请使用逗号分隔的字符串列表或作为单个字符串的逗号分隔列表来提供路径。例如,
["x.y.z.a", "x.y.z.b"]或 "x.y.z.a, x.y.z.b" 仅当使用静态网络模式进行临时 IP 地址分配(也就是将 |
prefix |
string | 新设备的临时网络的网络前缀长度。 仅当 网络前缀长度是在子网掩码中设置的位数。例如,如果子网掩码为 255.255.255.0,则二进制版本的前缀长度中有 24 位,因此网络前缀长度为 24。 对于 IPv4 版本,值必须介于 对于 IPv6 版本,值必须介于 |
gateway |
string | 新设备的临时网络的默认网关 IP 地址。 对于 IPv6 版本,值可以是 |
名称 | 类型 | 描述 |
---|---|---|
vcdb_migrateSet |
string | 选择要从旧设备迁移到新设备的数据类型。数据会从源 vCenter Server 复制到目标服务器。原始数据源保持不变。
注: 要最大限度缩短升级时间并将新
vCenter Server Appliance 所需的存储量减至最少,请使用
core 值。
有关可从现有 vCenter Server 传输到升级后的新 vCenter Server 的数据类型的详细信息,请参见从现有 vCenter Server Appliance 传输数据。 |
名称 | 类型 | 描述 |
---|---|---|
first_instance |
string | 如果这是您在 vCenter Server SSO 域中的第一次融合升级操作,或者您不希望为此节点设置复制合作伙伴,请将 如果要为此节点设置复制合作伙伴,请将 有关指定 |
replication_partner_hostname |
string | 复制合作伙伴的主机名。如果它是 first_instance ,则移除。 |
source_vc
部分中的配置参数
名称 | 类型 | 描述 |
---|---|---|
hostname |
string | 要升级的设备驻留在的源 ESXi 或 vCenter Server 主机的 IP 地址或 FQDN。 |
username |
string | 对源 ESXi 主机具有管理特权的用户名,例如 root。 |
password |
string | 对源 ESXi 主机具有管理特权的用户的密码。 |
port |
integer | 源 ESXi 主机的 HTTPS 反向代理端口。 默认端口为 443。仅当源 ESXi 主机使用自定义 HTTPS 反向代理端口时才应使用。 |
名称 | 类型 | 描述 |
---|---|---|
hostname |
string | 要升级的源设备的 IP 地址或 FQDN。 |
username |
string | 源设备上的 vCenter Single Sign-On 管理员用户,例如 [email protected]。
重要说明: 用户必须为 administrator@
your_domain_name。
|
password |
string | 源设备上的 vCenter Single Sign-On 管理员用户的密码。 |
root_password |
string | 源设备的操作系统 root 用户的密码。 |
export_dir |
string | 要将源配置和数据导出到的目录。 |
source.vum
部分中的配置参数
名称 | 类型 | 描述 |
---|---|---|
esxi_hostname |
string | 上面驻留着源 VMware Update Manager 实例的 ESXi 主机的 IP 地址或 FQDN。 如果提供 FQDN,则它必须可从运行升级的客户机进行解析。 |
esxi_username |
string | 对 ESXi 主机具有管理特权的用户名,例如 root。 |
esxi_password |
string | 对 ESXi 主机具有管理特权的用户的密码。 |
esxi_port |
string | ESXi 主机的 HTTPS 反向代理端口。 默认端口为 443。仅当 ESXi 主机使用自定义 HTTPS 反向代理端口时才应使用。 |
vum_hostname |
string | 上面运行着源 VMware Update Manager 实例的 Windows 虚拟机的 IP 地址或 FQDN。 如果提供 FQDN,则它必须可从运行升级的客户机进行解析。 |
vum_os_username |
string | 上面运行着源 VMware Update Manager 实例的 Windows 虚拟机的管理员用户名。 |
vum_os_password |
string | 上面运行着源 VMware Update Manager 实例的 Windows 虚拟机的管理员密码。 如果未提供,在模板验证期间,系统会提示您在命令控制台输入该密码。 |
export_dir |
string | 要将源配置和数据导出到的目录。 |
ceip
部分中的配置参数
名称 | 类型 | 描述 |
---|---|---|
ceip_enabled |
Boolean | 设置为 true 可加入新的已升级设备的 CEIP。 |