Skip to content

Support for spec.infrastructure.service.annotations in NGINX Gateway Fabric (for AWS NLB target-type=ip) #4174

@xjg2010go

Description

@xjg2010go

Hi team,

I'm currently using NGINX Gateway Fabric v2.2.0 on EKS and integrating it with the AWS Load Balancer Controller.
The controller automatically creates an NLB with target-type=instance (NodePort) whenever a Gateway is created via GatewayClass.

To achieve target-type=ip (pod IP mode), I tried adding these annotations under spec.kubernetes.service.annotations in my NginxProxy, but the CRD rejected it with the following error:

strict decoding error: unknown field "spec.kubernetes.service.annotations"

Later I noticed discussions suggesting that v2.3.0+ may introduce a new field like:

spec:
infrastructure:
service:
annotations:
service.beta.kubernetes.io/aws-load-balancer-type: "nlb"
service.beta.kubernetes.io/aws-load-balancer-nlb-target-type: "ip"

However, I couldn’t find any confirmation or documentation for this.

Questions:

Will spec.infrastructure.service.annotations be officially supported in v2.3.0 (or a later release)?

Is there currently any supported way to configure AWS-specific annotations for the automatically generated LoadBalancer service (without manually patching it)?

If not, is it recommended to manually manage the Service (data plane) instead of using NginxProxy for AWS EKS environments?

Thanks for your help — this feature is very important for using NGINX Gateway Fabric with AWS NLB (IP mode).

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    🆕 New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions