Skip to content

Ingress-NGINX Service Schema

Note

This is auto-generated documentation from a JSON schema that is under construction, this will improve over time.

Return to the root config schema

https://raw.githubusercontent.com/elastisys/compliantkubernetes-apps/main/config/schemas/config.yaml#/properties/ingressNginx/properties/controller/properties/service

Configure the Service for traffic to Ingress-NGINX.

Abstract Extensible Status Identifiable Custom Properties Additional Properties Access Restrictions Defined In
Can be instantiated No Unknown status No Forbidden Allowed none config/schemas/config.yaml*

TYPE:

object (Ingress-NGINX Service)

any of

PROPERTIES:

Property Type Required Nullable Defined by
enabled boolean Optional cannot be null Welkin Apps Config
annotations object Optional cannot be null Welkin Apps Config
type string Optional cannot be null Welkin Apps Config
clusterIP Merged Optional cannot be null Welkin Apps Config
ipFamilyPolicy string Optional cannot be null Welkin Apps Config
ipFamilies array Optional cannot be null Welkin Apps Config
allocateLoadBalancerNodePorts boolean Optional cannot be null Welkin Apps Config
loadBalancerIP string Optional cannot be null Welkin Apps Config
loadBalancerSourceRanges array Optional cannot be null Welkin Apps Config
nodePorts object Optional cannot be null Welkin Apps Config
internal Merged Optional cannot be null Welkin Apps Config

enabled

enabled

TYPE:

boolean (Ingress-NGINX Service Enabled)

annotations

annotations

TYPE:

object (Service Annotations)

DEFAULTS:

The default value is:

{}

type

Configure the type of the Service.

type

TYPE:

string (Service Type)

CONSTRAINTS:

enum: the value of this property must be equal to one of the following values:

Value Explanation
"ClusterIP"
"LoadBalancer"
"NodePort"

clusterIP

clusterIP

TYPE:

string (Service ClusterIP)

one (and only one) of

ipFamilyPolicy

Represents the dual-stack-ness requested or required by this Service. When utilizing an internal loadbalancer service (ie MetalLB), set this field to "RequireDualStack" if you want both IPv4 and IPv6 connectivity. The ipFamilies and clusterIPs fields depend on the value of this field.

See reference

ipFamilyPolicy

TYPE:

string (Service IP Family Policy)

CONSTRAINTS:

enum: the value of this property must be equal to one of the following values:

Value Explanation
""
"SingleStack"
"PreferDualStack"
"RequireDualStack"

DEFAULTS:

The default value is:

"SingleStack"

ipFamilies

List of IP families (e.g. IPv4, IPv6) assigned to the service. Default is IPv4 only. When utilizing an internal loadbalancer service (ie MetalLB), IPv6 would also need to be included in order for the ingress service to allocate an address in that family.

ipFamilies

TYPE:

string[] (Service IP Family)

CONSTRAINTS:

unique items: all items in this array must be unique. Duplicates are not allowed.

DEFAULTS:

The default value is:

[
  "IPv4"
]

allocateLoadBalancerNodePorts

When enabled node ports will be allocated for the Load Balancer Service.

This should be enabled when the cluster is fronted by a proxy load balancer regardless if it is external or internal, and disabled if the cluster uses direct routing of ingress traffic.

See reference

allocateLoadBalancerNodePorts

TYPE:

boolean (Load Balancer Node Ports)

loadBalancerIP

Configure the Load Balancer IP to use an existing IP if supported by the infrastructure provider.

Important

With OpenStack Octavia the floating IP can be created via the CLI beforehand, and one should set the annotation loadbalancer.openstack.org/keep-floatingip: "true" to prevent the floating IP to be deleted.

loadBalancerIP

TYPE:

string (Load Balancer IP)

loadBalancerSourceRanges

Configure the source ranges to allow via the Load Balancer Service.

loadBalancerSourceRanges

TYPE:

string[]

DEFAULTS:

The default value is:

[]

nodePorts

Configure the node ports to allocate for the Service.

nodePorts

TYPE:

object (Node Ports)

internal

Configure the Internal Service for traffic to Ingress-NGINX.

internal

TYPE:

object (Ingress-NGINX Internal Service)

any of

Return to the root config schema


Generated Wed May 14 03:54:21 UTC 2025 from elastisys/compliantkubernetes-apps@main