Documentation ¶
Index ¶
- Variables
- func EndReservedAddressed(cidr cnet.IPNet, r string) int
- func IP2Resutl(ip *cnet.IPNet, pool *v1alpha1.IPPool) *current.Result
- func StartReservedAddressed(cidr cnet.IPNet, r string) int
- type AutoAssignArgs
- type BlockUtilization
- type BrokenBlockUtilization
- type FixIpArgs
- type GetUtilizationArgs
- type IPAMClient
- func (c IPAMClient) AssignFixIps(handleID string, ipList, pools, blocks []string, info *PoolInfo) (*current.Result, error)
- func (c IPAMClient) AutoAssign(args AutoAssignArgs) (*current.Result, error)
- func (c IPAMClient) AutoAssignFromBlocks(args AutoAssignArgs) (*current.Result, error)
- func (c IPAMClient) AutoAssignFromPools(args AutoAssignArgs) (*current.Result, error)
- func (c IPAMClient) AutoGenerateBlocksFromPool(poolName string) error
- func (c IPAMClient) DeleteBlock(b *v1alpha1.IPAMBlock) error
- func (c IPAMClient) FixIpsFromBlock(args FixIpArgs) (*current.Result, error)
- func (c IPAMClient) FixIpsFromPool(args FixIpArgs) (*current.Result, error)
- func (c IPAMClient) GetAndFixBrokenBlocks(args GetUtilizationArgs, fix bool) ([]*PoolBlocksUtilization, error)
- func (c IPAMClient) GetPoolBlocksUtilization(args GetUtilizationArgs) ([]*PoolBlocksUtilization, error)
- func (c IPAMClient) GetUtilization(args GetUtilizationArgs) ([]*PoolUtilization, error)
- func (c IPAMClient) ListBlocks(pool string) ([]v1alpha1.IPAMBlock, error)
- func (c IPAMClient) ReleaseByHandle(handleID string) error
- func (c IPAMClient) Sync(stopCh <-chan struct{}) error
- type Interface
- type PoolAccessorInterface
- type PoolBlocksUtilization
- type PoolInfo
- type PoolUtilization
Constants ¶
This section is empty.
Variables ¶
Functions ¶
Types ¶
type AutoAssignArgs ¶
type AutoAssignArgs struct { HandleID string // A key/value mapping of metadata to store with the allocations. Attrs map[string]string Pool string // extarnal Pools []string Blocks []string Info *PoolInfo }
AutoAssignArgs defines the set of arguments for assigning one or more IP addresses.
type BlockUtilization ¶
type BrokenBlockUtilization ¶ added in v1.0.8
type FixIpArgs ¶
type FixIpArgs struct { AutoAssignArgs //annotation ips TarGetIpList []string }
FixIpArgs assign from config annotation
type GetUtilizationArgs ¶
type GetUtilizationArgs struct { // If specified, the pools whose utilization should be reported. Each string here // can be a pool name or CIDR. If not specified, this defaults to all pools. Pools []string }
GetUtilizationArgs defines the set of arguments for requesting IP utilization.
type IPAMClient ¶
type IPAMClient struct {
// contains filtered or unexported fields
}
IPAMClient implements Interface
func NewIPAMClient ¶
func NewIPAMClient(client versioned.Interface, typeStr string, informers informers.SharedInformerFactory, k8sInformers k8sinformers.SharedInformerFactory) IPAMClient
NewIPAMClient returns a new IPAMClient, which implements Interface.
func (IPAMClient) AssignFixIps ¶
func (c IPAMClient) AssignFixIps(handleID string, ipList, pools, blocks []string, info *PoolInfo) (*current.Result, error)
AssignFixIps fix ip form assign pool or block
func (IPAMClient) AutoAssign ¶
func (c IPAMClient) AutoAssign(args AutoAssignArgs) (*current.Result, error)
AutoAssign automatically assigns one or more IP addresses as specified by the provided AutoAssignArgs. AutoAssign returns the list of the assigned IPv4 addresses, and the list of the assigned IPv6 addresses.
In case of error, returns the IPs allocated so far along with the error.
func (IPAMClient) AutoAssignFromBlocks ¶
func (c IPAMClient) AutoAssignFromBlocks(args AutoAssignArgs) (*current.Result, error)
func (IPAMClient) AutoAssignFromPools ¶
func (c IPAMClient) AutoAssignFromPools(args AutoAssignArgs) (*current.Result, error)
func (IPAMClient) AutoGenerateBlocksFromPool ¶
func (c IPAMClient) AutoGenerateBlocksFromPool(poolName string) error
func (IPAMClient) DeleteBlock ¶
func (c IPAMClient) DeleteBlock(b *v1alpha1.IPAMBlock) error
DeleteBlock deletes the given block.
func (IPAMClient) FixIpsFromBlock ¶
func (c IPAMClient) FixIpsFromBlock(args FixIpArgs) (*current.Result, error)
FixIpsFromBlock fix ip form assign block
func (IPAMClient) FixIpsFromPool ¶
func (c IPAMClient) FixIpsFromPool(args FixIpArgs) (*current.Result, error)
FixIpsFromPool fix ip from assign pool
func (IPAMClient) GetAndFixBrokenBlocks ¶ added in v1.0.8
func (c IPAMClient) GetAndFixBrokenBlocks(args GetUtilizationArgs, fix bool) ([]*PoolBlocksUtilization, error)
func (IPAMClient) GetPoolBlocksUtilization ¶
func (c IPAMClient) GetPoolBlocksUtilization(args GetUtilizationArgs) ([]*PoolBlocksUtilization, error)
func (IPAMClient) GetUtilization ¶
func (c IPAMClient) GetUtilization(args GetUtilizationArgs) ([]*PoolUtilization, error)
GetUtilization returns IP utilization info for the specified pools, or for all pools.
func (IPAMClient) ListBlocks ¶
func (c IPAMClient) ListBlocks(pool string) ([]v1alpha1.IPAMBlock, error)
func (IPAMClient) ReleaseByHandle ¶
func (c IPAMClient) ReleaseByHandle(handleID string) error
ReleaseByHandle releases all IP addresses that have been assigned using the provided handle.
func (IPAMClient) Sync ¶ added in v1.0.4
func (c IPAMClient) Sync(stopCh <-chan struct{}) error
type Interface ¶
type Interface interface { // AutoAssign automatically assigns one or more IP addresses as specified by the // provided AutoAssignArgs. AutoAssign returns the list of the assigned IPv4 addresses, // and the list of the assigned IPv6 addresses in IPNet format. // The returned IPNet represents the allocation block from which the IP was allocated, // which is useful for dataplanes that need to know the subnet (such as Windows). // // In case of error, returns the IPs allocated so far along with the error. AutoAssign(args AutoAssignArgs) (*current.Result, error) AutoAssignFromPools(args AutoAssignArgs) (*current.Result, error) AutoAssignFromBlocks(args AutoAssignArgs) (*current.Result, error) AutoGenerateBlocksFromPool(pool string) error // ReleaseByHandle releases all IP addresses that have been assigned // using the provided handle. Returns an error if no addresses // are assigned with the given handle. ReleaseByHandle(handleID string) error GetUtilization(args GetUtilizationArgs) ([]*PoolUtilization, error) GetPoolBlocksUtilization(args GetUtilizationArgs) ([]*PoolBlocksUtilization, error) }
ipam.Interface has methods to perform IP address management.
type PoolAccessorInterface ¶
type PoolAccessorInterface interface {
// contains filtered or unexported methods
}
Interface used to access the enabled IPPools.
type PoolBlocksUtilization ¶
type PoolBlocksUtilization struct { // This pool's name. Name string // Number of possible IPs in this block. Capacity int // Number of available IPs in this block. Unallocated int Allocate int Reserved int // This blocks' util which belong to pool. Blocks []*BlockUtilization // This blocks' util which belong to pool. BrokenBlocks []*BrokenBlockUtilization BrokenBlockNames []string BrokenBlockFixSucceed []string }