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

不可變更。裸機管理員叢集資源名稱。

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

僅供輸出。如果已設定,目前正在對 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 不同。如果是新叢集,這個欄位會與使用者提供的叢集名稱相符,並顯示在資源名稱的最後一個元件中。無法修改。

所有使用者都應使用這個名稱,透過 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。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

這是必要旗標,arg 的值,會傳遞至 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

Bare Metal 負載平衡器設定的 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)

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

lvpNodeMountsConfig

object (BareMetalLvpConfig)

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

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。高可用性和非高可用性管理員叢集的上限都是 250。下限為非高可用性管理員叢集的 64,以及高可用性管理員叢集的 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

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

方法

create

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

enroll

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

get

取得單一裸機管理員叢集的詳細資料。

list

列出指定專案和位置中的裸機管理員叢集。

patch

更新單一 bare metal 管理員叢集的參數。

queryVersionConfig

查詢 Bare Metal 管理員叢集版本設定。