f5

package
v1.4.0-alpha.0 Latest Latest
Warning

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

Go to latest
Published: Sep 16, 2016 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// Default F5 partition path to use for syncing route config.
	F5DefaultPartitionPath = "/Common"
)

Variables

This section is empty.

Functions

This section is empty.

Types

type F5Error

type F5Error struct {
	// contains filtered or unexported fields
}

F5Error represents an error resulting from a request to the F5 BIG-IP iControl REST interface.

func (F5Error) Error

func (err F5Error) Error() string

Error implements the error interface.

type F5Plugin

type F5Plugin struct {
	// F5Client is the object that represents the F5 BIG-IP host, holds state,
	// and provides an interface to manipulate F5 BIG-IP.
	F5Client *f5LTM
}

F5Plugin holds state for the f5 plugin.

func NewF5Plugin

func NewF5Plugin(cfg F5PluginConfig) (*F5Plugin, error)

NewF5Plugin makes a new f5 router plugin.

func (*F5Plugin) HandleEndpoints

func (p *F5Plugin) HandleEndpoints(eventType watch.EventType,
	endpoints *kapi.Endpoints) error

HandleEndpoints processes watch events on the Endpoints resource and creates and deletes pools and pool members in response.

func (*F5Plugin) HandleNamespaces

func (p *F5Plugin) HandleNamespaces(namespaces sets.String) error

func (*F5Plugin) HandleRoute

func (p *F5Plugin) HandleRoute(eventType watch.EventType,
	route *routeapi.Route) error

HandleRoute processes watch events on the Route resource and creates and deletes policy rules in response.

func (*F5Plugin) SetLastSyncProcessed added in v1.3.0

func (p *F5Plugin) SetLastSyncProcessed(processed bool) error

No-op since f5 configuration can be updated piecemeal

type F5PluginConfig

type F5PluginConfig struct {
	// Host specifies the hostname or IP address of the F5 BIG-IP host.
	Host string

	// Username specifies the username with the plugin should authenticate
	// with the F5 BIG-IP host.
	Username string

	// Password specifies the password with which the plugin should
	// authenticate with F5 BIG-IP.
	Password string

	// HttpVserver specifies the name of the vserver object in F5 BIG-IP that the
	// plugin will configure for HTTP connections.
	HttpVserver string

	// HttpsVserver specifies the name of the vserver object in F5 BIG-IP that the
	// plugin will configure for HTTPS connections.
	HttpsVserver string

	// PrivateKey specifies the path to the SSH private-key file for
	// authenticating with F5 BIG-IP.  The file must exist with this pathname
	// inside the F5 router's filesystem namespace.  The F5 router requires this
	// key to copy certificates and keys to the F5 BIG-IP host.
	PrivateKey string

	// Insecure specifies whether the F5 plugin should perform strict certificate
	// validation for connections to the F5 BIG-IP host.
	Insecure bool

	// PartitionPath specifies the F5 partition path to use. This is used
	// to create an access control boundary for users and applications.
	PartitionPath string
}

F5PluginConfig holds configuration for the f5 plugin.

Jump to

Keyboard shortcuts

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