REST Resource: projects.locations.bareMetalAdminClusters

资源:BareMetalAdminCluster

表示裸金属管理员集群的资源。

JSON 表示法
{
  "name": string,
  "description": string,
  "uid": string,
  "bareMetalVersion": string,
  "state": enum (State),
  "endpoint": string,
  "reconciling": boolean,
  "createTime": string,
  "updateTime": string,
  "deleteTime": string,
  "localName": string,
  "etag": string,
  "annotations": {
    string: string,
    ...
  },
  "networkConfig": {
    object (BareMetalAdminNetworkConfig)
  },
  "controlPlane": {
    object (BareMetalAdminControlPlaneConfig)
  },
  "loadBalancer": {
    object (BareMetalAdminLoadBalancerConfig)
  },
  "storage": {
    object (BareMetalAdminStorageConfig)
  },
  "fleet": {
    object (Fleet)
  },
  "clusterOperations": {
    object (BareMetalAdminClusterOperationsConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "maintenanceConfig": {
    object (BareMetalAdminMaintenanceConfig)
  },
  "maintenanceStatus": {
    object (BareMetalAdminMaintenanceStatus)
  },
  "validationCheck": {
    object (ValidationCheck)
  },
  "nodeConfig": {
    object (BareMetalAdminWorkloadNodeConfig)
  },
  "proxy": {
    object (BareMetalAdminProxyConfig)
  },
  "securityConfig": {
    object (BareMetalAdminSecurityConfig)
  },
  "nodeAccessConfig": {
    object (BareMetalAdminNodeAccessConfig)
  },
  "osEnvironmentConfig": {
    object (BareMetalAdminOsEnvironmentConfig)
  },
  "binaryAuthorization": {
    object (BinaryAuthorization)
  }
}
字段
name

string

不可变。Bare Metal 管理员集群资源名称。

description

string

此裸机管理员集群的直观易懂的说明。

uid

string

仅限输出。裸金属管理集群的唯一标识符。

bareMetalVersion

string

裸机管理员集群的 Anthos Clusters on Bare Metal 版本。

state

enum (State)

仅限输出。Bare Metal 管理员集群的当前状态。

endpoint

string

仅限输出。裸机管理员集群 API 服务器的 IP 地址名称。

reconciling

boolean

仅限输出。如果设置了此字段,则当前正在对裸机管理员集群进行更改。

createTime

string (Timestamp format)

仅限输出。此裸金属管理员集群的创建时间。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

仅限输出。此裸金属管理员集群的上次更新时间。

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

deleteTime

string (Timestamp format)

仅限输出。此裸金属管理员集群的删除时间。如果资源未被删除,此字段必须为空

采用 RFC 3339 标准,生成的输出将始终在末尾带 Z,并使用 0、3、6 或 9 个小数位。不带“Z”的偏差时间也是可以接受的。示例:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

localName

string

仅限输出。裸金属集群自定义资源的对象名称。在将现有集群注册到 API 时,此字段用于支持有冲突的名称。在集群注册过程中使用时,此字段将不同于资源名称中的 ID。对于新集群,此字段将与用户提供的集群名称匹配,并显示在资源名称的最后一个组件中。此值不可修改。

所有用户都应使用此名称通过 gkectl 或 kubectl 访问其集群,并且在查看管理员集群控制器日志时应该会看到本地名称。

etag

string

此校验和由服务器根据其他字段的值计算得出,可在遇到更新和删除请求时发送,以确保客户端在继续操作之前具有最新值。允许客户端通过乐观并发控制执行一致的“读取-修改-写入”操作。

annotations

map (key: string, value: string)

裸金属管理员集群上的注解。此字段的限制与 Kubernetes 注解相同。所有键和值的总大小不得超过 256k。键可以包含 2 个部分:前缀(可选)和名称(必需),以斜杠 (/) 分隔。前缀必须是 DNS 子网域。名称不得超过 63 个字符,以字母数字字符开头和结尾,中间可以使用短划线 (-)、下划线 (_)、点 (.) 和字母数字字符。

包含一系列 "key": value 对的对象。示例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

networkConfig

object (BareMetalAdminNetworkConfig)

网络配置。

controlPlane

object (BareMetalAdminControlPlaneConfig)

控制平面配置。

loadBalancer

object (BareMetalAdminLoadBalancerConfig)

负载平衡器配置。

storage

object (BareMetalAdminStorageConfig)

存储配置。

fleet

object (Fleet)

仅限输出。集群的舰队配置。

clusterOperations

object (BareMetalAdminClusterOperationsConfig)

集群操作配置。

status

object (ResourceStatus)

仅限输出。ResourceStatus,表示详细的集群状态。

maintenanceConfig

object (BareMetalAdminMaintenanceConfig)

维护配置。

maintenanceStatus

object (BareMetalAdminMaintenanceStatus)

仅限输出。MaintenanceStatus,表示维护状态。

validationCheck

object (ValidationCheck)

仅限输出。ValidationCheck,表示预检检查的结果。

nodeConfig

object (BareMetalAdminWorkloadNodeConfig)

工作负载节点配置。

proxy

object (BareMetalAdminProxyConfig)

代理配置。

securityConfig

object (BareMetalAdminSecurityConfig)

与安全相关的配置。

nodeAccessConfig

object (BareMetalAdminNodeAccessConfig)

与节点访问权限相关的配置。

osEnvironmentConfig

object (BareMetalAdminOsEnvironmentConfig)

与操作系统环境相关的配置。

binaryAuthorization

object (BinaryAuthorization)

与 Binary Authorization 相关的配置。

Bare Metal 管理员集群的生命周期状态。

枚举
STATE_UNSPECIFIED 未设置。
PROVISIONING “PROVISIONING”状态表示正在创建集群。
RUNNING “RUNNING”状态表示集群已创建并且完全可用。
RECONCILING “RECONCILING”状态表示集群正在更新。该节点池仍可使用,但性能可能会降低。
STOPPING “STOPPING”状态表示集群正在被删除。
ERROR “ERROR”状态表示集群处于不可恢复的损坏状态。
DEGRADED “DEGRADED”状态表示集群需要用户执行操作才能恢复全部功能。

BareMetalAdminNetworkConfig

BareMetalAdminNetworkConfig 用于指定集群网络配置。

JSON 表示法
{

  // Union field cluster_cidr_configuration can be only one of the following:
  "islandModeCidr": {
    object (BareMetalAdminIslandModeCidrConfig)
  }
  // End of list of possible types for union field cluster_cidr_configuration.
}
字段
联合字段 cluster_cidr_configuration。要在管理员集群中使用的 CIDR 配置。cluster_cidr_configuration 只能是下列其中一项:
islandModeCidr

object (BareMetalAdminIslandModeCidrConfig)

孤岛模式 CIDR 的配置。

BareMetalAdminIslandModeCidrConfig

BareMetalAdminIslandModeCidrConfig 用于指定在孤岛模式下运行时的集群 CIDR 配置。

JSON 表示法
{
  "serviceAddressCidrBlocks": [
    string
  ],
  "podAddressCidrBlocks": [
    string
  ]
}
字段
serviceAddressCidrBlocks[]

string

必需。集群中的所有服务都会分配到一个这些范围内的 RFC1918 IPv4 地址。此字段一经创建便无法更改。

podAddressCidrBlocks[]

string

必需。集群中的所有 pod 都会分配有这些范围内的 RFC1918 IPv4 地址。此字段一经创建便无法更改。

BareMetalAdminControlPlaneConfig

BareMetalAdminControlPlaneConfig 用于指定控制平面配置。

JSON 表示法
{
  "controlPlaneNodePoolConfig": {
    object (BareMetalAdminControlPlaneNodePoolConfig)
  },
  "apiServerArgs": [
    {
      object (BareMetalAdminApiServerArgument)
    }
  ]
}
字段
controlPlaneNodePoolConfig

object (BareMetalAdminControlPlaneNodePoolConfig)

必需。配置运行控制平面的节点池。如果指定,系统会为集群的控制平面创建相应的 NodePool。NodePool 将与集群具有相同的名称和命名空间。

apiServerArgs[]

object (BareMetalAdminApiServerArgument)

自定义默认 API 服务器参数。仅支持部分自定义标志。如需了解确切格式,请参阅以下 API 服务器文档:https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/

BareMetalAdminControlPlaneNodePoolConfig

BareMetalAdminControlPlaneNodePoolConfig 用于指定控制平面节点池配置。我们提供了控制平面专用节点池配置,以便在未来灵活地支持控制平面专用字段。

JSON 表示法
{
  "nodePoolConfig": {
    object (BareMetalNodePoolConfig)
  }
}
字段
nodePoolConfig

object (BareMetalNodePoolConfig)

必需。运行控制平面的节点池的通用配置。

BareMetalAdminApiServerArgument

BareMetalAdminApiServerArgument 表示实参名称-值对。仅支持部分自定义标志。如需了解确切格式,请参阅以下 API 服务器文档:https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/

JSON 表示法
{
  "argument": string,
  "value": string
}
字段
argument

string

必需。请务必移除 API 服务器命令行中显示的参数名称前面的短划线。

value

string

必需。参数的值,将传递给 API 服务器命令行。

BareMetalAdminLoadBalancerConfig

BareMetalAdminLoadBalancerConfig 用于指定负载平衡器配置。

JSON 表示法
{
  "vipConfig": {
    object (BareMetalAdminVipConfig)
  },
  "portConfig": {
    object (BareMetalAdminPortConfig)
  },

  // Union field load_balancer_configuration can be only one of the following:
  "manualLbConfig": {
    object (BareMetalAdminManualLbConfig)
  }
  // End of list of possible types for union field load_balancer_configuration.
}
字段
vipConfig

object (BareMetalAdminVipConfig)

负载平衡器使用的 VIP。

portConfig

object (BareMetalAdminPortConfig)

配置负载平衡器将监听的端口。

联合字段 load_balancer_configuration。要在管理员集群中使用的负载平衡器配置。load_balancer_configuration 只能是下列其中一项:
manualLbConfig

object (BareMetalAdminManualLbConfig)

手动配置的负载平衡器。

BareMetalAdminVipConfig

BareMetalAdminVipConfig,适用于裸机负载平衡器配置。

JSON 表示法
{
  "controlPlaneVip": string
}
字段
controlPlaneVip

string

您之前为此裸机管理员集群的 Kubernetes API 预留的 VIP。

BareMetalAdminPortConfig

BareMetalAdminPortConfig 是负载平衡器端口的规范。

JSON 表示法
{
  "controlPlaneLoadBalancerPort": integer
}
字段
controlPlaneLoadBalancerPort

integer

控制平面托管的负载平衡器将监听的端口。

BareMetalAdminManualLbConfig

BareMetalAdminManualLbConfig 表示手动负载平衡器的配置参数。

JSON 表示法
{
  "enabled": boolean
}
字段
enabled

boolean

是否启用了手动负载均衡。

BareMetalAdminStorageConfig

BareMetalAdminStorageConfig 用于指定集群存储配置。

JSON 表示法
{
  "lvpShareConfig": {
    object (BareMetalLvpShareConfig)
  },
  "lvpNodeMountsConfig": {
    object (BareMetalLvpConfig)
  }
}
字段
lvpShareConfig

object (BareMetalLvpShareConfig)

必需。指定共享文件系统中的子目录所支持的本地 PersistentVolume 的配置。创建集群时,系统会自动创建这些子目录。

lvpNodeMountsConfig

object (BareMetalLvpConfig)

必需。指定由已装载节点磁盘支持的本地 PersistentVolume 的配置。这些磁盘需要由用户进行格式化并装载,这些操作可在集群创建之前或之后完成。

BareMetalAdminClusterOperationsConfig

BareMetalAdminClusterOperationsConfig 用于指定管理员集群的可观测性基础架构。

JSON 表示法
{
  "enableApplicationLogs": boolean
}
字段
enableApplicationLogs

boolean

是否应启用应用日志/指标(以及系统日志/指标)的收集。

BareMetalAdminMaintenanceConfig

BareMetalAdminMaintenanceConfig 用于指定将 Bare Metal 管理员集群 CR 节点置于维护模式和退出维护模式的配置。

JSON 表示法
{
  "maintenanceAddressCidrBlocks": [
    string
  ]
}
字段
maintenanceAddressCidrBlocks[]

string

必需。这些范围内的所有 IPv4 地址都将被置于维护模式。处于维护模式的节点将被封锁并排空。如果这两个条件都成立,系统会在节点资源上设置“baremetal.cluster.gke.io/maintenance”注解。

BareMetalAdminMaintenanceStatus

BareMetalAdminMaintenanceStatus 表示裸机管理员集群 CR 节点的维护状态。

JSON 表示法
{
  "machineDrainStatus": {
    object (BareMetalAdminMachineDrainStatus)
  }
}
字段
machineDrainStatus

object (BareMetalAdminMachineDrainStatus)

表示正在排空和已排空的机器节点的状态。用于显示集群升级的进度。

BareMetalAdminMachineDrainStatus

BareMetalAdminMachineDrainStatus 表示正在进行排空操作的裸机节点机器的状态。

JSON 表示法
{
  "drainingMachines": [
    {
      object (BareMetalAdminDrainingMachine)
    }
  ],
  "drainedMachines": [
    {
      object (BareMetalAdminDrainedMachine)
    }
  ]
}
字段
drainingMachines[]

object (BareMetalAdminDrainingMachine)

排水机的列表。

drainedMachines[]

object (BareMetalAdminDrainedMachine)

已耗尽流量的机器列表。

BareMetalAdminDrainingMachine

BareMetalAdminDrainingMachine 表示当前正在耗尽资源的机器。

JSON 表示法
{
  "nodeIp": string,
  "podCount": integer
}
字段
nodeIp

string

排空机器 IP 地址。

podCount

integer

尚未耗尽的 Pod 数量。

BareMetalAdminDrainedMachine

BareMetalAdminDrainedMachine 表示已耗尽资源的机器。

JSON 表示法
{
  "nodeIp": string
}
字段
nodeIp

string

已耗尽流量的机器 IP 地址。

BareMetalAdminWorkloadNodeConfig

BareMetalAdminWorkloadNodeConfig 用于指定工作负载节点配置。

JSON 表示法
{
  "maxPodsPerNode": string
}
字段
maxPodsPerNode

string (int64 format)

节点可以运行的 pod 数上限。分配给节点的 CIDR 范围的大小将根据此参数派生。默认情况下,每个节点会创建 110 个 Pod。对于 HA 和非 HA 管理员集群,上限均为 250。下限为 64(非 HA 管理员集群)和 32(HA 管理员集群)。

BareMetalAdminProxyConfig

BareMetalAdminProxyConfig 用于指定集群代理配置。

JSON 表示法
{
  "uri": string,
  "noProxy": [
    string
  ]
}
字段
uri

string

必需。指定代理服务器的地址。示例:http://domain

警告:请勿以 http://(username:password@)domain 格式提供凭据,否则服务器会拒绝这些凭据。

noProxy[]

string

应跳过代理的 IP、主机名和域名的列表。示例:["127.0.0.1", "example.com", ".corp", "localhost"]。

BareMetalAdminSecurityConfig

指定 Bare Metal 管理员集群的安全相关设置。

JSON 表示法
{
  "authorization": {
    object (Authorization)
  }
}
字段
authorization

object (Authorization)

配置用户对管理员集群的访问权限。

BareMetalAdminNodeAccessConfig

指定裸机管理员集群的节点访问相关设置。

JSON 表示法
{
  "loginUser": string
}
字段
loginUser

string

必需。LoginUser 是用于访问节点机器的用户名。如果未设置,则默认为“root”。

BareMetalAdminOsEnvironmentConfig

指定集群配置的操作系统操作设置。

JSON 表示法
{
  "packageRepoExcluded": boolean
}
字段
packageRepoExcluded

boolean

在初始化裸机时是否应添加软件包代码库。

方法

create

在给定的项目和位置中创建新的裸金属管理集群。

enroll

将现有裸金属管理员集群注册到给定项目和位置中的 Anthos On-Prem API。

get

获取单个裸机管理员集群的详细信息。

list

列出给定项目和位置中的裸金属管理员集群。

patch

更新单个裸机管理员集群的参数。

queryVersionConfig

查询 Bare Metal 管理员集群版本配置。