v1alpha3

package
Version: v0.0.0-...-5e10e5c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 27, 2021 License: Apache-2.0 Imports: 11 Imported by: 267

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrInvalidLengthDestinationRule        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowDestinationRule          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupDestinationRule = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	DestinationRuleMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	DestinationRuleUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthEnvoyFilter        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowEnvoyFilter          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupEnvoyFilter = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	EnvoyFilterMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	EnvoyFilterUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthGateway        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowGateway          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupGateway = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	GatewayMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	GatewayUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthServiceEntry        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowServiceEntry          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupServiceEntry = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	ServiceEntryMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	ServiceEntryUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthSidecar        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowSidecar          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupSidecar = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	SidecarMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	SidecarUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthVirtualService        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowVirtualService          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupVirtualService = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	VirtualServiceMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	VirtualServiceUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthWorkloadEntry        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowWorkloadEntry          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupWorkloadEntry = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	WorkloadEntryMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	WorkloadEntryUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var (
	ErrInvalidLengthWorkloadGroup        = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowWorkloadGroup          = fmt.Errorf("proto: integer overflow")
	ErrUnexpectedEndOfGroupWorkloadGroup = fmt.Errorf("proto: unexpected end of group")
)
View Source
var (
	WorkloadGroupMarshaler   = &github_com_gogo_protobuf_jsonpb.Marshaler{}
	WorkloadGroupUnmarshaler = &github_com_gogo_protobuf_jsonpb.Unmarshaler{AllowUnknownFields: true}
)
View Source
var CaptureMode_name = map[int32]string{
	0: "DEFAULT",
	1: "IPTABLES",
	2: "NONE",
}
View Source
var CaptureMode_value = map[string]int32{
	"DEFAULT":  0,
	"IPTABLES": 1,
	"NONE":     2,
}
View Source
var ClientTLSSettings_TLSmode_name = map[int32]string{
	0: "DISABLE",
	1: "SIMPLE",
	2: "MUTUAL",
	3: "ISTIO_MUTUAL",
}
View Source
var ClientTLSSettings_TLSmode_value = map[string]int32{
	"DISABLE":      0,
	"SIMPLE":       1,
	"MUTUAL":       2,
	"ISTIO_MUTUAL": 3,
}
View Source
var ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy_name = map[int32]string{
	0: "DEFAULT",
	1: "DO_NOT_UPGRADE",
	2: "UPGRADE",
}
View Source
var ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy_value = map[string]int32{
	"DEFAULT":        0,
	"DO_NOT_UPGRADE": 1,
	"UPGRADE":        2,
}
View Source
var EnvoyFilter_ApplyTo_name = map[int32]string{
	0:  "INVALID",
	1:  "LISTENER",
	2:  "FILTER_CHAIN",
	3:  "NETWORK_FILTER",
	4:  "HTTP_FILTER",
	5:  "ROUTE_CONFIGURATION",
	6:  "VIRTUAL_HOST",
	7:  "HTTP_ROUTE",
	8:  "CLUSTER",
	9:  "EXTENSION_CONFIG",
	10: "BOOTSTRAP",
}
View Source
var EnvoyFilter_ApplyTo_value = map[string]int32{
	"INVALID":             0,
	"LISTENER":            1,
	"FILTER_CHAIN":        2,
	"NETWORK_FILTER":      3,
	"HTTP_FILTER":         4,
	"ROUTE_CONFIGURATION": 5,
	"VIRTUAL_HOST":        6,
	"HTTP_ROUTE":          7,
	"CLUSTER":             8,
	"EXTENSION_CONFIG":    9,
	"BOOTSTRAP":           10,
}
View Source
var EnvoyFilter_PatchContext_name = map[int32]string{
	0: "ANY",
	1: "SIDECAR_INBOUND",
	2: "SIDECAR_OUTBOUND",
	3: "GATEWAY",
}
View Source
var EnvoyFilter_PatchContext_value = map[string]int32{
	"ANY":              0,
	"SIDECAR_INBOUND":  1,
	"SIDECAR_OUTBOUND": 2,
	"GATEWAY":          3,
}
View Source
var EnvoyFilter_Patch_FilterClass_name = map[int32]string{
	0: "UNSPECIFIED",
	1: "AUTHN",
	2: "AUTHZ",
	3: "STATS",
}
View Source
var EnvoyFilter_Patch_FilterClass_value = map[string]int32{
	"UNSPECIFIED": 0,
	"AUTHN":       1,
	"AUTHZ":       2,
	"STATS":       3,
}
View Source
var EnvoyFilter_Patch_Operation_name = map[int32]string{
	0: "INVALID",
	1: "MERGE",
	2: "ADD",
	3: "REMOVE",
	4: "INSERT_BEFORE",
	5: "INSERT_AFTER",
	6: "INSERT_FIRST",
	7: "REPLACE",
}
View Source
var EnvoyFilter_Patch_Operation_value = map[string]int32{
	"INVALID":       0,
	"MERGE":         1,
	"ADD":           2,
	"REMOVE":        3,
	"INSERT_BEFORE": 4,
	"INSERT_AFTER":  5,
	"INSERT_FIRST":  6,
	"REPLACE":       7,
}
View Source
var EnvoyFilter_RouteConfigurationMatch_RouteMatch_Action_name = map[int32]string{
	0: "ANY",
	1: "ROUTE",
	2: "REDIRECT",
	3: "DIRECT_RESPONSE",
}
View Source
var EnvoyFilter_RouteConfigurationMatch_RouteMatch_Action_value = map[string]int32{
	"ANY":             0,
	"ROUTE":           1,
	"REDIRECT":        2,
	"DIRECT_RESPONSE": 3,
}
View Source
var LoadBalancerSettings_SimpleLB_name = map[int32]string{
	0: "ROUND_ROBIN",
	1: "LEAST_CONN",
	2: "RANDOM",
	3: "PASSTHROUGH",
}
View Source
var LoadBalancerSettings_SimpleLB_value = map[string]int32{
	"ROUND_ROBIN": 0,
	"LEAST_CONN":  1,
	"RANDOM":      2,
	"PASSTHROUGH": 3,
}
View Source
var OutboundTrafficPolicy_Mode_name = map[int32]string{
	0: "REGISTRY_ONLY",
	1: "ALLOW_ANY",
}
View Source
var OutboundTrafficPolicy_Mode_value = map[string]int32{
	"REGISTRY_ONLY": 0,
	"ALLOW_ANY":     1,
}
View Source
var ServerTLSSettings_TLSProtocol_name = map[int32]string{
	0: "TLS_AUTO",
	1: "TLSV1_0",
	2: "TLSV1_1",
	3: "TLSV1_2",
	4: "TLSV1_3",
}
View Source
var ServerTLSSettings_TLSProtocol_value = map[string]int32{
	"TLS_AUTO": 0,
	"TLSV1_0":  1,
	"TLSV1_1":  2,
	"TLSV1_2":  3,
	"TLSV1_3":  4,
}
View Source
var ServerTLSSettings_TLSmode_name = map[int32]string{
	0: "PASSTHROUGH",
	1: "SIMPLE",
	2: "MUTUAL",
	3: "AUTO_PASSTHROUGH",
	4: "ISTIO_MUTUAL",
}
View Source
var ServerTLSSettings_TLSmode_value = map[string]int32{
	"PASSTHROUGH":      0,
	"SIMPLE":           1,
	"MUTUAL":           2,
	"AUTO_PASSTHROUGH": 3,
	"ISTIO_MUTUAL":     4,
}
View Source
var ServiceEntry_Location_name = map[int32]string{
	0: "MESH_EXTERNAL",
	1: "MESH_INTERNAL",
}
View Source
var ServiceEntry_Location_value = map[string]int32{
	"MESH_EXTERNAL": 0,
	"MESH_INTERNAL": 1,
}
View Source
var ServiceEntry_Resolution_name = map[int32]string{
	0: "NONE",
	1: "STATIC",
	2: "DNS",
}
View Source
var ServiceEntry_Resolution_value = map[string]int32{
	"NONE":   0,
	"STATIC": 1,
	"DNS":    2,
}

