Create an EKS Cluster

This document describes the steps to create an EKS cluster in PMK.

CAPI clusters can be created using Platform9 UI. You must have an administrator role in PMK to create clusters.

Switch to the Infrastructure app using the App Switcher on top left the of the PMK UI.

  • Navigate to Infrastructure > Clusters
  • Click Add Cluster
  • Choose Amazon Web Services
  • Select EKS Cluster
  • Click Start Configuration

Note: Pre-requisites for creating EKS CAPI Clusters : Setting up your AWS account for AWS & EKS Clusters

EKS Cluster Creation Steps

The cluster creation flow is divided into 5 steps.

  1. Infrastructure: Choose and define your AWS Infrastructure Resource such as AWS Cloud Provider, Region, SSH Key, VPC configuration, Availability Zones, Subnet Configuration.
  2. Control Plane: Configure your EKS cluster's Managed Control Plane properties such as Kubernetes version, API Server Endpoint Access, CNI, Logging, Resource Tags etc..
  3. Worker Node Groups: Configure your worker node group types and their properties Node count, Instance type, Operating System, Autoscaling options, Spot Instance use, Node update strategies etc.
  4. Add-ons: Choose and configure the PMK-supported add-ons to be deployed on your cluster
  5. Finalize and Review: Review your cluster properties selected in the previous steps and create the cluster.

Each Step has required inputs to be given. On the right side of the screen, the corresponding Kubernetes Resources YAMLs are shown that constitute the particular part of the cluster.

EKS Cluster Configuration Options

Infrastructure

FieldDescription
NameUser-defined name of the cluster.
Cloud ProviderFrom the drop-down select your desired AWS cloud provider.
Cluster Pod CIDR RangeDefine the network ranges from which Pod networks are allocated.
Cluster Service CIDR RangeDefine the network ranges from which service VIPs are allocated.
RegionSelect the AWS region to deploy the cluster into.
SSH KeySSH key is attached to the EC2 Instances of the cluster.
VPC Type

Choose between PMK Managed and Self Managed from the drop-down.

  • PMK Managed option creates the VPC in the Cloud Provider AWS account you chose to deploy your cluster.
  • Self Managed option lets you choose an existing VPC in the AWS Account associated with your Cloud Provider.
VPC CIDR BlockCIDR Block is the CIDR block to be used when the provider creates a PMK Managed VPC.
VPCChoose the existing Self Managed VPC to create the cluster into.
Availability ZonesSelect two more Availability Zones within this region to deploy the nodes of this cluster into. Select at-least 3 availability zones for high availability.
Subnet Config - Number of Private SubnetsOnly 1 Private Subnet is allowed. Read more: https://docs.aws.amazon.com/vpc/latest/userguide/configure-subnets.html
Subnet Config - Number of Public Subnets1 Public Subnet is allowed only.
Private Subnets CIDRCIDR block used to create the Private Subnet
Public Subnets CIDRCIDR block used to create the Private Subnet
Internet Gateway IDInternet Gateway ID to be used with Self Managed VPC.
Route Table IdEnter the Route Table ID associated with the Subnet in the Self Managed VPC; to be used for the cluster.
NAT Gateway IDEnter the NAT Gateway ID associated with the Subnet in the Self Managed VPC; to be used for the cluster.

Control Plane

FieldDescription
Kubernetes VersionSelect the Kubernetes version to be used to create the master and worker nodes of the cluster.
API Server Endpoint Access

Configure the endpoint access to the cluster's control plane endpoints.

  • Private points VPC-internal control plane access to the private endpoint.
  • Public controls whether control plane endpoints are publicly accessible.
Public IP Access CIDR RangesSet the Public CIDRs blocks that can access the public endpoint.
Networking - AWS VPC CNIWith EKS clusters the Amazon VPC CNI is automatically installed into the cluster. For clusters where you want to use an alternate CNI, this option provides a way to specify that the Amazon VPC CNI should be deleted.
Secondary CIDR Block (optional)

Set the additional CIDR range to use for pod IPs.

Must be within the 100.64.0.0/10 or 198.19.0.0/16 range.

Logging Configuration

Logging Configuration specifies which EKS Cluster logs should be enabled.

Entries for each of the enabled logs will be sent to CloudWatch.

Tags (Additional)

Optional set of tags to add to AWS resources managed by the AWS provider, in addition to the ones added by default. Provide a key-value pair for each tag.

Eg: key = Environment , Value = Production

Resource EncryptionEnable to specify the the encryption configuration for the cluster.
ProviderEnter the ARN or alias of the CMK (in AWS KMS).
ResourcesSpecify the resources to be encrypted. Note: EKS support only secrets as a value for this field.

Worker Node Groups

PMK support 3 types of Node Groups for EKS clusters:

  1. Machine Deployment
  2. Machine Pools - Has two sub types:
    1. AWS Machine Pool - Corresponds to Self-managed Node Group.
    2. AWS Managed Machine Pool - Corresponds to EKS Managed Node Group.

Find the Node Groups Configuration Options in the EKS Node Groups page.

Addons

Be Default following EKS add-ons are enabled for EKS CAPI clusters:

EKS Add-onVersion
Vpc-CNIv1.10.1-eksbuild.1
CoreDNSv1.8.4-eksbuild.1
Kube-Proxyv1.21.2-eksbuild.2

Add PMK add-ons to your EKS cluster

FieldValue
Non-configurable add-ons

Enable the PMK Supported add-ons with default configurations. The following add-ons are available for AWS CAPI clusters:

Configurable add-ons

Enable the PMK Supported add-ons with customizable configurations. Following add-ons are available for AWS CAPI clusters:

Type to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard
  Last updated by Anmol Sachan