REST Resource: projects.locations.bareMetalAdminClusters

資源:BareMetalAdminCluster

表示 bare metal 管理員叢集的資源。

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

這個 bare metal 管理員叢集的使用者可讀說明。

uid

string

僅供輸出。Bare Metal 管理員叢集的專屬 ID。

bareMetalVersion

string

裸機管理員叢集的裸機中 Anthos 叢集版本。

state

enum (State)

僅供輸出。bare metal 管理員叢集的目前狀態。

endpoint

string

僅供輸出。bare metal 管理員叢集 API 伺服器的 IP 位址名稱。

reconciling

boolean

僅供輸出。如果已設為 true,表示目前正在對 bare metal 管理員叢集進行變更。

createTime

string (Timestamp format)

僅供輸出。這個 bare metal 管理員叢集的建立時間。

使用 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)

僅供輸出。上次更新此 bare metal 管理員叢集的時間。

使用 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 會與資源名稱中的 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)

Proxy 設定。

securityConfig

object (BareMetalAdminSecurityConfig)

安全性相關設定。

nodeAccessConfig

object (BareMetalAdminNodeAccessConfig)

節點存取權相關設定。

osEnvironmentConfig

object (BareMetalAdminOsEnvironmentConfig)

OS 環境相關設定。

binaryAuthorization

object (BinaryAuthorization)

二進位授權相關設定。

狀態

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。節點集區的名稱和命名空間會與叢集相同。

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 代表 arg 名稱->值組合。系統僅支援部分自訂標記。如要瞭解確切的格式,請參閱下列 API 伺服器說明文件:https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/

JSON 表示法
{
  "argument": string,
  "value": string
}
欄位
argument

string

這是必要旗標,在 API Server 指令列中顯示的引數名稱,請務必移除開頭的破折號。

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:負載平衡器設定的 bare metal 專用設定。

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)

這是必要旗標,指定共用檔案系統中子目錄所支援的本機 PersistentVolumes 設定。系統會在建立叢集時自動建立這些子目錄。

lvpNodeMountsConfig

object (BareMetalLvpConfig)

這是必要旗標,指定已掛接節點磁碟所支援的本機 PersistentVolume 設定。這些磁碟必須由使用者進行格式化和掛接,使用者可以在建立叢集之前或之後完成作業。

BareMetalAdminClusterOperationsConfig

BareMetalAdminClusterOperationsConfig 會指定管理員叢集的可觀察性基礎架構。

JSON 表示法
{
  "enableApplicationLogs": boolean
}
欄位
enableApplicationLogs

boolean

是否應啟用應用程式記錄檔/指標收集功能 (除了系統記錄檔/指標)。

BareMetalAdminMaintenanceConfig

BareMetalAdminMaintenanceConfig 會指定要將裸機管理員叢集 CR 節點置於維護狀態或退出維護狀態的設定。

JSON 表示法
{
  "maintenanceAddressCidrBlocks": [
    string
  ]
}
欄位
maintenanceAddressCidrBlocks[]

string

這是必要旗標,這些範圍內的所有 IPv4 位址都會進入維護模式。處於維護模式的節點會被封鎖和清空。如果兩者皆為 True,節點資源就會設定「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。高可用性和非高可用性管理員叢集的上限皆為 250。非 HA 管理員叢集的下限為 64,HA 管理員叢集的下限為 32。

BareMetalAdminProxyConfig

BareMetalAdminProxyConfig 會指定叢集 Proxy 設定。

JSON 表示法
{
  "uri": string,
  "noProxy": [
    string
  ]
}
欄位
uri

string

這是必要旗標,指定 Proxy 伺服器的地址。例如:http://domain

警告:請勿以 http://(username:password@)domain 格式提供憑證,否則會遭到伺服器拒絕。

noProxy[]

string

應略過 Proxy 的 IP、主機名稱和網域清單。例如:["127.0.0.1"、"example.com"、".corp"、"localhost"]。

BareMetalAdminSecurityConfig

指定裸機管理員叢集的安全性相關設定。

JSON 表示法
{
  "authorization": {
    object (Authorization)
  }
}
欄位
authorization

object (Authorization)

設定管理員叢集的使用者存取權。

BareMetalAdminNodeAccessConfig

指定 bare metal 管理員叢集的節點存取權相關設定。

JSON 表示法
{
  "loginUser": string
}
欄位
loginUser

string

這是必要旗標,LoginUser 是用於存取節點機器的使用者名稱。如果未設定,預設值為「root」。

BareMetalAdminOsEnvironmentConfig

指定叢集佈建作業的作業系統操作設定。

JSON 表示法
{
  "packageRepoExcluded": boolean
}
欄位
packageRepoExcluded

boolean

是否要在初始化不含作業系統的機器時新增套件存放區。

方法

create

在指定的專案和位置中建立新的 bare metal 管理員叢集。

enroll

將現有的裸機管理員叢集註冊至特定專案和位置中的 Anthos On-Prem API。

get

取得單一 bare metal 管理員叢集的詳細資料。

list

列出指定專案和地點的裸機管理叢集。

patch

更新單一裸機管理員叢集的參數。

queryVersionConfig

查詢 bare metal 管理員叢集版本設定。