Functions

This section is empty.

Types

type CaptureMode

type CaptureMode int32

`CaptureMode` describes how traffic to a listener is expected to be captured. Applicable only when the listener is bound to an IP.

const (
	// The default capture mode defined by the environment.
	CaptureMode_DEFAULT CaptureMode = 0
	// Capture traffic using IPtables redirection.
	CaptureMode_IPTABLES CaptureMode = 1
	// No traffic capture. When used in an egress listener, the application is
	// expected to explicitly communicate with the listener port or Unix
	// domain socket. When used in an ingress listener, care needs to be taken
	// to ensure that the listener port is not in use by other processes on
	// the host.
	CaptureMode_NONE CaptureMode = 2
)

func (CaptureMode) EnumDescriptor

func (CaptureMode) EnumDescriptor() ([]byte, []int)

func (CaptureMode) String

func (x CaptureMode) String() string

type ClientTLSSettings

type ClientTLSSettings struct {
	// Indicates whether connections to this port should be secured
	// using TLS. The value of this field determines how TLS is enforced.
	Mode ClientTLSSettings_TLSmode `protobuf:"varint,1,opt,name=mode,proto3,enum=istio.networking.v1alpha3.ClientTLSSettings_TLSmode" json:"mode,omitempty"`
	// REQUIRED if mode is `MUTUAL`. The path to the file holding the
	// client-side TLS certificate to use.
	// Should be empty if mode is `ISTIO_MUTUAL`.
	ClientCertificate string `protobuf:"bytes,2,opt,name=client_certificate,json=clientCertificate,proto3" json:"client_certificate,omitempty"`
	// REQUIRED if mode is `MUTUAL`. The path to the file holding the
	// client's private key.
	// Should be empty if mode is `ISTIO_MUTUAL`.
	PrivateKey string `protobuf:"bytes,3,opt,name=private_key,json=privateKey,proto3" json:"private_key,omitempty"`
	// OPTIONAL: The path to the file containing certificate authority
	// certificates to use in verifying a presented server certificate. If
	// omitted, the proxy will not verify the server's certificate.
	// Should be empty if mode is `ISTIO_MUTUAL`.
	CaCertificates string `protobuf:"bytes,4,opt,name=ca_certificates,json=caCertificates,proto3" json:"ca_certificates,omitempty"`
	// The name of the secret that holds the TLS certs for the
	// client including the CA certificates. Secret must exist in the
	// same namespace with the proxy using the certificates.
	// The secret (of type `generic`)should contain the
	// following keys and values: `key: <privateKey>`,
	// `cert: <serverCert>`, `cacert: <CACertificate>`.
	// Secret of type tls for client certificates along with
	// ca.crt key for CA certificates is also supported.
	// Only one of client certificates and CA certificate
	// or credentialName can be specified.
	//
	// **NOTE:** This field is currently applicable only at gateways.
	// Sidecars will continue to use the certificate paths.
	CredentialName string `protobuf:"bytes,7,opt,name=credential_name,json=credentialName,proto3" json:"credential_name,omitempty"`
	// A list of alternate names to verify the subject identity in the
	// certificate. If specified, the proxy will verify that the server
	// certificate's subject alt name matches one of the specified values.
	// If specified, this list overrides the value of subject_alt_names
	// from the ServiceEntry.
	SubjectAltNames []string `protobuf:"bytes,5,rep,name=subject_alt_names,json=subjectAltNames,proto3" json:"subject_alt_names,omitempty"`
	// SNI string to present to the server during TLS handshake.
	Sni                  string   `protobuf:"bytes,6,opt,name=sni,proto3" json:"sni,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

SSL/TLS related settings for upstream connections. See Envoy's [TLS context](https://www.envoyproxy.io/docs/envoy/latest/api-v2/api/v2/auth/cert.proto.html) for more details. These settings are common to both HTTP and TCP upstreams.

For example, the following rule configures a client to use mutual TLS for connections to upstream database cluster.

{{<tabset category-name="example">}} {{<tab name="v1alpha3" category-value="v1alpha3">}} “`yaml apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata:

name: db-mtls

spec:

host: mydbserver.prod.svc.cluster.local
trafficPolicy:
  tls:
    mode: MUTUAL
    clientCertificate: /etc/certs/myclientcert.pem
    privateKey: /etc/certs/client_private_key.pem
    caCertificates: /etc/certs/rootcacerts.pem

“` {{</tab>}}

{{<tab name="v1beta1" category-value="v1beta1">}} “`yaml apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:

name: db-mtls

spec:

host: mydbserver.prod.svc.cluster.local
trafficPolicy:
  tls:
    mode: MUTUAL
    clientCertificate: /etc/certs/myclientcert.pem
    privateKey: /etc/certs/client_private_key.pem
    caCertificates: /etc/certs/rootcacerts.pem

“` {{</tab>}} {{</tabset>}}

The following rule configures a client to use TLS when talking to a foreign service whose domain matches *.foo.com.

{{<tabset category-name="example">}} {{<tab name="v1alpha3" category-value="v1alpha3">}} “`yaml apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata:

name: tls-foo

spec:

host: "*.foo.com"
trafficPolicy:
  tls:
    mode: SIMPLE

“` {{</tab>}}

{{<tab name="v1beta1" category-value="v1beta1">}} “`yaml apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:

name: tls-foo

spec:

host: "*.foo.com"
trafficPolicy:
  tls:
    mode: SIMPLE

“` {{</tab>}} {{</tabset>}}

The following rule configures a client to use Istio mutual TLS when talking to rating services.

{{<tabset category-name="example">}} {{<tab name="v1alpha3" category-value="v1alpha3">}} “`yaml apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata:

name: ratings-istio-mtls

spec:

host: ratings.prod.svc.cluster.local
trafficPolicy:
  tls:
    mode: ISTIO_MUTUAL

“` {{</tab>}}

{{<tab name="v1beta1" category-value="v1beta1">}} “`yaml apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:

name: ratings-istio-mtls

spec:

host: ratings.prod.svc.cluster.local
trafficPolicy:
  tls:
    mode: ISTIO_MUTUAL

“` {{</tab>}} {{</tabset>}}

func (*ClientTLSSettings) DeepCopy

func (in *ClientTLSSettings) DeepCopy() *ClientTLSSettings

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClientTLSSettings. Required by controller-gen.

func (*ClientTLSSettings) DeepCopyInterface

func (in *ClientTLSSettings) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new ClientTLSSettings. Required by controller-gen.

func (*ClientTLSSettings) DeepCopyInto

func (in *ClientTLSSettings) DeepCopyInto(out *ClientTLSSettings)

DeepCopyInto supports using ClientTLSSettings within kubernetes types, where deepcopy-gen is used.

func (*ClientTLSSettings) Descriptor

func (*ClientTLSSettings) Descriptor() ([]byte, []int)

func (*ClientTLSSettings) GetCaCertificates

func (m *ClientTLSSettings) GetCaCertificates() string

func (*ClientTLSSettings) GetClientCertificate

func (m *ClientTLSSettings) GetClientCertificate() string

func (*ClientTLSSettings) GetCredentialName

func (m *ClientTLSSettings) GetCredentialName() string

func (*ClientTLSSettings) GetMode

func (*ClientTLSSettings) GetPrivateKey

func (m *ClientTLSSettings) GetPrivateKey() string

func (*ClientTLSSettings) GetSni

func (m *ClientTLSSettings) GetSni() string

func (*ClientTLSSettings) GetSubjectAltNames

func (m *ClientTLSSettings) GetSubjectAltNames() []string

func (*ClientTLSSettings) Marshal

func (m *ClientTLSSettings) Marshal() (dAtA []byte, err error)

func (*ClientTLSSettings) MarshalJSON

func (this *ClientTLSSettings) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for ClientTLSSettings

func (*ClientTLSSettings) MarshalTo

func (m *ClientTLSSettings) MarshalTo(dAtA []byte) (int, error)

func (*ClientTLSSettings) MarshalToSizedBuffer

func (m *ClientTLSSettings) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ClientTLSSettings) ProtoMessage

func (*ClientTLSSettings) ProtoMessage()

func (*ClientTLSSettings) Reset

func (m *ClientTLSSettings) Reset()

func (*ClientTLSSettings) Size

func (m *ClientTLSSettings) Size() (n int)

func (*ClientTLSSettings) String

func (m *ClientTLSSettings) String() string

func (*ClientTLSSettings) Unmarshal

func (m *ClientTLSSettings) Unmarshal(dAtA []byte) error

func (*ClientTLSSettings) UnmarshalJSON

func (this *ClientTLSSettings) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for ClientTLSSettings

func (*ClientTLSSettings) XXX_DiscardUnknown

func (m *ClientTLSSettings) XXX_DiscardUnknown()

func (*ClientTLSSettings) XXX_Marshal

func (m *ClientTLSSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ClientTLSSettings) XXX_Merge

func (m *ClientTLSSettings) XXX_Merge(src proto.Message)

func (*ClientTLSSettings) XXX_Size

func (m *ClientTLSSettings) XXX_Size() int

func (*ClientTLSSettings) XXX_Unmarshal

func (m *ClientTLSSettings) XXX_Unmarshal(b []byte) error

type ClientTLSSettings_TLSmode

type ClientTLSSettings_TLSmode int32

TLS connection mode

const (
	// Do not setup a TLS connection to the upstream endpoint.
	ClientTLSSettings_DISABLE ClientTLSSettings_TLSmode = 0
	// Originate a TLS connection to the upstream endpoint.
	ClientTLSSettings_SIMPLE ClientTLSSettings_TLSmode = 1
	// Secure connections to the upstream using mutual TLS by presenting
	// client certificates for authentication.
	ClientTLSSettings_MUTUAL ClientTLSSettings_TLSmode = 2
	// Secure connections to the upstream using mutual TLS by presenting
	// client certificates for authentication.
	// Compared to Mutual mode, this mode uses certificates generated
	// automatically by Istio for mTLS authentication. When this mode is
	// used, all other fields in `ClientTLSSettings` should be empty.
	ClientTLSSettings_ISTIO_MUTUAL ClientTLSSettings_TLSmode = 3
)

func (ClientTLSSettings_TLSmode) EnumDescriptor

func (ClientTLSSettings_TLSmode) EnumDescriptor() ([]byte, []int)

func (ClientTLSSettings_TLSmode) String

func (x ClientTLSSettings_TLSmode) String() string

type ConnectionPoolSettings

type ConnectionPoolSettings struct {
	// Settings common to both HTTP and TCP upstream connections.
	Tcp *ConnectionPoolSettings_TCPSettings `protobuf:"bytes,1,opt,name=tcp,proto3" json:"tcp,omitempty"`
	// HTTP connection pool settings.
	Http                 *ConnectionPoolSettings_HTTPSettings `protobuf:"bytes,2,opt,name=http,proto3" json:"http,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                             `json:"-"`
	XXX_unrecognized     []byte                               `json:"-"`
	XXX_sizecache        int32                                `json:"-"`
}

