Documentation ¶
Index ¶
- Variables
- func RegisterHealthDiscoveryServiceServer(s *grpc.Server, srv HealthDiscoveryServiceServer)
- type Capability
- func (*Capability) Descriptor() ([]byte, []int)
- func (m *Capability) GetHealthCheckProtocols() []Capability_Protocol
- func (m *Capability) Marshal() (dAtA []byte, err error)
- func (m *Capability) MarshalTo(dAtA []byte) (int, error)
- func (m *Capability) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*Capability) ProtoMessage()
- func (m *Capability) Reset()
- func (m *Capability) Size() (n int)
- func (m *Capability) String() string
- func (m *Capability) Unmarshal(dAtA []byte) error
- func (m *Capability) Validate() error
- func (m *Capability) XXX_DiscardUnknown()
- func (m *Capability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *Capability) XXX_Merge(src proto.Message)
- func (m *Capability) XXX_Size() int
- func (m *Capability) XXX_Unmarshal(b []byte) error
- type CapabilityValidationError
- type Capability_Protocol
- type ClusterHealthCheck
- func (*ClusterHealthCheck) Descriptor() ([]byte, []int)
- func (m *ClusterHealthCheck) GetClusterName() string
- func (m *ClusterHealthCheck) GetHealthChecks() []*v3.HealthCheck
- func (m *ClusterHealthCheck) GetLocalityEndpoints() []*LocalityEndpoints
- func (m *ClusterHealthCheck) Marshal() (dAtA []byte, err error)
- func (m *ClusterHealthCheck) MarshalTo(dAtA []byte) (int, error)
- func (m *ClusterHealthCheck) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*ClusterHealthCheck) ProtoMessage()
- func (m *ClusterHealthCheck) Reset()
- func (m *ClusterHealthCheck) Size() (n int)
- func (m *ClusterHealthCheck) String() string
- func (m *ClusterHealthCheck) Unmarshal(dAtA []byte) error
- func (m *ClusterHealthCheck) Validate() error
- func (m *ClusterHealthCheck) XXX_DiscardUnknown()
- func (m *ClusterHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *ClusterHealthCheck) XXX_Merge(src proto.Message)
- func (m *ClusterHealthCheck) XXX_Size() int
- func (m *ClusterHealthCheck) XXX_Unmarshal(b []byte) error
- type ClusterHealthCheckValidationError
- func (e ClusterHealthCheckValidationError) Cause() error
- func (e ClusterHealthCheckValidationError) Error() string
- func (e ClusterHealthCheckValidationError) ErrorName() string
- func (e ClusterHealthCheckValidationError) Field() string
- func (e ClusterHealthCheckValidationError) Key() bool
- func (e ClusterHealthCheckValidationError) Reason() string
- type EndpointHealth
- func (*EndpointHealth) Descriptor() ([]byte, []int)
- func (m *EndpointHealth) GetEndpoint() *v31.Endpoint
- func (m *EndpointHealth) GetHealthStatus() v3.HealthStatus
- func (m *EndpointHealth) Marshal() (dAtA []byte, err error)
- func (m *EndpointHealth) MarshalTo(dAtA []byte) (int, error)
- func (m *EndpointHealth) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*EndpointHealth) ProtoMessage()
- func (m *EndpointHealth) Reset()
- func (m *EndpointHealth) Size() (n int)
- func (m *EndpointHealth) String() string
- func (m *EndpointHealth) Unmarshal(dAtA []byte) error
- func (m *EndpointHealth) Validate() error
- func (m *EndpointHealth) XXX_DiscardUnknown()
- func (m *EndpointHealth) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *EndpointHealth) XXX_Merge(src proto.Message)
- func (m *EndpointHealth) XXX_Size() int
- func (m *EndpointHealth) XXX_Unmarshal(b []byte) error
- type EndpointHealthResponse
- func (*EndpointHealthResponse) Descriptor() ([]byte, []int)
- func (m *EndpointHealthResponse) GetEndpointsHealth() []*EndpointHealth
- func (m *EndpointHealthResponse) Marshal() (dAtA []byte, err error)
- func (m *EndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
- func (m *EndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*EndpointHealthResponse) ProtoMessage()
- func (m *EndpointHealthResponse) Reset()
- func (m *EndpointHealthResponse) Size() (n int)
- func (m *EndpointHealthResponse) String() string
- func (m *EndpointHealthResponse) Unmarshal(dAtA []byte) error
- func (m *EndpointHealthResponse) Validate() error
- func (m *EndpointHealthResponse) XXX_DiscardUnknown()
- func (m *EndpointHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *EndpointHealthResponse) XXX_Merge(src proto.Message)
- func (m *EndpointHealthResponse) XXX_Size() int
- func (m *EndpointHealthResponse) XXX_Unmarshal(b []byte) error
- type EndpointHealthResponseValidationError
- func (e EndpointHealthResponseValidationError) Cause() error
- func (e EndpointHealthResponseValidationError) Error() string
- func (e EndpointHealthResponseValidationError) ErrorName() string
- func (e EndpointHealthResponseValidationError) Field() string
- func (e EndpointHealthResponseValidationError) Key() bool
- func (e EndpointHealthResponseValidationError) Reason() string
- type EndpointHealthValidationError
- func (e EndpointHealthValidationError) Cause() error
- func (e EndpointHealthValidationError) Error() string
- func (e EndpointHealthValidationError) ErrorName() string
- func (e EndpointHealthValidationError) Field() string
- func (e EndpointHealthValidationError) Key() bool
- func (e EndpointHealthValidationError) Reason() string
- type HealthCheckRequest
- func (*HealthCheckRequest) Descriptor() ([]byte, []int)
- func (m *HealthCheckRequest) GetCapability() *Capability
- func (m *HealthCheckRequest) GetNode() *v3.Node
- func (m *HealthCheckRequest) Marshal() (dAtA []byte, err error)
- func (m *HealthCheckRequest) MarshalTo(dAtA []byte) (int, error)
- func (m *HealthCheckRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*HealthCheckRequest) ProtoMessage()
- func (m *HealthCheckRequest) Reset()
- func (m *HealthCheckRequest) Size() (n int)
- func (m *HealthCheckRequest) String() string
- func (m *HealthCheckRequest) Unmarshal(dAtA []byte) error
- func (m *HealthCheckRequest) Validate() error
- func (m *HealthCheckRequest) XXX_DiscardUnknown()
- func (m *HealthCheckRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *HealthCheckRequest) XXX_Merge(src proto.Message)
- func (m *HealthCheckRequest) XXX_Size() int
- func (m *HealthCheckRequest) XXX_Unmarshal(b []byte) error
- type HealthCheckRequestOrEndpointHealthResponse
- func (*HealthCheckRequestOrEndpointHealthResponse) Descriptor() ([]byte, []int)
- func (m *HealthCheckRequestOrEndpointHealthResponse) GetEndpointHealthResponse() *EndpointHealthResponse
- func (m *HealthCheckRequestOrEndpointHealthResponse) GetHealthCheckRequest() *HealthCheckRequest
- func (m *HealthCheckRequestOrEndpointHealthResponse) GetRequestType() isHealthCheckRequestOrEndpointHealthResponse_RequestType
- func (m *HealthCheckRequestOrEndpointHealthResponse) Marshal() (dAtA []byte, err error)
- func (m *HealthCheckRequestOrEndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*HealthCheckRequestOrEndpointHealthResponse) ProtoMessage()
- func (m *HealthCheckRequestOrEndpointHealthResponse) Reset()
- func (m *HealthCheckRequestOrEndpointHealthResponse) Size() (n int)
- func (m *HealthCheckRequestOrEndpointHealthResponse) String() string
- func (m *HealthCheckRequestOrEndpointHealthResponse) Unmarshal(dAtA []byte) error
- func (m *HealthCheckRequestOrEndpointHealthResponse) Validate() error
- func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_DiscardUnknown()
- func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Merge(src proto.Message)
- func (*HealthCheckRequestOrEndpointHealthResponse) XXX_OneofWrappers() []interface{}
- func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Size() int
- func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Unmarshal(b []byte) error
- type HealthCheckRequestOrEndpointHealthResponseValidationError
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Cause() error
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Error() string
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) ErrorName() string
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Field() string
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Key() bool
- func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Reason() string
- type HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse
- func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) Size() (n int)
- type HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest
- func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalTo(dAtA []byte) (int, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) Size() (n int)
- type HealthCheckRequestValidationError
- func (e HealthCheckRequestValidationError) Cause() error
- func (e HealthCheckRequestValidationError) Error() string
- func (e HealthCheckRequestValidationError) ErrorName() string
- func (e HealthCheckRequestValidationError) Field() string
- func (e HealthCheckRequestValidationError) Key() bool
- func (e HealthCheckRequestValidationError) Reason() string
- type HealthCheckSpecifier
- func (*HealthCheckSpecifier) Descriptor() ([]byte, []int)
- func (m *HealthCheckSpecifier) GetClusterHealthChecks() []*ClusterHealthCheck
- func (m *HealthCheckSpecifier) GetInterval() *types.Duration
- func (m *HealthCheckSpecifier) Marshal() (dAtA []byte, err error)
- func (m *HealthCheckSpecifier) MarshalTo(dAtA []byte) (int, error)
- func (m *HealthCheckSpecifier) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*HealthCheckSpecifier) ProtoMessage()
- func (m *HealthCheckSpecifier) Reset()
- func (m *HealthCheckSpecifier) Size() (n int)
- func (m *HealthCheckSpecifier) String() string
- func (m *HealthCheckSpecifier) Unmarshal(dAtA []byte) error
- func (m *HealthCheckSpecifier) Validate() error
- func (m *HealthCheckSpecifier) XXX_DiscardUnknown()
- func (m *HealthCheckSpecifier) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *HealthCheckSpecifier) XXX_Merge(src proto.Message)
- func (m *HealthCheckSpecifier) XXX_Size() int
- func (m *HealthCheckSpecifier) XXX_Unmarshal(b []byte) error
- type HealthCheckSpecifierValidationError
- func (e HealthCheckSpecifierValidationError) Cause() error
- func (e HealthCheckSpecifierValidationError) Error() string
- func (e HealthCheckSpecifierValidationError) ErrorName() string
- func (e HealthCheckSpecifierValidationError) Field() string
- func (e HealthCheckSpecifierValidationError) Key() bool
- func (e HealthCheckSpecifierValidationError) Reason() string
- type HealthDiscoveryServiceClient
- type HealthDiscoveryServiceServer
- type HealthDiscoveryService_StreamHealthCheckClient
- type HealthDiscoveryService_StreamHealthCheckServer
- type LocalityEndpoints
- func (*LocalityEndpoints) Descriptor() ([]byte, []int)
- func (m *LocalityEndpoints) GetEndpoints() []*v31.Endpoint
- func (m *LocalityEndpoints) GetLocality() *v3.Locality
- func (m *LocalityEndpoints) Marshal() (dAtA []byte, err error)
- func (m *LocalityEndpoints) MarshalTo(dAtA []byte) (int, error)
- func (m *LocalityEndpoints) MarshalToSizedBuffer(dAtA []byte) (int, error)
- func (*LocalityEndpoints) ProtoMessage()
- func (m *LocalityEndpoints) Reset()
- func (m *LocalityEndpoints) Size() (n int)
- func (m *LocalityEndpoints) String() string
- func (m *LocalityEndpoints) Unmarshal(dAtA []byte) error
- func (m *LocalityEndpoints) Validate() error
- func (m *LocalityEndpoints) XXX_DiscardUnknown()
- func (m *LocalityEndpoints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
- func (m *LocalityEndpoints) XXX_Merge(src proto.Message)
- func (m *LocalityEndpoints) XXX_Size() int
- func (m *LocalityEndpoints) XXX_Unmarshal(b []byte) error
- type LocalityEndpointsValidationError
- func (e LocalityEndpointsValidationError) Cause() error
- func (e LocalityEndpointsValidationError) Error() string
- func (e LocalityEndpointsValidationError) ErrorName() string
- func (e LocalityEndpointsValidationError) Field() string
- func (e LocalityEndpointsValidationError) Key() bool
- func (e LocalityEndpointsValidationError) Reason() string
- type UnimplementedHealthDiscoveryServiceServer
Constants ¶
This section is empty.
Variables ¶
var ( ErrInvalidLengthHds = fmt.Errorf("proto: negative length found during unmarshaling") ErrIntOverflowHds = fmt.Errorf("proto: integer overflow") ErrUnexpectedEndOfGroupHds = fmt.Errorf("proto: unexpected end of group") )
var Capability_Protocol_name = map[int32]string{
0: "HTTP",
1: "TCP",
2: "REDIS",
}
var Capability_Protocol_value = map[string]int32{
"HTTP": 0,
"TCP": 1,
"REDIS": 2,
}
Functions ¶
func RegisterHealthDiscoveryServiceServer ¶
func RegisterHealthDiscoveryServiceServer(s *grpc.Server, srv HealthDiscoveryServiceServer)
Types ¶
type Capability ¶
type Capability struct { HealthCheckProtocols []Capability_Protocol `` /* 180-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
Defines supported protocols etc, so the management server can assign proper endpoints to healthcheck.
func (*Capability) Descriptor ¶
func (*Capability) Descriptor() ([]byte, []int)
func (*Capability) GetHealthCheckProtocols ¶
func (m *Capability) GetHealthCheckProtocols() []Capability_Protocol
func (*Capability) Marshal ¶
func (m *Capability) Marshal() (dAtA []byte, err error)
func (*Capability) MarshalToSizedBuffer ¶
func (m *Capability) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*Capability) ProtoMessage ¶
func (*Capability) ProtoMessage()
func (*Capability) Reset ¶
func (m *Capability) Reset()
func (*Capability) Size ¶
func (m *Capability) Size() (n int)
func (*Capability) String ¶
func (m *Capability) String() string
func (*Capability) Unmarshal ¶
func (m *Capability) Unmarshal(dAtA []byte) error
func (*Capability) Validate ¶
func (m *Capability) Validate() error
Validate checks the field values on Capability with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*Capability) XXX_DiscardUnknown ¶
func (m *Capability) XXX_DiscardUnknown()
func (*Capability) XXX_Marshal ¶
func (m *Capability) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*Capability) XXX_Merge ¶
func (m *Capability) XXX_Merge(src proto.Message)
func (*Capability) XXX_Size ¶
func (m *Capability) XXX_Size() int
func (*Capability) XXX_Unmarshal ¶
func (m *Capability) XXX_Unmarshal(b []byte) error
type CapabilityValidationError ¶
type CapabilityValidationError struct {
// contains filtered or unexported fields
}
CapabilityValidationError is the validation error returned by Capability.Validate if the designated constraints aren't met.
func (CapabilityValidationError) Cause ¶
func (e CapabilityValidationError) Cause() error
Cause function returns cause value.
func (CapabilityValidationError) Error ¶
func (e CapabilityValidationError) Error() string
Error satisfies the builtin error interface
func (CapabilityValidationError) ErrorName ¶
func (e CapabilityValidationError) ErrorName() string
ErrorName returns error name.
func (CapabilityValidationError) Field ¶
func (e CapabilityValidationError) Field() string
Field function returns field value.
func (CapabilityValidationError) Key ¶
func (e CapabilityValidationError) Key() bool
Key function returns key value.
func (CapabilityValidationError) Reason ¶
func (e CapabilityValidationError) Reason() string
Reason function returns reason value.
type Capability_Protocol ¶
type Capability_Protocol int32
Different Envoy instances may have different capabilities (e.g. Redis) and/or have ports enabled for different protocols.
const ( Capability_HTTP Capability_Protocol = 0 Capability_TCP Capability_Protocol = 1 Capability_REDIS Capability_Protocol = 2 )
func (Capability_Protocol) EnumDescriptor ¶
func (Capability_Protocol) EnumDescriptor() ([]byte, []int)
func (Capability_Protocol) String ¶
func (x Capability_Protocol) String() string
type ClusterHealthCheck ¶
type ClusterHealthCheck struct { ClusterName string `protobuf:"bytes,1,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"` HealthChecks []*v3.HealthCheck `protobuf:"bytes,2,rep,name=health_checks,json=healthChecks,proto3" json:"health_checks,omitempty"` LocalityEndpoints []*LocalityEndpoints `protobuf:"bytes,3,rep,name=locality_endpoints,json=localityEndpoints,proto3" json:"locality_endpoints,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
The cluster name and locality is provided to Envoy for the endpoints that it health checks to support statistics reporting, logging and debugging by the Envoy instance (outside of HDS). For maximum usefulness, it should match the same cluster structure as that provided by EDS.
func (*ClusterHealthCheck) Descriptor ¶
func (*ClusterHealthCheck) Descriptor() ([]byte, []int)
func (*ClusterHealthCheck) GetClusterName ¶
func (m *ClusterHealthCheck) GetClusterName() string
func (*ClusterHealthCheck) GetHealthChecks ¶
func (m *ClusterHealthCheck) GetHealthChecks() []*v3.HealthCheck
func (*ClusterHealthCheck) GetLocalityEndpoints ¶
func (m *ClusterHealthCheck) GetLocalityEndpoints() []*LocalityEndpoints
func (*ClusterHealthCheck) Marshal ¶
func (m *ClusterHealthCheck) Marshal() (dAtA []byte, err error)
func (*ClusterHealthCheck) MarshalTo ¶
func (m *ClusterHealthCheck) MarshalTo(dAtA []byte) (int, error)
func (*ClusterHealthCheck) MarshalToSizedBuffer ¶
func (m *ClusterHealthCheck) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*ClusterHealthCheck) ProtoMessage ¶
func (*ClusterHealthCheck) ProtoMessage()
func (*ClusterHealthCheck) Reset ¶
func (m *ClusterHealthCheck) Reset()
func (*ClusterHealthCheck) Size ¶
func (m *ClusterHealthCheck) Size() (n int)
func (*ClusterHealthCheck) String ¶
func (m *ClusterHealthCheck) String() string
func (*ClusterHealthCheck) Unmarshal ¶
func (m *ClusterHealthCheck) Unmarshal(dAtA []byte) error
func (*ClusterHealthCheck) Validate ¶
func (m *ClusterHealthCheck) Validate() error
Validate checks the field values on ClusterHealthCheck with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*ClusterHealthCheck) XXX_DiscardUnknown ¶
func (m *ClusterHealthCheck) XXX_DiscardUnknown()
func (*ClusterHealthCheck) XXX_Marshal ¶
func (m *ClusterHealthCheck) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*ClusterHealthCheck) XXX_Merge ¶
func (m *ClusterHealthCheck) XXX_Merge(src proto.Message)
func (*ClusterHealthCheck) XXX_Size ¶
func (m *ClusterHealthCheck) XXX_Size() int
func (*ClusterHealthCheck) XXX_Unmarshal ¶
func (m *ClusterHealthCheck) XXX_Unmarshal(b []byte) error
type ClusterHealthCheckValidationError ¶
type ClusterHealthCheckValidationError struct {
// contains filtered or unexported fields
}
ClusterHealthCheckValidationError is the validation error returned by ClusterHealthCheck.Validate if the designated constraints aren't met.
func (ClusterHealthCheckValidationError) Cause ¶
func (e ClusterHealthCheckValidationError) Cause() error
Cause function returns cause value.
func (ClusterHealthCheckValidationError) Error ¶
func (e ClusterHealthCheckValidationError) Error() string
Error satisfies the builtin error interface
func (ClusterHealthCheckValidationError) ErrorName ¶
func (e ClusterHealthCheckValidationError) ErrorName() string
ErrorName returns error name.
func (ClusterHealthCheckValidationError) Field ¶
func (e ClusterHealthCheckValidationError) Field() string
Field function returns field value.
func (ClusterHealthCheckValidationError) Key ¶
func (e ClusterHealthCheckValidationError) Key() bool
Key function returns key value.
func (ClusterHealthCheckValidationError) Reason ¶
func (e ClusterHealthCheckValidationError) Reason() string
Reason function returns reason value.
type EndpointHealth ¶
type EndpointHealth struct { Endpoint *v31.Endpoint `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"` HealthStatus v3.HealthStatus `` /* 137-byte string literal not displayed */ XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*EndpointHealth) Descriptor ¶
func (*EndpointHealth) Descriptor() ([]byte, []int)
func (*EndpointHealth) GetEndpoint ¶
func (m *EndpointHealth) GetEndpoint() *v31.Endpoint
func (*EndpointHealth) GetHealthStatus ¶
func (m *EndpointHealth) GetHealthStatus() v3.HealthStatus
func (*EndpointHealth) Marshal ¶
func (m *EndpointHealth) Marshal() (dAtA []byte, err error)
func (*EndpointHealth) MarshalToSizedBuffer ¶
func (m *EndpointHealth) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*EndpointHealth) ProtoMessage ¶
func (*EndpointHealth) ProtoMessage()
func (*EndpointHealth) Reset ¶
func (m *EndpointHealth) Reset()
func (*EndpointHealth) Size ¶
func (m *EndpointHealth) Size() (n int)
func (*EndpointHealth) String ¶
func (m *EndpointHealth) String() string
func (*EndpointHealth) Unmarshal ¶
func (m *EndpointHealth) Unmarshal(dAtA []byte) error
func (*EndpointHealth) Validate ¶
func (m *EndpointHealth) Validate() error
Validate checks the field values on EndpointHealth with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*EndpointHealth) XXX_DiscardUnknown ¶
func (m *EndpointHealth) XXX_DiscardUnknown()
func (*EndpointHealth) XXX_Marshal ¶
func (m *EndpointHealth) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*EndpointHealth) XXX_Merge ¶
func (m *EndpointHealth) XXX_Merge(src proto.Message)
func (*EndpointHealth) XXX_Size ¶
func (m *EndpointHealth) XXX_Size() int
func (*EndpointHealth) XXX_Unmarshal ¶
func (m *EndpointHealth) XXX_Unmarshal(b []byte) error
type EndpointHealthResponse ¶
type EndpointHealthResponse struct { EndpointsHealth []*EndpointHealth `protobuf:"bytes,1,rep,name=endpoints_health,json=endpointsHealth,proto3" json:"endpoints_health,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*EndpointHealthResponse) Descriptor ¶
func (*EndpointHealthResponse) Descriptor() ([]byte, []int)
func (*EndpointHealthResponse) GetEndpointsHealth ¶
func (m *EndpointHealthResponse) GetEndpointsHealth() []*EndpointHealth
func (*EndpointHealthResponse) Marshal ¶
func (m *EndpointHealthResponse) Marshal() (dAtA []byte, err error)
func (*EndpointHealthResponse) MarshalTo ¶
func (m *EndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
func (*EndpointHealthResponse) MarshalToSizedBuffer ¶
func (m *EndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*EndpointHealthResponse) ProtoMessage ¶
func (*EndpointHealthResponse) ProtoMessage()
func (*EndpointHealthResponse) Reset ¶
func (m *EndpointHealthResponse) Reset()
func (*EndpointHealthResponse) Size ¶
func (m *EndpointHealthResponse) Size() (n int)
func (*EndpointHealthResponse) String ¶
func (m *EndpointHealthResponse) String() string
func (*EndpointHealthResponse) Unmarshal ¶
func (m *EndpointHealthResponse) Unmarshal(dAtA []byte) error
func (*EndpointHealthResponse) Validate ¶
func (m *EndpointHealthResponse) Validate() error
Validate checks the field values on EndpointHealthResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*EndpointHealthResponse) XXX_DiscardUnknown ¶
func (m *EndpointHealthResponse) XXX_DiscardUnknown()
func (*EndpointHealthResponse) XXX_Marshal ¶
func (m *EndpointHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*EndpointHealthResponse) XXX_Merge ¶
func (m *EndpointHealthResponse) XXX_Merge(src proto.Message)
func (*EndpointHealthResponse) XXX_Size ¶
func (m *EndpointHealthResponse) XXX_Size() int
func (*EndpointHealthResponse) XXX_Unmarshal ¶
func (m *EndpointHealthResponse) XXX_Unmarshal(b []byte) error
type EndpointHealthResponseValidationError ¶
type EndpointHealthResponseValidationError struct {
// contains filtered or unexported fields
}
EndpointHealthResponseValidationError is the validation error returned by EndpointHealthResponse.Validate if the designated constraints aren't met.
func (EndpointHealthResponseValidationError) Cause ¶
func (e EndpointHealthResponseValidationError) Cause() error
Cause function returns cause value.
func (EndpointHealthResponseValidationError) Error ¶
func (e EndpointHealthResponseValidationError) Error() string
Error satisfies the builtin error interface
func (EndpointHealthResponseValidationError) ErrorName ¶
func (e EndpointHealthResponseValidationError) ErrorName() string
ErrorName returns error name.
func (EndpointHealthResponseValidationError) Field ¶
func (e EndpointHealthResponseValidationError) Field() string
Field function returns field value.
func (EndpointHealthResponseValidationError) Key ¶
func (e EndpointHealthResponseValidationError) Key() bool
Key function returns key value.
func (EndpointHealthResponseValidationError) Reason ¶
func (e EndpointHealthResponseValidationError) Reason() string
Reason function returns reason value.
type EndpointHealthValidationError ¶
type EndpointHealthValidationError struct {
// contains filtered or unexported fields
}
EndpointHealthValidationError is the validation error returned by EndpointHealth.Validate if the designated constraints aren't met.
func (EndpointHealthValidationError) Cause ¶
func (e EndpointHealthValidationError) Cause() error
Cause function returns cause value.
func (EndpointHealthValidationError) Error ¶
func (e EndpointHealthValidationError) Error() string
Error satisfies the builtin error interface
func (EndpointHealthValidationError) ErrorName ¶
func (e EndpointHealthValidationError) ErrorName() string
ErrorName returns error name.
func (EndpointHealthValidationError) Field ¶
func (e EndpointHealthValidationError) Field() string
Field function returns field value.
func (EndpointHealthValidationError) Key ¶
func (e EndpointHealthValidationError) Key() bool
Key function returns key value.
func (EndpointHealthValidationError) Reason ¶
func (e EndpointHealthValidationError) Reason() string
Reason function returns reason value.
type HealthCheckRequest ¶
type HealthCheckRequest struct { Node *v3.Node `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"` Capability *Capability `protobuf:"bytes,2,opt,name=capability,proto3" json:"capability,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*HealthCheckRequest) Descriptor ¶
func (*HealthCheckRequest) Descriptor() ([]byte, []int)
func (*HealthCheckRequest) GetCapability ¶
func (m *HealthCheckRequest) GetCapability() *Capability
func (*HealthCheckRequest) GetNode ¶
func (m *HealthCheckRequest) GetNode() *v3.Node
func (*HealthCheckRequest) Marshal ¶
func (m *HealthCheckRequest) Marshal() (dAtA []byte, err error)
func (*HealthCheckRequest) MarshalTo ¶
func (m *HealthCheckRequest) MarshalTo(dAtA []byte) (int, error)
func (*HealthCheckRequest) MarshalToSizedBuffer ¶
func (m *HealthCheckRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HealthCheckRequest) ProtoMessage ¶
func (*HealthCheckRequest) ProtoMessage()
func (*HealthCheckRequest) Reset ¶
func (m *HealthCheckRequest) Reset()
func (*HealthCheckRequest) Size ¶
func (m *HealthCheckRequest) Size() (n int)
func (*HealthCheckRequest) String ¶
func (m *HealthCheckRequest) String() string
func (*HealthCheckRequest) Unmarshal ¶
func (m *HealthCheckRequest) Unmarshal(dAtA []byte) error
func (*HealthCheckRequest) Validate ¶
func (m *HealthCheckRequest) Validate() error
Validate checks the field values on HealthCheckRequest with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*HealthCheckRequest) XXX_DiscardUnknown ¶
func (m *HealthCheckRequest) XXX_DiscardUnknown()
func (*HealthCheckRequest) XXX_Marshal ¶
func (m *HealthCheckRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*HealthCheckRequest) XXX_Merge ¶
func (m *HealthCheckRequest) XXX_Merge(src proto.Message)
func (*HealthCheckRequest) XXX_Size ¶
func (m *HealthCheckRequest) XXX_Size() int
func (*HealthCheckRequest) XXX_Unmarshal ¶
func (m *HealthCheckRequest) XXX_Unmarshal(b []byte) error
type HealthCheckRequestOrEndpointHealthResponse ¶
type HealthCheckRequestOrEndpointHealthResponse struct { // Types that are valid to be assigned to RequestType: // *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest // *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse RequestType isHealthCheckRequestOrEndpointHealthResponse_RequestType `protobuf_oneof:"request_type"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*HealthCheckRequestOrEndpointHealthResponse) Descriptor ¶
func (*HealthCheckRequestOrEndpointHealthResponse) Descriptor() ([]byte, []int)
func (*HealthCheckRequestOrEndpointHealthResponse) GetEndpointHealthResponse ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) GetEndpointHealthResponse() *EndpointHealthResponse
func (*HealthCheckRequestOrEndpointHealthResponse) GetHealthCheckRequest ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) GetHealthCheckRequest() *HealthCheckRequest
func (*HealthCheckRequestOrEndpointHealthResponse) GetRequestType ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) GetRequestType() isHealthCheckRequestOrEndpointHealthResponse_RequestType
func (*HealthCheckRequestOrEndpointHealthResponse) Marshal ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) Marshal() (dAtA []byte, err error)
func (*HealthCheckRequestOrEndpointHealthResponse) MarshalTo ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse) MarshalToSizedBuffer ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse) ProtoMessage ¶
func (*HealthCheckRequestOrEndpointHealthResponse) ProtoMessage()
func (*HealthCheckRequestOrEndpointHealthResponse) Reset ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) Reset()
func (*HealthCheckRequestOrEndpointHealthResponse) Size ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) Size() (n int)
func (*HealthCheckRequestOrEndpointHealthResponse) String ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) String() string
func (*HealthCheckRequestOrEndpointHealthResponse) Unmarshal ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) Unmarshal(dAtA []byte) error
func (*HealthCheckRequestOrEndpointHealthResponse) Validate ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) Validate() error
Validate checks the field values on HealthCheckRequestOrEndpointHealthResponse with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_DiscardUnknown ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_DiscardUnknown()
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_Marshal ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_Merge ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Merge(src proto.Message)
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_OneofWrappers ¶
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_OneofWrappers() []interface{}
XXX_OneofWrappers is for the internal use of the proto package.
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_Size ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Size() int
func (*HealthCheckRequestOrEndpointHealthResponse) XXX_Unmarshal ¶
func (m *HealthCheckRequestOrEndpointHealthResponse) XXX_Unmarshal(b []byte) error
type HealthCheckRequestOrEndpointHealthResponseValidationError ¶
type HealthCheckRequestOrEndpointHealthResponseValidationError struct {
// contains filtered or unexported fields
}
HealthCheckRequestOrEndpointHealthResponseValidationError is the validation error returned by HealthCheckRequestOrEndpointHealthResponse.Validate if the designated constraints aren't met.
func (HealthCheckRequestOrEndpointHealthResponseValidationError) Cause ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Cause() error
Cause function returns cause value.
func (HealthCheckRequestOrEndpointHealthResponseValidationError) Error ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Error() string
Error satisfies the builtin error interface
func (HealthCheckRequestOrEndpointHealthResponseValidationError) ErrorName ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) ErrorName() string
ErrorName returns error name.
func (HealthCheckRequestOrEndpointHealthResponseValidationError) Field ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Field() string
Field function returns field value.
func (HealthCheckRequestOrEndpointHealthResponseValidationError) Key ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Key() bool
Key function returns key value.
func (HealthCheckRequestOrEndpointHealthResponseValidationError) Reason ¶
func (e HealthCheckRequestOrEndpointHealthResponseValidationError) Reason() string
Reason function returns reason value.
type HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse ¶
type HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse struct {
EndpointHealthResponse *EndpointHealthResponse `` /* 135-byte string literal not displayed */
}
func (*HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalTo ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalTo(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalToSizedBuffer ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) Size ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_EndpointHealthResponse) Size() (n int)
type HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest ¶
type HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest struct {
HealthCheckRequest *HealthCheckRequest `protobuf:"bytes,1,opt,name=health_check_request,json=healthCheckRequest,proto3,oneof" json:"health_check_request,omitempty"`
}
func (*HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalTo ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalTo(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalToSizedBuffer ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) Size ¶
func (m *HealthCheckRequestOrEndpointHealthResponse_HealthCheckRequest) Size() (n int)
type HealthCheckRequestValidationError ¶
type HealthCheckRequestValidationError struct {
// contains filtered or unexported fields
}
HealthCheckRequestValidationError is the validation error returned by HealthCheckRequest.Validate if the designated constraints aren't met.
func (HealthCheckRequestValidationError) Cause ¶
func (e HealthCheckRequestValidationError) Cause() error
Cause function returns cause value.
func (HealthCheckRequestValidationError) Error ¶
func (e HealthCheckRequestValidationError) Error() string
Error satisfies the builtin error interface
func (HealthCheckRequestValidationError) ErrorName ¶
func (e HealthCheckRequestValidationError) ErrorName() string
ErrorName returns error name.
func (HealthCheckRequestValidationError) Field ¶
func (e HealthCheckRequestValidationError) Field() string
Field function returns field value.
func (HealthCheckRequestValidationError) Key ¶
func (e HealthCheckRequestValidationError) Key() bool
Key function returns key value.
func (HealthCheckRequestValidationError) Reason ¶
func (e HealthCheckRequestValidationError) Reason() string
Reason function returns reason value.
type HealthCheckSpecifier ¶
type HealthCheckSpecifier struct { ClusterHealthChecks []*ClusterHealthCheck `protobuf:"bytes,1,rep,name=cluster_health_checks,json=clusterHealthChecks,proto3" json:"cluster_health_checks,omitempty"` // The default is 1 second. Interval *types.Duration `protobuf:"bytes,2,opt,name=interval,proto3" json:"interval,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*HealthCheckSpecifier) Descriptor ¶
func (*HealthCheckSpecifier) Descriptor() ([]byte, []int)
func (*HealthCheckSpecifier) GetClusterHealthChecks ¶
func (m *HealthCheckSpecifier) GetClusterHealthChecks() []*ClusterHealthCheck
func (*HealthCheckSpecifier) GetInterval ¶
func (m *HealthCheckSpecifier) GetInterval() *types.Duration
func (*HealthCheckSpecifier) Marshal ¶
func (m *HealthCheckSpecifier) Marshal() (dAtA []byte, err error)
func (*HealthCheckSpecifier) MarshalTo ¶
func (m *HealthCheckSpecifier) MarshalTo(dAtA []byte) (int, error)
func (*HealthCheckSpecifier) MarshalToSizedBuffer ¶
func (m *HealthCheckSpecifier) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*HealthCheckSpecifier) ProtoMessage ¶
func (*HealthCheckSpecifier) ProtoMessage()
func (*HealthCheckSpecifier) Reset ¶
func (m *HealthCheckSpecifier) Reset()
func (*HealthCheckSpecifier) Size ¶
func (m *HealthCheckSpecifier) Size() (n int)
func (*HealthCheckSpecifier) String ¶
func (m *HealthCheckSpecifier) String() string
func (*HealthCheckSpecifier) Unmarshal ¶
func (m *HealthCheckSpecifier) Unmarshal(dAtA []byte) error
func (*HealthCheckSpecifier) Validate ¶
func (m *HealthCheckSpecifier) Validate() error
Validate checks the field values on HealthCheckSpecifier with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*HealthCheckSpecifier) XXX_DiscardUnknown ¶
func (m *HealthCheckSpecifier) XXX_DiscardUnknown()
func (*HealthCheckSpecifier) XXX_Marshal ¶
func (m *HealthCheckSpecifier) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*HealthCheckSpecifier) XXX_Merge ¶
func (m *HealthCheckSpecifier) XXX_Merge(src proto.Message)
func (*HealthCheckSpecifier) XXX_Size ¶
func (m *HealthCheckSpecifier) XXX_Size() int
func (*HealthCheckSpecifier) XXX_Unmarshal ¶
func (m *HealthCheckSpecifier) XXX_Unmarshal(b []byte) error
type HealthCheckSpecifierValidationError ¶
type HealthCheckSpecifierValidationError struct {
// contains filtered or unexported fields
}
HealthCheckSpecifierValidationError is the validation error returned by HealthCheckSpecifier.Validate if the designated constraints aren't met.
func (HealthCheckSpecifierValidationError) Cause ¶
func (e HealthCheckSpecifierValidationError) Cause() error
Cause function returns cause value.
func (HealthCheckSpecifierValidationError) Error ¶
func (e HealthCheckSpecifierValidationError) Error() string
Error satisfies the builtin error interface
func (HealthCheckSpecifierValidationError) ErrorName ¶
func (e HealthCheckSpecifierValidationError) ErrorName() string
ErrorName returns error name.
func (HealthCheckSpecifierValidationError) Field ¶
func (e HealthCheckSpecifierValidationError) Field() string
Field function returns field value.
func (HealthCheckSpecifierValidationError) Key ¶
func (e HealthCheckSpecifierValidationError) Key() bool
Key function returns key value.
func (HealthCheckSpecifierValidationError) Reason ¶
func (e HealthCheckSpecifierValidationError) Reason() string
Reason function returns reason value.
type HealthDiscoveryServiceClient ¶
type HealthDiscoveryServiceClient interface { // 1. Envoy starts up and if its can_healthcheck option in the static // bootstrap config is enabled, sends HealthCheckRequest to the management // server. It supplies its capabilities (which protocol it can health check // with, what zone it resides in, etc.). // 2. In response to (1), the management server designates this Envoy as a // healthchecker to health check a subset of all upstream hosts for a given // cluster (for example upstream Host 1 and Host 2). It streams // HealthCheckSpecifier messages with cluster related configuration for all // clusters this Envoy is designated to health check. Subsequent // HealthCheckSpecifier message will be sent on changes to: // a. Endpoints to health checks // b. Per cluster configuration change // 3. Envoy creates a health probe based on the HealthCheck config and sends // it to endpoint(ip:port) of Host 1 and 2. Based on the HealthCheck // configuration Envoy waits upon the arrival of the probe response and // looks at the content of the response to decide whether the endpoint is // healthy or not. If a response hasn't been received within the timeout // interval, the endpoint health status is considered TIMEOUT. // 4. Envoy reports results back in an EndpointHealthResponse message. // Envoy streams responses as often as the interval configured by the // management server in HealthCheckSpecifier. // 5. The management Server collects health statuses for all endpoints in the // cluster (for all clusters) and uses this information to construct // EndpointDiscoveryResponse messages. // 6. Once Envoy has a list of upstream endpoints to send traffic to, it load // balances traffic to them without additional health checking. It may // use inline healthcheck (i.e. consider endpoint UNHEALTHY if connection // failed to a particular endpoint to account for health status propagation // delay between HDS and EDS). // By default, can_healthcheck is true. If can_healthcheck is false, Cluster // configuration may not contain HealthCheck message. // TODO(htuch): How is can_healthcheck communicated to CDS to ensure the above // invariant? // TODO(htuch): Add @amb67's diagram. StreamHealthCheck(ctx context.Context, opts ...grpc.CallOption) (HealthDiscoveryService_StreamHealthCheckClient, error) // TODO(htuch): Unlike the gRPC version, there is no stream-based binding of // request/response. Should we add an identifier to the HealthCheckSpecifier // to bind with the response? FetchHealthCheck(ctx context.Context, in *HealthCheckRequestOrEndpointHealthResponse, opts ...grpc.CallOption) (*HealthCheckSpecifier, error) }
HealthDiscoveryServiceClient is the client API for HealthDiscoveryService service.
For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
func NewHealthDiscoveryServiceClient ¶
func NewHealthDiscoveryServiceClient(cc *grpc.ClientConn) HealthDiscoveryServiceClient
type HealthDiscoveryServiceServer ¶
type HealthDiscoveryServiceServer interface { // 1. Envoy starts up and if its can_healthcheck option in the static // bootstrap config is enabled, sends HealthCheckRequest to the management // server. It supplies its capabilities (which protocol it can health check // with, what zone it resides in, etc.). // 2. In response to (1), the management server designates this Envoy as a // healthchecker to health check a subset of all upstream hosts for a given // cluster (for example upstream Host 1 and Host 2). It streams // HealthCheckSpecifier messages with cluster related configuration for all // clusters this Envoy is designated to health check. Subsequent // HealthCheckSpecifier message will be sent on changes to: // a. Endpoints to health checks // b. Per cluster configuration change // 3. Envoy creates a health probe based on the HealthCheck config and sends // it to endpoint(ip:port) of Host 1 and 2. Based on the HealthCheck // configuration Envoy waits upon the arrival of the probe response and // looks at the content of the response to decide whether the endpoint is // healthy or not. If a response hasn't been received within the timeout // interval, the endpoint health status is considered TIMEOUT. // 4. Envoy reports results back in an EndpointHealthResponse message. // Envoy streams responses as often as the interval configured by the // management server in HealthCheckSpecifier. // 5. The management Server collects health statuses for all endpoints in the // cluster (for all clusters) and uses this information to construct // EndpointDiscoveryResponse messages. // 6. Once Envoy has a list of upstream endpoints to send traffic to, it load // balances traffic to them without additional health checking. It may // use inline healthcheck (i.e. consider endpoint UNHEALTHY if connection // failed to a particular endpoint to account for health status propagation // delay between HDS and EDS). // By default, can_healthcheck is true. If can_healthcheck is false, Cluster // configuration may not contain HealthCheck message. // TODO(htuch): How is can_healthcheck communicated to CDS to ensure the above // invariant? // TODO(htuch): Add @amb67's diagram. StreamHealthCheck(HealthDiscoveryService_StreamHealthCheckServer) error // TODO(htuch): Unlike the gRPC version, there is no stream-based binding of // request/response. Should we add an identifier to the HealthCheckSpecifier // to bind with the response? FetchHealthCheck(context.Context, *HealthCheckRequestOrEndpointHealthResponse) (*HealthCheckSpecifier, error) }
HealthDiscoveryServiceServer is the server API for HealthDiscoveryService service.
type HealthDiscoveryService_StreamHealthCheckClient ¶
type HealthDiscoveryService_StreamHealthCheckClient interface { Send(*HealthCheckRequestOrEndpointHealthResponse) error Recv() (*HealthCheckSpecifier, error) grpc.ClientStream }
type HealthDiscoveryService_StreamHealthCheckServer ¶
type HealthDiscoveryService_StreamHealthCheckServer interface { Send(*HealthCheckSpecifier) error Recv() (*HealthCheckRequestOrEndpointHealthResponse, error) grpc.ServerStream }
type LocalityEndpoints ¶
type LocalityEndpoints struct { Locality *v3.Locality `protobuf:"bytes,1,opt,name=locality,proto3" json:"locality,omitempty"` Endpoints []*v31.Endpoint `protobuf:"bytes,2,rep,name=endpoints,proto3" json:"endpoints,omitempty"` XXX_NoUnkeyedLiteral struct{} `json:"-"` XXX_unrecognized []byte `json:"-"` XXX_sizecache int32 `json:"-"` }
func (*LocalityEndpoints) Descriptor ¶
func (*LocalityEndpoints) Descriptor() ([]byte, []int)
func (*LocalityEndpoints) GetEndpoints ¶
func (m *LocalityEndpoints) GetEndpoints() []*v31.Endpoint
func (*LocalityEndpoints) GetLocality ¶
func (m *LocalityEndpoints) GetLocality() *v3.Locality
func (*LocalityEndpoints) Marshal ¶
func (m *LocalityEndpoints) Marshal() (dAtA []byte, err error)
func (*LocalityEndpoints) MarshalTo ¶
func (m *LocalityEndpoints) MarshalTo(dAtA []byte) (int, error)
func (*LocalityEndpoints) MarshalToSizedBuffer ¶
func (m *LocalityEndpoints) MarshalToSizedBuffer(dAtA []byte) (int, error)
func (*LocalityEndpoints) ProtoMessage ¶
func (*LocalityEndpoints) ProtoMessage()
func (*LocalityEndpoints) Reset ¶
func (m *LocalityEndpoints) Reset()
func (*LocalityEndpoints) Size ¶
func (m *LocalityEndpoints) Size() (n int)
func (*LocalityEndpoints) String ¶
func (m *LocalityEndpoints) String() string
func (*LocalityEndpoints) Unmarshal ¶
func (m *LocalityEndpoints) Unmarshal(dAtA []byte) error
func (*LocalityEndpoints) Validate ¶
func (m *LocalityEndpoints) Validate() error
Validate checks the field values on LocalityEndpoints with the rules defined in the proto definition for this message. If any rules are violated, an error is returned.
func (*LocalityEndpoints) XXX_DiscardUnknown ¶
func (m *LocalityEndpoints) XXX_DiscardUnknown()
func (*LocalityEndpoints) XXX_Marshal ¶
func (m *LocalityEndpoints) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)
func (*LocalityEndpoints) XXX_Merge ¶
func (m *LocalityEndpoints) XXX_Merge(src proto.Message)
func (*LocalityEndpoints) XXX_Size ¶
func (m *LocalityEndpoints) XXX_Size() int
func (*LocalityEndpoints) XXX_Unmarshal ¶
func (m *LocalityEndpoints) XXX_Unmarshal(b []byte) error
type LocalityEndpointsValidationError ¶
type LocalityEndpointsValidationError struct {
// contains filtered or unexported fields
}
LocalityEndpointsValidationError is the validation error returned by LocalityEndpoints.Validate if the designated constraints aren't met.
func (LocalityEndpointsValidationError) Cause ¶
func (e LocalityEndpointsValidationError) Cause() error
Cause function returns cause value.
func (LocalityEndpointsValidationError) Error ¶
func (e LocalityEndpointsValidationError) Error() string
Error satisfies the builtin error interface
func (LocalityEndpointsValidationError) ErrorName ¶
func (e LocalityEndpointsValidationError) ErrorName() string
ErrorName returns error name.
func (LocalityEndpointsValidationError) Field ¶
func (e LocalityEndpointsValidationError) Field() string
Field function returns field value.
func (LocalityEndpointsValidationError) Key ¶
func (e LocalityEndpointsValidationError) Key() bool
Key function returns key value.
func (LocalityEndpointsValidationError) Reason ¶
func (e LocalityEndpointsValidationError) Reason() string
Reason function returns reason value.
type UnimplementedHealthDiscoveryServiceServer ¶
type UnimplementedHealthDiscoveryServiceServer struct { }
UnimplementedHealthDiscoveryServiceServer can be embedded to have forward compatible implementations.
func (*UnimplementedHealthDiscoveryServiceServer) FetchHealthCheck ¶
func (*UnimplementedHealthDiscoveryServiceServer) FetchHealthCheck(ctx context.Context, req *HealthCheckRequestOrEndpointHealthResponse) (*HealthCheckSpecifier, error)
func (*UnimplementedHealthDiscoveryServiceServer) StreamHealthCheck ¶
func (*UnimplementedHealthDiscoveryServiceServer) StreamHealthCheck(srv HealthDiscoveryService_StreamHealthCheckServer) error