22.5. Provisioning [metal3.io/v1alpha1]
- 描述
- 置备(provisioning)包含置备 baremetal 主机所使用的配置。置备由 OpenShift 安装程序使用 admin 或用户提供的有关 provisioning 网络的信息,以及可用于 PXE 引导的服务器上的 NIC。此 CR 是一个由安装程序创建的单例,目前仅由 cluster-baremetal-operator 使用,以便在 metal3 集群中启动和更新容器。
- 类型
-
对象
22.5.1. 规格 复制链接链接已复制到粘贴板!
属性 | 类型 | 描述 |
---|---|---|
|
| APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources |
|
| kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
| 标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata | |
|
| ProvisioningSpec 定义所需的 Provisioning 状态 |
|
| ProvisioningStatus 定义 Provisioning 的观察状态 |
22.5.1.1. .spec 复制链接链接已复制到粘贴板!
- 描述
- ProvisioningSpec 定义所需的 Provisioning 状态
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| BootIsoSource 提供了设置 iso 镜像从中引导节点的位置的方法。默认情况下,引导 iso 镜像会在本地缓存,并使用辅助 httpd 服务器从 Provisioning 服务(Ironic)节点提供。如果 httpd 服务器已经提供 boot iso 镜像,请将此选项设置为 http 允许直接从那里提供镜像;在这种情况下,需要由 metal3 pod 访问托管引导 iso 的 httpd 服务器的网络(内部或外部)。 |
|
| preProvisioningOSDownloadURLs 是一组 CoreOS Live URL,这需要使用虚拟介质或 PXE 置备 worker。 |
|
| ProvisioningDHCPExternal 表示置备 DHCP 范围内的 IP 地址的 DHCP 服务器是否在 metal3 集群中或其外部存在。此字段已弃用,而是使用 provisioningNetwork。 |
|
| provisioningDHCPRange 需要解释和 ProvisioningDHCPExternal。如果 provisioningDHCPExternal 的值设为 False,则 ProvisioningDHCPRange 代表 metal3 集群中运行的 DHCP 服务器可以使用的 IP 地址范围。如果 ProvisioningDHCPExternal 的值设为 True,则将忽略 ProvisioningDHCPRange 的值。当 ProvisioningDHCPExternal 的值设为 False 时,表示内部 DHCP 服务器并且未设置 ProvisioningDHCPRange 的值,那么将 DHCP 范围取为从 ProvisioningNetworkCIDR 的 .10 到 .100 的默认范围。这是所有 Provisioning 配置中唯一值,可在安装程序创建 CR 后更改。这个值需要是 ProvisioningNetworkCIDR 中的两个用逗号分开的 IP 地址,其中 1 个地址代表范围的开头,第二地址代表范围内的最后一个可用地址。 |
|
| provisioningIP 是分配给 baremetal 服务器的 provisioningInterface 的 IP 地址。此 IP 地址应该在 provisioning 子网内,并在 DHCP 范围之外。 |
|
| provisioningInterface 是 baremetal 服务器上到 provisioning 网络的网络接口的名称。它可以有值,如 eth1 或 ens3。 |
|
| provisioningMacAddresses 是 baremetal 服务器上网络接口到 provisioning 网络的 mac 地址列表。使用此选项而不是 ProvisioningInterface 来允许不同名称的接口。如果没有提供,它将由每个 master 的 BMH.Spec.BootMacAddress 填充。 |
|
|
provisioningNetwork 提供了指示 provisioning 网络的底层网络配置状态的方法。此字段可以具有以下值之一 - |
|
| provisioningNetworkCIDR 是置备裸机节点的网络。dhcpRange 中所有的 provisioningIP 和 IP 都来自此网络。当使用 IPv6 和由 Baremetal IPI 解决方案管理的网络时,这不能是一个大于 /64 的网络。 |
|
| provisioningOSDownloadURL 是用于引导 baremetal 主机的 OS 镜像可由 metal3 集群下载的位置。 |
|
| 当设置为 "true" 时,VirtualMediaViaExternalNetwork 标志允许通过 Virtual Media 通过 Virtual Media 引导,并通过外部网络联系 metal3。当标志设置为 "false" (默认值),则虚拟介质部署仍可以根据 ProvisioningNetwork i.e 中指定的配置在 Disabled 模式中指定的配置,在 Managed 模式下时通过外部网络和置备网络进行。PXE 部署始终使用 Provisioning 网络,并且不受此标志的影响。 |
|
| watchAllNameSpaces 提供了一种方式,允许在所有命名空间中明确使用此置备配置。这是一个可选配置,默认为 false,且该状态将仅用于仅在 openshift-machine-api 命名空间中置备 baremetal 主机。当设置为 true 时,这个置备配置将用于所有命名空间的 baremetal 主机。 |
22.5.1.2. .spec.preProvisioningOSDownloadURLs 复制链接链接已复制到粘贴板!
- 描述
- preProvisioningOSDownloadURLs 是一组 CoreOS Live URL,这需要使用虚拟介质或 PXE 置备 worker。
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| 用于 PXE 部署的 InitramfsURL 镜像 URL |
|
| 用于实时 ISO 部署的 IsoURL 镜像 URL |
|
| KernelURL 是用于 PXE 部署的镜像 URL |
|
| 用于 PXE 部署的 rootFSUrl 镜像 URL |
22.5.1.3. .status 复制链接链接已复制到粘贴板!
- 描述
- ProvisioningStatus 定义 Provisioning 的观察状态
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| conditions 是条件及其状态列表 |
|
| OperatorCondition 只是标准条件字段。 |
|
| 生成用于确定何时需要协调项目,或者以需要反应的方式更改项目。 |
|
| GenerationStatus 跟踪给定资源的生成,以便可以做出有关强制更新的决策。 |
|
| observedGeneration 是您已处理的最后生成变化 |
|
| readyReplicas 指示有多少副本就绪并处于所需的状态 |
|
| 版本是此可用性适用于的级别 |
22.5.1.4. .status.conditions 复制链接链接已复制到粘贴板!
- 描述
- conditions 是条件及其状态列表
- 类型
-
array
22.5.1.5. .status.conditions[] 复制链接链接已复制到粘贴板!
- 描述
- OperatorCondition 只是标准条件字段。
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| |
|
| |
|
| |
|
| |
|
|
22.5.1.6. .status.generations 复制链接链接已复制到粘贴板!
- 描述
- 生成用于确定何时需要协调项目,或者以需要反应的方式更改项目。
- 类型
-
array
22.5.1.7. .status.generations[] 复制链接链接已复制到粘贴板!
- 描述
- GenerationStatus 跟踪给定资源的生成,以便可以做出有关强制更新的决策。
- 类型
-
对象
属性 | 类型 | 描述 |
---|---|---|
|
| group 是您要跟踪的项的组 |
|
| hash 是为没有生成的资源设置的可选字段,内容敏感,如 secret 和 configmaps |
|
| lastGeneration 是涉及的工作负载控制器的最后生成 |
|
| name 是您要跟踪的项的名称 |
|
| 命名空间是您跟踪的事情的位置 |
|
| Resource 是您要跟踪的事情的资源类型 |
22.5.2. API 端点 复制链接链接已复制到粘贴板!
可用的 API 端点如下:
/apis/metal3.io/v1alpha1/provisionings
-
DELETE
:删除置备集合 -
GET
: 列出类型为 Provisioning 的对象 -
POST
:创建置备
-
/apis/metal3.io/v1alpha1/provisionings/{name}
-
DELETE
:删除置备 -
GET
:读取指定的置备 -
PATCH
:部分更新指定的置备 -
PUT
:替换指定的 Provisioning
-
/apis/metal3.io/v1alpha1/provisionings/{name}/status
-
GET
:指定 Provisioning 的读取状态 -
PATCH
:部分更新指定置备的状态 -
PUT
: 替换指定置备的状态
-
22.5.2.1. /apis/metal3.io/v1alpha1/provisionings 复制链接链接已复制到粘贴板!
参数 | 类型 | 描述 |
---|---|---|
|
| 如果 'true',则输出被用户友善。 |
- HTTP 方法
-
DELETE
- 描述
- 删除置备集合
参数 | 类型 | 描述 |
---|---|---|
|
| allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。没有实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。 |
|
| 从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须在没有 continue 字段的情况下重启其列表。否则,客户端可能会发送另一个列表请求,并带有 410 错误收到的令牌,服务器将通过从下一个密钥开始的列表进行响应,但从最新的快照(从最后一个列表结果中不一致) - 在第一个列表请求后创建、修改或删除的对象将包含在响应中,只要其密钥在"next key"后。 当 watch 为 true 时,不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值启动监视,而不丢失任何修改。 |
|
| 用于限制返回的对象列表的选择器。默认为任何内容。 |
|
| 通过标签限制返回的对象列表的选择器。默认为任何内容。 |
|
| 限制是列表调用要返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的"continue"字段设置为可用于同一初始查询的值,以检索下一个结果集。在过滤所有请求的对象时,设置限制可能会返回比请求的项目数量少(最多为零项),客户端应只使用 continue 字段的存在来确定是否有更多结果可用。服务器可以选择不支持限制参数,并将返回所有可用的结果。如果指定了限制,并且 continue 字段为空,客户端可能会假设没有更多可用的结果。如果 watch 为 true,则不支持此字段。 服务器保证在使用 continue 时返回的对象与在没有限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后不会创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制的客户端接收一个非常大的结果较小的块可以确保它们看到所有可能的对象。如果在块列出期间更新对象,则返回第一次列表结果时存在的对象版本。 |
|
| resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions 默认为未设置 |
|
| resourceVersionMatch 决定 resourceVersion 如何应用到列出调用。强烈建议您为设置了 resourceVersion 的列表调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions。 默认为未设置 |
|
| list/watch 调用的超时。这限制了调用的时间,无论任何活动或不活跃。 |
|
| 观察对描述的资源的更改,并将其作为添加、更新和删除通知流返回。指定 resourceVersion。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 列出置备类型的对象
参数 | 类型 | 描述 |
---|---|---|
|
| allowWatchBookmarks请求类型为“BOOKMARK”的监视事件。没有实现书签的服务器可能会忽略这个标志和书签,由服务器自由裁量发送。客户端不应假设书签在任何特定间隔返回,也不会假定服务器在会话期间发送任何 BOOKMARK 事件。如果这不是监视,则忽略此字段。 |
|
| 从服务器检索更多结果时,应设置 continue 选项。由于这个值是定义的服务器,因此客户端只能使用之前查询结果中的 continue 值,并带有相同的查询参数(除 continue 值除外),因此服务器可能会拒绝它无法识别的值。如果指定的 continue 值不再有效,无论是因为过期时间(通常为 5 到十五分钟)还是服务器上的配置更改,服务器将会与继续令牌一起响应 410 ResourceExpired 错误。如果客户端需要一致的列表,它必须在没有 continue 字段的情况下重启其列表。否则,客户端可能会发送另一个列表请求,并带有 410 错误收到的令牌,服务器将通过从下一个密钥开始的列表进行响应,但从最新的快照(从最后一个列表结果中不一致) - 在第一个列表请求后创建、修改或删除的对象将包含在响应中,只要其密钥在"next key"后。 当 watch 为 true 时,不支持此字段。客户端可以从服务器返回的最后一个 resourceVersion 值启动监视,而不丢失任何修改。 |
|
| 用于限制返回的对象列表的选择器。默认为任何内容。 |
|
| 通过标签限制返回的对象列表的选择器。默认为任何内容。 |
|
| 限制是列表调用要返回的最大响应数。如果存在更多项目,服务器会将列表元数据上的"continue"字段设置为可用于同一初始查询的值,以检索下一个结果集。在过滤所有请求的对象时,设置限制可能会返回比请求的项目数量少(最多为零项),客户端应只使用 continue 字段的存在来确定是否有更多结果可用。服务器可以选择不支持限制参数,并将返回所有可用的结果。如果指定了限制,并且 continue 字段为空,客户端可能会假设没有更多可用的结果。如果 watch 为 true,则不支持此字段。 服务器保证在使用 continue 时返回的对象与在没有限制的情况下发出单个列表调用相同 - 也就是说,在发出第一个请求后不会创建、修改或删除对象。这有时被称为一致的快照,并确保使用限制的客户端接收一个非常大的结果较小的块可以确保它们看到所有可能的对象。如果在块列出期间更新对象,则返回第一次列表结果时存在的对象版本。 |
|
| resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions 默认为未设置 |
|
| resourceVersionMatch 决定 resourceVersion 如何应用到列出调用。强烈建议您为设置了 resourceVersion 的列表调用设置 resourceVersionMatch。详情请参阅 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions。 默认为未设置 |
|
| list/watch 调用的超时。这限制了调用的时间,无论任何活动或不活跃。 |
|
| 观察对描述的资源的更改,并将其作为添加、更新和删除通知流返回。指定 resourceVersion。 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
POST
- 描述
- 创建置备
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
22.5.2.2. /apis/metal3.io/v1alpha1/provisionings/{name} 复制链接链接已复制到粘贴板!
参数 | 类型 | 描述 |
---|---|---|
|
| 置备的名称 |
参数 | 类型 | 描述 |
---|---|---|
|
| 如果 'true',则输出被用户友善。 |
- HTTP 方法
-
DELETE
- 描述
- 删除置备
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| 应该删除对象前的持续时间(以秒为单位)。值必须是非负整数。值零表示立即删除。如果这个值是 nil,则使用指定类型的默认宽限期。如果没有指定,则默认为每个对象值。零表示立即删除。 |
|
| 弃用:请使用 PropagationPolicy,此字段将在 1.7 中被弃用。应该依赖的对象被孤立。如果为 true/false,"orphan"终结器将从对象的终结器列表添加到/删除。可以设置此字段或 PropagationPolicy,但不能同时设置两者。 |
|
| 是否以及是否执行垃圾回收。此字段或 OrphanDependents 可以设置,但不能同时设置两者。默认策略由 metadata.finalizers 和特定于资源的默认策略中设置的现有终结器决定。可接受的值为: 'Orphan' - 孤立依赖; 'Background' - 允许垃圾收集器在后台删除依赖的依赖关系; 'Foreground' - 一个删除前台所有依赖的级联策略。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
202 - Accepted |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
GET
- 描述
- 阅读指定的置备
参数 | 类型 | 描述 |
---|---|---|
|
| resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions 默认为未设置 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 部分更新指定的置备
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定的置备
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |
参数 | 类型 | 描述 |
---|---|---|
|
| 置备的名称 |
参数 | 类型 | 描述 |
---|---|---|
|
| 如果 'true',则输出被用户友善。 |
- HTTP 方法
-
GET
- 描述
- 指定置备的读取状态
参数 | 类型 | 描述 |
---|---|---|
|
| resourceVersion 对可能给请求提供服务的资源版本设置一个约束。详情请查看 https://kubernetes.io/docs/reference/using-api/api-concepts/#resource-versions 默认为未设置 |
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PATCH
- 描述
- 指定置备的部分更新状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
401 - Unauthorized | 空 |
- HTTP 方法
-
PUT
- 描述
- 替换指定置备的状态
参数 | 类型 | 描述 |
---|---|---|
|
| 出现时,表示不应保留修改。无效的或未被识别的 dryRun 指令将导致错误响应,且请求不会被进一步处理。有效值为: - All: 所有预演阶段都将被处理 |
|
| fieldmanager 是与进行这些更改的参与者或实体相关联的名称。该值必须小于或是 128 个字符长,且仅包含可打印的字符,如 https://golang.org/pkg/unicode/#IsPrint 所定义的那样。 |
参数 | 类型 | 描述 |
---|---|---|
|
|
HTTP 代码 | 响应正文 |
---|---|
200 - OK |
|
201 - Created |
|
401 - Unauthorized | 空 |