REST Resource: projects.locations.privateClouds.clusters

리소스: 클러스터

프라이빗 클라우드의 클러스터입니다.

JSON 표현
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "state": enum (State),
  "management": boolean,
  "autoscalingSettings": {
    object (AutoscalingSettings)
  },
  "uid": string,
  "nodeTypeConfigs": {
    string: {
      object (NodeTypeConfig)
    },
    ...
  },
  "stretchedClusterConfig": {
    object (StretchedClusterConfig)
  },
  "datastoreMountConfig": [
    {
      object (DatastoreMountConfig)
    }
  ]
}
필드
name

string

출력 전용입니다. 식별자. 이 클러스터의 리소스 이름입니다. 리소스 이름은 https://cloud.google.com/apis/design/resource_names의 규칙을 따르는 스키마가 없는 URI입니다. 예를 들면 projects/my-project/locations/us-central1-a/privateClouds/my-cloud/clusters/my-cluster입니다.

createTime

string (Timestamp format)

출력 전용입니다. 이 리소스의 생성 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

updateTime

string (Timestamp format)

출력 전용입니다. 이 리소스의 마지막 업데이트 시간입니다.

생성된 출력은 항상 Z-정규화되고 소수점 이하 0, 3, 6 또는 9자리인 RFC 3339를 사용합니다. 'Z' 이외의 오프셋도 허용됩니다. 예를 들면 "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" 또는 "2014-10-02T15:01:23+05:30"입니다.

state

enum (State)

출력 전용입니다. 리소스의 상태입니다.

management

boolean

출력 전용입니다. 클러스터가 관리 클러스터인 경우 true, 그렇지 않은 경우 false입니다. 프라이빗 클라우드에는 관리 클러스터가 하나만 있을 수 있으며 첫 번째 클러스터여야 합니다.

autoscalingSettings

object (AutoscalingSettings)

선택사항입니다. 이 클러스터에 적용된 자동 확장 구성입니다.

uid

string

출력 전용입니다. 리소스에 대해 시스템에서 생성한 고유 식별자입니다.

nodeTypeConfigs

map (key: string, value: object (NodeTypeConfig))

필수 항목입니다. 이 클러스터의 클러스터 노드 유형의 맵입니다. 여기서 키는 노드 유형의 표준 식별자입니다 (NodeType에 해당).

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

stretchedClusterConfig

object (StretchedClusterConfig)

선택사항입니다. 스트레치 클러스터의 구성입니다. 확장된 프라이빗 클라우드에 속한 클러스터에 필요합니다.

datastoreMountConfig[]

object (DatastoreMountConfig)

출력 전용입니다. 마운트된 데이터 스토어의 구성입니다.

열거형 State는 프라이빗 클라우드 클러스터의 가능한 상태를 정의합니다.

열거형
STATE_UNSPECIFIED 기본값입니다. 절대로 이 값을 사용하지 마세요.
ACTIVE 클러스터가 작동 중이며 사용자가 사용할 수 있습니다.
CREATING 클러스터가 배포되고 있습니다.
UPDATING 클러스터에 노드 추가 또는 삭제, 기타 클러스터 관련 업데이트
DELETING 클러스터를 삭제하는 중입니다.
REPAIRING 클러스터가 유지보수 중입니다(예: 실패한 노드가 교체됨).

AutoscalingSettings

자동 확장 설정은 VMware Engine이 프라이빗 클라우드의 클러스터를 자동으로 확장 및 축소하는 데 사용하는 규칙을 정의합니다.

JSON 표현
{
  "autoscalingPolicies": {
    string: {
      object (AutoscalingPolicy)
    },
    ...
  },
  "minClusterNodeCount": integer,
  "maxClusterNodeCount": integer,
  "coolDownPeriod": string
}
필드
autoscalingPolicies

map (key: string, value: object (AutoscalingPolicy))

필수 항목입니다. 클러스터에 적용된 자동 확장 정책이 있는 맵입니다. 키는 정책의 식별자입니다. 다음 요구사항을 충족해야 합니다.

  • 영숫자 문자와 하이픈만 1~63개 포함
  • 알파벳 문자로 시작
  • 하이픈이 아닌 문자로 끝남
  • UUID 형식으로 지정되지 않음
  • RFC 1034 (섹션 3.5)를 준수합니다.

