Feature state: :material-tag-outline: 1.2.0
extraIngress allows defining a list of one or multiple Ingress API objects, when there is need for more than one Ingress object per deployment.
!!! note
If you require just one Ingress object please see [ingress](ingress.md) configuration option.
extraIngress mostly follows the config options present in [ingress](ingress.md) config with exception of name/enabled parametar as showcased below.
extraIngress
value in Kubedeploy allows you to control parameters for Ingress object that would be created by the chart.
!!! note
By default `extraIngress` is disabled.
Available values for extraIngress
in Kubedeploy:
extraIngress:
- name: ingress2 #(1)
className: "haproxy" # (2)
pathType: ImplementationSpecific # (3)
withSSL: true # (4)
svcPort: "" # (5)
annotations: # (6)
cert-manager.io/cluster-issuer: letsencrypt
hosts: # (7)
- host: "" # (8)
paths: [] # (9)
tls: [] # (10)
-
(required) Name of extraIngress object
-
(optional) Ingress class name. In case you have multiple Ingress controllers you can specifically target desired one. Defaults to "haproxy"
-
(optional) Default Ingress pathType
-
(optional) Deploy Ingress object with SSL support. Automatically configures the Ingress
tls
spec. -
(optional) Define default Service port that will be targeted by Ingress. If left undefined Ingress will use first port from
service.ports
(or first port fromports
) to route traffic to. -
(optional) Additional Ingress annotations, can be used to define custom Ingress controller configuration. By default, it sets the cert-manager annotation to use
letsencrypt
cluster-issuer for issuing SSL certificates for configured ingress domain. -
(required) (list) Ingress host list.
-
(required) (string) Define Ingress hostname
-
(optional) (list) Ingress host paths. example usage:
!!! example
```yaml extraIngress: - name: ingress2 hosts: - host: "my-domain.com" paths: - path: /api # (optional) defaults to / svcPort: 8080 # (optional) defaults to `ingress.svcPort` pathType: Prefix # (optional) defaults to `ingress.pathType` ```
-
(optional) (list) Ingress TLS list. overrides any auto configured tls config created by withSSL.
Allows for custom secretName and host list to be defined. In case when you have pre-configured SSL stored in Kubernetes Secret. If secret does not exist, new one will be created by cert-manager.
example usage:
!!! example
```yaml extraIngress: - name: ingress2 hosts: - host: "my-domain.com" tls: - hosts: # (required) list of hosts covered by ssl in secret - my-domain.com secretName: my-domain-ssl # name of secret where SSL is configured ```
See also: