mirror of
				https://github.com/containous/traefik.git
				synced 2025-10-30 20:24:28 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			750 lines
		
	
	
		
			41 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			750 lines
		
	
	
		
			41 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
| ---
 | |
| apiVersion: apiextensions.k8s.io/v1
 | |
| kind: CustomResourceDefinition
 | |
| metadata:
 | |
|   annotations:
 | |
|     controller-gen.kubebuilder.io/version: v0.16.1
 | |
|   name: traefikservices.traefik.io
 | |
| spec:
 | |
|   group: traefik.io
 | |
|   names:
 | |
|     kind: TraefikService
 | |
|     listKind: TraefikServiceList
 | |
|     plural: traefikservices
 | |
|     singular: traefikservice
 | |
|   scope: Namespaced
 | |
|   versions:
 | |
|   - name: v1alpha1
 | |
|     schema:
 | |
|       openAPIV3Schema:
 | |
|         description: |-
 | |
|           TraefikService is the CRD implementation of a Traefik Service.
 | |
|           TraefikService object allows to:
 | |
|           - Apply weight to Services on load-balancing
 | |
|           - Mirror traffic on services
 | |
|           More info: https://doc.traefik.io/traefik/v3.5/routing/providers/kubernetes-crd/#kind-traefikservice
 | |
|         properties:
 | |
|           apiVersion:
 | |
|             description: |-
 | |
|               APIVersion defines the versioned schema of this representation of an object.
 | |
|               Servers should convert recognized schemas to the latest internal value, and
 | |
|               may reject unrecognized values.
 | |
|               More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
 | |
|             type: string
 | |
|           kind:
 | |
|             description: |-
 | |
|               Kind is a string value representing the REST resource this object represents.
 | |
|               Servers may infer this from the endpoint the client submits requests to.
 | |
|               Cannot be updated.
 | |
|               In CamelCase.
 | |
|               More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
 | |
|             type: string
 | |
|           metadata:
 | |
|             type: object
 | |
|           spec:
 | |
|             description: TraefikServiceSpec defines the desired state of a TraefikService.
 | |
|             properties:
 | |
|               mirroring:
 | |
|                 description: Mirroring defines the Mirroring service configuration.
 | |
|                 properties:
 | |
|                   healthCheck:
 | |
|                     description: Healthcheck defines health checks for ExternalName
 | |
|                       services.
 | |
|                     properties:
 | |
|                       followRedirects:
 | |
|                         description: |-
 | |
|                           FollowRedirects defines whether redirects should be followed during the health check calls.
 | |
|                           Default: true
 | |
|                         type: boolean
 | |
|                       headers:
 | |
|                         additionalProperties:
 | |
|                           type: string
 | |
|                         description: Headers defines custom headers to be sent to
 | |
|                           the health check endpoint.
 | |
|                         type: object
 | |
|                       hostname:
 | |
|                         description: Hostname defines the value of hostname in the
 | |
|                           Host header of the health check request.
 | |
|                         type: string
 | |
|                       interval:
 | |
|                         anyOf:
 | |
|                         - type: integer
 | |
|                         - type: string
 | |
|                         description: |-
 | |
|                           Interval defines the frequency of the health check calls for healthy targets.
 | |
|                           Default: 30s
 | |
|                         x-kubernetes-int-or-string: true
 | |
|                       method:
 | |
|                         description: Method defines the healthcheck method.
 | |
|                         type: string
 | |
|                       mode:
 | |
|                         description: |-
 | |
|                           Mode defines the health check mode.
 | |
|                           If defined to grpc, will use the gRPC health check protocol to probe the server.
 | |
|                           Default: http
 | |
|                         type: string
 | |
|                       path:
 | |
|                         description: Path defines the server URL path for the health
 | |
|                           check endpoint.
 | |
|                         type: string
 | |
|                       port:
 | |
|                         description: Port defines the server URL port for the health
 | |
|                           check endpoint.
 | |
|                         type: integer
 | |
|                       scheme:
 | |
