pub struct TraefikServiceMirroring {Show 17 fields
pub health_check: Option<TraefikServiceMirroringHealthCheck>,
pub kind: Option<TraefikServiceMirroringKind>,
pub max_body_size: Option<i64>,
pub mirror_body: Option<bool>,
pub mirrors: Option<Vec<TraefikServiceMirroringMirrors>>,
pub name: String,
pub namespace: Option<String>,
pub native_lb: Option<bool>,
pub node_port_lb: Option<bool>,
pub pass_host_header: Option<bool>,
pub port: Option<IntOrString>,
pub response_forwarding: Option<TraefikServiceMirroringResponseForwarding>,
pub scheme: Option<String>,
pub servers_transport: Option<String>,
pub sticky: Option<TraefikServiceMirroringSticky>,
pub strategy: Option<String>,
pub weight: Option<i64>,
}
Expand description
Mirroring defines the Mirroring service configuration.
Fields§
§health_check: Option<TraefikServiceMirroringHealthCheck>
Healthcheck defines health checks for ExternalName services.
kind: Option<TraefikServiceMirroringKind>
Kind defines the kind of the Service.
max_body_size: Option<i64>
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.
mirror_body: Option<bool>
MirrorBody defines whether the body of the request should be mirrored. Default value is true.
mirrors: Option<Vec<TraefikServiceMirroringMirrors>>
Mirrors defines the list of mirrors where Traefik will duplicate the traffic.
name: String
Name defines the name of the referenced Kubernetes Service or TraefikService. The differentiation between the two is specified in the Kind field.
namespace: Option<String>
Namespace defines the namespace of the referenced Kubernetes Service or TraefikService.
native_lb: Option<bool>
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.
node_port_lb: Option<bool>
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.
pass_host_header: Option<bool>
PassHostHeader defines whether the client Host header is forwarded to the upstream Kubernetes Service. By default, passHostHeader is true.
port: Option<IntOrString>
Port defines the port of a Kubernetes Service. This can be a reference to a named port.
response_forwarding: Option<TraefikServiceMirroringResponseForwarding>
ResponseForwarding defines how Traefik forwards the response from the upstream Kubernetes Service to the client.
scheme: Option<String>
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.
servers_transport: Option<String>
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.
sticky: Option<TraefikServiceMirroringSticky>
Sticky defines the sticky sessions configuration. More info: https://doc.traefik.io/traefik/v3.3/routing/services/#sticky-sessions
strategy: Option<String>
Strategy defines the load balancing strategy between the servers. RoundRobin is the only supported value at the moment.
weight: Option<i64>
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).
Implementations§
Source§impl TraefikServiceMirroring
impl TraefikServiceMirroring
Sourcepub fn builder() -> TraefikServiceMirroringBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
pub fn builder() -> TraefikServiceMirroringBuilder<((), (), (), (), (), (), (), (), (), (), (), (), (), (), (), (), ())>
Create a builder for building TraefikServiceMirroring
.
On the builder, call .health_check(...)
(optional), .kind(...)
(optional), .max_body_size(...)
(optional), .mirror_body(...)
(optional), .mirrors(...)
(optional), .name(...)
, .namespace(...)
(optional), .native_lb(...)
(optional), .node_port_lb(...)
(optional), .pass_host_header(...)
(optional), .port(...)
(optional), .response_forwarding(...)
(optional), .scheme(...)
(optional), .servers_transport(...)
(optional), .sticky(...)
(optional), .strategy(...)
(optional), .weight(...)
(optional) to set the values of the fields.
Finally, call .build()
to create the instance of TraefikServiceMirroring
.
Trait Implementations§
Source§impl Clone for TraefikServiceMirroring
impl Clone for TraefikServiceMirroring
Source§fn clone(&self) -> TraefikServiceMirroring
fn clone(&self) -> TraefikServiceMirroring
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for TraefikServiceMirroring
impl Debug for TraefikServiceMirroring
Source§impl Default for TraefikServiceMirroring
impl Default for TraefikServiceMirroring
Source§fn default() -> TraefikServiceMirroring
fn default() -> TraefikServiceMirroring
Source§impl<'de> Deserialize<'de> for TraefikServiceMirroring
impl<'de> Deserialize<'de> for TraefikServiceMirroring
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl JsonSchema for TraefikServiceMirroring
impl JsonSchema for TraefikServiceMirroring
Source§fn schema_name() -> String
fn schema_name() -> String
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn is_referenceable() -> bool
fn is_referenceable() -> bool
$ref
keyword. Read moreSource§impl PartialEq for TraefikServiceMirroring
impl PartialEq for TraefikServiceMirroring
Source§impl Serialize for TraefikServiceMirroring
impl Serialize for TraefikServiceMirroring
impl StructuralPartialEq for TraefikServiceMirroring
Auto Trait Implementations§
impl Freeze for TraefikServiceMirroring
impl RefUnwindSafe for TraefikServiceMirroring
impl Send for TraefikServiceMirroring
impl Sync for TraefikServiceMirroring
impl Unpin for TraefikServiceMirroring
impl UnwindSafe for TraefikServiceMirroring
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more