REST Resource: projects.locations.vmwareAdminClusters

資源:VmwareAdminCluster

代表 VMware 管理員叢集的資源。

JSON 表示法
{
  "name": string,
  "description": string,
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "annotations": {
    string: string,
    ...
  },
  "state": enum (State),
  "endpoint": string,
  "reconciling": boolean,
  "localName": string,
  "bootstrapClusterMembership": string,
  "onPremVersion": string,
  "fleet": {
    object (Fleet)
  },
  "imageType": string,
  "vcenter": {
    object (VmwareAdminVCenterConfig)
  },
  "networkConfig": {
    object (VmwareAdminNetworkConfig)
  },
  "loadBalancer": {
    object (VmwareAdminLoadBalancerConfig)
  },
  "controlPlaneNode": {
    object (VmwareAdminControlPlaneNodeConfig)
  },
  "addonNode": {
    object (VmwareAdminAddonNodeConfig)
  },
  "antiAffinityGroups": {
    object (VmwareAAGConfig)
  },
  "autoRepairConfig": {
    object (VmwareAutoRepairConfig)
  },
  "status": {
    object (ResourceStatus)
  },
  "platformConfig": {
    object (VmwarePlatformConfig)
  },
  "preparedSecrets": {
    object (VmwareAdminPreparedSecretsConfig)
  },
  "authorization": {
    object (VmwareAdminAuthorizationConfig)
  },
  "validationCheck": {
    object (ValidationCheck)
  }
}
欄位
name

string

不可變動。VMware 管理員叢集資源名稱。

description

string

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

uid

string

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

etag

string

伺服器會根據其他欄位的值計算此總和檢查碼,並可能在更新和刪除要求中傳送,以確保用戶端在繼續操作前擁有最新的值。允許用戶端透過樂觀並行控制,執行一致的讀取-修改-寫入作業。

createTime

string (Timestamp format)

僅供輸出。VMware 管理員叢集建立的時間。

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

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

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

annotations

map (key: string, value: string)

VMware 管理員叢集的註解。這個欄位與 Kubernetes 註解具有相同的限制。所有鍵值組合的總大小上限為 256k。索引鍵可包含 2 個部分:前置字串 (選填) 和名稱 (必填),兩者須以正斜線 (/) 分隔。前置字串必須是 DNS 子網域。名稱長度不得超過 63 個字元,開頭和結尾須為英數字元,中間須包含連字號 (-)、底線 (_)、點號 (.) 和英數字元。

包含 "key": value 組合清單的物件。範例:{ "name": "wrench", "mass": "1.3kg", "count": "3" }

state

enum (State)

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

endpoint

string

僅供輸出。VMware 管理員叢集 API 伺服器的 DNS 名稱。

reconciling

boolean

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

localName

string

僅供輸出。VMware OnPremAdminCluster 自訂資源的物件名稱。這個欄位可用於在將現有叢集註冊至 API 時,支援有衝突的名稱。當這個欄位用於叢集註冊時,其 ID 會與資源名稱中的 ID 不同。對於新叢集,這個欄位會與使用者提供的叢集名稱相符,並顯示在資源名稱的最後一個元件中。且無法修改。

所有使用者都應使用這個名稱,透過 gkectl 或 kubectl 存取叢集,並在查看管理叢集控制器記錄時,查看本機名稱。

bootstrapClusterMembership

string

這個 VMware 管理員叢集所屬的啟動叢集。

onPremVersion

string

管理員叢集的 VMware 版本中的 Anthos 叢集。

fleet

object (Fleet)

僅供輸出。叢集的機群設定。

imageType

string

VMware 管理員叢集的 OS 映像檔類型。

vcenter

object (VmwareAdminVCenterConfig)

VMware 管理員叢集的 VCenter 設定。

networkConfig

object (VmwareAdminNetworkConfig)

VMware 管理員叢集網路設定。

loadBalancer

object (VmwareAdminLoadBalancerConfig)

VMware 管理員叢集負載平衡器設定。

controlPlaneNode

object (VmwareAdminControlPlaneNodeConfig)

VMware 管理員叢集控制層節點設定。

addonNode

object (VmwareAdminAddonNodeConfig)

VMware 管理員叢集外掛程式節點設定。

antiAffinityGroups

object (VmwareAAGConfig)

VMware 管理員叢集反相依性群組設定。

autoRepairConfig

object (VmwareAutoRepairConfig)

VMware 管理員叢集自動修復設定。

status

object (ResourceStatus)

僅供輸出。代表詳細叢集狀態的 ResourceStatus。

platformConfig

object (VmwarePlatformConfig)

VMware 平台設定。

preparedSecrets

object (VmwareAdminPreparedSecretsConfig)

僅供輸出。VMware 管理員叢集已準備好密鑰設定。這項功能應一律由 Central API 啟用,而非由使用者設定。

authorization

object (VmwareAdminAuthorizationConfig)

VMware 管理員叢集授權設定。

validationCheck

object (ValidationCheck)

僅供輸出。ValidationCheck 代表預檢查詢作業的結果。

狀態

VMware 管理員叢集的生命週期狀態。

列舉
STATE_UNSPECIFIED 未設定。
PROVISIONING PROVISIONING 狀態表示系統正在建立叢集。
RUNNING RUNNING 狀態表示叢集已建立完成,可完全使用。
RECONCILING RECONCILING 狀態表示叢集正在更新。仍可使用,但效能可能會降低。
STOPPING STOPPING 狀態表示叢集正在刪除。
ERROR ERROR 狀態表示叢集處於無法復原的故障狀態。
DEGRADED 「DEGRADED」狀態表示叢集需要使用者採取行動,才能恢復完整功能。

VmwareAdminVCenterConfig

VmwareAdminVCenterConfig 包含 VMware 管理員叢集的 vCenter 設定。

JSON 表示法
{
  "resourcePool": string,
  "datastore": string,
  "datacenter": string,
  "cluster": string,
  "folder": string,
  "caCertData": string,
  "address": string,
  "dataDisk": string,
  "storagePolicyName": string
}
欄位
resourcePool

string

管理員叢集的 vCenter 資源集區名稱。

datastore

string

管理員叢集的 vCenter 資料儲存庫名稱。

datacenter

string

管理員叢集的 vCenter 資料中心名稱。

cluster

string

管理員叢集的 vCenter 叢集名稱。

folder

string

管理員叢集的 vCenter 資料夾名稱。

caCertData

string

包含 vCenter CA 憑證公開金鑰,用於 SSL 驗證。

address

string

vCenter IP 位址。

dataDisk

string

管理員叢集的虛擬機器磁碟 (VMDK) 名稱。

storagePolicyName

string

使用者叢集的 vCenter 儲存空間政策名稱。

VmwareAdminNetworkConfig

VmwareAdminNetworkConfig 包含 VMware 管理員叢集的網路設定。

JSON 表示法
{
  "serviceAddressCidrBlocks": [
    string
  ],
  "podAddressCidrBlocks": [
    string
  ],
  "vcenterNetwork": string,
  "hostConfig": {
    object (VmwareHostConfig)
  },
  "haControlPlaneConfig": {
    object (VmwareAdminHAControlPlaneConfig)
  },

  // Union field ip_configuration can be only one of the following:
  "staticIpConfig": {
    object (VmwareStaticIpConfig)
  },
  "dhcpIpConfig": {
    object (VmwareDhcpIpConfig)
  }
  // End of list of possible types for union field ip_configuration.
}
欄位
serviceAddressCidrBlocks[]

string

這是必要旗標,系統會為叢集中的所有服務指派這些範圍內的 RFC1918 IPv4 位址。僅支援單一範圍。建立後即無法變更。

podAddressCidrBlocks[]

string

這是必要旗標,系統會為叢集中的所有 Pod 指派這些範圍內的 RFC1918 IPv4 位址。僅支援單一範圍。建立後即無法變更。

vcenterNetwork

string

vcenterNetwork 會指定 vCenter 網路名稱。

hostConfig

object (VmwareHostConfig)

代表一般網路設定,不受主機 IP 位址影響。

haControlPlaneConfig

object (VmwareAdminHAControlPlaneConfig)

HA 管理員叢集控制層的設定。

聯集欄位 ip_configuration。VMware 管理員叢集使用的 IP 設定類型。ip_configuration 只能是下列其中一項:
staticIpConfig

object (VmwareStaticIpConfig)

靜態 IP 設定的配置設定。

dhcpIpConfig

object (VmwareDhcpIpConfig)

DHCP IP 設定的設定。

VmwareAdminHAControlPlaneConfig

指定 HA 管理員控制層設定。