|                         description: Scheme replaces the server URL scheme for the
 | |
|                           health check endpoint.
 | |
|                         type: string
 | |
|                       status:
 | |
|                         description: Status defines the expected HTTP status code
 | |
|                           of the response to the health check request.
 | |
|                         type: integer
 | |
|                       timeout:
 | |
|                         anyOf:
 | |
|                         - type: integer
 | |
|                         - type: string
 | |
|                         description: |-
 | |
|                           Timeout defines the maximum duration Traefik will wait for a health check request before considering the server unhealthy.
 | |
|                           Default: 5s
 | |
|                         x-kubernetes-int-or-string: true
 | |
|                       unhealthyInterval:
 | |
|                         anyOf:
 | |
|                         - type: integer
 | |
|                         - type: string
 | |
|                         description: |-
 | |
|                           UnhealthyInterval defines the frequency of the health check calls for unhealthy targets.
 | |
|                           When UnhealthyInterval is not defined, it defaults to the Interval value.
 | |
|                           Default: 30s
 | |
|                         x-kubernetes-int-or-string: true
 | |
|                     type: object
 | |
|                   kind:
 | |
|                     description: Kind defines the kind of the Service.
 | |
|                     enum:
 | |
|                     - Service
 | |
|                     - TraefikService
 | |
|                     type: string
 | |
|                   maxBodySize:
 | |
|                     description: |-
 | |
|                       MaxBodySize defines the maximum size allowed for the body of the request.
 | |
|                       If the body is larger, the request is not mirrored.
 | |
|                       Default value is -1, which means unlimited size.
 | |
|                     format: int64
 | |
|                     type: integer
 | |
|                   mirrorBody:
 | |
|                     description: |-
 | |
|                       MirrorBody defines whether the body of the request should be mirrored.
 | |
|                       Default value is true.
 | |
|                     type: boolean
 | |
|                   mirrors:
 | |
|                     description: Mirrors defines the list of mirrors where Traefik
 | |
|                       will duplicate the traffic.
 | |
|                     items:
 | |
|                       description: MirrorService holds the mirror configuration.
 | |
|                       properties:
 | |
|                         healthCheck:
 | |
|                           description: Healthcheck defines health checks for ExternalName
 | |
|                             services.
 | |
|                           properties:
 | |
|                             followRedirects:
 | |
|                               description: |-
 | |
|                                 FollowRedirects defines whether redirects should be followed during the health check calls.
 | |
|                                 Default: true
 | |
|                               type: boolean
 | |
|                             headers:
 | |
|                               additionalProperties:
 | |
|                                 type: string
 | |
|                               description: Headers defines custom headers to be sent
 | |
|                                 to the health check endpoint.
 | |
|                               type: object
 | |
|                             hostname:
 | |
|                               description: Hostname defines the value of hostname
 | |
|                                 in the Host header of the health check request.
 | |
|                               type: string
 | |
|                             interval:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 Interval defines the frequency of the health check calls for healthy targets.
 | |
|                                 Default: 30s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                             method:
 | |
|                               description: Method defines the healthcheck method.
 | |
|                               type: string
 | |
|                             mode:
 | |
|                               description: |-
 | |
|                                 Mode defines the health check mode.
 | |
|                                 If defined to grpc, will use the gRPC health check protocol to probe the server.
 | |
|                                 Default: http
 | |
|                               type: string
 | |
|                             path:
 | |
|                               description: Path defines the server URL path for the
 | |
|                                 health check endpoint.
 | |
|                               type: string
 | |
|                             port:
 | |
|                               description: Port defines the server URL port for the
 | |
|                                 health check endpoint.
 | |
|                               type: integer
 | |
|                             scheme:
 | |
|                               description: Scheme replaces the server URL scheme for
 | |
|                                 the health check endpoint.
 | |
|                               type: string
 | |
|                             status:
 | |
|                               description: Status defines the expected HTTP status
 | |
|                                 code of the response to the health check request.
 | |
|                               type: integer
 | |