Connection pool settings for an upstream host. The settings apply to each individual host in the upstream service. See Envoy's [circuit breaker](https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/upstream/circuit_breaking) for more details. Connection pool settings can be applied at the TCP level as well as at HTTP level.

For example, the following rule sets a limit of 100 connections to redis service called myredissrv with a connect timeout of 30ms

{{<tabset category-name="example">}} {{<tab name="v1alpha3" category-value="v1alpha3">}} “`yaml apiVersion: networking.istio.io/v1alpha3 kind: DestinationRule metadata:

name: bookinfo-redis

spec:

host: myredissrv.prod.svc.cluster.local
trafficPolicy:
  connectionPool:
    tcp:
      maxConnections: 100
      connectTimeout: 30ms
      tcpKeepalive:
        time: 7200s
        interval: 75s

“` {{</tab>}}

{{<tab name="v1beta1" category-value="v1beta1">}} “`yaml apiVersion: networking.istio.io/v1beta1 kind: DestinationRule metadata:

name: bookinfo-redis

spec:

host: myredissrv.prod.svc.cluster.local
trafficPolicy:
  connectionPool:
    tcp:
      maxConnections: 100
      connectTimeout: 30ms
      tcpKeepalive:
        time: 7200s
        interval: 75s

“` {{</tab>}} {{</tabset>}}

