@aws-quickstart/eks-blueprints
    Preparing search index...

    Type Alias NodePoolSpec

    Utility type for Karpenter NodePool Specs

    type NodePoolSpec = {
        annotations?: Values;
        consolidation?: { enabled: boolean };
        disruption?: {
            budgets?: DisruptionBudget[];
            consolidateAfter?: Sec | Min | Hour;
            consolidationPolicy?: "WhenUnderutilized" | "WhenEmpty";
            expireAfter?: "Never" | Sec | Min | Hour;
        };
        labels?: Values;
        limits?: { cpu?: number; memory?: string; [k: string]: unknown };
        requirements?: NodePoolRequirementValues;
        startupTaints?: Taint[];
        taints?: Taint[];
        ttlSecondsAfterEmpty?: number;
        ttlSecondsUntilExpired?: number;
        weight?: number;
    }
    Index

    Properties

    annotations?: Values

    Annotations applied to all nodes

    consolidation?: { enabled: boolean }

    Enables consolidation which attempts to reduce cluster cost by both removing un-needed nodes and down-sizing those that can't be removed. Mutually exclusive with the ttlSecondsAfterEmpty parameter.

    Replaced with disruption.consolidationPolicy for versions v0.32.x and later

    disruption?: {
        budgets?: DisruptionBudget[];
        consolidateAfter?: Sec | Min | Hour;
        consolidationPolicy?: "WhenUnderutilized" | "WhenEmpty";
        expireAfter?: "Never" | Sec | Min | Hour;
    }

    Disruption section which describes the ways in which Karpenter can disrupt and replace Nodes Configuration in this section constrains how aggressive Karpenter can be with performing operations like rolling Nodes due to them hitting their maximum lifetime (expiry) or scaling down nodes to reduce cluster cost Only applicable for versions v0.32 or later

    consolidation policy - will default to WhenUnderutilized if not provided

    How long Karpenter waits to consolidate nodes - cannot be set when the policy is WhenUnderutilized

    How long Karpenter waits to expire nodes

    labels?: Values

    Labels applied to all nodes

    limits?: { cpu?: number; memory?: string; [k: string]: unknown }

    Limits define a set of bounds for provisioning capacity. Resource limits constrain the total size of the cluster. Limits prevent Karpenter from creating new instances once the limit is exceeded.

    Type declaration

    • [k: string]: unknown

      Extended resources are fully-qualified resource names outside the kubernetes.io domain. They allow cluster operators to advertise and users to consume the non-Kubernetes-built-in resources such as hardware devices GPUs, RDMAs, SR-IOVs... e.g nvidia.com/gpu, amd.com/gpu, etc...

    • Optionalcpu?: number
    • Optionalmemory?: string

    Requirement properties for Node Pool (Optional) - If not provided, the add-on will deploy one with no value, providing no restrictions when Karpenter optimizes.

    startupTaints?: Taint[]

    Provisioned nodes will have these taints, but pods do not need to tolerate these taints to be provisioned by this provisioner. These taints are expected to be temporary and some other entity (e.g. a DaemonSet) is responsible for removing the taint after it has finished initializing the node.

    taints?: Taint[]

    Taints for the provisioned nodes - Taints may prevent pods from scheduling if they are not tolerated by the pod.

    ttlSecondsAfterEmpty?: number

    How many seconds Karpenter will wailt until it deletes empty/unnecessary instances (in seconds). Mutually exclusive with the consolidation parameter.

    Replaced with disruption.consolidationPolicy and disruption.consolidateAfter for versions v0.32.x and later

    ttlSecondsUntilExpired?: number

    If omitted, the feature is disabled and nodes will never expire. If set to less time than it requires for a node to become ready, the node may expire before any pods successfully start.

    Replaced with disruption.expireAfter for versions v0.32.x and later

    weight?: number

    Priority given to the provisioner when the scheduler considers which provisioner to select. Higher weights indicate higher priority when comparing provisioners.