Documentation ¶
Index ¶
- Constants
- func DnsNameToKumaCompliant(name string) (string, error)
- func ForwardLookup(vips vips.List, service string) (string, error)
- func IsAddressAlreadyAllocated(err error) bool
- func NewVIPsSynchronizer(resolver resolver.DNSResolver, rm manager.ReadOnlyResourceManager, ...) component.Component
- func Setup(rt runtime.Runtime) error
- func UpdateMeshedVIPs(global, meshed vips.List, ipam IPAM, serviceSet ServiceSet) (updated bool, errs error)
- func VIPOutbounds(resourceKey model.ResourceKey, dataplanes []*core_mesh.DataplaneResource, ...) []*mesh_proto.Dataplane_Networking_Outbound
- type DNSServer
- type IPAM
- type NameModifier
- type ServiceSet
- type SimpleDNSServer
- type SimpleIPAM
- type VIPsAllocator
Constants ¶
View Source
const VIPListenPort = uint32(80)
Variables ¶
This section is empty.
Functions ¶
func DnsNameToKumaCompliant ¶
func NewVIPsSynchronizer ¶
func NewVIPsSynchronizer(resolver resolver.DNSResolver, rm manager.ReadOnlyResourceManager, configManager config_manager.ConfigManager, leadInfo component.LeaderInfo) component.Component
func UpdateMeshedVIPs ¶
func VIPOutbounds ¶
func VIPOutbounds( resourceKey model.ResourceKey, dataplanes []*core_mesh.DataplaneResource, zoneIngresses []*core_mesh.ZoneIngressResource, vips vips.List, externalServices []*core_mesh.ExternalServiceResource, ) []*mesh_proto.Dataplane_Networking_Outbound
Types ¶
type DNSServer ¶
func NewDNSServer ¶
func NewDNSServer(port uint32, resolver resolver.DNSResolver, metrics core_metrics.Metrics, modifier NameModifier) (DNSServer, error)
type IPAM ¶
type IPAM interface { AllocateIP() (string, error) FreeIP(ip string) error ReserveIP(ip string) error }
func NewSimpleIPAM ¶
type NameModifier ¶
type ServiceSet ¶
func BuildServiceSet ¶
func BuildServiceSet(rm manager.ReadOnlyResourceManager, mesh string) (ServiceSet, error)
func (ServiceSet) ToArray ¶
func (s ServiceSet) ToArray() (services []string)
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
func (*SimpleIPAM) ReserveIP ¶
func (i *SimpleIPAM) ReserveIP(ip string) error
type VIPsAllocator ¶
type VIPsAllocator struct {
// contains filtered or unexported fields
}
func NewVIPsAllocator ¶
func NewVIPsAllocator(rm manager.ReadOnlyResourceManager, configManager config_manager.ConfigManager, cidr string, resolver resolver.DNSResolver) (*VIPsAllocator, error)
NewVIPsAllocator creates new object of VIPsAllocator. You can either call method CreateOrUpdateVIPConfig manually or start VIPsAllocator as a component. In the latter scenario it will call CreateOrUpdateVIPConfig every 'tickInterval' for all meshes in the store.
func (*VIPsAllocator) CreateOrUpdateVIPConfig ¶
func (d *VIPsAllocator) CreateOrUpdateVIPConfig(mesh string) error
func (*VIPsAllocator) CreateOrUpdateVIPConfigs ¶
func (d *VIPsAllocator) CreateOrUpdateVIPConfigs() error
func (*VIPsAllocator) NeedLeaderElection ¶
func (d *VIPsAllocator) NeedLeaderElection() bool
func (*VIPsAllocator) Start ¶
func (d *VIPsAllocator) Start(stop <-chan struct{}) error
Source Files ¶
Click to show internal directories.
Click to hide internal directories.