cnpdriver

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 10, 2017 License: Apache-2.0 Imports: 16 Imported by: 0

Documentation

Overview

The IPV6 L3 CNP implemetation ... coming soon

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewRemoteClientTxn

func NewRemoteClientTxn(microserviceLabel string, dbFactory func(string) keyval.ProtoBroker) linux.DataChangeDSL

NewRemoteClientTxn new vpp-agent remote client instance on top of key-val DB (ETCD) <microserviceLabel> that identifies a specific vpp-agent that needs to be configured <dbFactory> returns new instance of DataBroker for accessing key-val DB (ETCD)

func NewSfcCtlrL2CNPDriver

func NewSfcCtlrL2CNPDriver(name string, dbFactory func(string) keyval.ProtoBroker) *sfcCtlrL2CNPDriver

NewSfcCtlrL2CNPDriver creates new driver/mode for Native SFC Controller L2 Container Networking Policy <name> of the driver/plugin <dbFactory> returns new instance of DataBroker for accessing key-val DB (ETCD)

func NewSfcCtlrL3CNPDriver

func NewSfcCtlrL3CNPDriver(name string) *sfcCtlrL3CNPDriver

Init the driver/mode for Native SFC Controller L3 Container Networking Policy

Types

type SfcControllerCNPDriverAPI

type SfcControllerCNPDriverAPI interface {
	InitPlugin() error
	DeinitPlugin() error
	GetName() string
	ReconcileStart(vppEtcdLabels map[string]struct{}) error
	ReconcileEnd() error
	WireHostEntityToDestinationHostEntity(sh *controller.HostEntity, dh *controller.HostEntity) error
	WireHostEntityToExternalEntity(he *controller.HostEntity, ee *controller.ExternalEntity) error
	WireInternalsForHostEntity(he *controller.HostEntity) error
	WireInternalsForExternalEntity(ee *controller.ExternalEntity) error
	WireSfcEntity(sfc *controller.SfcEntity) error
	Dump()
}

Each Container Networking Policy (CNP) Driver implements this interface. As n/b api's are invoked, the sfc controller will call methods on this interface for the registered plugin to effect the inter-host, intra-host network connectivity. As well, as host-external entity wiring. sfc controller natively supports its own container networking policy driver for both l3 and l2 overlays.

func RegisterCNPDriverPlugin

func RegisterCNPDriverPlugin(name string, dbFactory func(string) keyval.ProtoBroker) (SfcControllerCNPDriverAPI, error)

Register the container networking policy driver mode: example: sfcctlr layer 2, ...

Jump to

Keyboard shortcuts

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