The module lifecycle stage: Preview
The module has requirements for installation
The Deckhouse Kubernetes Platform installs CRDs but does not remove them when a module is disabled. If you no longer need the created CRDs, delete them.
ALBInstance
Scope: Namespaced
Version: v1alpha1
Configuration for an ALB instance (in a user namespace).
A namespaced resource for application or project gateways.
Use it when:
- a team should manage its own Gateway in its own namespace
- the Gateway is dedicated to one project
LoadBalancerinlet mode is enough.
-
objectspec
-
array of stringsspec.acceptRequestsFromWhitelist of sources allowed to send requests.
-
stringspec.acceptRequestsFrom.Element of the array
Pattern:
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$
-
-
objectspec.additionalHeadersAdditional headers to include in upstream requests.
-
objectspec.basicAuthSpecifies if basic authentication has to be enabled globally.
-
booleanspec.basicAuth.enabledSpecifies whether basic authentication is enabled.
-
objectspec.basicAuth.secretSpecifies the secret name and namespace to use with basic authentication.
-
stringspec.basicAuth.secret.name
Required value
-
stringspec.basicAuth.secret.namespace
Required value
-
-
-
objectspec.controllerPodsAdditionalAnnotationsAdditional annotations for controller/data plane pods.
-
stringspec.envoyLogLevelDefines log level of Envoy proxies.
Default:
WarningAllowed values:
Off,Critical,Error,Warning,Info,Debug,Trace -
stringspec.gatewayName
Required value
Name of the Gateway resource this instance belongs to.Minimal length:
1 -
objectspec.geoIPGeoIP database downloader configuration for proxy pods.
-
objectspec.geoIP.headersResponse header names populated by the GeoIP filter.
-
stringspec.geoIP.headers.anonHeader name for anonymous IP traits.
-
stringspec.geoIP.headers.asnHeader name for ASN.
-
stringspec.geoIP.headers.cityHeader name for city.
-
stringspec.geoIP.headers.countryHeader name for country code.
-
stringspec.geoIP.headers.ispHeader name for ISP name.
-
stringspec.geoIP.headers.regionHeader name for region or subdivision.
-
-
array of stringsspec.geoIP.maxmindEditionIDs
A list of database editions to download at startup.
Default:
[ "GeoLite2-City" ]-
stringspec.geoIP.maxmindEditionIDs.Element of the array
Allowed values:
GeoIP2-Anonymous-IP,GeoIP2-City,GeoIP2-ISP,GeoIP2-ASN,GeoLite2-ASN,GeoLite2-City
-
-
objectspec.geoIP.maxmindMirror
Mirror configuration for downloading GeoIP databases. If no parameter is specified or the parameter has an empty value, the default value will be used, which is
https://download.maxmind.com.If this mirror is used to host preloaded archives, the
licenseKeyparameter may be omitted.-
booleanspec.geoIP.maxmindMirror.insecureSkipVerifySkip TLS certificate verification for the mirror, for example when using self-signed certificates.
-
stringspec.geoIP.maxmindMirror.url
Required value
The URL for downloading GeoIP databases.Pattern:
^https?://.+$Examples:
url: https://mirror.localurl: absolute path https://mirror.local/GeoLite2-City.tar.gz
-
-
-
objectspec.inlet
Required value
Inlet defines how traffic enters the data plane.-
array of objectsspec.inlet.additionalPortsAdditional Service ports published besides default 80/443.
-
integerspec.inlet.additionalPorts.portAdditional Service port number.
Allowed values:
1 <= X <= 65535 -
stringspec.inlet.additionalPorts.protocolNetwork protocol for the additional Service port. Currently only
TCPis supported.Allowed values:
TCP
-
-
objectspec.inlet.loadBalancerSettings for the LoadBalancer inlet.
Default:
{}-
objectspec.inlet.loadBalancer.serviceAnnotationsAdditional annotations for the LoadBalancer Service.
-
-
stringspec.inlet.type
Required value
Supported inlet type.Allowed values:
LoadBalancer
-
-
objectspec.istioSidecarSettings for Istio sidecar injection into proxy pods.
-
booleanspec.istioSidecar.enabledAttaches annotations to the proxy pods to automatically inject Istio sidecar containers.
-
objectspec.istioSidecar.resourcesResource requests and limits for the injected Istio sidecar container.
-
objectspec.istioSidecar.resources.limitsResource limits.
-
stringspec.istioSidecar.resources.limits.cpuCPU limits.
-
stringspec.istioSidecar.resources.limits.memoryMemory limits.
-
-
objectspec.istioSidecar.resources.requestsResource requests.
-
stringspec.istioSidecar.resources.requests.cpuCPU requests.
-
stringspec.istioSidecar.resources.requests.memoryMemory requests.
-
-
-
-
integerspec.minReplicasMinimum number of Envoy Proxy replicas. If a value greater than 1 is set, a PodDisruptionBudged object is provided.
Default:
1Allowed values:
1 <= X -
objectspec.nodeSelectorNode selector for pods.
-
objectspec.originalIPDetectionDefines if the Envoy Proxy has to detect original IP using headers.
-
stringspec.originalIPDetection.realIPHeaderDefines a header to use for original client IP detection.
Default:
X-Forwarded-ForExample:
realIPHeader: X-Real-IP -
array of stringsspec.originalIPDetection.setRealIPFrom
Required value
Specifies CIDR ranges allowed to provide headers for origin IP detection.-
stringspec.originalIPDetection.setRealIPFrom.Element of the array
Pattern:
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$
-
-
-
objectspec.resourcesManagementCPU and memory request and limit settings for the controller Pods.
-
stringspec.resourcesManagement.mode
Required value
Resource management mode.Default:
VPAAllowed values:
VPA,Static -
objectspec.resourcesManagement.staticStatic mode settings.
-
objectspec.resourcesManagement.static.limitsResource limits.
Default:
{}-
stringspec.resourcesManagement.static.limits.cpuCPU limits.
-
stringspec.resourcesManagement.static.limits.memoryMemory limits.
-
-
objectspec.resourcesManagement.static.requestsResource requests.
Default:
{}-
stringspec.resourcesManagement.static.requests.cpuCPU requests.
Default:
350m -
stringspec.resourcesManagement.static.requests.memoryMemory requests.
Default:
500Mi
-
-
-
objectspec.resourcesManagement.vpaResource management settings for the VPA mode.
-
objectspec.resourcesManagement.vpa.cpuCPU-related VPA settings.
Default:
{}-
numberspec.resourcesManagement.vpa.cpu.limitRatio
The CPU limits/requests ratio.
If set, the limits are calculated based on the requests and the specified ratio.
-
stringspec.resourcesManagement.vpa.cpu.maxMaximum value of allowed CPU requests to be submitted by the VPA.
Default:
1500m -
stringspec.resourcesManagement.vpa.cpu.minMinimum value of allowed CPU requests to be submitted by the VPA.
Default:
100m
-
-
objectspec.resourcesManagement.vpa.memoryMemory-related VPA settings.
Default:
{}-
numberspec.resourcesManagement.vpa.memory.limitRatio
The memory limits/requests ratio.
If set, the limits are calculated based on the requests and the specified ratio.
-
stringspec.resourcesManagement.vpa.memory.maxMaximum value of allowed memory requests to be submitted by the VPA.
Default:
2000Mi -
stringspec.resourcesManagement.vpa.memory.minMinimum value of allowed memory requests to be submitted by the VPA.
Default:
500Mi
-
-
stringspec.resourcesManagement.vpa.modeVPA operating mode.
Default:
InitialAllowed values:
Initial,InPlaceOrRecreate
-
-
-
array of objectsspec.tolerationsPod tolerations.
-
stringspec.tolerations.effect
Allowed values:
NoSchedule,PreferNoSchedule,NoExecute -
stringspec.tolerations.key
-
stringspec.tolerations.operator
Allowed values:
Exists,Equal -
integerspec.tolerations.tolerationSeconds
Allowed values:
0 <= X -
stringspec.tolerations.value
-
-
booleanspec.useProxyProtocolEnable PROXY protocol support.
-
-
objectstatus
-
booleanstatus.conflictPortsTrue when this instance additionalPorts are ignored because another older instance with the same gatewayName is authoritative.
-
stringstatus.conflictPortsOwnerReference to the older instance that defines effective additionalPorts for this gatewayName.
-
stringstatus.gatewayEffective Gateway name served by this instance.
-
integerstatus.observedGeneration
Allowed values:
0 <= X -
booleanstatus.readyTrue when this instance is ready to serve traffic.
-
booleanstatus.syncedTrue when desired and actual resources are in sync.
-
ClusterALBInstance
Scope: Cluster
Version: v1alpha1
Configuration for an ALB instance.
A cluster-scoped resource for shared or platform-level gateways in the system namespace.
Use it when:
- the Gateway should be located in the controller namespace
- the gateway is shared between applications or teams
- you need
HostPortinlet mode - you need cluster-level features such as the default Deckhouse Gateway.
-
objectspec
-
array of stringsspec.acceptRequestsFromWhitelist of sources allowed to send requests.
-
stringspec.acceptRequestsFrom.Element of the array
Pattern:
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$
-
-
objectspec.additionalHeadersAdditional HTTP headers to add.
-
objectspec.basicAuthSpecifies if basic authentication has to be enabled globally.
-
booleanspec.basicAuth.enabledSpecifies whether basic authentication is enabled.
-
objectspec.basicAuth.secretSpecifies the secret name and namespace to use with basic authentication.
-
stringspec.basicAuth.secret.name
Required value
Secret name. -
stringspec.basicAuth.secret.namespace
Required value
Namespace name.
-
-
-
objectspec.controllerPodsAdditionalAnnotationsAdditional annotations for controller/data plane pods.
-
booleanspec.defaultDeckhouseGateway
Marks the gateway as a default Deckhouse Gateway in the cluster. This gateway is used to serve Deckhouse HTTP/HTTPS endpoints.
Warning. If more than one gateway is marked as a default, the oldest gateway is selected as the default gateway.
-
stringspec.envoyLogLevelDefines log level of Envoy proxies.
Default:
WarningAllowed values:
Off,Critical,Error,Warning,Info,Debug,Trace -
stringspec.gatewayName
Required value
Name of the Gateway resource this instance belongs to.Minimal length:
1 -
objectspec.geoIPGeoIP database downloader configuration for proxy pods.
-
objectspec.geoIP.headersRequest header names populated by the GeoIP filter (added to requests forwarded upstream).
-
stringspec.geoIP.headers.anonHeader name for anonymous IP traits.
-
stringspec.geoIP.headers.asnHeader name for ASN.
-
stringspec.geoIP.headers.cityHeader name for city.
-
stringspec.geoIP.headers.countryHeader name for country code.
-
stringspec.geoIP.headers.ispHeader name for ISP name.
-
stringspec.geoIP.headers.regionHeader name for region or subdivision.
-
-
array of stringsspec.geoIP.maxmindEditionIDs
A list of database editions to download at startup.
Default:
[ "GeoLite2-City" ]-
stringspec.geoIP.maxmindEditionIDs.Element of the array
Allowed values:
GeoIP2-Anonymous-IP,GeoIP2-City,GeoIP2-ISP,GeoIP2-ASN,GeoLite2-ASN,GeoLite2-City
-
-
objectspec.geoIP.maxmindMirror
Mirror configuration for downloading GeoIP databases.
If no parameter is specified or the parameter has an empty value, the default value will be used, which is
https://download.maxmind.com.If this mirror is used to host preloaded archives, the
licenseKeyparameter may be omitted.-
booleanspec.geoIP.maxmindMirror.insecureSkipVerifySkip TLS certificate verification for the mirror, for example when using self-signed certificates.
-
stringspec.geoIP.maxmindMirror.url
Required value
The URL for downloading GeoIP databases.Pattern:
^https?://.+$Examples:
url: https://mirror.localurl: https://mirror.local/GeoLite2-City.tar.gz
-
-
-
objectspec.inlet
Required value
Inlet defines how traffic enters the data plane.-
array of objectsspec.inlet.additionalPortsAdditional Service ports published besides default 80/443. For HostPort inlets these ports are also bound as Pod hostPorts on the managed DaemonSet.
-
integerspec.inlet.additionalPorts.portAdditional Service port number.
Allowed values:
1 <= X <= 65535 -
stringspec.inlet.additionalPorts.protocolNetwork protocol for the additional Service port. Currently only
TCPis supported.Allowed values:
TCP
-
-
objectspec.inlet.hostPort
HostPortinlet settings.-
integerspec.inlet.hostPort.httpPort
Port for insecure HTTP connections.
If the parameter is not set, the connection over HTTP cannot be established.
This parameter is mandatory if
httpsPortis not set. -
integerspec.inlet.hostPort.httpsPort
Port for secure HTTPS connections.
If the parameter is not set, the connection over HTTPS cannot be established.
This parameter is mandatory if
httpPortis not set.
-
-
objectspec.inlet.loadBalancerSettings for the LoadBalancer inlet.
-
objectspec.inlet.loadBalancer.serviceAnnotationsAdditional annotations for the LoadBalancer Service.
-
-
stringspec.inlet.type
Required value
Supported inlet type.Allowed values:
LoadBalancer,HostPort
-
-
objectspec.istioSidecarSettings for Istio sidecar injection into proxy pods.
-
booleanspec.istioSidecar.enabledAttaches annotations to the proxy pods to automatically inject Istio sidecar containers.
-
objectspec.istioSidecar.resourcesResource requests and limits for the injected Istio sidecar container.
-
objectspec.istioSidecar.resources.limitsResource limits.
-
stringspec.istioSidecar.resources.limits.cpuCPU limits.
-
stringspec.istioSidecar.resources.limits.memoryMemory limits.
-
-
objectspec.istioSidecar.resources.requestsResource requests.
-
stringspec.istioSidecar.resources.requests.cpuCPU requests.
-
stringspec.istioSidecar.resources.requests.memoryMemory requests.
-
-
-
-
objectspec.nodeSelectorNode selector for pods.
-
objectspec.originalIPDetectionDefines if the Envoy Proxy has to detect original IP using headers.
-
stringspec.originalIPDetection.realIPHeaderDefines a header to use for original client IP detection.
Default:
X-Forwarded-ForExample:
realIPHeader: X-Real-IP -
array of stringsspec.originalIPDetection.setRealIPFrom
Required value
Specifies CIDR ranges allowed to provide headers for origin IP detection.-
stringspec.originalIPDetection.setRealIPFrom.Element of the array
Pattern:
^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\/(3[0-2]|[1-2][0-9]|[0-9]))$
-
-
-
objectspec.resourcesManagementCPU and memory request and limit settings for the controller Pods.
-
stringspec.resourcesManagement.mode
Required value
Resource management mode.Default:
VPAAllowed values:
VPA,Static -
objectspec.resourcesManagement.staticStatic mode settings.
-
objectspec.resourcesManagement.static.limitsResource limits.
Default:
{}-
stringspec.resourcesManagement.static.limits.cpuCPU limits.
-
stringspec.resourcesManagement.static.limits.memoryMemory limits.
-
-
objectspec.resourcesManagement.static.requestsResource requests.
Default:
{}-
stringspec.resourcesManagement.static.requests.cpuCPU requests.
Default:
350m -
stringspec.resourcesManagement.static.requests.memoryMemory requests.
Default:
500Mi
-
-
-
objectspec.resourcesManagement.vpaResource management settings for the VPA mode.
-
objectspec.resourcesManagement.vpa.cpuCPU-related VPA settings.
Default:
{}-
numberspec.resourcesManagement.vpa.cpu.limitRatio
The CPU limits/requests ratio.
If set, the limits are calculated based on the requests and the specified ratio.
-
stringspec.resourcesManagement.vpa.cpu.maxMaximum value of allowed CPU requests to be submitted by the VPA.
Default:
1500m -
stringspec.resourcesManagement.vpa.cpu.minMinimum value of allowed CPU requests to be submitted by the VPA.
Default:
100m
-
-
objectspec.resourcesManagement.vpa.memoryMemory-related VPA settings.
Default:
{}-
numberspec.resourcesManagement.vpa.memory.limitRatio
The memory limits/requests ratio.
If set, the limits are calculated based on the requests and the specified ratio.
-
stringspec.resourcesManagement.vpa.memory.maxMaximum value of allowed memory requests to be submitted by the VPA.
Default:
2000Mi -
stringspec.resourcesManagement.vpa.memory.minMinimum value of allowed memory requests to be submitted by the VPA.
Default:
500Mi
-
-
stringspec.resourcesManagement.vpa.modeVPA operating mode.
Default:
InitialAllowed values:
Initial,InPlaceOrRecreate
-
-
-
array of objectsspec.tolerationsPod tolerations.
-
stringspec.tolerations.effect
Allowed values:
NoSchedule,PreferNoSchedule,NoExecute -
stringspec.tolerations.key
-
stringspec.tolerations.operator
Allowed values:
Exists,Equal -
integerspec.tolerations.tolerationSeconds
Allowed values:
0 <= X -
stringspec.tolerations.value
-
-
booleanspec.useProxyProtocolEnable PROXY protocol support.
-
-
objectstatus
-
booleanstatus.conflictPortsTrue when this instance additionalPorts are ignored because another older instance with the same gatewayName is authoritative.
-
stringstatus.conflictPortsOwnerReference to the older instance that defines effective additionalPorts for this gatewayName.
-
booleanstatus.defaultGatewayTrue when this cluster ClusterALBInstance is selected as default gateway source.
-
stringstatus.gatewayEffective Gateway name served by this instance.
-
integerstatus.observedGeneration
Allowed values:
0 <= X -
booleanstatus.readyTrue when this instance is ready to serve traffic.
-
booleanstatus.syncedTrue when desired and actual resources are in sync.
-