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

    Type Alias Ec2NodeClassSpec

    Utility type for Karpenter EC2NodeClass Specs

    type Ec2NodeClassSpec = {
        amiFamily?:
            | "AL2"
            | "Bottlerocket"
            | "Ubuntu"
            | "Windows2019"
            | "Windows2022";
        amiSelector?: Values;
        amiSelectorTerms?: AmiSelectorTerm[];
        blockDeviceMappings?: BlockDeviceMapping[];
        detailedMonitoring?: boolean;
        instanceProfile?: string;
        instanceStorePolicy?: "RAID0";
        metadataOptions?: Values;
        securityGroupSelector?: Values;
        securityGroupSelectorTerms?: BetaSecurityGroupTerm[];
        subnetSelector?: Values;
        subnetSelectorTerms?: BetaSubnetTerm[];
        tags?: Values;
        userData?: string;
    }
    Index

    Properties

    amiFamily?: "AL2" | "Bottlerocket" | "Ubuntu" | "Windows2019" | "Windows2022"

    AMI Family: required for v0.32.0 and above, optional otherwise Karpenter will automatically query the appropriate EKS optimized AMI via AWS Systems Manager

    amiSelector?: Values

    AMI Selector

    amiSelectorTerms?: AmiSelectorTerm[]

    AMI Selector terms used for Beta CRDs

    blockDeviceMappings?: BlockDeviceMapping[]

    BlockDeviceMappings allows you to specify the block device mappings for the instances. This is a list of mappings, where each mapping consists of a device name and an EBS configuration. If you leave this blank, it will use the Karpenter default.

    detailedMonitoring?: boolean

    Detailed monitoring on EC2

    instanceProfile?: string

    Optional field to use the name of the IAM Instance profile, instead of the role generated by Karpenter. User must pre-provision an IAM instance profile and assign a role to it.

    instanceStorePolicy?: "RAID0"

    Optional field to control how instance store volumes are handled. Set it to RAID0 for faster ephemeral storage

    metadataOptions?: Values

    Control the exposure of Instance Metadata service using this configuration

    securityGroupSelector?: Values

    Tags needed for security groups - Subnet tags and security group tags are required for the provisioner to be created Required for Alpha CRDS

    securityGroupSelectorTerms?: BetaSecurityGroupTerm[]

    Security Group selector terms (security group id, tags or names) used for Beta CRDs Required for Beta CRDS

    subnetSelector?: Values

    Tags needed for subnets - Subnet tags and security group tags are required for the provisioner to be created Required for Alpha CRDS

    subnetSelectorTerms?: BetaSubnetTerm[]

    Subnet selector terms (subnet id or tags) used for Beta CRDs Required for Beta CRDS

    tags?: Values

    Tags adds tags to all resources created, including EC2 Instances, EBS volumes and Launch Templates. Karpenter allows overrides of the default "Name" tag but does not allow overrides to restricted domains (such as "karpenter.sh", "karpenter.k8s.aws", and "kubernetes.io/cluster"). This ensures that Karpenter is able to correctly auto-discover machines that it owns.

    userData?: string

    Optional user provided UserData applied to the worker nodes, i.e. custom scripts or pass-through custom configurations at start-up