REST Resource: projects.locations.clusters

Resource: Cluster

An Apache Kafka cluster deployed in a location.

JSON representation
{
  "name": string,
  "createTime": string,
  "updateTime": string,
  "labels": {
    string: string,
    ...
  },
  "capacityConfig": {
    object (CapacityConfig)
  },
  "rebalanceConfig": {
    object (RebalanceConfig)
  },
  "state": enum (State),

  // Union field platform_config can be only one of the following:
  "gcpConfig": {
    object (GcpConfig)
  }
  // End of list of possible types for union field platform_config.
}
Fields
name

string

Identifier. The name of the cluster. Structured like: projects/{project_number}/locations/{location}/clusters/{clusterId}

createTime

string (Timestamp format)

Output only. The time when the cluster was created.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

updateTime

string (Timestamp format)

Output only. The time when the cluster was last updated.

A timestamp in RFC3339 UTC "Zulu" format, with nanosecond resolution and up to nine fractional digits. Examples: "2014-10-02T15:01:23Z" and "2014-10-02T15:01:23.045123456Z".

labels

map (key: string, value: string)

Optional. Labels as key value pairs.

An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

capacityConfig

object (CapacityConfig)

Required. Capacity configuration for the Kafka cluster.

rebalanceConfig

object (RebalanceConfig)

Optional. Rebalance configuration for the Kafka cluster.

state

enum (State)

Output only. The current state of the cluster.

Union field platform_config. Platform specific configuration properties for a Kafka cluster. platform_config can be only one of the following:
gcpConfig

object (GcpConfig)

Required. Configuration properties for a Kafka cluster deployed to Google Cloud Platform.

GcpConfig

Configuration properties for a Kafka cluster deployed to Google Cloud Platform.

JSON representation
{
  "accessConfig": {
    object (AccessConfig)
  },
  "kmsKey": string
}
Fields
accessConfig

object (AccessConfig)

Required. Access configuration for the Kafka cluster.

kmsKey

string

Optional. Immutable. The Cloud KMS Key name to use for encryption. The key must be located in the same region as the cluster and cannot be changed. Structured like: projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{crypto_key}. Note that the project component only accepts a project ID, and not a project number.

AccessConfig

The configuration of access to the Kafka cluster.

JSON representation
{
  "networkConfigs": [
    {
      object (NetworkConfig)
    }
  ]
}
Fields
networkConfigs[]

object (NetworkConfig)

Required. Virtual Private Cloud (VPC) networks that must be granted direct access to the Kafka cluster. Minimum of 1 network is required. Maximum 10 networks can be specified.

NetworkConfig

The configuration of a Virtual Private Cloud (VPC) network that can access the Kafka cluster.

JSON representation
{
  "subnet": string
}
Fields
subnet

string

Required. Name of the VPC subnet in which to create Private Service Connect (PSC) endpoints for the Kafka brokers and bootstrap address. Structured like: projects/{project}/regions/{region}/subnetworks/{subnet_id}

The subnet must be located in the same region as the Kafka cluster. The project may differ. Multiple subnets from the same parent network must not be specified.

The CIDR range of the subnet must be within the IPv4 address ranges for private networks, as specified in RFC 1918.

CapacityConfig

A capacity configuration of a Kafka cluster.

JSON representation
{
  "vcpuCount": string,
  "memoryBytes": string
}
Fields
vcpuCount

string (int64 format)

Required. The number of vCPUs to provision for the cluster. Minimum: 3.

memoryBytes

string (int64 format)

Required. The memory to provision for the cluster in bytes. The CPU:memory ratio (vCPU:GiB) must be between 1:1 and 1:8. Minimum: 3221225472 (3 GiB).

RebalanceConfig

Defines rebalancing behavior of a Kafka cluster.

JSON representation
{
  "mode": enum (Mode)
}
Fields
mode

enum (Mode)

Optional. The rebalance behavior for the cluster. When not specified, defaults to NO_REBALANCE.

Mode

The partition rebalance mode for the cluster.

Enums
MODE_UNSPECIFIED A mode was not specified. Do not use.
NO_REBALANCE Do not rebalance automatically.
AUTO_REBALANCE_ON_SCALE_UP Automatically rebalance topic partitions among brokers when the cluster is scaled up.

State

The state of the cluster.

Enums
STATE_UNSPECIFIED A state was not specified.
CREATING The cluster is being created.
ACTIVE The cluster is active.
DELETING The cluster is being deleted.

Methods

create

Creates a new cluster in a given project and location.

delete

Deletes a single cluster.

get

Returns the properties of a single cluster.

list

Lists the clusters in a given project and location.

patch

Updates the properties of a single cluster.