JSON 表示法
{
  "controlPlaneIpBlock": {
    object (VmwareIpBlock)
  }
}
欄位
controlPlaneIpBlock

object (VmwareIpBlock)

管理員控制層節點的靜態 IP 位址。

VmwareAdminLoadBalancerConfig

VmwareAdminLoadBalancerConfig 包含 VMware 管理員叢集的負載平衡器設定。

JSON 表示法
{
  "vipConfig": {
    object (VmwareAdminVipConfig)
  },

  // Union field load_balancer_configuration can be only one of the following:
  "f5Config": {
    object (VmwareAdminF5BigIpConfig)
  },
  "manualLbConfig": {
    object (VmwareAdminManualLbConfig)
  },
  "metalLbConfig": {
    object (VmwareAdminMetalLbConfig)
  },
  "seesawConfig": {
    object (VmwareAdminSeesawConfig)
  }
  // End of list of possible types for union field load_balancer_configuration.
}
欄位
vipConfig

object (VmwareAdminVipConfig)

負載平衡器使用的 VIP。

聯集欄位 load_balancer_configuration。在 VMware 管理員叢集中使用的負載平衡器設定。load_balancer_configuration 只能是下列其中一項:
f5Config

object (VmwareAdminF5BigIpConfig)

F5 Big IP 類型負載平衡器的設定。

manualLbConfig

object (VmwareAdminManualLbConfig)

手動設定的負載平衡器。

metalLbConfig

object (VmwareAdminMetalLbConfig)

MetalLB 負載平衡器。

seesawConfig

object (VmwareAdminSeesawConfig)

僅供輸出。Seesaw 類型的負載平衡器設定。

VmwareAdminVipConfig

VmwareAdminVipConfig:用於 VMware 負載平衡器設定。

JSON 表示法
{
  "controlPlaneVip": string,
  "addonsVip": string
}
欄位
controlPlaneVip

string

您先前為管理員叢集的 Kubernetes API 設定的 VIP。

addonsVip

string

用於設定外掛程式負載平衡器的 VIP。

VmwareAdminF5BigIpConfig

VmwareAdminF5BigIpConfig 代表 F5 BIG-IP 負載平衡器的設定參數。

JSON 表示法
{
  "address": string,
  "partition": string,
  "snatPool": string
}
欄位
address

string

負載平衡器的 IP 位址。

partition

string

負載平衡器要使用的現有分區。這個分區通常會為管理員叢集建立,例如:'my-f5-admin-partition'。

snatPool

string

集區名稱。僅在使用 SNAT 時需要。

VmwareAdminManualLbConfig

JSON 表示法
{
  "ingressHttpNodePort": integer,
  "ingressHttpsNodePort": integer,
  "controlPlaneNodePort": integer,
  "konnectivityServerNodePort": integer,
  "addonsNodePort": integer
}
欄位
ingressHttpNodePort

integer

ingress 服務的 HTTP 適用的 NodePort。管理員叢集中的輸入服務會導入為 NodePort 類型的服務 (例如32527)。

ingressHttpsNodePort

integer

ingress 服務的 HTTPS 專用 NodePort。管理員叢集中的輸入服務會導入為 NodePort 類型的服務 (例如30139)。

controlPlaneNodePort

integer

控制平面服務的 NodePort。管理員叢集中的 Kubernetes API 伺服器會導入為 NodePort 類型的服務 (例如30968)。

konnectivityServerNodePort

integer

在每個 kube-apiserver pod 中,以側載的方式運作 konnectivity 伺服器服務的 NodePort (例如30564)。

addonsNodePort

integer

管理員叢集中外掛程式伺服器的 NodePort。

VmwareAdminMetalLbConfig

VmwareAdminMetalLbConfig 代表 MetalLB 負載平衡器的設定參數。管理員叢集目前不需要設定。

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

boolean

是否啟用 MetalLB。

VmwareAdminSeesawConfig

VmwareSeesawConfig 代表現有 Seesaw 負載平衡器的設定參數。

重要事項:請注意,Anthos On-Prem API 不會產生或更新 Seesaw 設定,只能將現有設定繫結至新的使用者叢集。

