A new version of Anthos clusters on AWS (GKE on AWS) was released on February 3. For more information, see the release notes.

AWSNodePool

This topic describes the configuration options of the AWSNodePool Custom Resource Definition.

General format

To create an AWSNodePool, copy the following YAML and complete the highlighted values as defined in the spec field definitions.

apiVersion: multicloud.cluster.gke.io/v1
kind: AWSNodePool
metadata:
  name: NODE_POOL_NAME
spec:
  clusterName: AWSCLUSTER_NAME
  version:  CLUSTER_VERSION # latest version is 1.18.10-gke.901
  region: AWS_REGION
  subnetID: AWS_SUBNET_ID
  minNodeCount: MINIMUM_NODE_COUNT
  maxNodeCount: MAXIMUM_NODE_COUNT
  maxPodsPerNode: MAXIMUM_PODS_PER_NODE_COUNT
  instanceType: AWS_NODE_TYPE
  keyName: KMS_KEY_PAIR_NAME
  iamInstanceProfile: NODE_IAM_PROFILE
  rootVolume:
    sizeGiB: ROOT_VOLUME_SIZE 
  labels: # Optional
    LABEL_NAME: LABEL_VALUE
  taints:
  - key: KEY1
    value: VALUE1
    effect: PREFERNOSCHEDULE
  - key: KEY2
    effect: NOSCHEDULE
  tags:
    TAG_NAME: TAG_VALUE 

Field specifications

You can define the following fields in a AWSNodePool's spec.

Name Description Type Example Required
clusterName Your AWSCluster's name. string my-cluster yes
region An AWS region for the node pool. This value must match the region of the parent cluster. string us-east-1 yes
version The node pool's cluster version. See Versioning and upgrades and upgrading a user cluster for more information. string 1.18.10-gke.901
minNodeCount The minimum number of worker nodes in the node pool. integer 3 yes
maxNodeCount The minimum number of worker nodes in the node pool. integer 3 yes
maxPodsPerNode The maximum number of pods that Anthos clusters on AWS will allocate to a node. integer 100 yes
instanceType An AWS EC2 instance type for each node pool worker. See Supported instance types. string t3.medium yes
keyName The AWS KMS key pair assigned to each node pool worker. string my-key-pair yes
securityGroupIDs The IDs of additional security groups to add to nodes in this pool. Note that Anthos clusters on AWS automatically creates security groups with minimum rules needed for a functioning node pool. list(string) [sg-0ec06559d997a796f] no
iamInstanceProfile The name of the AWS EC2 instance profile assigned to nodes in the pool. string my-node-pool-profile yes
rootVolume Parameters for control plane replica root volumes. Contains a single field: sizeGiB. object {sizeGiB: 10} yes
subnetId The private subnet in the node pool's region string subnet-1234567890abcdef yes
labels Labels applied to nodes in the node pool object {billing: some-account, owner: dev} no
taints Taints applied to the node pool object key: key1
value: value1
effect: PreferNoSchedule
no
tags Key/value metadata assigned to each AWS resource supporting the node pool. map(string) {Environment: Production, Team: Analytics} no