func (*ConnectionPoolSettings) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings. Required by controller-gen.

func (*ConnectionPoolSettings) DeepCopyInterface

func (in *ConnectionPoolSettings) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings. Required by controller-gen.

func (*ConnectionPoolSettings) DeepCopyInto

func (in *ConnectionPoolSettings) DeepCopyInto(out *ConnectionPoolSettings)

DeepCopyInto supports using ConnectionPoolSettings within kubernetes types, where deepcopy-gen is used.

func (*ConnectionPoolSettings) Descriptor

func (*ConnectionPoolSettings) Descriptor() ([]byte, []int)

func (*ConnectionPoolSettings) GetHttp

func (*ConnectionPoolSettings) GetTcp

func (*ConnectionPoolSettings) Marshal

func (m *ConnectionPoolSettings) Marshal() (dAtA []byte, err error)

func (*ConnectionPoolSettings) MarshalJSON

func (this *ConnectionPoolSettings) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for ConnectionPoolSettings

func (*ConnectionPoolSettings) MarshalTo

func (m *ConnectionPoolSettings) MarshalTo(dAtA []byte) (int, error)

func (*ConnectionPoolSettings) MarshalToSizedBuffer

func (m *ConnectionPoolSettings) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ConnectionPoolSettings) ProtoMessage

