- 资源:BareMetalCluster
- 状态
- BareMetalNetworkConfig
- BareMetalIslandModeCidrConfig
- BareMetalMultipleNetworkInterfacesConfig
- BareMetalSrIovConfig
- BareMetalControlPlaneConfig
- BareMetalControlPlaneNodePoolConfig
- BareMetalApiServerArgument
- BareMetalLoadBalancerConfig
- BareMetalVipConfig
- BareMetalPortConfig
- BareMetalMetalLbConfig
- BareMetalLoadBalancerAddressPool
- BareMetalLoadBalancerNodePoolConfig
- BareMetalManualLbConfig
- BareMetalBgpLbConfig
- BareMetalBgpPeerConfig
- BareMetalStorageConfig
- BareMetalProxyConfig
- BareMetalClusterOperationsConfig
- BareMetalMaintenanceConfig
- BareMetalWorkloadNodeConfig
- ContainerRuntime
- BareMetalSecurityConfig
- BareMetalMaintenanceStatus
- BareMetalMachineDrainStatus
- BareMetalDrainingMachine
- BareMetalDrainedMachine
- BareMetalNodeAccessConfig
- BareMetalOsEnvironmentConfig
- BareMetalClusterUpgradePolicy
- NodePoolPolicy
- 方法
资源:BareMetalCluster
表示裸金属用户集群的资源。
JSON 表示法 |
---|
{ "name": string, "adminClusterMembership": string, "description": string, "bareMetalVersion": string, "uid": string, "state": enum ( |
字段 | |
---|---|
name |
不可变。裸机用户集群资源名称。 |
adminClusterMembership |
必需。此裸金属用户集群所属的管理员集群。这是管理员集群的舰队成员资格的完整资源名称。 |
description |
相应裸金属用户集群的人类可读说明。 |
bareMetalVersion |
必需。用户集群的 Anthos clusters on Bare Metal 版本。 |
uid |
仅限输出。裸机用户集群的唯一标识符。 |
state |
仅限输出。裸金属用户集群的当前状态。 |
endpoint |
仅限输出。Bare Metal 用户集群的 API 服务器的 IP 地址。 |
reconciling |
仅限输出。如果设置了此字段,则当前正在对裸金属用户集群进行更改。 |
createTime |
仅限输出。裸金属用户集群的创建时间。 采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
updateTime |
仅限输出。裸金属用户集群的上次更新时间。 采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
deleteTime |
仅限输出。裸机用户集群的删除时间。如果资源未被删除,此字段必须为空 采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例: |
localName |
仅限输出。关联的管理员集群中裸金属用户集群自定义资源的对象名称。在将现有集群注册到 API 时,此字段用于支持有冲突的名称。当用作集群注册的一部分时,此字段将与资源名称中的名称不同。对于新集群,此字段将与用户提供的集群名称一致,并显示在资源名称的最后一个组成部分中。它是不可修改的。 当本地名称与集群名称不同时,管理员集群控制器日志中会使用本地名称。使用 bmctl 和 kubectl 访问集群时,您需要使用集群名称。 |
etag |
仅限输出。此校验和由服务器根据其他字段的值计算得出,可在遇到更新和删除请求时发送,以确保客户端在继续操作之前具有最新值。允许客户端通过乐观并发控制执行一致的“读取-修改-写入”操作。 |
annotations |
裸金属用户集群上的注解。此字段的限制与 Kubernetes 注解相同。所有键和值的总大小不得超过 256k。键可以包含 2 个部分:前缀(可选)和名称(必需),以斜杠 (/) 分隔。前缀必须是 DNS 子网域。名称不得超过 63 个字符,以字母数字字符开头和结尾,中间可以使用短划线 (-)、下划线 (_)、点 (.) 和字母数字字符。 包含一系列 |
networkConfig |
必需。网络配置。 |
controlPlane |
必需。控制平面配置。 |
loadBalancer |
必需。负载平衡器配置。 |
storage |
必需。存储配置。 |
proxy |
代理配置。 |
clusterOperations |
集群操作配置。 |
maintenanceConfig |
维护配置。 |
nodeConfig |
工作负载节点配置。 |
fleet |
仅限输出。集群的舰队配置。 |
status |
仅限输出。详细的集群状态。 |
validationCheck |
仅限输出。预检检查的结果。 |
securityConfig |
与安全相关的设置配置。 |
maintenanceStatus |
仅限输出。正在进行的维护任务的状态。 |
adminClusterName |
仅限输出。管理相应用户集群的裸金属管理员集群的资源名称。 |
nodeAccessConfig |
与节点访问权限相关的配置。 |
osEnvironmentConfig |
与操作系统环境相关的配置。 |
binaryAuthorization |
与 Binary Authorization 相关的配置。 |
upgradePolicy |
集群升级政策。 |
localNamespace |
仅限输出。集群的命名空间。 |
州
裸金属用户集群的生命周期状态。
枚举 | |
---|---|
STATE_UNSPECIFIED |
未设置。 |
PROVISIONING |
“PROVISIONING”状态表示正在创建集群。 |
RUNNING |
“RUNNING”状态表示集群已创建并且完全可用。 |
RECONCILING |
“RECONCILING”状态表示集群正在更新。该节点池仍可使用,但性能可能会降低。 |
STOPPING |
“STOPPING”状态表示集群正在被删除。 |
ERROR |
“ERROR”状态表示集群处于不可恢复的损坏状态。 |
DEGRADED |
“DEGRADED”状态表示集群需要用户执行操作才能恢复全部功能。 |
BareMetalNetworkConfig
指定集群网络配置。
JSON 表示法 |
---|
{ "advancedNetworking": boolean, "multipleNetworkInterfacesConfig": { object ( |
字段 | |
---|---|
advancedNetworking |
启用后,即可使用高级 Anthos 网络功能,例如使用 BGP 的捆绑式负载均衡或出站 NAT 网关。设置高级网络功能的配置会自动设置此标志。 |
multipleNetworkInterfacesConfig |
多个网络接口的配置。 |
srIovConfig |
SR-IOV 的配置。 |
联合字段 cluster_cidr_configuration 。要在裸金属用户集群中使用的 CIDR 配置。cluster_cidr_configuration 只能是下列其中一项: |
|
islandModeCidr |
岛屿模式 CIDR 的配置。在孤岛模式网络中,节点具有唯一的 IP 地址,但 pod 在集群中没有唯一的地址。这不会引起问题,因为一个集群中的 pod 绝不会直接与另一个集群中的 pod 通信。而是存在一些在一个集群中的 pod 与另一个集群中的 pod 之间进行协调的网关。 |
BareMetalIslandModeCidrConfig
指定在孤岛模式下运行时的集群 CIDR 配置。
JSON 表示法 |
---|
{ "serviceAddressCidrBlocks": [ string ], "podAddressCidrBlocks": [ string ] } |
字段 | |
---|---|
serviceAddressCidrBlocks[] |
必需。集群中的所有服务都会分配有这些范围内的 RFC1918 IPv4 地址。从 1.15 版开始,此字段在创建后可变。 |
podAddressCidrBlocks[] |
必需。集群中的所有 pod 都会分配有这些范围内的 RFC1918 IPv4 地址。此字段一经创建便无法更改。 |
BareMetalMultipleNetworkInterfacesConfig
指定多网络接口集群配置。
JSON 表示法 |
---|
{ "enabled": boolean } |
字段 | |
---|---|
enabled |
是否为 pod 启用多个网络接口。 设置后,networkConfig.advanced_networking 会自动设置为 true。 |
BareMetalSrIovConfig
指定 SR-IOV 网络运算符配置。
JSON 表示法 |
---|
{ "enabled": boolean } |
字段 | |
---|---|
enabled |
是否安装 SR-IOV 运算符。 |
BareMetalControlPlaneConfig
指定控制平面配置。
JSON 表示法 |
---|
{ "controlPlaneNodePoolConfig": { object ( |
字段 | |
---|---|
controlPlaneNodePoolConfig |
必需。配置运行控制平面的节点池。 |
apiServerArgs[] |
自定义默认 API 服务器实参。仅支持部分自定义标志。如需了解确切格式,请参阅 API 服务器文档。 |
BareMetalControlPlaneNodePoolConfig
指定控制平面节点池配置。
JSON 表示法 |
---|
{
"nodePoolConfig": {
object ( |
字段 | |
---|---|
nodePoolConfig |
必需。运行控制平面的节点池的通用配置。 |
BareMetalApiServerArgument
表示实参名称->值对。仅支持部分自定义标志。如需了解确切格式,请参阅 API 服务器文档。
JSON 表示法 |
---|
{ "argument": string, "value": string } |
字段 | |
---|---|
argument |
必需。API 服务器命令行中显示的实参名称,请务必移除开头的短划线。 |
value |
必需。实参的值(将传递给 API 服务器命令行)。 |
BareMetalLoadBalancerConfig
指定负载平衡器配置。
JSON 表示法 |
---|
{ "vipConfig": { object ( |
字段 | |
---|---|
vipConfig |
负载均衡器使用的 VIP。 |
portConfig |
配置负载平衡器将监听的端口。 |
联合字段 load_balancer_configuration 。裸机用户集群的负载平衡器配置。load_balancer_configuration 只能是下列其中一项: |
|
metalLbConfig |
MetalLB 负载平衡器的配置。 |
manualLbConfig |
手动配置的负载均衡器。 |
bgpLbConfig |
BGP 类型负载平衡器的配置。 设置后,networkConfig.advanced_networking 会自动设置为 true。 |
BareMetalVipConfig
指定 Bare Metal 负载平衡器的 VIP 配置。
JSON 表示法 |
---|
{ "controlPlaneVip": string, "ingressVip": string } |
字段 | |
---|---|
controlPlaneVip |
您之前为此裸金属用户集群的 Kubernetes API 预留的 VIP。 |
ingressVip |
您之前为此裸金属用户集群的入站流量预留的 VIP。 |
BareMetalPortConfig
为裸金属用户集群指定负载平衡器端口。
JSON 表示法 |
---|
{ "controlPlaneLoadBalancerPort": integer } |
字段 | |
---|---|
controlPlaneLoadBalancerPort |
控制平面托管的负载平衡器将监听的端口。 |
BareMetalMetalLbConfig
表示 MetalLB 负载平衡器的配置参数。
JSON 表示法 |
---|
{ "addressPools": [ { object ( |
字段 | |
---|---|
addressPools[] |
必需。AddressPools 是负载平衡器类型服务所使用的非重叠 IP 池的列表。所有地址都必须可路由到负载平衡器节点。IngressVIP 必须包含在池中。 |
loadBalancerNodePoolConfig |
指定运行负载平衡器的节点池。此池中的节点之间必须为 L2 连接。如果缺少此参数,则控制平面节点池将用作负载平衡器池。 |
BareMetalLoadBalancerAddressPool
表示负载平衡器使用的 IP 池。
JSON 表示法 |
---|
{ "pool": string, "addresses": [ string ], "avoidBuggyIps": boolean, "manualAssign": boolean } |
字段 | |
---|---|
pool |
必需。地址池的名称。 |
addresses[] |
必需。属于相应池的地址。每个地址都必须采用 CIDR 格式 (1.2.3.0/24) 或范围格式 (1.2.3.1-1.2.3.5)。 |
avoidBuggyIps |
如果为 true,则避免使用以 .0 或 .255 结尾的 IP。这样可以避免有问题的用户设备错误地丢弃发送到这些特殊 IP 地址的 IPv4 流量。 |
manualAssign |
如果为 true,则防止自动分配 IP 地址。 |
BareMetalLoadBalancerNodePoolConfig
指定负载平衡器的节点池配置。
JSON 表示法 |
---|
{
"nodePoolConfig": {
object ( |
字段 | |
---|---|
nodePoolConfig |
运行负载平衡器的节点池的通用配置。 |
BareMetalManualLbConfig
表示手动负载平衡器的配置参数。
JSON 表示法 |
---|
{ "enabled": boolean } |
字段 | |
---|---|
enabled |
是否启用了手动负载均衡。 |
BareMetalBgpLbConfig
BareMetalBgpLbConfig 表示边界网关协议 (BGP) 负载平衡器的配置参数。
JSON 表示法 |
---|
{ "asn": string, "bgpPeerConfigs": [ { object ( |
字段 | |
---|---|
asn |
必需。集群的 BGP 自治系统编号 (ASN)。创建集群后,可以更新此字段。 |
bgpPeerConfigs[] |
必需。集群将连接到的 BGP 对等体的列表。必须为每个控制平面节点配置至少一个对等节点。 控制平面节点将连接到这些对等方,以通告控制平面 VIP。默认情况下,服务负载平衡器也会使用这些对等互连。 创建集群后,可以更新此字段。 |
addressPools[] |
必需。AddressPools 是负载平衡器类型服务所使用的非重叠 IP 池的列表。所有地址都必须可路由到负载平衡器节点。IngressVIP 必须包含在池中。 |
loadBalancerNodePoolConfig |
指定运行数据平面负载均衡的节点池。此池中的节点之间必须为 L2 连接。如果缺少此字段,则控制平面节点池用于数据平面负载均衡。 |
BareMetalBgpPeerConfig
BareMetalBgpPeerConfig 表示边界网关协议 (BGP) 对等互联方的配置参数。
JSON 表示法 |
---|
{ "asn": string, "ipAddress": string, "controlPlaneNodes": [ string ] } |
字段 | |
---|---|
asn |
必需。包含外部对等设备的网络的 BGP 自治系统编号 (ASN)。 |
ipAddress |
必需。外部对等设备的 IP 地址。 |
controlPlaneNodes[] |
连接到外部对等体的控制平面节点的 IP 地址。如果您未指定任何控制平面节点,则所有控制平面节点都可以连接到外部对等体。如果指定一个或多个 IP 地址,则只有指定的节点会参与对等互连会话。 |
BareMetalStorageConfig
BareMetalStorageConfig 用于指定集群存储配置。
JSON 表示法 |
---|
{ "lvpShareConfig": { object ( |
字段 | |
---|---|
lvpShareConfig |
必需。指定共享文件系统中的子目录所支持的本地 PersistentVolume 的配置。创建集群时,系统会自动创建这些子目录。 |
lvpNodeMountsConfig |
必需。指定装载的节点磁盘所支持的本地 PersistentVolume 的配置。这些磁盘需要由用户进行格式化并装载,这些操作可在集群创建之前或之后完成。 |
BareMetalProxyConfig
指定集群代理配置。
JSON 表示法 |
---|
{ "uri": string, "noProxy": [ string ] } |
字段 | |
---|---|
uri |
必需。指定代理服务器的地址。示例: 请勿以 |
noProxy[] |
应跳过代理的 IP、主机名和域名的列表。示例:["127.0.0.1", "example.com", ".corp", "localhost"]。 |
BareMetalClusterOperationsConfig
指定裸金属用户集群的可观测性基础架构。
JSON 表示法 |
---|
{ "enableApplicationLogs": boolean } |
字段 | |
---|---|
enableApplicationLogs |
是否应启用应用日志/指标收集(除了系统日志/指标之外)。 |
BareMetalMaintenanceConfig
指定将裸金属节点置于维护模式和从维护模式中移出的配置。
JSON 表示法 |
---|
{ "maintenanceAddressCidrBlocks": [ string ] } |
字段 | |
---|---|
maintenanceAddressCidrBlocks[] |
必需。这些范围内的所有 IPv4 地址都将进入维护模式。处于维护模式的节点将被封锁和排空。如果这两个条件都为 true,则会在节点资源上设置“baremetal.cluster.gke.io/maintenance”注释。 |
BareMetalWorkloadNodeConfig
指定工作负载节点配置。
JSON 表示法 |
---|
{
"maxPodsPerNode": string,
"containerRuntime": enum ( |
字段 | |
---|---|
maxPodsPerNode |
一个节点可运行的 pod 数上限。分配给节点的 CIDR 范围的大小将由此参数派生而来。 |
containerRuntime |
指定将使用的容器运行时。 |
ContainerRuntime
用于在此用户集群中运行容器的运行时。
枚举 | |
---|---|
CONTAINER_RUNTIME_UNSPECIFIED |
未选择任何容器运行时。 |
CONTAINERD |
Containerd 运行时。 |
BareMetalSecurityConfig
指定裸金属用户集群的安全相关设置。
JSON 表示法 |
---|
{
"authorization": {
object ( |
字段 | |
---|---|
authorization |
配置用户对用户集群的访问权限。 |
BareMetalMaintenanceStatus
表示裸金属用户集群的维护状态。
JSON 表示法 |
---|
{
"machineDrainStatus": {
object ( |
字段 | |
---|---|
machineDrainStatus |
节点机器的维护状态。 |
BareMetalMachineDrainStatus
表示正在进行排空操作的节点机器的状态。
JSON 表示法 |
---|
{ "drainingMachines": [ { object ( |
字段 | |
---|---|
drainingMachines[] |
耗电机器的列表。 |
drainedMachines[] |
耗尽的机器列表。 |
BareMetalDrainingMachine
表示当前正在排空的机器。
JSON 表示法 |
---|
{ "nodeIp": string, "podCount": integer } |
字段 | |
---|---|
nodeIp |
排空机器 IP 地址。 |
podCount |
尚未排空的 Pod 数量。 |
BareMetalDrainedMachine
表示当前已排空的机器。
JSON 表示法 |
---|
{ "nodeIp": string } |
字段 | |
---|---|
nodeIp |
已排空的机器的 IP 地址。 |
BareMetalNodeAccessConfig
为裸金属用户集群指定节点访问权限相关设置。
JSON 表示法 |
---|
{ "loginUser": string } |
字段 | |
---|---|
loginUser |
LoginUser 是用于访问节点机器的用户名。如果未设置,则默认为“root”。 |
BareMetalOsEnvironmentConfig
指定集群配置的操作系统设置。
JSON 表示法 |
---|
{ "packageRepoExcluded": boolean } |
字段 | |
---|---|
packageRepoExcluded |
在初始化裸机时是否不应包含软件包代码库。 |
BareMetalClusterUpgradePolicy
BareMetalClusterUpgradePolicy 定义了集群升级政策。
JSON 表示法 |
---|
{
"policy": enum ( |
字段 | |
---|---|
policy |
指定要使用的升级政策。 |
pause |
仅限输出。Pause 用于显示升级暂停状态。目前只能查看。 |
NodePoolPolicy
指定工作器节点池的升级政策。
枚举 | |
---|---|
NODE_POOL_POLICY_UNSPECIFIED |
未选择任何升级政策。 |
SERIAL |
按顺序升级工作器节点池。 |
CONCURRENT |
并行升级所有工作器节点池。 |
方法 |
|
---|---|
|
在指定的项目和位置中创建新的 Bare Metal 集群。 |
|
删除单个裸金属集群。 |
|
将现有裸金属用户集群及其节点池注册到给定项目和位置中的 Anthos On-Prem API。 |
|
获取单个裸金属集群的详细信息。 |
|
列出指定项目和位置中的裸金属集群。 |
|
更新单个裸机集群的参数。 |
|
查询裸金属用户集群版本配置。 |