Properties available to configure the nginx ingress controller. Values to pass to the chart as per https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/

interface IngressNginxAddOnProps {
    backendProtocol?: string;
    certificateResourceARN?: string;
    certificateResourceName?: string;
    chart?: string;
    controllerClass?: string;
    crossZoneEnabled?: boolean;
    dependencyMode?: boolean;
    electionId?: string;
    externalDnsHostname?: string;
    forceSSLRedirect?: boolean;
    httpsTargetPort?: string;
    httpTargetPort?: string;
    idleTimeout?: string;
    ingressClassName?: string;
    internetFacing?: boolean;
    isDefaultClass?: boolean;
    loadBalancerType?: string;
    name?: string;
    namespace?: string;
    release?: string;
    repository?: string;
    serviceType?: string;
    skipVersionValidation?: boolean;
    sslPort?: string;
    targetType?: string;
    values?: Values;
    version?: string;
}

Hierarchy (view full)

Properties

backendProtocol?: string

Specifies the protocol used by the load balancer. HTTP, HTTPS, AUTO_HTTP, GRPC, GRPCS, and FCGI are supported.

'http'
certificateResourceARN?: string

ARN of the AWS Certificate Manager certificate to be used for HTTPS.

certificateResourceName?: string

Name of the certificate NamedResourceProvider to be used for certificate look up.

ImportCertificateProvider and CreateCertificateProvider for examples of certificate providers.

chart?: string

The name of the chart within the Helm release.

controllerClass?: string

Specifies the controller class used for handling ingress in a cluster.

crossZoneEnabled?: boolean

Determines whether cross-zone load balancing is enabled for the load balancer.

true
dependencyMode?: boolean

Indicate the helm chart provided uses dependency mode (https://helm.sh/docs/helm/helm_dependency/). Dependency mode is widely used in aws-samples/eks-blueprints-add-ons repository, for example: https://github.com/aws-samples/eks-blueprints-add-ons/blob/main/add-ons/appmesh-controller/Chart.yaml Dependency mode requires the chart values to be wrapped within the chart name. This value is only used to turn off dependency mode in case customers choose to copy the whole helm chart into their repo

true
electionId?: string

Identifier used for leader election during the deployment of multiple ingress controllers.

externalDnsHostname?: string

Hostname to be used with external DNS services for automatic DNS configuration.

forceSSLRedirect?: boolean

Determines if SSL redirection should be forced.

true
httpsTargetPort?: string

Protocol for the load balancer HTTPS target port.

'https'
httpTargetPort?: string

Protocol for the load balancer HTTP target port.

'http'
idleTimeout?: string

ARN of the AWS Certificate Manager certificate to be used for HTTPS.

"3600"
ingressClassName?: string

Specifies the class of the ingress controller. Used to differentiate between multiple ingress controllers.

'ingress-nginx'
internetFacing?: boolean

Indicates whether the load balancer is exposed to the internet. Set to false for an internal load balancer.

true
isDefaultClass?: boolean

Determines if the ingress controller should be set as the default controller for handling ingress resources.

false
loadBalancerType?: string

Type of the load balancer.

'external'
name?: string

The name of the Kubernetes Ingress Helm release.

namespace?: string

Kubernetes namespace where the ingress controller will be installed.

'kube-system'
release?: string

Unique identifier for the release.

repository?: string

URL of the chart repository.

serviceType?: string

Kubernetes service type for the ingress controller. Supported values are 'ClusterIP', 'LoadBalancer' and 'NodePort'.

'LoadBalancer'
skipVersionValidation?: boolean

When global helm version validation is enabled with HelmAddOn.validateHelmVersions = true allows to skip validation for a particular helm add-on.

sslPort?: string

Protocol for the load balancer SSL port.

'https'
targetType?: string

Specifies how traffic is routed to pods. Can be either 'ip' or 'instance'. 'ip' mode is more performant and requires VPC-CNI.

'ip'
values?: Values

Custom values passed to the Helm chart.

version?: string

Specific version of the chart to be deployed.