字符串
在 Microsoft Azure 上部署 OpenShift Container Platform 集群之前,您需要提供参数来自定义集群及其托管平台。创建 `install-config.yaml` 文件时,您可以通过命令行提供必需参数的值。然后,您可以修改 `install-config.yaml` 文件以进一步自定义您的集群。
下表指定了您可以在安装过程中设置的必需、可选和 Azure 特定的安装配置参数。
安装后,您无法修改 `install-config.yaml` 文件中的这些参数。 |
下表描述了必需的安装配置参数
参数 | 描述 | 值 |
---|---|---|
apiVersion: |
`install-config.yaml` 内容的 API 版本。当前版本为 `v1`。安装程序也可能支持较旧的 API 版本。 |
字符串 |
baseDomain: |
云提供商的基本域名。基本域名用于创建到 OpenShift Container Platform 集群组件的路由。集群的完整 DNS 名称是 `baseDomain` 和 `metadata.name` 参数值的组合,使用 ` |
完全限定的域名或子域名,例如 `example.com`。 |
metadata: |
Kubernetes 资源 `ObjectMeta`,其中只使用 `name` 参数。 |
对象 |
metadata: name: |
集群的名称。集群的 DNS 记录都是 `{{.metadata.name}}.{{.baseDomain}}` 的子域名。 |
由小写字母、连字符 ( |
platform: |
要在其上执行安装的特定平台的配置:`aws`、`baremetal`、`azure`、`gcp`、`ibmcloud`、`nutanix`、`openstack`、`powervs`、`vsphere` 或 `{}`。有关 `platform. |
对象 |
pullSecret: |
从 Red Hat OpenShift 集群管理器获取 pull secret 以对从 Quay.io 等服务下载 OpenShift Container Platform 组件的容器镜像进行身份验证。 |
|
您可以根据现有网络基础设施的要求自定义安装配置。例如,您可以扩展集群网络的 IP 地址块或提供与默认值不同的 IP 地址块。
仅支持 IPv4 地址。
参数 | 描述 | 值 | ||
---|---|---|---|---|
networking: |
集群网络的配置。 |
对象
|
||
networking: networkType: |
要安装的 Red Hat OpenShift 网络网络插件。 |
`OVNKubernetes`。`OVNKubernetes` 是适用于 Linux 网络和包含 Linux 和 Windows 服务器的混合网络的 CNI 插件。默认值为 `OVNKubernetes`。 |
||
networking: clusterNetwork: |
Pod 的 IP 地址块。 默认值为 `10.128.0.0/14`,主机前缀为 `/23`。 如果指定多个 IP 地址块,则这些块不得重叠。 |
对象数组。例如
|
||
networking: clusterNetwork: cidr: |
如果使用 `networking.clusterNetwork`,则为必需。IP 地址块。 IPv4 网络。 |
采用无类别域间路由 (CIDR) 表示法的 IP 地址块。IPv4 块的前缀长度在 `0` 到 `32` 之间。 |
||
networking: clusterNetwork: hostPrefix: |
要分配给每个节点的子网前缀长度。例如,如果将 `hostPrefix` 设置为 `23`,则为每个节点分配给定 `cidr` 中的 `/23` 子网。`hostPrefix` 值为 `23` 提供 510 (2^(32 - 23) - 2) 个 Pod IP 地址。 |
子网前缀。 默认值为 `23`。 |
||
networking: serviceNetwork: |
服务的 IP 地址块。默认值为 OVN-Kubernetes 网络插件仅支持单个服务的 IP 地址块。 |
包含以 CIDR 格式表示的 IP 地址块的数组。例如
|
||
networking: machineNetwork: |
机器的 IP 地址块。 如果指定多个 IP 地址块,则这些块不得重叠。 |
对象数组。例如
|
||
networking: machineNetwork: cidr: |
如果使用 |
以 CIDR 表示法表示的 IP 网络块。 例如,
|
下表描述了可选的安装配置参数
参数 | 描述 | 值 | ||||
---|---|---|---|---|---|---|
additionalTrustBundle: |
添加到节点受信任证书存储区的 PEM 编码的 X.509 证书捆绑包。配置代理时也可以使用此信任捆绑包。 |
字符串 |
||||
capabilities: |
控制可选核心集群组件的安装。您可以通过禁用可选组件来减小 OpenShift Container Platform 集群的占用空间。有关更多信息,请参阅安装中的“集群功能”页面。 |
字符串数组 |
||||
capabilities: baselineCapabilitySet: |
选择要启用的初始可选功能集。有效值为 |
字符串 |
||||
capabilities: additionalEnabledCapabilities: |
扩展可选功能集,超出您在 |
字符串数组 |
||||
cpuPartitioningMode: |
启用工作负载分区,该分区将 OpenShift Container Platform 服务、集群管理工作负载和基础设施 Pod 隔离到一组保留的 CPU 上运行。工作负载分区只能在安装期间启用,安装后无法禁用。虽然此字段启用了工作负载分区,但它不会配置工作负载以使用特定 CPU。有关更多信息,请参阅可扩展性和性能部分中的工作负载分区页面。 |
|
||||
compute: |
构成计算节点的机器的配置。 |
|
||||
compute: architecture: |
确定池中机器的指令集架构。目前,不支持具有不同架构的集群。所有池都必须指定相同的架构。有效值为 |
字符串 |
||||
compute: hyperthreading: |
是否在计算机器上启用或禁用同时多线程处理或超线程。默认情况下,启用同时多线程处理以提高机器内核的性能。
|
|
||||
compute: name: |
如果使用 |
|
||||
compute: platform: |
如果使用 |
|
||||
compute: replicas: |
要供应的计算机器(也称为工作机器)的数量。 |
大于或等于 |
||||
featureSet: |
为功能集启用集群。功能集是默认情况下未启用的 OpenShift Container Platform 功能的集合。有关在安装期间启用功能集的更多信息,请参阅“使用功能门启用功能”。 |
字符串。要启用的功能集的名称,例如 |
||||
controlPlane: |
构成控制平面的机器的配置。 |
|
||||
controlPlane: architecture: |
确定池中机器的指令集架构。目前,不支持具有不同架构的集群。所有池都必须指定相同的架构。有效值为 |
字符串 |
||||
controlPlane: hyperthreading: |
是否在控制平面机器上启用或禁用同时多线程处理或超线程。默认情况下,启用同时多线程处理以提高机器内核的性能。
|
|
||||
controlPlane: name: |
如果使用 |
|
||||
controlPlane: platform: |
如果使用 |
|
||||
controlPlane: replicas: |
要供应的控制平面机器的数量。 |
支持的值为 |
||||
credentialsMode: |
云凭据操作员 (CCO) 模式。如果未指定模式,CCO 将动态尝试确定提供的凭据的功能,并在支持多种模式的平台上优先使用 mint 模式。
|
|
||||
fips: |
启用或禁用 FIPS 模式。默认为
|
|
||||
imageContentSources: |
发行版映像内容的来源和存储库。 |
对象数组。包括 |
||||
imageContentSources: source: |
如果使用 |
字符串 |
||||
imageContentSources: mirrors: |
指定一个或多个可能也包含相同映像的存储库。 |
字符串数组 |
||||
publish: |
如何发布或公开集群面向用户的端点,例如 Kubernetes API、OpenShift 路由。 |
|
||||
sshKey: |
用于验证对集群机器访问权限的 SSH 密钥。
|
例如, |
+
将此参数设置为 |
下表描述了其他 Azure 配置参数。
参数 | 描述 | 值 | ||
---|---|---|---|---|
compute: platform: azure: encryptionAtHost: |
为计算机器启用主机级加密。您可以同时启用此加密和用户管理的服务器端加密。此功能会加密 VM 主机上的临时、短暂、缓存和非托管磁盘。这不是用户管理的服务器端加密的先决条件。 |
|
||
compute: platform: azure: osDisk: diskSizeGB: |
VM 的 Azure 磁盘大小。 |
表示磁盘大小(以 GB 为单位)的整数。默认值为 |
||
compute: platform: azure: osDisk: diskType: |
定义磁盘类型。 |
|
||
compute: platform: azure: ultraSSDCapability: |
启用在计算节点上使用 Azure 超级磁盘进行持久性存储。这需要您的 Azure 区域和区域提供超级磁盘。 |
|
||
compute: platform: azure: osDisk: diskEncryptionSet: resourceGroup: |
包含安装前提条件中磁盘加密集的 Azure 资源组的名称。此资源组应与安装集群的资源组不同,以避免在销毁集群时删除 Azure 加密密钥。仅当您打算使用用户管理的磁盘加密安装集群时,才需要此值。 |
字符串,例如 |
||
compute: platform: azure: osDisk: diskEncryptionSet: name: |
包含安装前提条件中加密密钥的磁盘加密集的名称。 |
字符串,例如 |
||
compute: platform: azure: osDisk: diskEncryptionSet: subscriptionId: |
定义磁盘加密集所在的 Azure 订阅,其中包含磁盘加密集。此辅助磁盘加密集用于加密计算机器。 |
字符串,格式为 |
||
compute: platform: azure: osImage: publisher: |
可选。默认情况下,安装程序会下载并安装用于引导计算机的 Red Hat Enterprise Linux CoreOS (RHCOS) 映像。您可以使用 Azure 市场中提供的自定义 RHCOS 映像来覆盖默认行为。安装程序仅对计算机器使用此映像。 |
字符串。映像发布者的名称。 |
||
compute: platform: azure: osImage: offer: |
与自定义 RHCOS 映像关联的 Azure 市场产品的名称。如果您使用 |
字符串。映像产品的名称。 |
||
compute: platform: azure: osImage: sku: |
Azure 市场产品的实例。如果您使用 |
字符串。映像产品的 SKU。 |
||
compute: platform: azure: osImage: version: |
映像 SKU 的版本号。如果您使用 |
字符串。要使用的映像版本。 |
||
compute: platform: azure: vmNetworkingType: |
启用加速网络。加速网络会将单根 I/O 虚拟化 (SR-IOV) 启用到 VM,从而提高其网络性能。如果计算机的实例类型支持 |
|
||
compute: platform: azure: type: |
定义计算机的 Azure 实例类型。 |
字符串 |
||
compute: platform: azure: zones: |
安装程序创建计算机的可用性区域。 |
字符串列表 |
||
compute: platform: azure: settings: securityType: |
为计算节点启用机密 VM 或可信启动。此选项默认情况下未启用。 |
|
||
compute: platform: azure: settings: confidentialVM: uefiSettings: secureBoot: |
如果您使用机密 VM,则在计算节点上启用安全启动。 |
|
||
compute: platform: azure: settings: confidentialVM: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用机密 VM,则在计算节点上启用虚拟化可信平台模块 (vTPM) 功能。 |
|
||
compute: platform: azure: settings: trustedLaunch: uefiSettings: secureBoot: |
如果您使用可信启动,则在计算节点上启用安全启动。 |
|
||
compute: platform: azure: settings: trustedLaunch: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用可信启动,则在计算节点上启用 vTPM 功能。 |
|
||
compute: platform: azure: osDisk: securityProfile: securityEncryptionType: |
启用计算节点虚拟机客户机状态的加密。仅当您使用机密 VM 时,才能使用此参数。 |
|
||
controlPlane: platform: azure: settings: securityType: |
为控制平面节点启用机密 VM 或可信启动。此选项默认情况下未启用。 |
|
||
controlPlane: platform: azure: settings: confidentialVM: uefiSettings: secureBoot: |
如果您使用机密 VM,则在控制平面节点上启用安全启动。 |
|
||
controlPlane: platform: azure: settings: confidentialVM: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用机密 VM,则在控制平面节点上启用 vTPM 功能。 |
|
||
controlPlane: platform: azure: settings: trustedLaunch: uefiSettings: secureBoot: |
如果您使用可信启动,则在控制平面节点上启用安全启动。 |
|
||
controlPlane: platform: azure: settings: trustedLaunch: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用可信启动,则在控制平面节点上启用 vTPM 功能。 |
|
||
controlPlane: platform: azure: osDisk: securityProfile: securityEncryptionType: |
启用控制平面节点虚拟机客户机状态的加密。仅当您使用机密 VM 时,才能使用此参数。 |
|
||
controlPlane: platform: azure: type: |
定义控制平面机器的 Azure 实例类型。 |
字符串 |
||
controlPlane: platform: azure: zones: |
安装程序创建控制平面机器的可用性区域。 |
字符串列表 |
||
platform: azure: defaultMachinePlatform: settings: securityType: |
为所有节点启用机密 VM 或可信启动。此选项默认情况下未启用。 |
|
||
platform: azure: defaultMachinePlatform: settings: confidentialVM: uefiSettings: secureBoot: |
如果您使用机密 VM,则在所有节点上启用安全启动。 |
|
||
platform: azure: defaultMachinePlatform: settings: confidentialVM: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用机密 VM,则在所有节点上启用虚拟化可信平台模块 (vTPM) 功能。 |
|
||
platform: azure: defaultMachinePlatform: settings: trustedLaunch: uefiSettings: secureBoot: |
如果您使用可信启动,则在所有节点上启用安全启动。 |
|
||
platform: azure: defaultMachinePlatform: settings: trustedLaunch: uefiSettings: virtualizedTrustedPlatformModule: |
如果您使用可信启动,则在所有节点上启用 vTPM 功能。 |
|
||
platform: azure: defaultMachinePlatform: osDisk: securityProfile: securityEncryptionType: |
启用所有节点虚拟机客户机状态的加密。仅当您使用机密 VM 时,才能使用此参数。 |
|
||
platform: azure: defaultMachinePlatform: encryptionAtHost: |
为计算机器启用主机级加密。您可以同时启用此加密和用户管理的服务器端加密。此功能会加密 VM 主机上的临时、短暂、缓存和非托管磁盘。此参数不是用户管理的服务器端加密的先决条件。 |
|
||
platform: azure: defaultMachinePlatform: osDisk: diskEncryptionSet: name: |
包含安装前提条件中加密密钥的磁盘加密集的名称。 |
字符串,例如 |
||
platform: azure: defaultMachinePlatform: osDisk: diskEncryptionSet: resourceGroup: |
安装前提条件中包含磁盘加密集的 Azure 资源组名称。为避免在集群销毁时删除 Azure 加密密钥,此资源组必须与安装集群的资源组不同。仅当您打算使用用户管理的磁盘加密安装集群时,此值才必需。 |
字符串,例如 |
||
platform: azure: defaultMachinePlatform: osDisk: diskEncryptionSet: subscriptionId: |
定义磁盘加密集所在的 Azure 订阅,其中包含磁盘加密集。此辅助磁盘加密集用于加密计算机器。 |
字符串,格式为 |
||
platform: azure: defaultMachinePlatform: osDisk: diskSizeGB: |
VM 的 Azure 磁盘大小。 |
表示磁盘大小(以 GB 为单位)的整数。默认值为 |
||
platform: azure: defaultMachinePlatform: osDisk: diskType: |
定义磁盘类型。 |
|
||
platform: azure: defaultMachinePlatform: osImage: publisher: |
可选。默认情况下,安装程序会下载并安装用于引导控制平面和计算机的 Red Hat Enterprise Linux CoreOS (RHCOS) 映像。您可以使用 Azure 市场中提供的自定义 RHCOS 映像来覆盖默认行为。安装程序将此映像用于这两种类型的计算机。 |
字符串。映像发布者的名称。 |
||
platform: azure: defaultMachinePlatform: osImage: offer: |
与自定义 RHCOS 映像关联的 Azure 市场产品的名称。如果您使用 |
字符串。映像产品的名称。 |
||
platform: azure: defaultMachinePlatform: osImage: sku: |
Azure 市场产品的实例。如果您使用 |
字符串。映像产品的 SKU。 |
||
platform: azure: defaultMachinePlatform: osImage: version: |
映像 SKU 的版本号。如果您使用 |
字符串。要使用的映像版本。 |
||
platform: azure: defaultMachinePlatform: type: |
控制平面和计算机的 Azure 实例类型。 |
Azure 实例类型。 |
||
platform: azure: defaultMachinePlatform: zones: |
安装程序创建计算和控制平面计算机的可用区。 |
字符串列表。 |
||
controlPlane: platform: azure: encryptionAtHost: |
启用控制平面计算机的主机级加密。您可以与用户管理的服务器端加密一起启用此加密。此功能会加密虚拟机主机上的临时、短暂、缓存和非托管磁盘。这并非用户管理的服务器端加密的先决条件。 |
|
||
controlPlane: platform: azure: osDisk: diskEncryptionSet: resourceGroup: |
包含安装前提条件中磁盘加密集的 Azure 资源组的名称。此资源组应与安装集群的资源组不同,以避免在销毁集群时删除 Azure 加密密钥。仅当您打算使用用户管理的磁盘加密安装集群时,才需要此值。 |
字符串,例如 |
||
controlPlane: platform: azure: osDisk: diskEncryptionSet: name: |
包含安装前提条件中加密密钥的磁盘加密集的名称。 |
字符串,例如 |
||
controlPlane: platform: azure: osDisk: diskEncryptionSet: subscriptionId: |
定义磁盘加密集所在的磁盘加密集的 Azure 订阅。此辅助磁盘加密集用于加密控制平面计算机。 |
字符串,格式为 |
||
controlPlane: platform: azure: osDisk: diskSizeGB: |
VM 的 Azure 磁盘大小。 |
表示磁盘大小(以 GB 为单位)的整数。默认为 |
||
controlPlane: platform: azure: osDisk: diskType: |
定义磁盘类型。 |
|
||
controlPlane: platform: azure: osImage: publisher: |
可选。默认情况下,安装程序会下载并安装用于引导控制平面计算机的 Red Hat Enterprise Linux CoreOS (RHCOS) 映像。您可以使用 Azure 市场中提供的自定义 RHCOS 映像来覆盖默认行为。安装程序仅将此映像用于控制平面计算机。 |
字符串。映像发布者的名称。 |
||
controlPlane: platform: azure: osImage: offer: |
与自定义 RHCOS 映像关联的 Azure 市场产品的名称。如果您使用 |
字符串。映像产品的名称。 |
||
controlPlane: platform: azure: osImage: sku: |
Azure 市场产品的实例。如果您使用 |
字符串。映像产品的 SKU。 |
||
controlPlane: platform: azure: osImage: version: |
映像 SKU 的版本号。如果您使用 |
字符串。要使用的映像版本。 |
||
controlPlane: platform: azure: ultraSSDCapability: |
启用在控制平面计算机上使用 Azure 超级磁盘进行持久性存储。这要求您的 Azure 区域和区域提供超级磁盘。 |
|
||
controlPlane: platform: azure: vmNetworkingType: |
启用加速网络。加速网络将单根 I/O 虚拟化 (SR-IOV) 启用到虚拟机,从而提高其网络性能。如果控制平面计算机的实例类型支持 |
|
||
platform: azure: baseDomainResourceGroupName: |
包含您的基础域的 DNS 区域的资源组名称。 |
字符串,例如 |
||
platform: azure: resourceGroupName: |
要将集群安装到的已存在资源组的名称。此资源组必须为空,并且仅用于此特定集群;集群组件将承担此资源组中所有资源的所有权。如果您将安装程序的服务主体范围限制为此资源组,则必须确保环境中安装程序使用的所有其他资源都具有必要的权限,例如公共 DNS 区域和虚拟网络。使用安装程序销毁集群会删除此资源组。 |
字符串,例如 |
||
platform: azure: outboundType: |
用于将集群连接到互联网的出站路由策略。如果您使用用户定义的路由,则必须预先存在已配置出站路由的网络,然后才能安装集群。安装程序不负责配置用户定义的路由。如果您指定
|
|
||
platform: azure: region: |
托管集群的 Azure 区域的名称。 |
任何有效的区域名称,例如 |
||
platform: azure: zone: |
放置计算机的可用区列表。为确保高可用性,请至少指定两个区域。 |
区域列表,例如 |
||
platform: azure: customerManagedKey: keyVault: name: |
指定包含用于加密 Azure 存储的加密密钥的密钥保管库的名称。 |
字符串。 |
||
platform: azure: customerManagedKey: keyVault: keyName: |
指定用于加密 Azure 存储的用户管理加密密钥的名称。 |
字符串。 |
||
platform: azure: customerManagedKey: keyVault: resourceGroup: |
指定包含密钥保管库和托管标识的资源组的名称。 |
字符串。 |
||
platform: azure: customerManagedKey: keyVault: subscriptionId: |
指定与密钥保管库关联的订阅 ID。 |
字符串,格式为 |
||
platform: azure: customerManagedKey: userAssignedIdentityKey: |
指定位于包含密钥保管库的资源组中并具有对用户管理密钥的访问权限的用户分配的托管标识的名称。 |
字符串。 |
||
platform: azure: defaultMachinePlatform: ultraSSDCapability: |
启用在控制平面和计算计算机上使用 Azure 超级磁盘进行持久性存储。这要求您的 Azure 区域和区域提供超级磁盘。 |
|
||
platform: azure: networkResourceGroupName: |
包含要将集群部署到的现有 VNet 的资源组的名称。此名称不能与 |
字符串。 |
||
platform: azure: virtualNetwork: |
要将集群部署到的现有 VNet 的名称。 |
字符串。 |
||
platform: azure: controlPlaneSubnet: |
要将控制平面计算机部署到的 VNet 中现有子网的名称。 |
有效的 CIDR,例如 |
||
platform: azure: computeSubnet: |
要将计算计算机部署到的 VNet 中现有子网的名称。 |
有效的 CIDR,例如 |
||
platform: azure: cloudName: |
用于使用适当的 Azure API 端点配置 Azure SDK 的 Azure 云环境的名称。如果为空,则使用默认值 |
任何有效的云环境,例如 |
||
platform: azure: defaultMachinePlatform: vmNetworkingType: |
启用加速网络。加速网络将单根 I/O 虚拟化 (SR-IOV) 启用到虚拟机,从而提高其网络性能。 |
|
||
operatorPublishingStrategy: apiserver: |
确定为 API 提供服务的负载均衡器是公有的还是私有的。将此参数设置为 |
|
||
operatorPublishingStrategy: ingress: |
确定集群为入口流量创建的 DNS 资源是否公开可见。将此参数设置为 |
|
您无法使用 Azure 集群自定义Azure 可用性区域 或使用标签组织您的 Azure 资源。 |