重要事項:嘗試使用現有的 Seesaw 負載平衡器建立使用者叢集時,您必須先執行一些準備步驟,才能呼叫 'vmwareClusters.create' API 方法。首先,您必須透過 kubectl 建立使用者叢集的命名空間。命名空間必須使用以下命名慣例:-gke-onprem-mgmt 或 -gke-onprem-mgmt,具體取決於您是否使用「VmwareCluster.local_name」來區分衝突;如需更多資訊,請參閱「VmwareCluster.local_name」的說明文件。命名空間建立完成後,您必須透過 kubectl 建立密鑰資源。這個密鑰會包含 Seesaw 憑證的副本。密鑰必須命名為「user-cluster-creds」,並包含 Seesaw 的 SSH 和憑證憑證。憑證必須以以下名稱命名:'seesaw-ssh-private-key'、'seesaw-ssh-public-key'、'seesaw-ssh-ca-key'、'seesaw-ssh-ca-cert'。

JSON 表示法
{
  "group": string,
  "masterIp": string,
  "ipBlocks": [
    {
      object (VmwareIpBlock)
    }
  ],
  "enableHa": boolean,
  "vms": [
    string
  ],
  "stackdriverName": string
}
欄位
group

string

一般來說,Seesaw 群組名稱應採用以下格式:seesaw-for-[叢集名稱]。

masterIp

string

MasterIP 是 Seesaw 群組主控台宣告的 IP。

ipBlocks[]

object (VmwareIpBlock)

Seesaw 負載平衡器要使用的 IP 區塊

enableHa

boolean

啟用兩個負載平衡器 VM,以便提供高可用性的 Seesaw 負載平衡器。

vms[]

string

為這個 Seesaw 群組建立的 VM 名稱。

stackdriverName

string

Stackdriver 要使用的名稱。

VmwareAdminControlPlaneNodeConfig

VmwareAdminControlPlaneNodeConfig 包含 VMware 管理員叢集的控制層節點設定。

JSON 表示法
{
  "cpus": string,
  "memory": string,
  "replicas": string
}
欄位
cpus

string (int64 format)

管理員叢集控制層節點的 vCPU 數量。

memory

string (int64 format)

管理員叢集控制層節點的記憶體大小 (以 MiB 為單位)。

replicas

string (int64 format)

這個 VMware 管理員叢集的控制層節點數量。(預設值:1 個複本)。

VmwareAdminAddonNodeConfig

VmwareAdminAddonNodeConfig 包含 VMware 管理員叢集的加購節點設定。

JSON 表示法
{
  "autoResizeConfig": {
    object (VmwareAutoResizeConfig)
  }
}
欄位
autoResizeConfig

object (VmwareAutoResizeConfig)

VmwareAutoResizeConfig 設定會指定自動調整大小設定。

VmwarePlatformConfig

VmwarePlatformConfig 代表 VMware 平台的設定。

JSON 表示法
{
  "requiredPlatformVersion": string,
  "platformVersion": string,
  "bundles": [
    {
      object (VmwareBundleConfig)
    }
  ],
  "status": {
    object (ResourceStatus)
  }
}
欄位
requiredPlatformVersion

string

僅限輸入。必要的平台版本,例如 1.13.1。如果目前的平台版本低於目標版本,平台版本就會更新為目標版本。如果平台 (套件版本) 中未安裝目標版本,請下載目標版本套件。

platformVersion

string

僅供輸出。平台版本,例如 1.13.2。

bundles[]

object (VmwareBundleConfig)

僅供輸出。管理員叢集中安裝的套件清單。

status

object (ResourceStatus)

僅供輸出。平台的資源狀態。

VmwareBundleConfig

VmwareBundleConfig 代表套件的設定。

JSON 表示法
{
  "version": string,
  "status": {
    object (ResourceStatus)
  }
}
欄位
version

string

套件的版本。

status

object (ResourceStatus)

僅供輸出。套件的資源狀態。

VmwareAdminPreparedSecretsConfig

VmwareAdminPreparedSecretsConfig 代表管理員叢集已準備好的 Secret 設定。

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

boolean

是否啟用已準備的密鑰。

VmwareAdminAuthorizationConfig

VmwareAdminAuthorizationConfig 代表管理員叢集授權的設定。

JSON 表示法
{
  "viewerUsers": [
    {
      object (ClusterUser)
    }
  ]
}
欄位
viewerUsers[]

object (ClusterUser)

對於 VMware 管理員叢集,使用者會獲得叢集的叢集檢視者角色。

方法

create

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

enroll

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

get

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

list

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

patch

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