|                             timeout:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 Timeout defines the maximum duration Traefik will wait for a health check request before considering the server unhealthy.
 | |
|                                 Default: 5s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                             unhealthyInterval:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 UnhealthyInterval defines the frequency of the health check calls for unhealthy targets.
 | |
|                                 When UnhealthyInterval is not defined, it defaults to the Interval value.
 | |
|                                 Default: 30s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                           type: object
 | |
|                         kind:
 | |
|                           description: Kind defines the kind of the Service.
 | |
|                           enum:
 | |
|                           - Service
 | |
|                           - TraefikService
 | |
|                           type: string
 | |
|                         name:
 | |
|                           description: |-
 | |
|                             Name defines the name of the referenced Kubernetes Service or TraefikService.
 | |
|                             The differentiation between the two is specified in the Kind field.
 | |
|                           type: string
 | |
|                         namespace:
 | |
|                           description: Namespace defines the namespace of the referenced
 | |
|                             Kubernetes Service or TraefikService.
 | |
|                           type: string
 | |
|                         nativeLB:
 | |
|                           description: |-
 | |
|                             NativeLB controls, when creating the load-balancer,
 | |
|                             whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP.
 | |
|                             The Kubernetes Service itself does load-balance to the pods.
 | |
|                             By default, NativeLB is false.
 | |
|                           type: boolean
 | |
|                         nodePortLB:
 | |
|                           description: |-
 | |
|                             NodePortLB controls, when creating the load-balancer,
 | |
|                             whether the LB's children are directly the nodes internal IPs using the nodePort when the service type is NodePort.
 | |
|                             It allows services to be reachable when Traefik runs externally from the Kubernetes cluster but within the same network of the nodes.
 | |
|                             By default, NodePortLB is false.
 | |
|                           type: boolean
 | |
|                         passHostHeader:
 | |
|                           description: |-
 | |
|                             PassHostHeader defines whether the client Host header is forwarded to the upstream Kubernetes Service.
 | |
|                             By default, passHostHeader is true.
 | |
|                           type: boolean
 | |
|                         percent:
 | |
|                           description: |-
 | |
|                             Percent defines the part of the traffic to mirror.
 | |
|                             Supported values: 0 to 100.
 | |
|                           type: integer
 | |
|                         port:
 | |
|                           anyOf:
 | |
|                           - type: integer
 | |
|                           - type: string
 | |
|                           description: |-
 | |
|                             Port defines the port of a Kubernetes Service.
 | |
|                             This can be a reference to a named port.
 | |
|                           x-kubernetes-int-or-string: true
 | |
|                         responseForwarding:
 | |
|                           description: ResponseForwarding defines how Traefik forwards
 | |
|                             the response from the upstream Kubernetes Service to the
 | |
|                             client.
 | |
|                           properties:
 | |
|                             flushInterval:
 | |
|                               description: |-
 | |
|                                 FlushInterval defines the interval, in milliseconds, in between flushes to the client while copying the response body.
 | |
|                                 A negative value means to flush immediately after each write to the client.
 | |
|                                 This configuration is ignored when ReverseProxy recognizes a response as a streaming response;
 | |
|                                 for such responses, writes are flushed to the client immediately.
 | |
|                                 Default: 100ms
 | |
|                               type: string
 | |
|                           type: object
 | |
|                         scheme:
 | |
|                           description: |-
 | |
|                             Scheme defines the scheme to use for the request to the upstream Kubernetes Service.
 | |
|                             It defaults to https when Kubernetes Service port is 443, http otherwise.
 | |
|                           type: string
 | |
|                         serversTransport:
 | |
|                           description: |-
 | |
|                             ServersTransport defines the name of ServersTransport resource to use.
 | |
|                             It allows to configure the transport between Traefik and your servers.
 | |
|                             Can only be used on a Kubernetes Service.
 | |
|                           type: string
 | |
|                         sticky:
 | |
|                           description: |-
 | |
|                             Sticky defines the sticky sessions configuration.
 | |