func (*ConnectionPoolSettings) ProtoMessage()

func (*ConnectionPoolSettings) Reset

func (m *ConnectionPoolSettings) Reset()

func (*ConnectionPoolSettings) Size

func (m *ConnectionPoolSettings) Size() (n int)

func (*ConnectionPoolSettings) String

func (m *ConnectionPoolSettings) String() string

func (*ConnectionPoolSettings) Unmarshal

func (m *ConnectionPoolSettings) Unmarshal(dAtA []byte) error

func (*ConnectionPoolSettings) UnmarshalJSON

func (this *ConnectionPoolSettings) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for ConnectionPoolSettings

func (*ConnectionPoolSettings) XXX_DiscardUnknown

func (m *ConnectionPoolSettings) XXX_DiscardUnknown()

func (*ConnectionPoolSettings) XXX_Marshal

func (m *ConnectionPoolSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ConnectionPoolSettings) XXX_Merge

func (m *ConnectionPoolSettings) XXX_Merge(src proto.Message)

func (*ConnectionPoolSettings) XXX_Size

func (m *ConnectionPoolSettings) XXX_Size() int

func (*ConnectionPoolSettings) XXX_Unmarshal

func (m *ConnectionPoolSettings) XXX_Unmarshal(b []byte) error

type ConnectionPoolSettings_HTTPSettings