현재 맵에는 컴퓨팅 노드의 자동 확장 정책을 설명하는 요소가 하나만 포함되어야 합니다.

"key": value 쌍 목록을 포함하는 객체입니다. 예: { "name": "wrench", "mass": "1.3kg", "count": "3" }

minClusterNodeCount

integer

선택사항입니다. 클러스터의 모든 유형의 최소 노드 수입니다. 지정하지 않으면 기본 한도가 적용됩니다.

maxClusterNodeCount

integer

선택사항입니다. 클러스터에 있는 모든 유형의 최대 노드 수입니다. 지정하지 않으면 기본 한도가 적용됩니다.

coolDownPeriod

string (Duration format)

선택사항입니다. 연속 자동 확장 작업 간의 최소 기간입니다. 노드 추가 또는 삭제가 완전히 완료되면 시작됩니다. 지정하지 않을 경우 기본값은 30분입니다. 휴지 기간은 분 단위로 입력해야 합니다 (예: 30, 31, 50, 180분).

소수점 아래가 최대 9자리까지이고 's'로 끝나는 초 단위 기간입니다. 예를 들면 "3.5s"입니다.

AutoscalingPolicy

자동 확장 정책은 리소스 사용률과 관련된 자동 확장 동작을 설명합니다. 사용량이 각 기준점을 초과하면 스케일 아웃 작업이 시작됩니다. 사용률이 각 기준점 미만이면 스케일 인 작업이 시작됩니다.

JSON 표현
{
  "nodeTypeId": string,
  "scaleOutSize": integer,
  "cpuThresholds": {
    object (Thresholds)
  },
  "grantedMemoryThresholds": {
    object (Thresholds)
  },
  "consumedMemoryThresholds": {
    object (Thresholds)
  },
  "storageThresholds": {
    object (Thresholds)
  }
}
필드
nodeTypeId

string

필수 항목입니다. 추가하거나 삭제할 노드 유형의 표준 식별자입니다. NodeType에 해당합니다.

scaleOutSize

integer

필수 항목입니다. 스케일 아웃 작업 중에 클러스터에 추가할 노드 수입니다. 스트레치 클러스터의 경우 2로 나눌 수 있어야 합니다. 스케일 인 작업 중에는 단일 반복에서 하나의 노드 (스트레치 클러스터의 경우 2개)만 삭제됩니다.

cpuThresholds

object (Thresholds)

선택사항입니다. CPU 사용률과 관련된 사용률 기준입니다.

grantedMemoryThresholds

object (Thresholds)

선택사항입니다. 부여된 메모리 양과 관련된 사용률 임곗값입니다.

consumedMemoryThresholds

object (Thresholds)

선택사항입니다. 소비된 메모리 양과 관련된 사용률 임곗값입니다.

storageThresholds

object (Thresholds)

선택사항입니다. 소비된 스토리지 양과 관련된 사용률 기준입니다.

기준

기준점은 수평 확장 및 수축 작업을 트리거하는 리소스 사용률을 정의합니다.

JSON 표현
{
  "scaleOut": integer,
  "scaleIn": integer
}
필드
scaleOut

integer

필수 항목입니다. 수평 확장 작업을 트리거하는 사용률(백분율)입니다.

scaleIn

integer

필수 항목입니다. 스케일 인 작업을 트리거하는 사용률(백분율)입니다.

DatastoreMountConfig

데이터 스토어 마운트 구성

JSON 표현
{
  "fileShare": string,
  "datastore": string,
  "datastoreNetwork": {
    object (DatastoreNetwork)
  },
  "accessMode": enum (AccessMode),
  "nfsVersion": enum (NfsVersion),
  "servers": [
    string
  ]
}
필드
fileShare

string

출력 전용입니다. 파일 공유 이름입니다.

datastore

string

필수 항목입니다. 마운트할 데이터 스토어의 리소스 이름입니다. 리소스 이름은 https://cloud.google.com/apis/design/resource_names의 규칙을 따르는 스키마가 없는 URI입니다. 예를 들면 projects/my-project/locations/us-central1/datastores/my-datastore입니다.

datastoreNetwork

object (DatastoreNetwork)

필수 항목입니다. 데이터 스토어의 네트워크 구성입니다.

accessMode

enum (AccessMode)

선택사항입니다. NFS 볼륨의 액세스 모드입니다. 선택사항입니다. 사용되는 기본값은 READ_WRITE입니다.

nfsVersion

enum (NfsVersion)

선택사항입니다. NFS 볼륨에서 지원하는 NFS 프로토콜입니다. 사용되는 기본값은 NFS_V3입니다.

servers[]

string

출력 전용입니다. NFS 볼륨의 서버 IP 주소입니다. NFS 3의 경우 단일 서버 IP 주소 또는 DNS 이름만 제공할 수 있습니다.

DatastoreNetwork

데이터 스토어의 네트워크 구성입니다.

JSON 표현
{
  "subnet": string,
  "mtu": integer,
  "networkPeering": string,
  "connectionCount": integer
}
필드
subnet

string

필수 항목입니다. 서브넷의 리소스 이름입니다. 리소스 이름은 https://cloud.google.com/apis/design/resource_names의 규칙을 따르는 스키마 없는 URI입니다. 예: projects/my-project/locations/us-central1/subnets/my-subnet

mtu

integer

선택사항입니다. MTU 값은 NFS 트래픽의 VMKernel 어댑터에 설정됩니다. 입력하지 않으면 MTU 1500이 사용됩니다. 점보 프레임을 사용하려면 이 값을 8896으로 설정합니다. NFS 트래픽 성능에 따라 이 값을 조정하는 것이 좋습니다. 성능은 fio (가변형 I/O 테스터) 유틸리티와 같은 벤치마킹 I/O 도구를 사용하여 확인할 수 있습니다.

networkPeering

string

출력 전용입니다. 프라이빗 클라우드의 클라이언트가 파일 공유에 액세스하는 데 사용되는 네트워크 피어링의 리소스 이름입니다. 리소스 이름은 https://cloud.google.com/apis/design/resource_names의 규칙을 따르는 스키마가 없는 URI입니다. 예: projects/my-project/locations/us-central1/networkPeerings/my-network-peering

connectionCount

integer

선택사항입니다. connectionCount는 ESXi 호스트의 NFS 클라이언트에서 NFS 서버로의 여러 연결을 설정하는 데 사용됩니다. 연결 수가 많을수록 데이터 저장소의 성능이 향상됩니다. clusters.mountDatastore API에서 기본적으로 최대 4개의 연결이 구성됩니다. 사용자는 connectionCount 값을 1~4로 설정할 수 있습니다. connection_count는 vsphere 8.0u1부터 지원됩니다. 이전 버전의 경우 연결 수가 ESXi 호스트에 설정됩니다.

AccessMode

NFS 볼륨의 액세스 모드입니다.

열거형
ACCESS_MODE_UNSPECIFIED 기본값입니다. 절대로 이 값을 사용하지 마세요.
READ_ONLY 호스트가 읽기 모드로 NFS에 액세스함
READ_WRITE 호스트가 읽기 및 쓰기 모드로 NFS에 액세스함

NfsVersion

NFS 볼륨에서 지원하는 NFS 프로토콜입니다.

열거형
NFS_VERSION_UNSPECIFIED 기본값입니다. 절대로 이 값을 사용하지 마세요.
NFS_V3 NFS 3

메서드

create

지정된 프라이빗 클라우드에 새 클러스터를 만듭니다.

delete

Cluster 리소스를 삭제합니다.

get

리소스 이름으로 Cluster 리소스를 가져옵니다.

getIamPolicy

리소스의 액세스 제어 정책을 가져옵니다.

list

지정된 프라이빗 클라우드의 Cluster 리소스를 나열합니다.

mountDatastore

클러스터 리소스에 Datastore을 마운트합니다.

patch

Cluster 리소스를 수정합니다.

setIamPolicy

지정된 리소스의 액세스 제어 정책을 설정합니다.

testIamPermissions

지정된 리소스에 대해 호출자가 보유한 권한을 반환합니다.

unmountDatastore

클러스터 리소스에서 Datastore를 마운트 해제합니다.