Skip to content

Latest commit

 

History

History
495 lines (292 loc) · 16 KB

API.md

File metadata and controls

495 lines (292 loc) · 16 KB

API Reference

Constructs

SuperEks

SuperEks wraps eks.Cluster to include batteries.

Initializers

import { SuperEks } from '@superluminar-io/super-eks'

new SuperEks(scope: Construct, id: string, props: SuperEksProps)
Name Type Description
scope constructs.Construct No description.
id string No description.
props SuperEksProps No description.

scopeRequired
  • Type: constructs.Construct

idRequired
  • Type: string

propsRequired

Methods

Name Description
toString Returns a string representation of this construct.
nodeTaintUserdata Generates ec2.MultipartUserData to attach to a eks.Nodegroup ec2.LaunchTemplate so that the Nodes are getting tainted with the given NodeTaint.

toString
public toString(): string

Returns a string representation of this construct.

nodeTaintUserdata
public nodeTaintUserdata(taint: NodeTaint): MultipartUserData

Generates ec2.MultipartUserData to attach to a eks.Nodegroup ec2.LaunchTemplate so that the Nodes are getting tainted with the given NodeTaint.

taintRequired

the taint that should be applied to the Nodes.


Static Functions

Name Description
isConstruct Checks if x is a construct.

isConstruct
import { SuperEks } from '@superluminar-io/super-eks'

SuperEks.isConstruct(x: any)

Checks if x is a construct.

xRequired
  • Type: any

Any object.


Properties

Name Type Description
node constructs.Node The tree node.
additionalNodegroups aws-cdk-lib.aws_eks.Nodegroup[] eks.Nodegroups added to the cluster.
cluster aws-cdk-lib.aws_eks.Cluster The created cluster.

nodeRequired
public readonly node: Node;
  • Type: constructs.Node

The tree node.


additionalNodegroupsRequired
public readonly additionalNodegroups: Nodegroup[];
  • Type: aws-cdk-lib.aws_eks.Nodegroup[]
  • Default: An internal eks.Nodegroup will be created for super-eks related workloads

eks.Nodegroups added to the cluster.


clusterRequired
public readonly cluster: Cluster;
  • Type: aws-cdk-lib.aws_eks.Cluster

The created cluster.


Structs

AddonProps

Specific properties for EKS managed add-ons.

Initializer

import { AddonProps } from '@superluminar-io/super-eks'

const addonProps: AddonProps = { ... }

Properties

Name Type Description
vpcCniAddonVersion VpcCniAddonVersion No description.

vpcCniAddonVersionOptional
public readonly vpcCniAddonVersion: VpcCniAddonVersion;

NodeTaint

Represents a Kubernetes taint.

See https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

Initializer

import { NodeTaint } from '@superluminar-io/super-eks'

const nodeTaint: NodeTaint = { ... }

Properties

Name Type Description
effect TaintEffect No description.
key string No description.
value string No description.

effectRequired
public readonly effect: TaintEffect;

keyRequired
public readonly key: string;
  • Type: string

valueRequired
public readonly value: string;
  • Type: string

SuperEksProps

Constructor properties for SuperEks.

Get merged with defaultSuperEksProps.

Initializer

import { SuperEksProps } from '@superluminar-io/super-eks'

const superEksProps: SuperEksProps = { ... }

Properties

Name Type Description
hostedZone aws-cdk-lib.aws_route53.IHostedZone A hosted zone for DNS management.
addonProps AddonProps Specific properties for EKS managed add-ons.
adminRoles aws-cdk-lib.aws_iam.IRole[] Additional Roles that should be granted cluster admin privileges.
clusterProps aws-cdk-lib.aws_eks.ClusterProps Wrapper for all cluster props>.
superEksNodegroupProps aws-cdk-lib.aws_eks.NodegroupOptions Config for the Nodegroup created to host SuperEks specific workloads.

hostedZoneRequired
public readonly hostedZone: IHostedZone;
  • Type: aws-cdk-lib.aws_route53.IHostedZone

A hosted zone for DNS management.

Records in this zone will be created for your workloads by 'external-dns'.


addonPropsOptional
public readonly addonProps: AddonProps;

Specific properties for EKS managed add-ons.


adminRolesOptional
public readonly adminRoles: IRole[];
  • Type: aws-cdk-lib.aws_iam.IRole[]

Additional Roles that should be granted cluster admin privileges.

Can also be added manually after cluster creation by using cluster.awsAuth.addMastersRole(role).


clusterPropsOptional
public readonly clusterProps: ClusterProps;
  • Type: aws-cdk-lib.aws_eks.ClusterProps

Wrapper for all cluster props>.


superEksNodegroupPropsOptional
public readonly superEksNodegroupProps: NodegroupOptions;
  • Type: aws-cdk-lib.aws_eks.NodegroupOptions

Config for the Nodegroup created to host SuperEks specific workloads.

If you override the launchTemplateSpec you're responsible for adding the necessary userdata to taint the nodes, see ../config/cluster#nodeTaintUserdata


Classes

VpcCniAddonVersion

vpc-cni add-on versions.

Initializers

import { VpcCniAddonVersion } from '@superluminar-io/super-eks'

new VpcCniAddonVersion(version: string)
Name Type Description
version string add-on version.

versionRequired
  • Type: string

add-on version.


Static Functions

Name Description
of Custom add-on version.

of
import { VpcCniAddonVersion } from '@superluminar-io/super-eks'

VpcCniAddonVersion.of(version: string)

Custom add-on version.

versionRequired
  • Type: string

custom add-on version.


Properties

Name Type Description
version string add-on version.

versionRequired
public readonly version: string;
  • Type: string

add-on version.


Constants

Name Type Description
V1_6_3 VpcCniAddonVersion vpc-cni version 1.6.3.
V1_7_5 VpcCniAddonVersion vpc-cni version 1.7.5.
V1_7_6 VpcCniAddonVersion vpc-cni version 1.7.6.
V1_7_9 VpcCniAddonVersion vpc-cni version 1.7.9.

V1_6_3Required
public readonly V1_6_3: VpcCniAddonVersion;

vpc-cni version 1.6.3.


V1_7_5Required
public readonly V1_7_5: VpcCniAddonVersion;

vpc-cni version 1.7.5.


V1_7_6Required
public readonly V1_7_6: VpcCniAddonVersion;

vpc-cni version 1.7.6.


V1_7_9Required
public readonly V1_7_9: VpcCniAddonVersion;

vpc-cni version 1.7.9.


Enums

TaintEffect

Represents a Kubernetes taint effect.

See https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

Members

Name Description
NO_SCHEDULE No description.
PREFER_NO_SCHEDULE No description.
NO_EXECUTE No description.

NO_SCHEDULE

PREFER_NO_SCHEDULE

NO_EXECUTE