Documentation ¶
Index ¶
- type Allocator
- func (a *Allocator) Allocate(svc string, ports []Port, sharingKey, backendKey string) (net.IP, error)
- func (a *Allocator) AllocateFromPool(svc, poolName string, ports []Port, sharingKey, backendKey string) (net.IP, error)
- func (a *Allocator) Assign(svc string, ip net.IP, ports []Port, sharingKey, backendKey string) error
- func (a *Allocator) IP(svc string) net.IP
- func (a *Allocator) Pool(svc string) string
- func (a *Allocator) SetPools(pools map[string]*config.Pool) error
- func (a *Allocator) Unassign(svc string) bool
- type Port
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Allocator ¶
type Allocator struct {
// contains filtered or unexported fields
}
An Allocator tracks IP address pools and allocates addresses from them.
func (*Allocator) Allocate ¶
func (a *Allocator) Allocate(svc string, ports []Port, sharingKey, backendKey string) (net.IP, error)
Allocate assigns any available and assignable IP to service.
func (*Allocator) AllocateFromPool ¶
func (a *Allocator) AllocateFromPool(svc, poolName string, ports []Port, sharingKey, backendKey string) (net.IP, error)
AllocateFromPool assigns an available IP from pool to service.
func (*Allocator) Assign ¶
func (a *Allocator) Assign(svc string, ip net.IP, ports []Port, sharingKey, backendKey string) error
Assign assigns the requested ip to svc, if the assignment is permissible by sharingKey and backendKey.
func (*Allocator) IP ¶ added in v0.3.0
IP returns the IP address allocated to service, or nil if none are allocated.
func (*Allocator) Pool ¶ added in v0.3.0
Pool returns the pool from which service's IP was allocated. If service has no IP allocated, "" is returned.
Click to show internal directories.
Click to hide internal directories.