Versions in this module Expand all Collapse all v1 v1.5.1 Apr 28, 2017 Changes in this version + var EndpointDialTimeout = []time.Duration + var ErrMissingEndpoints = errors.New("missing endpoints") + var ErrMissingServiceEntry = errors.New("missing service entry") + var ErrProxyOnLocalhost = fmt.Errorf("cannot proxy on localhost") + func CleanupLeftovers(ipt iptables.Interface) (encounteredError bool) + func IsProxyLocked(err error) bool + func ProxyTCP(in, out *net.TCPConn) + func TryConnectEndpoints(service proxy.ServicePortName, srcAddr net.Addr, protocol string, ...) (net.Conn, error) + type ClientCache struct + Clients map[string]net.Conn + type LoadBalancer interface + CleanupStaleStickySessions func(service proxy.ServicePortName) + NewService func(service proxy.ServicePortName, sessionAffinityType api.ServiceAffinity, ...) error + NextEndpoint func(service proxy.ServicePortName, srcAddr net.Addr, sessionAffinityReset bool) (string, error) + ServiceHasEndpoints func(service proxy.ServicePortName) bool + type LoadBalancerRR struct + func NewLoadBalancerRR() *LoadBalancerRR + func (lb *LoadBalancerRR) CleanupStaleStickySessions(svcPort proxy.ServicePortName) + func (lb *LoadBalancerRR) NewService(svcPort proxy.ServicePortName, affinityType api.ServiceAffinity, ...) error + func (lb *LoadBalancerRR) NextEndpoint(svcPort proxy.ServicePortName, srcAddr net.Addr, sessionAffinityReset bool) (string, error) + func (lb *LoadBalancerRR) OnEndpointsUpdate(allEndpoints []api.Endpoints) + func (lb *LoadBalancerRR) ServiceHasEndpoints(svcPort proxy.ServicePortName) bool + type PortAllocator interface + AllocateNext func() (int, error) + Release func(int) + type Proxier struct + func NewCustomProxier(loadBalancer LoadBalancer, listenIP net.IP, iptables iptables.Interface, ...) (*Proxier, error) + func NewProxier(loadBalancer LoadBalancer, listenIP net.IP, iptables iptables.Interface, ...) (*Proxier, error) + func (proxier *Proxier) OnServiceUpdate(services []api.Service) + func (proxier *Proxier) Sync() + func (proxier *Proxier) SyncLoop() + type ProxySocket interface + Addr func() net.Addr + Close func() error + ListenPort func() int + ProxyLoop func(service proxy.ServicePortName, info *ServiceInfo, loadBalancer LoadBalancer) + func NewProxySocket(protocol api.Protocol, ip net.IP, port int) (ProxySocket, error) + type ProxySocketFunc func(protocol api.Protocol, ip net.IP, port int) (ProxySocket, error) + type ServiceInfo struct + ActiveClients *ClientCache + ServiceRef api.ObjectReference + Timeout time.Duration + func (info *ServiceInfo) IsAlive() bool v1.5.0-alpha.1 Dec 29, 2016