type ConnectionPoolSettings_HTTPSettings struct {
	// Maximum number of pending HTTP requests to a destination. Default 2^32-1.
	Http1MaxPendingRequests int32 `` /* 135-byte string literal not displayed */
	// Maximum number of requests to a backend. Default 2^32-1.
	Http2MaxRequests int32 `protobuf:"varint,2,opt,name=http2_max_requests,json=http2MaxRequests,proto3" json:"http2_max_requests,omitempty"`
	// Maximum number of requests per connection to a backend. Setting this
	// parameter to 1 disables keep alive. Default 0, meaning "unlimited",
	// up to 2^29.
	MaxRequestsPerConnection int32 `` /* 138-byte string literal not displayed */
	// Maximum number of retries that can be outstanding to all hosts in a
	// cluster at a given time. Defaults to 2^32-1.
	MaxRetries int32 `protobuf:"varint,4,opt,name=max_retries,json=maxRetries,proto3" json:"max_retries,omitempty"`
	// The idle timeout for upstream connection pool connections. The idle timeout
	// is defined as the period in which there are no active requests.
	// If not set, the default is 1 hour. When the idle timeout is reached,
	// the connection will be closed. If the connection is an HTTP/2
	// connection a drain sequence will occur prior to closing the connection.
	// Note that request based timeouts mean that HTTP/2 PINGs will not
	// keep the connection alive. Applies to both HTTP1.1 and HTTP2 connections.
	IdleTimeout *types.Duration `protobuf:"bytes,5,opt,name=idle_timeout,json=idleTimeout,proto3" json:"idle_timeout,omitempty"`
	// Specify if http1.1 connection should be upgraded to http2 for the associated destination.
	H2UpgradePolicy ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy `` /* 192-byte string literal not displayed */
	// If set to true, client protocol will be preserved while initiating connection to backend.
	// Note that when this is set to true, h2_upgrade_policy will be ineffective i.e. the client
	// connections will not be upgraded to http2.
	UseClientProtocol    bool     `protobuf:"varint,7,opt,name=use_client_protocol,json=useClientProtocol,proto3" json:"use_client_protocol,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

Settings applicable to HTTP1.1/HTTP2/GRPC connections.

func (*ConnectionPoolSettings_HTTPSettings) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_HTTPSettings. Required by controller-gen.

func (*ConnectionPoolSettings_HTTPSettings) DeepCopyInterface

func (in *ConnectionPoolSettings_HTTPSettings) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_HTTPSettings. Required by controller-gen.

func (*ConnectionPoolSettings_HTTPSettings) DeepCopyInto

DeepCopyInto supports using ConnectionPoolSettings_HTTPSettings within kubernetes types, where deepcopy-gen is used.

func (*ConnectionPoolSettings_HTTPSettings) Descriptor

func (*ConnectionPoolSettings_HTTPSettings) Descriptor() ([]byte, []int)

func (*ConnectionPoolSettings_HTTPSettings) GetH2UpgradePolicy

func (*ConnectionPoolSettings_HTTPSettings) GetHttp1MaxPendingRequests

func (m *ConnectionPoolSettings_HTTPSettings) GetHttp1MaxPendingRequests() int32

func (*ConnectionPoolSettings_HTTPSettings) GetHttp2MaxRequests

func (m *ConnectionPoolSettings_HTTPSettings) GetHttp2MaxRequests() int32

func (*ConnectionPoolSettings_HTTPSettings) GetIdleTimeout

func (m *ConnectionPoolSettings_HTTPSettings) GetIdleTimeout() *types.Duration

func (*ConnectionPoolSettings_HTTPSettings) GetMaxRequestsPerConnection

func (m *ConnectionPoolSettings_HTTPSettings) GetMaxRequestsPerConnection() int32

func (*ConnectionPoolSettings_HTTPSettings) GetMaxRetries

func (m *ConnectionPoolSettings_HTTPSettings) GetMaxRetries() int32

func (*ConnectionPoolSettings_HTTPSettings) GetUseClientProtocol

func (m *ConnectionPoolSettings_HTTPSettings) GetUseClientProtocol() bool

func (*ConnectionPoolSettings_HTTPSettings) Marshal

func (m *ConnectionPoolSettings_HTTPSettings) Marshal() (dAtA []byte, err error)

func (*ConnectionPoolSettings_HTTPSettings) MarshalJSON

func (this *ConnectionPoolSettings_HTTPSettings) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for ConnectionPoolSettings_HTTPSettings

func (*ConnectionPoolSettings_HTTPSettings) MarshalTo

func (m *ConnectionPoolSettings_HTTPSettings) MarshalTo(dAtA []byte) (int, error)

func (*ConnectionPoolSettings_HTTPSettings) MarshalToSizedBuffer

func (m *ConnectionPoolSettings_HTTPSettings) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ConnectionPoolSettings_HTTPSettings) ProtoMessage

func (*ConnectionPoolSettings_HTTPSettings) ProtoMessage()

func (*ConnectionPoolSettings_HTTPSettings) Reset

func (*ConnectionPoolSettings_HTTPSettings) Size

func (*ConnectionPoolSettings_HTTPSettings) String

func (*ConnectionPoolSettings_HTTPSettings) Unmarshal

func (m *ConnectionPoolSettings_HTTPSettings) Unmarshal(dAtA []byte) error

func (*ConnectionPoolSettings_HTTPSettings) UnmarshalJSON

func (this *ConnectionPoolSettings_HTTPSettings) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for ConnectionPoolSettings_HTTPSettings

func (*ConnectionPoolSettings_HTTPSettings) XXX_DiscardUnknown

func (m *ConnectionPoolSettings_HTTPSettings) XXX_DiscardUnknown()

func (*ConnectionPoolSettings_HTTPSettings) XXX_Marshal

func (m *ConnectionPoolSettings_HTTPSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ConnectionPoolSettings_HTTPSettings) XXX_Merge

func (*ConnectionPoolSettings_HTTPSettings) XXX_Size

func (*ConnectionPoolSettings_HTTPSettings) XXX_Unmarshal

func (m *ConnectionPoolSettings_HTTPSettings) XXX_Unmarshal(b []byte) error

type ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy

type ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy int32

Policy for upgrading http1.1 connections to http2.

const (
	// Use the global default.
	ConnectionPoolSettings_HTTPSettings_DEFAULT ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy = 0
	// Do not upgrade the connection to http2.
	// This opt-out option overrides the default.
	ConnectionPoolSettings_HTTPSettings_DO_NOT_UPGRADE ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy = 1
	// Upgrade the connection to http2.
	// This opt-in option overrides the default.
	ConnectionPoolSettings_HTTPSettings_UPGRADE ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy = 2
)

func (ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy) EnumDescriptor

func (ConnectionPoolSettings_HTTPSettings_H2UpgradePolicy) String

type ConnectionPoolSettings_TCPSettings

type ConnectionPoolSettings_TCPSettings struct {
	// Maximum number of HTTP1 /TCP connections to a destination host. Default 2^32-1.
	MaxConnections int32 `protobuf:"varint,1,opt,name=max_connections,json=maxConnections,proto3" json:"max_connections,omitempty"`
	// TCP connection timeout. format:
	// 1h/1m/1s/1ms. MUST BE >=1ms. Default is 10s.
	ConnectTimeout *types.Duration `protobuf:"bytes,2,opt,name=connect_timeout,json=connectTimeout,proto3" json:"connect_timeout,omitempty"`
	// If set then set SO_KEEPALIVE on the socket to enable TCP Keepalives.
	TcpKeepalive         *ConnectionPoolSettings_TCPSettings_TcpKeepalive `protobuf:"bytes,3,opt,name=tcp_keepalive,json=tcpKeepalive,proto3" json:"tcp_keepalive,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                                         `json:"-"`
	XXX_unrecognized     []byte                                           `json:"-"`
	XXX_sizecache        int32                                            `json:"-"`
}

