Documentation
¶
Overview ¶
Package ipam provides a plugin for simple mesh IPAM. It also acts as a storage plugin and uses the leases tracked in the mesh database to pseudo-randomly assign IP addresses to nodes.
Index ¶
- type Config
- type Plugin
- func (p *Plugin) Allocate(ctx context.Context, r *v1.AllocateIPRequest) (*v1.AllocatedIP, error)
- func (p *Plugin) Close(ctx context.Context, req *emptypb.Empty) (*emptypb.Empty, error)
- func (p *Plugin) Configure(ctx context.Context, req *v1.PluginConfiguration) (*emptypb.Empty, error)
- func (p *Plugin) GetInfo(context.Context, *emptypb.Empty) (*v1.PluginInfo, error)
- func (p *Plugin) InjectQuerier(srv v1.Plugin_InjectQuerierServer) error
- func (p *Plugin) Release(context.Context, *v1.ReleaseIPRequest) (*emptypb.Empty, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Config ¶ added in v0.1.5
type Config struct { // StaticIPv4 is a map of node names to IPv4 addresses. StaticIPv4 map[string]string `mapstructure:"static-ipv4,omitempty"` // StaticIPv6 is a map of node names to IPv6 addresses. StaticIPv6 map[string]string `mapstructure:"static-ipv6,omitempty"` }
Config contains static address assignments for nodes.
type Plugin ¶
type Plugin struct { v1.UnimplementedPluginServer v1.UnimplementedIPAMPluginServer // contains filtered or unexported fields }
Plugin is the ipam plugin.
func (*Plugin) Allocate ¶
func (p *Plugin) Allocate(ctx context.Context, r *v1.AllocateIPRequest) (*v1.AllocatedIP, error)
func (*Plugin) InjectQuerier ¶
func (p *Plugin) InjectQuerier(srv v1.Plugin_InjectQuerierServer) error
Click to show internal directories.
Click to hide internal directories.