provisioner

package
v0.0.0-...-24ed54c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 20, 2020 License: Apache-2.0 Imports: 10 Imported by: 0

Documentation

Overview

provisioner contains the low level provisioners for handling the IP provisioning.

Currently there are three strategies defined:

  • 'aws' - the operator will call AWS for random IP assignement.
  • 'ocp-static' - the operator will manage which IPs are configured on which node.
  • 'ocp-dynamic' - the operator will add the CIDR range to all matching hosts and OpenShift will manage the host IP networking.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type EgressIPProvisioner

type EgressIPProvisioner interface {
	// FindHostForNewIP searches for a host in the failure domain to add an IP to.
	// Will return the hostname or an error.
	FindHostForNewIP(ctx context.Context, failureDomain string) (string, error)
	// AddSpecifiedIP adds a predefined IP to the specified host.
	// It will return an error or nil.
	AddSpecifiedIP(ctx context.Context, ip *net.IP, hostName string) error
	// AddRandomIP adds a random IP to the specified host.
	// It will return the IP or the error.
	AddRandomIP(ctx context.Context, hostName string) (*net.IP, error)
	// RemoveIP will remove the given IP from the specified host.
	// It will return an error or nil.
	RemoveIP(ctx context.Context, ip *net.IP, hostName string) error
	// MoveIP will move the specified IP from oldHost to newHost.
	// It will return an error or nil.
	MoveIP(ctx context.Context, ip *net.IP, oldHostName string, newHostName string) error
	// CheckIP will check if the specified IP is assigned on the specified host.
	// it will return an error or nil.
	CheckIP(ctx context.Context, ip *net.IP, hostName string) error
	// AssignCIDR will assign the cidr range to a host.
	// Basically it is only needed by the provisioner 'ocp-dynamic'. The other provisioners will be no-ops.
	AssignCIDR(ctx context.Context, hostName string) error
}

EgressIPProvisioner is the low level IP manager for

func NewEgressIPProvisioner

func NewEgressIPProvisioner(logger logr.Logger) (*EgressIPProvisioner, error)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL