Google Anthos Multi Cloud V1 Client - Class AwsControlPlane (1.1.1)

Reference documentation and code samples for the Google Anthos Multi Cloud V1 Client class AwsControlPlane.

ControlPlane defines common parameters between control plane nodes.

Generated from protobuf message google.cloud.gkemulticloud.v1.AwsControlPlane

Namespace

Google \ Cloud \ GkeMultiCloud \ V1

Methods

__construct

Constructor.

Parameters
Name Description
data array

Optional. Data for populating the Message object.

↳ version string

Required. The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000). You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.

↳ instance_type string

Optional. The AWS instance type. When unspecified, it uses a default based on the cluster's version.

↳ ssh_config AwsSshConfig

Optional. SSH configuration for how to access the underlying control plane machines.

↳ subnet_ids array

Required. The list of subnets where control plane replicas will run. A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).

↳ security_group_ids array

Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.

↳ iam_instance_profile string

Required. The name or ARN of the AWS IAM instance profile to assign to each control plane replica.

↳ root_volume AwsVolumeTemplate

Optional. Configuration related to the root volume provisioned for each control plane replica. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.

↳ main_volume AwsVolumeTemplate

Optional. Configuration related to the main volume provisioned for each control plane replica. The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.

↳ database_encryption AwsDatabaseEncryption

Required. The ARN of the AWS KMS key used to encrypt cluster secrets.

↳ tags array|Google\Protobuf\Internal\MapField

Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources. Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.

↳ aws_services_authentication AwsServicesAuthentication

Required. Authentication configuration for management of AWS resources.

↳ proxy_config AwsProxyConfig

Optional. Proxy configuration for outbound HTTP(S) traffic.

↳ config_encryption AwsConfigEncryption

Required. Config encryption for user data.

↳ instance_placement AwsInstancePlacement

Optional. The placement to use on control plane instances. When unspecified, the VPC's default tenancy will be used.

getVersion

Required. The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000).

You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.

Returns
Type Description
string

setVersion

Required. The Kubernetes version to run on control plane replicas (e.g. 1.19.10-gke.1000).

You can list all supported versions on a given Google Cloud region by calling GetAwsServerConfig.

Parameter
Name Description
var string
Returns
Type Description
$this

getInstanceType

Optional. The AWS instance type.

When unspecified, it uses a default based on the cluster's version.

Returns
Type Description
string

setInstanceType

Optional. The AWS instance type.

When unspecified, it uses a default based on the cluster's version.

Parameter
Name Description
var string
Returns
Type Description
$this

getSshConfig

Optional. SSH configuration for how to access the underlying control plane machines.

Returns
Type Description
AwsSshConfig|null

hasSshConfig

clearSshConfig

setSshConfig

Optional. SSH configuration for how to access the underlying control plane machines.

Parameter
Name Description
var AwsSshConfig
Returns
Type Description
$this

getSubnetIds

Required. The list of subnets where control plane replicas will run.

A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setSubnetIds

Required. The list of subnets where control plane replicas will run.

A replica will be provisioned on each subnet and up to three values can be provided. Each subnet must be in a different AWS Availability Zone (AZ).

Parameter
Name Description
var string[]
Returns
Type Description
$this

getSecurityGroupIds

Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.

Returns
Type Description
Google\Protobuf\Internal\RepeatedField

setSecurityGroupIds

Optional. The IDs of additional security groups to add to control plane replicas. The Anthos Multi-Cloud API will automatically create and manage security groups with the minimum rules needed for a functioning cluster.

Parameter
Name Description
var string[]
Returns
Type Description
$this

getIamInstanceProfile

Required. The name or ARN of the AWS IAM instance profile to assign to each control plane replica.

Returns
Type Description
string

setIamInstanceProfile

Required. The name or ARN of the AWS IAM instance profile to assign to each control plane replica.

Parameter
Name Description
var string
Returns
Type Description
$this

getRootVolume

Optional. Configuration related to the root volume provisioned for each control plane replica.

Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.

Returns
Type Description
AwsVolumeTemplate|null

hasRootVolume

clearRootVolume

setRootVolume

Optional. Configuration related to the root volume provisioned for each control plane replica.

Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 32 GiB with the GP2 volume type.

Parameter
Name Description
var AwsVolumeTemplate
Returns
Type Description
$this

getMainVolume

Optional. Configuration related to the main volume provisioned for each control plane replica.

The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.

Returns
Type Description
AwsVolumeTemplate|null

hasMainVolume

clearMainVolume

setMainVolume

Optional. Configuration related to the main volume provisioned for each control plane replica.

The main volume is in charge of storing all of the cluster's etcd state. Volumes will be provisioned in the availability zone associated with the corresponding subnet. When unspecified, it defaults to 8 GiB with the GP2 volume type.

Parameter
Name Description
var AwsVolumeTemplate
Returns
Type Description
$this

getDatabaseEncryption

Required. The ARN of the AWS KMS key used to encrypt cluster secrets.

Returns
Type Description
AwsDatabaseEncryption|null

hasDatabaseEncryption

clearDatabaseEncryption

setDatabaseEncryption

Required. The ARN of the AWS KMS key used to encrypt cluster secrets.

Parameter
Name Description
var AwsDatabaseEncryption
Returns
Type Description
$this

getTags

Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources.

Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.

Returns
Type Description
Google\Protobuf\Internal\MapField

setTags

Optional. A set of AWS resource tags to propagate to all underlying managed AWS resources.

Specify at most 50 pairs containing alphanumerics, spaces, and symbols (.+-=_:@/). Keys can be up to 127 Unicode characters. Values can be up to 255 Unicode characters.

Parameter
Name Description
var array|Google\Protobuf\Internal\MapField
Returns
Type Description
$this

getAwsServicesAuthentication

Required. Authentication configuration for management of AWS resources.

Returns
Type Description
AwsServicesAuthentication|null

hasAwsServicesAuthentication

clearAwsServicesAuthentication

setAwsServicesAuthentication

Required. Authentication configuration for management of AWS resources.

Parameter
Name Description
var AwsServicesAuthentication
Returns
Type Description
$this

getProxyConfig

Optional. Proxy configuration for outbound HTTP(S) traffic.

Returns
Type Description
AwsProxyConfig|null

hasProxyConfig

clearProxyConfig

setProxyConfig

Optional. Proxy configuration for outbound HTTP(S) traffic.

Parameter
Name Description
var AwsProxyConfig
Returns
Type Description
$this

getConfigEncryption

Required. Config encryption for user data.

Returns
Type Description
AwsConfigEncryption|null

hasConfigEncryption

clearConfigEncryption

setConfigEncryption

Required. Config encryption for user data.

Parameter
Name Description
var AwsConfigEncryption
Returns
Type Description
$this

getInstancePlacement

Optional. The placement to use on control plane instances.

When unspecified, the VPC's default tenancy will be used.

Returns
Type Description
AwsInstancePlacement|null

hasInstancePlacement

clearInstancePlacement

setInstancePlacement

Optional. The placement to use on control plane instances.

When unspecified, the VPC's default tenancy will be used.

Parameter
Name Description
var AwsInstancePlacement
Returns
Type Description
$this