Documentation ¶
Index ¶
- type Allocator
- func (a *Allocator) Allocate(svc string, isIPv6 bool, ports []Port, sharingKey, backendKey string) (net.IP, error)
- func (a *Allocator) AllocateFromPool(svc string, isIPv6 bool, poolName string, ports []Port, ...) (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, isIPv6 bool, 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 string, isIPv6 bool, 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.