Documentation ¶
Index ¶
- Constants
- Variables
- func FullDatabaseModel() (model.ClientDBModel, error)
- func Schema() ovsdb.DatabaseSchema
- type AddressSet
- type BFD
- type BFDStatus
- type Chassis
- type ChassisPrivate
- type ChassisTemplateVar
- type Connection
- type ControllerEvent
- type ControllerEventEventType
- type DHCPOptions
- type DHCPOptionsType
- type DHCPv6Options
- type DHCPv6OptionsType
- type DNS
- type DatapathBinding
- type Encap
- type EncapType
- type FDB
- type GatewayChassis
- type HAChassis
- type HAChassisGroup
- type IGMPGroup
- type IPMulticast
- type LoadBalancer
- type LoadBalancerProtocol
- type LogicalDPGroup
- type LogicalFlow
- type LogicalFlowPipeline
- type MACBinding
- type Meter
- type MeterBand
- type MeterBandAction
- type MeterUnit
- type Mirror
- type MirrorFilter
- type MirrorType
- type MulticastGroup
- type PortBinding
- type PortGroup
- type RBACPermission
- type RBACRole
- type SBGlobal
- type SSL
- type ServiceMonitor
- type ServiceMonitorProtocol
- type ServiceMonitorStatus
- type StaticMACBinding
Constants ¶
const AddressSetTable = "Address_Set"
const BFDTable = "BFD"
const ChassisPrivateTable = "Chassis_Private"
const ChassisTable = "Chassis"
const ChassisTemplateVarTable = "Chassis_Template_Var"
const ConnectionTable = "Connection"
const ControllerEventTable = "Controller_Event"
const DHCPOptionsTable = "DHCP_Options"
const DHCPv6OptionsTable = "DHCPv6_Options"
const DNSTable = "DNS"
const DatapathBindingTable = "Datapath_Binding"
const EncapTable = "Encap"
const FDBTable = "FDB"
const GatewayChassisTable = "Gateway_Chassis"
const HAChassisGroupTable = "HA_Chassis_Group"
const HAChassisTable = "HA_Chassis"
const IGMPGroupTable = "IGMP_Group"
const IPMulticastTable = "IP_Multicast"
const LoadBalancerTable = "Load_Balancer"
const LogicalDPGroupTable = "Logical_DP_Group"
const LogicalFlowTable = "Logical_Flow"
const MACBindingTable = "MAC_Binding"
const MeterBandTable = "Meter_Band"
const MeterTable = "Meter"
const MirrorTable = "Mirror"
const MulticastGroupTable = "Multicast_Group"
const PortBindingTable = "Port_Binding"
const PortGroupTable = "Port_Group"
const RBACPermissionTable = "RBAC_Permission"
const RBACRoleTable = "RBAC_Role"
const SBGlobalTable = "SB_Global"
const SSLTable = "SSL"
const ServiceMonitorTable = "Service_Monitor"
const StaticMACBindingTable = "Static_MAC_Binding"
Variables ¶
var ( MirrorFilterFromLport MirrorFilter = "from-lport" MirrorFilterToLport MirrorFilter = "to-lport" MirrorFilterBoth MirrorFilter = "both" MirrorTypeGre MirrorType = "gre" MirrorTypeErspan MirrorType = "erspan" MirrorTypeLocal MirrorType = "local" )
var ( ServiceMonitorProtocolTCP ServiceMonitorProtocol = "tcp" ServiceMonitorProtocolUDP ServiceMonitorProtocol = "udp" ServiceMonitorStatusOnline ServiceMonitorStatus = "online" ServiceMonitorStatusOffline ServiceMonitorStatus = "offline" ServiceMonitorStatusError ServiceMonitorStatus = "error" )
Functions ¶
func FullDatabaseModel ¶
func FullDatabaseModel() (model.ClientDBModel, error)
FullDatabaseModel returns the DatabaseModel object to be used in libovsdb
func Schema ¶
func Schema() ovsdb.DatabaseSchema
Types ¶
type AddressSet ¶
type AddressSet struct { UUID string `ovsdb:"_uuid"` Addresses []string `ovsdb:"addresses"` Name string `ovsdb:"name"` }
AddressSet defines an object in Address_Set table
type BFD ¶
type BFD struct { UUID string `ovsdb:"_uuid"` ChassisName string `ovsdb:"chassis_name"` DetectMult int `ovsdb:"detect_mult"` Disc int `ovsdb:"disc"` DstIP string `ovsdb:"dst_ip"` ExternalIDs map[string]string `ovsdb:"external_ids"` LogicalPort string `ovsdb:"logical_port"` MinRx int `ovsdb:"min_rx"` MinTx int `ovsdb:"min_tx"` Options map[string]string `ovsdb:"options"` SrcPort int `ovsdb:"src_port"` Status BFDStatus `ovsdb:"status"` }
BFD defines an object in BFD table
type Chassis ¶
type Chassis struct { UUID string `ovsdb:"_uuid"` Encaps []string `ovsdb:"encaps"` ExternalIDs map[string]string `ovsdb:"external_ids"` Hostname string `ovsdb:"hostname"` Name string `ovsdb:"name"` NbCfg int `ovsdb:"nb_cfg"` OtherConfig map[string]string `ovsdb:"other_config"` TransportZones []string `ovsdb:"transport_zones"` VtepLogicalSwitches []string `ovsdb:"vtep_logical_switches"` }
Chassis defines an object in Chassis table
type ChassisPrivate ¶
type ChassisPrivate struct { UUID string `ovsdb:"_uuid"` Chassis *string `ovsdb:"chassis"` ExternalIDs map[string]string `ovsdb:"external_ids"` Name string `ovsdb:"name"` NbCfg int `ovsdb:"nb_cfg"` NbCfgTimestamp int `ovsdb:"nb_cfg_timestamp"` }
ChassisPrivate defines an object in Chassis_Private table
type ChassisTemplateVar ¶
type ChassisTemplateVar struct { UUID string `ovsdb:"_uuid"` Chassis string `ovsdb:"chassis"` Variables map[string]string `ovsdb:"variables"` }
ChassisTemplateVar defines an object in Chassis_Template_Var table
type Connection ¶
type Connection struct { UUID string `ovsdb:"_uuid"` ExternalIDs map[string]string `ovsdb:"external_ids"` InactivityProbe *int `ovsdb:"inactivity_probe"` IsConnected bool `ovsdb:"is_connected"` MaxBackoff *int `ovsdb:"max_backoff"` OtherConfig map[string]string `ovsdb:"other_config"` ReadOnly bool `ovsdb:"read_only"` Role string `ovsdb:"role"` Status map[string]string `ovsdb:"status"` Target string `ovsdb:"target"` }
Connection defines an object in Connection table
type ControllerEvent ¶
type ControllerEvent struct { UUID string `ovsdb:"_uuid"` Chassis *string `ovsdb:"chassis"` EventInfo map[string]string `ovsdb:"event_info"` EventType ControllerEventEventType `ovsdb:"event_type"` SeqNum int `ovsdb:"seq_num"` }
ControllerEvent defines an object in Controller_Event table
type ControllerEventEventType ¶
type ControllerEventEventType = string
var ControllerEventEventTypeEmptyLbBackends ControllerEventEventType = "empty_lb_backends"
type DHCPOptions ¶
type DHCPOptions struct { UUID string `ovsdb:"_uuid"` Code int `ovsdb:"code"` Name string `ovsdb:"name"` Type DHCPOptionsType `ovsdb:"type"` }
DHCPOptions defines an object in DHCP_Options table
type DHCPOptionsType ¶
type DHCPOptionsType = string
var ( DHCPOptionsTypeBool DHCPOptionsType = "bool" DHCPOptionsTypeUint8 DHCPOptionsType = "uint8" DHCPOptionsTypeUint16 DHCPOptionsType = "uint16" DHCPOptionsTypeUint32 DHCPOptionsType = "uint32" DHCPOptionsTypeIpv4 DHCPOptionsType = "ipv4" DHCPOptionsTypeStaticRoutes DHCPOptionsType = "static_routes" DHCPOptionsTypeStr DHCPOptionsType = "str" DHCPOptionsTypeHostID DHCPOptionsType = "host_id" DHCPOptionsTypeDomains DHCPOptionsType = "domains" )
type DHCPv6Options ¶
type DHCPv6Options struct { UUID string `ovsdb:"_uuid"` Code int `ovsdb:"code"` Name string `ovsdb:"name"` Type DHCPv6OptionsType `ovsdb:"type"` }
DHCPv6Options defines an object in DHCPv6_Options table
type DHCPv6OptionsType ¶
type DHCPv6OptionsType = string
var ( DHCPv6OptionsTypeIpv6 DHCPv6OptionsType = "ipv6" DHCPv6OptionsTypeStr DHCPv6OptionsType = "str" DHCPv6OptionsTypeMAC DHCPv6OptionsType = "mac" DHCPv6OptionsTypeDomain DHCPv6OptionsType = "domain" )
type DNS ¶
type DNS struct { UUID string `ovsdb:"_uuid"` Datapaths []string `ovsdb:"datapaths"` ExternalIDs map[string]string `ovsdb:"external_ids"` Options map[string]string `ovsdb:"options"` Records map[string]string `ovsdb:"records"` }
DNS defines an object in DNS table
type DatapathBinding ¶
type DatapathBinding struct { UUID string `ovsdb:"_uuid"` ExternalIDs map[string]string `ovsdb:"external_ids"` LoadBalancers []string `ovsdb:"load_balancers"` TunnelKey int `ovsdb:"tunnel_key"` }
DatapathBinding defines an object in Datapath_Binding table
type Encap ¶
type Encap struct { UUID string `ovsdb:"_uuid"` ChassisName string `ovsdb:"chassis_name"` IP string `ovsdb:"ip"` Options map[string]string `ovsdb:"options"` Type EncapType `ovsdb:"type"` }
Encap defines an object in Encap table
type FDB ¶
type FDB struct { UUID string `ovsdb:"_uuid"` DpKey int `ovsdb:"dp_key"` MAC string `ovsdb:"mac"` PortKey int `ovsdb:"port_key"` Timestamp int `ovsdb:"timestamp"` }
FDB defines an object in FDB table
type GatewayChassis ¶
type GatewayChassis struct { UUID string `ovsdb:"_uuid"` Chassis *string `ovsdb:"chassis"` ExternalIDs map[string]string `ovsdb:"external_ids"` Name string `ovsdb:"name"` Options map[string]string `ovsdb:"options"` Priority int `ovsdb:"priority"` }
GatewayChassis defines an object in Gateway_Chassis table
type HAChassis ¶
type HAChassis struct { UUID string `ovsdb:"_uuid"` Chassis *string `ovsdb:"chassis"` ExternalIDs map[string]string `ovsdb:"external_ids"` Priority int `ovsdb:"priority"` }
HAChassis defines an object in HA_Chassis table
type HAChassisGroup ¶
type HAChassisGroup struct { UUID string `ovsdb:"_uuid"` ExternalIDs map[string]string `ovsdb:"external_ids"` HaChassis []string `ovsdb:"ha_chassis"` Name string `ovsdb:"name"` RefChassis []string `ovsdb:"ref_chassis"` }
HAChassisGroup defines an object in HA_Chassis_Group table
type IGMPGroup ¶
type IGMPGroup struct { UUID string `ovsdb:"_uuid"` Address string `ovsdb:"address"` Chassis *string `ovsdb:"chassis"` ChassisName string `ovsdb:"chassis_name"` Datapath *string `ovsdb:"datapath"` Ports []string `ovsdb:"ports"` }
IGMPGroup defines an object in IGMP_Group table
type IPMulticast ¶
type IPMulticast struct { UUID string `ovsdb:"_uuid"` Datapath string `ovsdb:"datapath"` Enabled *bool `ovsdb:"enabled"` EthSrc string `ovsdb:"eth_src"` IdleTimeout *int `ovsdb:"idle_timeout"` Ip4Src string `ovsdb:"ip4_src"` Ip6Src string `ovsdb:"ip6_src"` Querier *bool `ovsdb:"querier"` QueryInterval *int `ovsdb:"query_interval"` QueryMaxResp *int `ovsdb:"query_max_resp"` SeqNo int `ovsdb:"seq_no"` TableSize *int `ovsdb:"table_size"` }
IPMulticast defines an object in IP_Multicast table
type LoadBalancer ¶
type LoadBalancer struct { UUID string `ovsdb:"_uuid"` DatapathGroup *string `ovsdb:"datapath_group"` Datapaths []string `ovsdb:"datapaths"` ExternalIDs map[string]string `ovsdb:"external_ids"` LrDatapathGroup *string `ovsdb:"lr_datapath_group"` LsDatapathGroup *string `ovsdb:"ls_datapath_group"` Name string `ovsdb:"name"` Options map[string]string `ovsdb:"options"` Protocol *LoadBalancerProtocol `ovsdb:"protocol"` Vips map[string]string `ovsdb:"vips"` }
LoadBalancer defines an object in Load_Balancer table
type LoadBalancerProtocol ¶
type LoadBalancerProtocol = string
var ( LoadBalancerProtocolTCP LoadBalancerProtocol = "tcp" LoadBalancerProtocolUDP LoadBalancerProtocol = "udp" LoadBalancerProtocolSCTP LoadBalancerProtocol = "sctp" )
type LogicalDPGroup ¶
LogicalDPGroup defines an object in Logical_DP_Group table
type LogicalFlow ¶
type LogicalFlow struct { UUID string `ovsdb:"_uuid"` Actions string `ovsdb:"actions"` ControllerMeter *string `ovsdb:"controller_meter"` ExternalIDs map[string]string `ovsdb:"external_ids"` LogicalDatapath *string `ovsdb:"logical_datapath"` LogicalDpGroup *string `ovsdb:"logical_dp_group"` Match string `ovsdb:"match"` Pipeline LogicalFlowPipeline `ovsdb:"pipeline"` Priority int `ovsdb:"priority"` TableID int `ovsdb:"table_id"` Tags map[string]string `ovsdb:"tags"` }
LogicalFlow defines an object in Logical_Flow table
type LogicalFlowPipeline ¶
type LogicalFlowPipeline = string
var ( LogicalFlowPipelineIngress LogicalFlowPipeline = "ingress" LogicalFlowPipelineEgress LogicalFlowPipeline = "egress" )
type MACBinding ¶
type MACBinding struct { UUID string `ovsdb:"_uuid"` Datapath string `ovsdb:"datapath"` IP string `ovsdb:"ip"` LogicalPort string `ovsdb:"logical_port"` MAC string `ovsdb:"mac"` Timestamp int `ovsdb:"timestamp"` }
MACBinding defines an object in MAC_Binding table
type Meter ¶
type Meter struct { UUID string `ovsdb:"_uuid"` Bands []string `ovsdb:"bands"` Name string `ovsdb:"name"` Unit MeterUnit `ovsdb:"unit"` }
Meter defines an object in Meter table
type MeterBand ¶
type MeterBand struct { UUID string `ovsdb:"_uuid"` Action MeterBandAction `ovsdb:"action"` BurstSize int `ovsdb:"burst_size"` Rate int `ovsdb:"rate"` }
MeterBand defines an object in Meter_Band table
type MeterBandAction ¶
type MeterBandAction = string
var MeterBandActionDrop MeterBandAction = "drop"
type Mirror ¶
type Mirror struct { UUID string `ovsdb:"_uuid"` ExternalIDs map[string]string `ovsdb:"external_ids"` Filter MirrorFilter `ovsdb:"filter"` Index int `ovsdb:"index"` Name string `ovsdb:"name"` Sink string `ovsdb:"sink"` Type MirrorType `ovsdb:"type"` }
Mirror defines an object in Mirror table
type MirrorFilter ¶
type MirrorFilter = string
type MirrorType ¶
type MirrorType = string
type MulticastGroup ¶
type MulticastGroup struct { UUID string `ovsdb:"_uuid"` Datapath string `ovsdb:"datapath"` Name string `ovsdb:"name"` Ports []string `ovsdb:"ports"` TunnelKey int `ovsdb:"tunnel_key"` }
MulticastGroup defines an object in Multicast_Group table
type PortBinding ¶
type PortBinding struct { UUID string `ovsdb:"_uuid"` AdditionalChassis []string `ovsdb:"additional_chassis"` AdditionalEncap []string `ovsdb:"additional_encap"` Chassis *string `ovsdb:"chassis"` Datapath string `ovsdb:"datapath"` Encap *string `ovsdb:"encap"` ExternalIDs map[string]string `ovsdb:"external_ids"` GatewayChassis []string `ovsdb:"gateway_chassis"` HaChassisGroup *string `ovsdb:"ha_chassis_group"` LogicalPort string `ovsdb:"logical_port"` MAC []string `ovsdb:"mac"` MirrorRules []string `ovsdb:"mirror_rules"` NatAddresses []string `ovsdb:"nat_addresses"` Options map[string]string `ovsdb:"options"` ParentPort *string `ovsdb:"parent_port"` PortSecurity []string `ovsdb:"port_security"` RequestedAdditionalChassis []string `ovsdb:"requested_additional_chassis"` RequestedChassis *string `ovsdb:"requested_chassis"` Tag *int `ovsdb:"tag"` TunnelKey int `ovsdb:"tunnel_key"` Type string `ovsdb:"type"` Up *bool `ovsdb:"up"` VirtualParent *string `ovsdb:"virtual_parent"` }
PortBinding defines an object in Port_Binding table
type PortGroup ¶
type PortGroup struct { UUID string `ovsdb:"_uuid"` Name string `ovsdb:"name"` Ports []string `ovsdb:"ports"` }
PortGroup defines an object in Port_Group table
type RBACPermission ¶
type RBACPermission struct { UUID string `ovsdb:"_uuid"` Authorization []string `ovsdb:"authorization"` InsertDelete bool `ovsdb:"insert_delete"` Table string `ovsdb:"table"` Update []string `ovsdb:"update"` }
RBACPermission defines an object in RBAC_Permission table
type RBACRole ¶
type RBACRole struct { UUID string `ovsdb:"_uuid"` Name string `ovsdb:"name"` Permissions map[string]string `ovsdb:"permissions"` }
RBACRole defines an object in RBAC_Role table
type SBGlobal ¶
type SBGlobal struct { UUID string `ovsdb:"_uuid"` Connections []string `ovsdb:"connections"` ExternalIDs map[string]string `ovsdb:"external_ids"` Ipsec bool `ovsdb:"ipsec"` NbCfg int `ovsdb:"nb_cfg"` Options map[string]string `ovsdb:"options"` SSL *string `ovsdb:"ssl"` }
SBGlobal defines an object in SB_Global table
type SSL ¶
type SSL struct { UUID string `ovsdb:"_uuid"` BootstrapCaCert bool `ovsdb:"bootstrap_ca_cert"` CaCert string `ovsdb:"ca_cert"` Certificate string `ovsdb:"certificate"` ExternalIDs map[string]string `ovsdb:"external_ids"` PrivateKey string `ovsdb:"private_key"` SSLCiphers string `ovsdb:"ssl_ciphers"` SSLProtocols string `ovsdb:"ssl_protocols"` }
SSL defines an object in SSL table
type ServiceMonitor ¶
type ServiceMonitor struct { UUID string `ovsdb:"_uuid"` ChassisName string `ovsdb:"chassis_name"` ExternalIDs map[string]string `ovsdb:"external_ids"` IP string `ovsdb:"ip"` LogicalPort string `ovsdb:"logical_port"` Options map[string]string `ovsdb:"options"` Port int `ovsdb:"port"` Protocol *ServiceMonitorProtocol `ovsdb:"protocol"` SrcIP string `ovsdb:"src_ip"` SrcMAC string `ovsdb:"src_mac"` Status *ServiceMonitorStatus `ovsdb:"status"` }
ServiceMonitor defines an object in Service_Monitor table
type ServiceMonitorProtocol ¶
type ServiceMonitorProtocol = string
type ServiceMonitorStatus ¶
type ServiceMonitorStatus = string
type StaticMACBinding ¶
type StaticMACBinding struct { UUID string `ovsdb:"_uuid"` Datapath string `ovsdb:"datapath"` IP string `ovsdb:"ip"` LogicalPort string `ovsdb:"logical_port"` MAC string `ovsdb:"mac"` OverrideDynamicMAC bool `ovsdb:"override_dynamic_mac"` }
StaticMACBinding defines an object in Static_MAC_Binding table
Source Files ¶
- address_set.go
- bfd.go
- chassis.go
- chassis_private.go
- chassis_template_var.go
- connection.go
- controller_event.go
- datapath_binding.go
- dhcp_options.go
- dhcpv6_options.go
- dns.go
- encap.go
- fdb.go
- gateway_chassis.go
- ha_chassis.go
- ha_chassis_group.go
- igmp_group.go
- ip_multicast.go
- load_balancer.go
- logical_dp_group.go
- logical_flow.go
- mac_binding.go
- meter.go
- meter_band.go
- mirror.go
- model.go
- multicast_group.go
- port_binding.go
- port_group.go
- rbac_permission.go
- rbac_role.go
- sb_global.go
- service_monitor.go
- ssl.go
- static_mac_binding.go