|                             More info: https://doc.traefik.io/traefik/v3.5/routing/services/#sticky-sessions
 | |
|                           properties:
 | |
|                             cookie:
 | |
|                               description: Cookie defines the sticky cookie configuration.
 | |
|                               properties:
 | |
|                                 domain:
 | |
|                                   description: |-
 | |
|                                     Domain defines the host to which the cookie will be sent.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#domaindomain-value
 | |
|                                   type: string
 | |
|                                 httpOnly:
 | |
|                                   description: HTTPOnly defines whether the cookie
 | |
|                                     can be accessed by client-side APIs, such as JavaScript.
 | |
|                                   type: boolean
 | |
|                                 maxAge:
 | |
|                                   description: |-
 | |
|                                     MaxAge defines the number of seconds until the cookie expires.
 | |
|                                     When set to a negative number, the cookie expires immediately.
 | |
|                                     When set to zero, the cookie never expires.
 | |
|                                   type: integer
 | |
|                                 name:
 | |
|                                   description: Name defines the Cookie name.
 | |
|                                   type: string
 | |
|                                 path:
 | |
|                                   description: |-
 | |
|                                     Path defines the path that must exist in the requested URL for the browser to send the Cookie header.
 | |
|                                     When not provided the cookie will be sent on every request to the domain.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#pathpath-value
 | |
|                                   type: string
 | |
|                                 sameSite:
 | |
|                                   description: |-
 | |
|                                     SameSite defines the same site policy.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
 | |
|                                   enum:
 | |
|                                   - none
 | |
|                                   - lax
 | |
|                                   - strict
 | |
|                                   type: string
 | |
|                                 secure:
 | |
|                                   description: Secure defines whether the cookie can
 | |
|                                     only be transmitted over an encrypted connection
 | |
|                                     (i.e. HTTPS).
 | |
|                                   type: boolean
 | |
|                               type: object
 | |
|                           type: object
 | |
|                         strategy:
 | |
|                           description: |-
 | |
|                             Strategy defines the load balancing strategy between the servers.
 | |
|                             Supported values are: wrr (Weighed round-robin) and p2c (Power of two choices).
 | |
|                             RoundRobin value is deprecated and supported for backward compatibility.
 | |
|                           enum:
 | |
|                           - wrr
 | |
|                           - p2c
 | |
|                           - RoundRobin
 | |
|                           type: string
 | |
|                         weight:
 | |
|                           description: |-
 | |
|                             Weight defines the weight and should only be specified when Name references a TraefikService object
 | |
|                             (and to be precise, one that embeds a Weighted Round Robin).
 | |
|                           minimum: 0
 | |
|                           type: integer
 | |
|                       required:
 | |
|                       - name
 | |
|                       type: object
 | |
|                     type: array
 | |
|                   name:
 | |
|                     description: |-
 | |
|                       Name defines the name of the referenced Kubernetes Service or TraefikService.
 | |
|                       The differentiation between the two is specified in the Kind field.
 | |
|                     type: string
 | |
|                   namespace:
 | |
|                     description: Namespace defines the namespace of the referenced
 | |
|                       Kubernetes Service or TraefikService.
 | |
|                     type: string
 | |
|                   nativeLB:
 | |
|                     description: |-
 | |
|                       NativeLB controls, when creating the load-balancer,
 | |
|                       whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP.
 | |
|                       The Kubernetes Service itself does load-balance to the pods.
 | |
|                       By default, NativeLB is false.
 | |
|                     type: boolean
 | |
|                   nodePortLB:
 | |
|                     description: |-
 | |
|                       NodePortLB controls, when creating the load-balancer,
 | |
|                       whether the LB's children are directly the nodes internal IPs using the nodePort when the service type is NodePort.
 | |
|                       It allows services to be reachable when Traefik runs externally from the Kubernetes cluster but within the same network of the nodes.
 | |
|                       By default, NodePortLB is false.
 | |
|                     type: boolean
 | |
|                   passHostHeader:
 | |
