Consistent hashing to a subset of nodes. It works like consistent hash,
but instead of mapping to a single node, we map to a subset of nodes.
This commit is contained in:
parent
29118750be
commit
60b983503b
17 changed files with 434 additions and 17 deletions
|
|
@ -93,7 +93,7 @@ type Backend struct {
|
|||
// StickySessionAffinitySession contains the StickyConfig object with stickyness configuration
|
||||
SessionAffinity SessionAffinityConfig `json:"sessionAffinityConfig"`
|
||||
// Consistent hashing by NGINX variable
|
||||
UpstreamHashBy string `json:"upstream-hash-by,omitempty"`
|
||||
UpstreamHashBy UpstreamHashByConfig `json:"upstreamHashByConfig,omitempty"`
|
||||
// LB algorithm configuration per ingress
|
||||
LoadBalancing string `json:"load-balance,omitempty"`
|
||||
// Denotes if a backend has no server. The backend instead shares a server with another backend and acts as an
|
||||
|
|
@ -150,6 +150,13 @@ type CookieSessionAffinity struct {
|
|||
Path string `json:"path,omitempty"`
|
||||
}
|
||||
|
||||
// UpstreamHashByConfig described setting from the upstream-hash-by* annotations.
|
||||
type UpstreamHashByConfig struct {
|
||||
UpstreamHashBy string `json:"upstream-hash-by,omitempty"`
|
||||
UpstreamHashBySubset bool `json:"upstream-hash-by-subset,omitempty"`
|
||||
UpstreamHashBySubsetSize int `json:"upstream-hash-by-subset-size,omitempty"`
|
||||
}
|
||||
|
||||
// Endpoint describes a kubernetes endpoint in a backend
|
||||
// +k8s:deepcopy-gen=true
|
||||
type Endpoint struct {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue