metadata

package
v0.0.0-...-6312b01 Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

View Source
const AciPodAnnotation = "opflex.cisco.com/aci-pod"
View Source
const CompEgAnnotation = "opflex.cisco.com/computed-endpoint-group"

Computed endpoint group for pod

View Source
const CompSgAnnotation = "opflex.cisco.com/computed-security-group"

Computed security groups for pod

View Source
const EgAnnotation = "opflex.cisco.com/endpoint-group"

Annotation for endpoint group designation for pod, deployment, etc.

View Source
const LbIpAnnotation = "opflex.cisco.com/lb-ipam-ips"

Static lb ip annotations

View Source
const MultusNetAnnotation = "v1.multus-cni.io/default-network"

Network attachment definition annotation for pod requesting multus-cni

View Source
const NetAttDefAnnotation = "k8s.v1.cni.cncf.io/networks"

Network attachment definition annotation for pod

View Source
const NodeAciPodAnnotation = "opflex.cisco.com/node-aci-pod"
View Source
const PodNetworkRangeAnnotation = "opflex.cisco.com/pod-network-ranges"

List of IP address ranges for use by the pod network

View Source
const QpAnnotation = "opflex.cisco.com/qospolicy"

Annotation for qospolicy group designation for pod,deployment, etc.

View Source
const ServiceContractScopeAnnotation = "opflex.cisco.com/ext_service_contract_scope"

Annotation to set service contract scope values. If unset or "", defaults to "context"(VRF). Other valid values: "context", "tenant", and "global"

View Source
const ServiceEpAnnotation = "opflex.cisco.com/service-endpoint"

Service endpoint annotation

View Source
const ServiceGraphNameAnnotation = "opflex.cisco.com/service-graph-name"

Custom service graph annotation

View Source
const SgAnnotation = "opflex.cisco.com/security-group"

Annotation for security group designation for pod, deployment, etc.

Variables

This section is empty.

Functions

func CheckMetadata

func CheckMetadata(datadir, network string) (int64, error)

func ClearMetadata

func ClearMetadata(datadir, network, id string) error

func GetIfaceNames

func GetIfaceNames(hostVethName string) (string, string)

func LoadMetadata

func LoadMetadata(datadir string, network string,
	mdMap *map[string]map[string]*ContainerMetadata, chainedMode bool) error

func RecordMetadata

func RecordMetadata(datadir, network string, data *ContainerMetadata) error

Types

type ContainerId

type ContainerId struct {
	Namespace string `json:"namespace,omitempty"`
	Pod       string `json:"pod,omitempty"`
	ContId    string `json:"cont-id,omitempty"`
	DeviceId  string
}

type ContainerIfaceIP

type ContainerIfaceIP struct {
	Address net.IPNet `json:"address"`
	Gateway net.IP    `json:"gateway,omitempty"`
}

type ContainerIfaceMd

type ContainerIfaceMd struct {
	HostVethName string             `json:"host-veth-name,omitempty"`
	Name         string             `json:"name"`
	Mac          string             `json:"mac,omitempty"`
	Sandbox      string             `json:"sandbox,omitempty"`
	IPs          []ContainerIfaceIP `json:"ips"`
	VfNetDevice  string
}

type ContainerMetadata

type ContainerMetadata struct {
	Id      ContainerId              `json:"id,omitempty"`
	Ifaces  []*ContainerIfaceMd      `json:"interfaces,omitempty"`
	Network ContainerNetworkMetadata `json:"network,omitempty"`
}

func GetMetadata

func GetMetadata(datadir, network, id string) (*ContainerMetadata, error)

type ContainerNetworkMetadata

type ContainerNetworkMetadata struct {
	NetworkName string `json:"network-name,omitempty"`
	ChainedMode bool   `json:"chained-mode"`
	VFName      string `json:"vfName,omitempty"`
	PFName      string `json:"pfName,omitempty"`
}

type NetIps

type NetIps struct {
	V4 []ipam.IpRange `json:"V4,omitempty"`
	V6 []ipam.IpRange `json:"V6,omitempty"`
}

annotation type for IPs allocation chunks

type OpflexGroup

type OpflexGroup struct {
	Tenant      string `json:"tenant,omitempty"`
	PolicySpace string `json:"policy-space,omitempty"`
	AppProfile  string `json:"app-profile,omitempty"`
	Name        string `json:"name,omitempty"`
}

An opflex security or endpoint group Tenant is an alias for policy space and will override policyspace If AppProfile is not set the Name is interpreted as AppProfile|Name

type ServiceEndpoint

type ServiceEndpoint struct {
	HealthGroupDn string `json:"-"`
	Mac           string `json:"mac,omitempty"`
	Ipv4          net.IP `json:"ipv4,omitempty"`
	Ipv6          net.IP `json:"ipv6,omitempty"`
}

annotation type for service endpoint information

Jump to

Keyboard shortcuts

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