|                     description: |-
 | |
|                       PassHostHeader defines whether the client Host header is forwarded to the upstream Kubernetes Service.
 | |
|                       By default, passHostHeader is true.
 | |
|                     type: boolean
 | |
|                   port:
 | |
|                     anyOf:
 | |
|                     - type: integer
 | |
|                     - type: string
 | |
|                     description: |-
 | |
|                       Port defines the port of a Kubernetes Service.
 | |
|                       This can be a reference to a named port.
 | |
|                     x-kubernetes-int-or-string: true
 | |
|                   responseForwarding:
 | |
|                     description: ResponseForwarding defines how Traefik forwards the
 | |
|                       response from the upstream Kubernetes Service to the client.
 | |
|                     properties:
 | |
|                       flushInterval:
 | |
|                         description: |-
 | |
|                           FlushInterval defines the interval, in milliseconds, in between flushes to the client while copying the response body.
 | |
|                           A negative value means to flush immediately after each write to the client.
 | |
|                           This configuration is ignored when ReverseProxy recognizes a response as a streaming response;
 | |
|                           for such responses, writes are flushed to the client immediately.
 | |
|                           Default: 100ms
 | |
|                         type: string
 | |
|                     type: object
 | |
|                   scheme:
 | |
|                     description: |-
 | |
|                       Scheme defines the scheme to use for the request to the upstream Kubernetes Service.
 | |
|                       It defaults to https when Kubernetes Service port is 443, http otherwise.
 | |
|                     type: string
 | |
|                   serversTransport:
 | |
|                     description: |-
 | |
|                       ServersTransport defines the name of ServersTransport resource to use.
 | |
|                       It allows to configure the transport between Traefik and your servers.
 | |
|                       Can only be used on a Kubernetes Service.
 | |
|                     type: string
 | |
|                   sticky:
 | |
|                     description: |-
 | |
|                       Sticky defines the sticky sessions configuration.
 | |
|                       More info: https://doc.traefik.io/traefik/v3.5/routing/services/#sticky-sessions
 | |
|                     properties:
 | |
|                       cookie:
 | |
|                         description: Cookie defines the sticky cookie configuration.
 | |
|                         properties:
 | |
|                           domain:
 | |
|                             description: |-
 | |
|                               Domain defines the host to which the cookie will be sent.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#domaindomain-value
 | |
|                             type: string
 | |
|                           httpOnly:
 | |
|                             description: HTTPOnly defines whether the cookie can be
 | |
|                               accessed by client-side APIs, such as JavaScript.
 | |
|                             type: boolean
 | |
|                           maxAge:
 | |
|                             description: |-
 | |
|                               MaxAge defines the number of seconds until the cookie expires.
 | |
|                               When set to a negative number, the cookie expires immediately.
 | |
|                               When set to zero, the cookie never expires.
 | |
|                             type: integer
 | |
|                           name:
 | |
|                             description: Name defines the Cookie name.
 | |
|                             type: string
 | |
|                           path:
 | |
|                             description: |-
 | |
|                               Path defines the path that must exist in the requested URL for the browser to send the Cookie header.
 | |
|                               When not provided the cookie will be sent on every request to the domain.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#pathpath-value
 | |
|                             type: string
 | |
|                           sameSite:
 | |
|                             description: |-
 | |
|                               SameSite defines the same site policy.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
 | |
|                             enum:
 | |
|                             - none
 | |
|                             - lax
 | |
|                             - strict
 | |
|                             type: string
 | |
|                           secure:
 | |
|                             description: Secure defines whether the cookie can only
 | |
|                               be transmitted over an encrypted connection (i.e. HTTPS).
 | |
|                             type: boolean
 | |
|                         type: object
 | |
|                     type: object
 | |
|                   strategy:
 | |
|                     description: |-
 | |
|                       Strategy defines the load balancing strategy between the servers.
 | |
|                       Supported values are: wrr (Weighed round-robin) and p2c (Power of two choices).
 | |
