Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DNSPersistence ¶
type DNSPersistence struct {
// contains filtered or unexported fields
}
func NewDNSPersistence ¶
func NewDNSPersistence(manager config_manager.ConfigManager) *DNSPersistence
func (*DNSPersistence) Get ¶
func (p *DNSPersistence) Get() (VIPList, error)
func (*DNSPersistence) Set ¶
func (p *DNSPersistence) Set(viplist VIPList) error
type DNSResolver ¶
type DNSResolver interface { GetDomain() string SetVIPs(list VIPList) ForwardLookup(service string) (string, error) ForwardLookupFQDN(name string) (string, error) ReverseLookup(ip string) (string, error) }
func NewDNSResolver ¶
func NewDNSResolver(domain string) DNSResolver
type DNSServer ¶
func NewDNSServer ¶
func NewDNSServer(port uint32, resolver DNSResolver) DNSServer
type IPAM ¶
func NewSimpleIPAM ¶
type SimpleDNSServer ¶
type SimpleDNSServer struct {
// contains filtered or unexported fields
}
func (*SimpleDNSServer) NeedLeaderElection ¶
func (d *SimpleDNSServer) NeedLeaderElection() bool
func (*SimpleDNSServer) Start ¶
func (d *SimpleDNSServer) Start(stop <-chan struct{}) error
type SimpleIPAM ¶
func (*SimpleIPAM) AllocateIP ¶
func (i *SimpleIPAM) AllocateIP() (string, error)
func (*SimpleIPAM) FreeIP ¶
func (i *SimpleIPAM) FreeIP(ip string) error
type VIPsAllocator ¶
VIPsAllocator takes service tags in dataplanes and allocate VIP for every unique service. It is only run by CP leader.
func NewVIPsAllocator ¶
func NewVIPsAllocator(rm manager.ReadOnlyResourceManager, persistence *DNSPersistence, ipam IPAM, resolver DNSResolver) (VIPsAllocator, error)
type VIPsSynchronizer ¶
VIPsSynchronizer takes allocated VIPs by VIPsAllocator and updates DNSResolver.
func NewVIPsSynchronizer ¶
func NewVIPsSynchronizer(rm manager.ReadOnlyResourceManager, resolver DNSResolver, persistence *DNSPersistence, leadInfo component.LeaderInfo) (VIPsSynchronizer, error)
Source Files ¶
Click to show internal directories.
Click to hide internal directories.