Settings common to both HTTP and TCP upstream connections.

func (*ConnectionPoolSettings_TCPSettings) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_TCPSettings. Required by controller-gen.

func (*ConnectionPoolSettings_TCPSettings) DeepCopyInterface

func (in *ConnectionPoolSettings_TCPSettings) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_TCPSettings. Required by controller-gen.

func (*ConnectionPoolSettings_TCPSettings) DeepCopyInto

DeepCopyInto supports using ConnectionPoolSettings_TCPSettings within kubernetes types, where deepcopy-gen is used.

func (*ConnectionPoolSettings_TCPSettings) Descriptor

func (*ConnectionPoolSettings_TCPSettings) Descriptor() ([]byte, []int)

func (*ConnectionPoolSettings_TCPSettings) GetConnectTimeout

func (m *ConnectionPoolSettings_TCPSettings) GetConnectTimeout() *types.Duration

func (*ConnectionPoolSettings_TCPSettings) GetMaxConnections

func (m *ConnectionPoolSettings_TCPSettings) GetMaxConnections() int32

func (*ConnectionPoolSettings_TCPSettings) GetTcpKeepalive

func (*ConnectionPoolSettings_TCPSettings) Marshal

func (m *ConnectionPoolSettings_TCPSettings) Marshal() (dAtA []byte, err error)