|                       RoundRobin value is deprecated and supported for backward compatibility.
 | |
|                     enum:
 | |
|                     - wrr
 | |
|                     - p2c
 | |
|                     - RoundRobin
 | |
|                     type: string
 | |
|                   weight:
 | |
|                     description: |-
 | |
|                       Weight defines the weight and should only be specified when Name references a TraefikService object
 | |
|                       (and to be precise, one that embeds a Weighted Round Robin).
 | |
|                     minimum: 0
 | |
|                     type: integer
 | |
|                 required:
 | |
|                 - name
 | |
|                 type: object
 | |
|               weighted:
 | |
|                 description: Weighted defines the Weighted Round Robin configuration.
 | |
|                 properties:
 | |
|                   services:
 | |
|                     description: Services defines the list of Kubernetes Service and/or
 | |
|                       TraefikService to load-balance, with weight.
 | |
|                     items:
 | |
|                       description: Service defines an upstream HTTP service to proxy
 | |
|                         traffic to.
 | |
|                       properties:
 | |
|                         healthCheck:
 | |
|                           description: Healthcheck defines health checks for ExternalName
 | |
|                             services.
 | |
|                           properties:
 | |
|                             followRedirects:
 | |
|                               description: |-
 | |
|                                 FollowRedirects defines whether redirects should be followed during the health check calls.
 | |
|                                 Default: true
 | |
|                               type: boolean
 | |
|                             headers:
 | |
|                               additionalProperties:
 | |
|                                 type: string
 | |
|                               description: Headers defines custom headers to be sent
 | |
|                                 to the health check endpoint.
 | |
|                               type: object
 | |
|                             hostname:
 | |
|                               description: Hostname defines the value of hostname
 | |
|                                 in the Host header of the health check request.
 | |
|                               type: string
 | |
|                             interval:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 Interval defines the frequency of the health check calls for healthy targets.
 | |
|                                 Default: 30s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                             method:
 | |
|                               description: Method defines the healthcheck method.
 | |
|                               type: string
 | |
|                             mode:
 | |
|                               description: |-
 | |
|                                 Mode defines the health check mode.
 | |
|                                 If defined to grpc, will use the gRPC health check protocol to probe the server.
 | |
|                                 Default: http
 | |
|                               type: string
 | |
|                             path:
 | |
|                               description: Path defines the server URL path for the
 | |
|                                 health check endpoint.
 | |
|                               type: string
 | |
|                             port:
 | |
|                               description: Port defines the server URL port for the
 | |
|                                 health check endpoint.
 | |
|                               type: integer
 | |
|                             scheme:
 | |
|                               description: Scheme replaces the server URL scheme for
 | |
|                                 the health check endpoint.
 | |
|                               type: string
 | |
|                             status:
 | |
|                               description: Status defines the expected HTTP status
 | |
|                                 code of the response to the health check request.
 | |
|                               type: integer
 | |
|                             timeout:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 Timeout defines the maximum duration Traefik will wait for a health check request before considering the server unhealthy.
 | |
|                                 Default: 5s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                             unhealthyInterval:
 | |
|                               anyOf:
 | |
|                               - type: integer
 | |
|                               - type: string
 | |
|                               description: |-
 | |
|                                 UnhealthyInterval defines the frequency of the health check calls for unhealthy targets.
 | |
|                                 When UnhealthyInterval is not defined, it defaults to the Interval value.
 | |
|                                 Default: 30s
 | |
|                               x-kubernetes-int-or-string: true
 | |
|                           type: object
 | |
|                         kind:
 | |
|                           description: Kind defines the kind of the Service.
 | |
|                           enum:
 | |
|                           - Service
 | |
|                           - TraefikService
 | |
|                           type: string
 | |
|                         name:
 | |
|                           description: |-
 | |
|                             Name defines the name of the referenced Kubernetes Service or TraefikService.
 | |
|                             The differentiation between the two is specified in the Kind field.
 | |
|                           type: string
 | |
|                         namespace:
 | |
|                           description: Namespace defines the namespace of the referenced
 | |
|                             Kubernetes Service or TraefikService.
 | |
|                           type: string
 | |
|                         nativeLB:
 | |
|                           description: |-
 | |
|                             NativeLB controls, when creating the load-balancer,
 | |
|                             whether the LB's children are directly the pods IPs or if the only child is the Kubernetes Service clusterIP.
 | |
|                             The Kubernetes Service itself does load-balance to the pods.
 | |
|                             By default, NativeLB is false.
 | |
|                           type: boolean
 | |
|                         nodePortLB:
 | |
|                           description: |-
 | |
|                             NodePortLB controls, when creating the load-balancer,
 | |
|                             whether the LB's children are directly the nodes internal IPs using the nodePort when the service type is NodePort.
 | |
|                             It allows services to be reachable when Traefik runs externally from the Kubernetes cluster but within the same network of the nodes.
 | |
|                             By default, NodePortLB is false.
 | |
|                           type: boolean
 | |
|                         passHostHeader:
 | |
|                           description: |-
 | |
|                             PassHostHeader defines whether the client Host header is forwarded to the upstream Kubernetes Service.
 | |
|                             By default, passHostHeader is true.
 | |
|                           type: boolean
 | |
|                         port:
 | |
|                           anyOf:
 | |
|                           - type: integer
 | |
|                           - type: string
 | |
|                           description: |-
 | |
|                             Port defines the port of a Kubernetes Service.
 | |
|                             This can be a reference to a named port.
 | |
|                           x-kubernetes-int-or-string: true
 | |
|                         responseForwarding:
 | |
|                           description: ResponseForwarding defines how Traefik forwards
 | |
|                             the response from the upstream Kubernetes Service to the
 | |
|                             client.
 | |
|                           properties:
 | |
|                             flushInterval:
 | |
|                               description: |-
 | |
|                                 FlushInterval defines the interval, in milliseconds, in between flushes to the client while copying the response body.
 | |
|                                 A negative value means to flush immediately after each write to the client.
 | |
|                                 This configuration is ignored when ReverseProxy recognizes a response as a streaming response;
 | |
|                                 for such responses, writes are flushed to the client immediately.
 | |
|                                 Default: 100ms
 | |
|                               type: string
 | |
|                           type: object
 | |
|                         scheme:
 | |
|                           description: |-
 | |
|                             Scheme defines the scheme to use for the request to the upstream Kubernetes Service.
 | |
|                             It defaults to https when Kubernetes Service port is 443, http otherwise.
 | |
|                           type: string
 | |
|                         serversTransport:
 | |
|                           description: |-
 | |
|                             ServersTransport defines the name of ServersTransport resource to use.
 | |
|                             It allows to configure the transport between Traefik and your servers.
 | |
|                             Can only be used on a Kubernetes Service.
 | |
|                           type: string
 | |
|                         sticky:
 | |
|                           description: |-
 | |
|                             Sticky defines the sticky sessions configuration.
 | |
|                             More info: https://doc.traefik.io/traefik/v3.5/routing/services/#sticky-sessions
 | |
|                           properties:
 | |
|                             cookie:
 | |
|                               description: Cookie defines the sticky cookie configuration.
 | |
|                               properties:
 | |
|                                 domain:
 | |
|                                   description: |-
 | |
|                                     Domain defines the host to which the cookie will be sent.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#domaindomain-value
 | |
|                                   type: string
 | |
|                                 httpOnly:
 | |
|                                   description: HTTPOnly defines whether the cookie
 | |
|                                     can be accessed by client-side APIs, such as JavaScript.
 | |
|                                   type: boolean
 | |
|                                 maxAge:
 | |
|                                   description: |-
 | |
|                                     MaxAge defines the number of seconds until the cookie expires.
 | |
|                                     When set to a negative number, the cookie expires immediately.
 | |
|                                     When set to zero, the cookie never expires.
 | |
|                                   type: integer
 | |
|                                 name:
 | |
