Sidecar
networking.istio.io / v1alpha3
apiVersion: networking.istio.io/v1alpha3
kind: Sidecar
metadata:
name: example
spec object
Configuration affecting network reachability of a sidecar. See more details at: https://istio.io/docs/reference/config/networking/sidecar.html
egress []object
Egress specifies the configuration of the sidecar for processing outbound traffic from the attached workload instance to other services in the mesh.
bind
string
The IP(IPv4 or IPv6) or the Unix domain socket to which the listener should be bound to.
captureMode
string
When the bind address is an IP, the captureMode option dictates how traffic to the listener is expected to be captured (or not).
Valid Options: DEFAULT, IPTABLES, NONE
enum:
DEFAULT, IPTABLES, NONE
hosts
[]string required
One or more service hosts exposed by the listener in `namespace/dnsName` format.
port object
The port associated with the listener.
name
string
Label assigned to the port.
number
integer
A valid non-negative integer port number.
minimum:
0maximum:
4.294967295e+09
protocol
string
The protocol exposed on the port.
targetPort
integer
minimum:
0maximum:
4.294967295e+09inboundConnectionPool object
Settings controlling the volume of connections Envoy will accept from the network.
http object
HTTP connection pool settings.
h2UpgradePolicy
string
Specify if http1.1 connection should be upgraded to http2 for the associated destination.
Valid Options: DEFAULT, DO_NOT_UPGRADE, UPGRADE
enum:
DEFAULT, DO_NOT_UPGRADE, UPGRADE
http1MaxPendingRequests
integer
Maximum number of requests that will be queued while waiting for a ready connection pool connection.
format:
int32
http2MaxRequests
integer
Maximum number of active requests to a destination.
format:
int32
idleTimeout
string
The idle timeout for upstream connection pool connections.
maxConcurrentStreams
integer
The maximum number of concurrent streams allowed for a peer on one HTTP/2 connection.
format:
int32
maxRequestsPerConnection
integer
Maximum number of requests per connection to a backend.
format:
int32
maxRetries
integer
Maximum number of retries that can be outstanding to all hosts in a cluster at a given time.
format:
int32
useClientProtocol
boolean
If set to true, client protocol will be preserved while initiating connection to backend.
tcp object
Settings common to both HTTP and TCP upstream connections.
connectTimeout
string
TCP connection timeout.
idleTimeout
string
The idle timeout for TCP connections.
maxConnectionDuration
string
The maximum duration of a connection.
maxConnections
integer
Maximum number of HTTP1 /TCP connections to a destination host.
format:
int32tcpKeepalive object
If set then set SO_KEEPALIVE on the socket to enable TCP Keepalives.
interval
string
The time duration between keep-alive probes.
probes
integer
Maximum number of keepalive probes to send without response before deciding the connection is dead.
minimum:
0maximum:
4.294967295e+09
time
string
The time duration a connection needs to be idle before keep-alive probes start being sent.
ingress []object
Ingress specifies the configuration of the sidecar for processing inbound traffic to the attached workload instance.
bind
string
The IP(IPv4 or IPv6) to which the listener should be bound.
captureMode
string
The captureMode option dictates how traffic to the listener is expected to be captured (or not).
Valid Options: DEFAULT, IPTABLES, NONE
enum:
DEFAULT, IPTABLES, NONEconnectionPool object
Settings controlling the volume of connections Envoy will accept from the network.
http object
HTTP connection pool settings.
h2UpgradePolicy
string
Specify if http1.1 connection should be upgraded to http2 for the associated destination.
Valid Options: DEFAULT, DO_NOT_UPGRADE, UPGRADE
enum:
DEFAULT, DO_NOT_UPGRADE, UPGRADE
http1MaxPendingRequests
integer
Maximum number of requests that will be queued while waiting for a ready connection pool connection.
format:
int32
http2MaxRequests
integer
Maximum number of active requests to a destination.
format:
int32
idleTimeout
string
The idle timeout for upstream connection pool connections.
maxConcurrentStreams
integer
The maximum number of concurrent streams allowed for a peer on one HTTP/2 connection.
format:
int32
maxRequestsPerConnection
integer
Maximum number of requests per connection to a backend.
format:
int32
maxRetries
integer
Maximum number of retries that can be outstanding to all hosts in a cluster at a given time.
format:
int32
useClientProtocol
boolean
If set to true, client protocol will be preserved while initiating connection to backend.
tcp object
Settings common to both HTTP and TCP upstream connections.
connectTimeout
string
TCP connection timeout.
idleTimeout
string
The idle timeout for TCP connections.
maxConnectionDuration
string
The maximum duration of a connection.
maxConnections
integer
Maximum number of HTTP1 /TCP connections to a destination host.
format:
int32tcpKeepalive object
If set then set SO_KEEPALIVE on the socket to enable TCP Keepalives.
interval
string
The time duration between keep-alive probes.
probes
integer
Maximum number of keepalive probes to send without response before deciding the connection is dead.
minimum:
0maximum:
4.294967295e+09
time
string
The time duration a connection needs to be idle before keep-alive probes start being sent.
defaultEndpoint
string
The IP endpoint or Unix domain socket to which traffic should be forwarded to.
port object required
The port associated with the listener.
name
string
Label assigned to the port.
number
integer
A valid non-negative integer port number.
minimum:
0maximum:
4.294967295e+09
protocol
string
The protocol exposed on the port.
targetPort
integer
minimum:
0maximum:
4.294967295e+09tls object
Set of TLS related options that will enable TLS termination on the sidecar for requests originating from outside the mesh.
caCertCredentialName
string
For mutual TLS, the name of the secret or the configmap that holds CA certificates.
caCertificates
string
REQUIRED if mode is `MUTUAL` or `OPTIONAL_MUTUAL`.
caCrl
string
OPTIONAL: The path to the file containing the certificate revocation list (CRL) to use in verifying a presented client side certificate.
cipherSuites
[]string
Optional: If specified, only support the specified cipher list.
credentialName
string
For gateways running on Kubernetes, the name of the secret that holds the TLS certs including the CA certificates.
credentialNames
[]string
Same as CredentialName but for multiple certificates.
minItems:
1maxItems:
2
httpsRedirect
boolean
If set to true, the load balancer will send a 301 redirect for all http connections, asking the clients to use HTTPS.
maxProtocolVersion
string
Optional: Maximum TLS protocol version.
Valid Options: TLS_AUTO, TLSV1_0, TLSV1_1, TLSV1_2, TLSV1_3
enum:
TLS_AUTO, TLSV1_0, TLSV1_1, TLSV1_2, TLSV1_3
minProtocolVersion
string
Optional: Minimum TLS protocol version.
Valid Options: TLS_AUTO, TLSV1_0, TLSV1_1, TLSV1_2, TLSV1_3
enum:
TLS_AUTO, TLSV1_0, TLSV1_1, TLSV1_2, TLSV1_3
mode
string
Optional: Indicates whether connections to this port should be secured using TLS.
Valid Options: PASSTHROUGH, SIMPLE, MUTUAL, AUTO_PASSTHROUGH, ISTIO_MUTUAL, OPTIONAL_MUTUAL
enum:
PASSTHROUGH, SIMPLE, MUTUAL, AUTO_PASSTHROUGH, ISTIO_MUTUAL, OPTIONAL_MUTUAL
privateKey
string
REQUIRED if mode is `SIMPLE` or `MUTUAL`.
serverCertificate
string
REQUIRED if mode is `SIMPLE` or `MUTUAL`.
subjectAltNames
[]string
A list of alternate names to verify the subject identity in the certificate presented by the client.
tlsCertificates []object
Only one of `server_certificate`, `private_key` or `credential_name` or `credential_names` or `tls_certificates` should be specified.
minItems:
1maxItems:
2
caCertificates
string
privateKey
string
REQUIRED if mode is `SIMPLE` or `MUTUAL`.
serverCertificate
string
REQUIRED if mode is `SIMPLE` or `MUTUAL`.
verifyCertificateHash
[]string
An optional list of hex-encoded SHA-256 hashes of the authorized client certificates.
verifyCertificateSpki
[]string
An optional list of base64-encoded SHA-256 hashes of the SPKIs of authorized client certificates.
outboundTrafficPolicy object
Set the default behavior of the sidecar for handling outbound traffic from the application.
egressProxy object
host
string required
The name of a service from the service registry.
port object
Specifies the port on the host that is being addressed.
number
integer
minimum:
0maximum:
4.294967295e+09
subset
string
The name of a subset within the service.
mode
string
Valid Options: REGISTRY_ONLY, ALLOW_ANY
enum:
REGISTRY_ONLY, ALLOW_ANYworkloadSelector object
Criteria used to select the specific set of pods/VMs on which this `Sidecar` configuration should be applied.
labels
object
One or more labels that indicate a specific set of pods/VMs on which the configuration should be applied.
status object
conditions []object
Current service state of the resource.
lastProbeTime
string
Last time we probed the condition.
format:
date-time
lastTransitionTime
string
Last time the condition transitioned from one status to another.
format:
date-time
message
string
Human-readable message indicating details about last transition.
observedGeneration
string | integer
Resource Generation to which the Condition refers.
reason
string
Unique, one-word, CamelCase reason for the condition's last transition.
status
string
Status is the status of the condition.
type
string
Type is the type of the condition.
observedGeneration
string | integer
validationMessages []object
Includes any errors or warnings detected by Istio's analyzers.
documentationUrl
string
A url pointing to the Istio documentation for this specific error type.
level
string
Represents how severe a message is.
Valid Options: UNKNOWN, ERROR, WARNING, INFO
enum:
UNKNOWN, ERROR, WARNING, INFOtype object
code
string
A 7 character code matching `^IST[0-9]{4}$` intended to uniquely identify the message type.
name
string
A human-readable name for the message type.
No matches. Try .spec.egress for an exact path