func (*ConnectionPoolSettings_TCPSettings) MarshalJSON

func (this *ConnectionPoolSettings_TCPSettings) MarshalJSON() ([]byte, error)

MarshalJSON is a custom marshaler for ConnectionPoolSettings_TCPSettings

func (*ConnectionPoolSettings_TCPSettings) MarshalTo

func (m *ConnectionPoolSettings_TCPSettings) MarshalTo(dAtA []byte) (int, error)

func (*ConnectionPoolSettings_TCPSettings) MarshalToSizedBuffer

func (m *ConnectionPoolSettings_TCPSettings) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*ConnectionPoolSettings_TCPSettings) ProtoMessage

func (*ConnectionPoolSettings_TCPSettings) ProtoMessage()

func (*ConnectionPoolSettings_TCPSettings) Reset

func (*ConnectionPoolSettings_TCPSettings) Size

func (*ConnectionPoolSettings_TCPSettings) String

func (*ConnectionPoolSettings_TCPSettings) Unmarshal

func (m *ConnectionPoolSettings_TCPSettings) Unmarshal(dAtA []byte) error

func (*ConnectionPoolSettings_TCPSettings) UnmarshalJSON

func (this *ConnectionPoolSettings_TCPSettings) UnmarshalJSON(b []byte) error

UnmarshalJSON is a custom unmarshaler for ConnectionPoolSettings_TCPSettings

func (*ConnectionPoolSettings_TCPSettings) XXX_DiscardUnknown

func (m *ConnectionPoolSettings_TCPSettings) XXX_DiscardUnknown()

func (*ConnectionPoolSettings_TCPSettings) XXX_Marshal

func (m *ConnectionPoolSettings_TCPSettings) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*ConnectionPoolSettings_TCPSettings) XXX_Merge

func (*ConnectionPoolSettings_TCPSettings) XXX_Size

func (*ConnectionPoolSettings_TCPSettings) XXX_Unmarshal

func (m *ConnectionPoolSettings_TCPSettings) XXX_Unmarshal(b []byte) error

type ConnectionPoolSettings_TCPSettings_TcpKeepalive

type ConnectionPoolSettings_TCPSettings_TcpKeepalive struct {
	// Maximum number of keepalive probes to send without response before
	// deciding the connection is dead. Default is to use the OS level configuration
	// (unless overridden, Linux defaults to 9.)
	Probes uint32 `protobuf:"varint,1,opt,name=probes,proto3" json:"probes,omitempty"`
	// The time duration a connection needs to be idle before keep-alive
	// probes start being sent. Default is to use the OS level configuration
	// (unless overridden, Linux defaults to 7200s (ie 2 hours.)
	Time *types.Duration `protobuf:"bytes,2,opt,name=time,proto3" json:"time,omitempty"`
	// The time duration between keep-alive probes.
	// Default is to use the OS level configuration
	// (unless overridden, Linux defaults to 75s.)
	Interval             *types.Duration `protobuf:"bytes,3,opt,name=interval,proto3" json:"interval,omitempty"`
	XXX_NoUnkeyedLiteral struct{}        `json:"-"`
	XXX_unrecognized     []byte          `json:"-"`
	XXX_sizecache        int32           `json:"-"`
}

TCP keepalive.

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_TCPSettings_TcpKeepalive. Required by controller-gen.

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) DeepCopyInterface

func (in *ConnectionPoolSettings_TCPSettings_TcpKeepalive) DeepCopyInterface() interface{}

DeepCopyInterface is an autogenerated deepcopy function, copying the receiver, creating a new ConnectionPoolSettings_TCPSettings_TcpKeepalive. Required by controller-gen.

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) DeepCopyInto

DeepCopyInto supports using ConnectionPoolSettings_TCPSettings_TcpKeepalive within kubernetes types, where deepcopy-gen is used.

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) Descriptor

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) GetInterval

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) GetProbes

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) GetTime

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) Marshal

func (m *ConnectionPoolSettings_TCPSettings_TcpKeepalive) Marshal() (dAtA []byte, err error)

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) MarshalJSON

MarshalJSON is a custom marshaler for ConnectionPoolSettings_TCPSettings_TcpKeepalive

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) MarshalTo

func (*ConnectionPoolSettings_TCPSettings_TcpKeepalive) MarshalToSizedBuffer

func (m *ConnectionPoolSettings_TCPSettings_TcpKeepalive) MarshalToSizedBuffer(dAtA []byte) (int, error)