|                                   description: Name defines the Cookie name.
 | |
|                                   type: string
 | |
|                                 path:
 | |
|                                   description: |-
 | |
|                                     Path defines the path that must exist in the requested URL for the browser to send the Cookie header.
 | |
|                                     When not provided the cookie will be sent on every request to the domain.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#pathpath-value
 | |
|                                   type: string
 | |
|                                 sameSite:
 | |
|                                   description: |-
 | |
|                                     SameSite defines the same site policy.
 | |
|                                     More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
 | |
|                                   enum:
 | |
|                                   - none
 | |
|                                   - lax
 | |
|                                   - strict
 | |
|                                   type: string
 | |
|                                 secure:
 | |
|                                   description: Secure defines whether the cookie can
 | |
|                                     only be transmitted over an encrypted connection
 | |
|                                     (i.e. HTTPS).
 | |
|                                   type: boolean
 | |
|                               type: object
 | |
|                           type: object
 | |
|                         strategy:
 | |
|                           description: |-
 | |
|                             Strategy defines the load balancing strategy between the servers.
 | |
|                             Supported values are: wrr (Weighed round-robin) and p2c (Power of two choices).
 | |
|                             RoundRobin value is deprecated and supported for backward compatibility.
 | |
|                           enum:
 | |
|                           - wrr
 | |
|                           - p2c
 | |
|                           - RoundRobin
 | |
|                           type: string
 | |
|                         weight:
 | |
|                           description: |-
 | |
|                             Weight defines the weight and should only be specified when Name references a TraefikService object
 | |
|                             (and to be precise, one that embeds a Weighted Round Robin).
 | |
|                           minimum: 0
 | |
|                           type: integer
 | |
|                       required:
 | |
|                       - name
 | |
|                       type: object
 | |
|                     type: array
 | |
|                   sticky:
 | |
|                     description: |-
 | |
|                       Sticky defines whether sticky sessions are enabled.
 | |
|                       More info: https://doc.traefik.io/traefik/v3.5/routing/providers/kubernetes-crd/#stickiness-and-load-balancing
 | |
|                     properties:
 | |
|                       cookie:
 | |
|                         description: Cookie defines the sticky cookie configuration.
 | |
|                         properties:
 | |
|                           domain:
 | |
|                             description: |-
 | |
|                               Domain defines the host to which the cookie will be sent.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#domaindomain-value
 | |
|                             type: string
 | |
|                           httpOnly:
 | |
|                             description: HTTPOnly defines whether the cookie can be
 | |
|                               accessed by client-side APIs, such as JavaScript.
 | |
|                             type: boolean
 | |
|                           maxAge:
 | |
|                             description: |-
 | |
|                               MaxAge defines the number of seconds until the cookie expires.
 | |
|                               When set to a negative number, the cookie expires immediately.
 | |
|                               When set to zero, the cookie never expires.
 | |
|                             type: integer
 | |
|                           name:
 | |
|                             description: Name defines the Cookie name.
 | |
|                             type: string
 | |
|                           path:
 | |
|                             description: |-
 | |
|                               Path defines the path that must exist in the requested URL for the browser to send the Cookie header.
 | |
|                               When not provided the cookie will be sent on every request to the domain.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie#pathpath-value
 | |
|                             type: string
 | |
|                           sameSite:
 | |
|                             description: |-
 | |
|                               SameSite defines the same site policy.
 | |
|                               More info: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
 | |
|                             enum:
 | |
|                             - none
 | |
|                             - lax
 | |
|                             - strict
 | |
|                             type: string
 | |
|                           secure:
 | |
|                             description: Secure defines whether the cookie can only
 | |
|                               be transmitted over an encrypted connection (i.e. HTTPS).
 | |
|                             type: boolean
 | |
|                         type: object
 | |
|                     type: object
 | |
|                 type: object
 | |
|             type: object
 | |
|         required:
 | |
|         - metadata
 | |
|         - spec
 | |
|         type: object
 | |
|     served: true
 | |
|     storage: true
 |