Documentation
¶
Index ¶
- Constants
- Variables
- func AddressCount(network *net.IPNet) float64
- func AnnounceArpAddress(nic, ip string, mac net.HardwareAddr, announceNum int, ...) error
- func AppendGwByCidr(gateway, cidrStr string) (string, error)
- func ArpDetectIPConflict(nic, ip string, mac net.HardwareAddr) (net.HardwareAddr, error)
- func ArpResolve(nic, dstIP string, timeout time.Duration, maxRetry int, done chan struct{}) (net.HardwareAddr, int, error)
- func BigInt2Ip(ipInt *big.Int) string
- func CIDRContainIP(cidrStr, ipStr string) bool
- func CIDRGlobalUnicast(cidr string) error
- func CIDROverlap(a, b string) bool
- func CheckCidrs(cidr string) error
- func CheckNodeDNSIP(nodeLocalDNSIP string) error
- func CheckProtocol(address string) string
- func CheckSystemCIDR(cidrs []string) error
- func CompareVersion(version1, version2 string) int
- func ContainsIPs(excludeIP, ip string) bool
- func ContainsUppercase(s string) bool
- func CountIPNums(excludeIPs []string) float64
- func DialAPIServer(host string, interval time.Duration, retry int) error
- func DialTCP(host string, timeout time.Duration, verbose bool) error
- func DiffStringSlice(slice1, slice2 []string) []string
- func DoubleQuotedFields(s string) []string
- func ExecuteCommandInContainer(client kubernetes.Interface, cfg *rest.Config, ...) (string, string, error)
- func ExecuteWithOptions(client kubernetes.Interface, cfg *rest.Config, options ExecOptions) (string, string, error)
- func ExpandExcludeIPs(excludeIPs []string, cidr string) []string
- func ExternalBridgeName(provider string) string
- func FirstIP(subnet string) (string, error)
- func GatewayContains(gatewayNodeStr, gateway string) bool
- func GenNatGwPodName(name string) string
- func GenNatGwStsName(name string) string
- func GenerateMac() string
- func GenerateMergePatchPayload(original, modified runtime.Object) ([]byte, error)
- func GenerateRandomIP(cidr string) string
- func GenerateStrategicMergePatchPayload(original, modified runtime.Object) ([]byte, error)
- func GetDefaultListenAddr() string
- func GetExternalNetwork(externalNet string) string
- func GetGwByCidr(cidrStr string) (string, error)
- func GetIPAddrWithMask(ip, cidr string) (string, error)
- func GetIPWithoutMask(ipStr string) string
- func GetNatGwExternalNetwork(externalNets []string) string
- func GetNodeInternalIP(node v1.Node) (ipv4, ipv6 string)
- func GetStringIP(v4IP, v6IP string) string
- func GetTruncatedUID(uid string) string
- func IP2BigInt(ipStr string) *big.Int
- func IPToString(ip string) string
- func IPv4ToUint32(ip net.IP) uint32
- func InvalidNetworkMask(network *net.IPNet) error
- func InvalidSpecialCIDR(s string) error
- func IsDefaultNet(defaultNetAnnotation string, attach *types.NetworkSelectionElement) bool
- func IsOvnNetwork(netCfg *types.DelegateNetConf) bool
- func IsOvnProvider(provider string) bool
- func IsStringsOverlap(a, b []string) bool
- func IsValidIP(ip string) bool
- func JoinHostPort(host string, port int32) string
- func LabelSelectorNotEmpty(key string) (labels.Selector, error)
- func LabelSelectorNotEquals(key, value string) (labels.Selector, error)
- func LastIP(subnet string) (string, error)
- func LogFatalAndExit(err error, format string, a ...interface{})
- func NodeLspName(node string) string
- func ParsePodNetworkAnnotation(podNetworks, defaultNamespace string) ([]*types.NetworkSelectionElement, error)
- func PodIPs(pod v1.Pod) []string
- func ProtocolToFamily(protocol string) (int, error)
- func RemoveString(slice []string, s string) []string
- func ServiceClusterIPs(svc v1.Service) []string
- func SetLinkUp(name string) error
- func Sha256Hash(input []byte) string
- func SplitIpsByProtocol(excludeIps []string) ([]string, []string)
- func SplitStringIP(ipStr string) (string, string)
- func SubnetBroadcast(subnet string) string
- func SubnetNumber(subnet string) string
- func TCPConnectivityCheck(endpoint string) error
- func TCPConnectivityListen(endpoint string) error
- func UDPConnectivityCheck(endpoint string) error
- func UDPConnectivityListen(endpoint string) error
- func Uint32ToIPv4(n uint32) string
- func Uint32ToIPv6(n [4]uint32) string
- func UpdateNodeAnnotations(cs clientv1.NodeInterface, node string, annotations map[string]any) error
- func UpdateNodeLabels(cs clientv1.NodeInterface, node string, labels map[string]any) error
- func ValidateCidrConflict(subnet kubeovnv1.Subnet, subnetList []kubeovnv1.Subnet) error
- func ValidateNetworkBroadcast(cidr, ip string) error
- func ValidatePodNetwork(annotations map[string]string) error
- func ValidateSubnet(subnet kubeovnv1.Subnet) error
- func ValidateVpc(vpc *kubeovnv1.Vpc) error
- type ExecOptions
- type GwIPtableCounters
- type IPTableRule
- type LogicalRouter
- type LogicalSwitch
- type NamedPortInfo
- type Port
Constants ¶
const ( CniTypeName = "kube-ovn" DepreciatedFinalizerName = "kube-ovn-controller" KubeOVNControllerFinalizer = "kubeovn.io/kube-ovn-controller" AllocatedAnnotation = "ovn.kubernetes.io/allocated" RoutedAnnotation = "ovn.kubernetes.io/routed" RoutesAnnotation = "ovn.kubernetes.io/routes" MacAddressAnnotation = "ovn.kubernetes.io/mac_address" IPAddressAnnotation = "ovn.kubernetes.io/ip_address" CidrAnnotation = "ovn.kubernetes.io/cidr" GatewayAnnotation = "ovn.kubernetes.io/gateway" IPPoolAnnotation = "ovn.kubernetes.io/ip_pool" BgpAnnotation = "ovn.kubernetes.io/bgp" SnatAnnotation = "ovn.kubernetes.io/snat" EipAnnotation = "ovn.kubernetes.io/eip" FipFinalizer = "ovn.kubernetes.io/fip" VipAnnotation = "ovn.kubernetes.io/vip" AAPsAnnotation = "ovn.kubernetes.io/aaps" ChassisAnnotation = "ovn.kubernetes.io/chassis" VMAnnotation = "ovn.kubernetes.io/virtualmachine" ActivationStrategyAnnotation = "ovn.kubernetes.io/activation_strategy" VpcNatGatewayAnnotation = "ovn.kubernetes.io/vpc_nat_gw" VpcNatGatewayInitAnnotation = "ovn.kubernetes.io/vpc_nat_gw_init" VpcNatGatewayActivatedAnnotation = "ovn.kubernetes.io/vpc_nat_gw_activated" VpcEipsAnnotation = "ovn.kubernetes.io/vpc_eips" VpcFloatingIPMd5Annotation = "ovn.kubernetes.io/vpc_floating_ips" VpcDnatMd5Annotation = "ovn.kubernetes.io/vpc_dnat_md5" VpcSnatMd5Annotation = "ovn.kubernetes.io/vpc_snat_md5" VpcCIDRsAnnotation = "ovn.kubernetes.io/vpc_cidrs" VpcLbAnnotation = "ovn.kubernetes.io/vpc_lb" VpcExternalLabel = "ovn.kubernetes.io/vpc_external" VpcEipAnnotation = "ovn.kubernetes.io/vpc_eip" VpcDnatEPortLabel = "ovn.kubernetes.io/vpc_dnat_eport" VpcNatAnnotation = "ovn.kubernetes.io/vpc_nat" OvnEipTypeLabel = "ovn.kubernetes.io/ovn_eip_type" EipV4IpLabel = "ovn.kubernetes.io/eip_v4_ip" EipV6IpLabel = "ovn.kubernetes.io/eip_v6_ip" SwitchLBRuleVipsAnnotation = "ovn.kubernetes.io/switch_lb_vip" SwitchLBRuleVip = "switch_lb_vip" SwitchLBRuleSubnet = "switch_lb_subnet" LogicalRouterAnnotation = "ovn.kubernetes.io/logical_router" VpcAnnotation = "ovn.kubernetes.io/vpc" Layer2ForwardAnnotationTemplate = "%s.kubernetes.io/layer2_forward" PortSecurityAnnotationTemplate = "%s.kubernetes.io/port_security" PortVipAnnotationTemplate = "%s.kubernetes.io/port_vips" PortSecurityAnnotation = "ovn.kubernetes.io/port_security" NorthGatewayAnnotation = "ovn.kubernetes.io/north_gateway" AllocatedAnnotationSuffix = ".kubernetes.io/allocated" AllocatedAnnotationTemplate = "%s.kubernetes.io/allocated" RoutedAnnotationTemplate = "%s.kubernetes.io/routed" RoutesAnnotationTemplate = "%s.kubernetes.io/routes" MacAddressAnnotationTemplate = "%s.kubernetes.io/mac_address" IPAddressAnnotationTemplate = "%s.kubernetes.io/ip_address" CidrAnnotationTemplate = "%s.kubernetes.io/cidr" GatewayAnnotationTemplate = "%s.kubernetes.io/gateway" IPPoolAnnotationTemplate = "%s.kubernetes.io/ip_pool" LogicalSwitchAnnotationTemplate = "%s.kubernetes.io/logical_switch" LogicalRouterAnnotationTemplate = "%s.kubernetes.io/logical_router" VlanIDAnnotationTemplate = "%s.kubernetes.io/vlan_id" IngressRateAnnotationTemplate = "%s.kubernetes.io/ingress_rate" EgressRateAnnotationTemplate = "%s.kubernetes.io/egress_rate" SecurityGroupAnnotationTemplate = "%s.kubernetes.io/security_groups" DefaultRouteAnnotationTemplate = "%s.kubernetes.io/default_route" VfRepresentorNameTemplate = "%s.kubernetes.io/vf_representor" VfNameTemplate = "%s.kubernetes.io/vf" ActivationStrategyTemplate = "%s.kubernetes.io/activation_strategy" ProviderNetworkTemplate = "%s.kubernetes.io/provider_network" ProviderNetworkErrMessageTemplate = "%s.provider-network.kubernetes.io/err_mesg" ProviderNetworkReadyTemplate = "%s.provider-network.kubernetes.io/ready" ProviderNetworkExcludeTemplate = "%s.provider-network.kubernetes.io/exclude" ProviderNetworkInterfaceTemplate = "%s.provider-network.kubernetes.io/interface" ProviderNetworkMtuTemplate = "%s.provider-network.kubernetes.io/mtu" MirrorControlAnnotationTemplate = "%s.kubernetes.io/mirror" PodNicAnnotationTemplate = "%s.kubernetes.io/pod_nic_type" VMAnnotationTemplate = "%s.kubernetes.io/virtualmachine" ExcludeIpsAnnotation = "ovn.kubernetes.io/exclude_ips" IngressRateAnnotation = "ovn.kubernetes.io/ingress_rate" EgressRateAnnotation = "ovn.kubernetes.io/egress_rate" PortNameAnnotation = "ovn.kubernetes.io/port_name" LogicalSwitchAnnotation = "ovn.kubernetes.io/logical_switch" TunnelInterfaceAnnotation = "ovn.kubernetes.io/tunnel_interface" OvsDpTypeLabel = "ovn.kubernetes.io/ovs_dp_type" VpcNameLabel = "ovn.kubernetes.io/vpc" SubnetNameLabel = "ovn.kubernetes.io/subnet" ICGatewayLabel = "ovn.kubernetes.io/ic-gw" ExGatewayLabel = "ovn.kubernetes.io/external-gw" NodeExtGwLabel = "ovn.kubernetes.io/node-ext-gw" VpcNatGatewayLabel = "ovn.kubernetes.io/vpc-nat-gw" IPReservedLabel = "ovn.kubernetes.io/ip_reserved" VpcNatGatewayNameLabel = "ovn.kubernetes.io/vpc-nat-gw-name" VpcLbLabel = "ovn.kubernetes.io/vpc_lb" VpcDNSNameLabel = "ovn.kubernetes.io/vpc-dns" QoSLabel = "ovn.kubernetes.io/qos" NodeNameLabel = "ovn.kubernetes.io/node-name" NetworkPolicyLogAnnotation = "ovn.kubernetes.io/enable_log" ACLActionsLogAnnotation = "ovn.kubernetes.io/log_acl_actions" VpcLastName = "ovn.kubernetes.io/last_vpc_name" VpcLastPolicies = "ovn.kubernetes.io/last_policies" ProtocolTCP = "tcp" ProtocolUDP = "udp" ProtocolSCTP = "sctp" NetworkTypeVlan = "vlan" NetworkTypeGeneve = "geneve" NetworkTypeVxlan = "vxlan" NetworkTypeStt = "stt" LoNic = "lo" NodeGwNic = "ovnext0" NodeGwNs = "ovnext" NodeGwNsPath = "/var/run/netns/ovnext" BindMountPath = "/run/netns" NodeNic = "ovn0" NodeLspPrefix = "node-" NodeAllowPriority = "3000" VxlanNic = "vxlan_sys_4789" GeneveNic = "genev_sys_6081" SecurityGroupHighestPriority = "2300" SecurityGroupBasePriority = "2005" SecurityGroupAllowPriority = "2004" SecurityGroupDropPriority = "2003" IngressAllowPriority = "2001" IngressDefaultDrop = "2000" EgressAllowPriority = "2001" EgressDefaultDrop = "2000" AllowEWTrafficPriority = "1900" SubnetAllowPriority = "1001" DefaultDropPriority = "1000" GwChassisMaxPriority = 100 AnpMaxRules = 100 AnpMaxPriority = 99 AnpACLMaxPriority = 30000 BanpACLMaxPriority = 1800 AnpACLTier = 1 NetpolACLTier = 2 BanpACLTier = 3 DefaultMTU = 1500 GeneveHeaderLength = 100 VxlanHeaderLength = 50 SttHeaderLength = 72 TCPIPHeaderLength = 40 OvnProvider = "ovn" AttachmentNetworkAnnotation = "k8s.v1.cni.cncf.io/networks" DefaultNetworkAnnotation = "v1.multus-cni.io/default-network" AttachNetworkResourceNameAnnotation = "k8s.v1.cni.cncf.io/resourceName" SRIOVResourceName = "mellanox.com/cx5_sriov_switchdev" SriovNicType = "sriov" InterconnectionConfig = "ovn-ic-config" ExternalGatewayConfig = "ovn-external-gw-config" InterconnectionSwitch = "ts" ExternalGatewaySwitch = "ovn-external" VpcNatGatewayConfig = "ovn-vpc-nat-gw-config" VpcLbNetworkAttachment = "ovn-vpc-lb" VpcDNSConfig = "vpc-dns-config" VpcDNSDepTemplate = "vpc-dns-dep" VpcNatConfig = "ovn-vpc-nat-config" DefaultSecurityGroupName = "default-securitygroup" DefaultVpc = "ovn-cluster" DefaultSubnet = "ovn-default" NormalRouteType = "normal" EcmpRouteType = "ecmp" StaticRouteBfdEcmp = "ecmp_symmetric_reply" Vip = "vip" OvnEipTypeLRP = "lrp" OvnEipTypeLSP = "lsp" OvnEipTypeNAT = "nat" FipUsingEip = "fip" SnatUsingEip = "snat" DnatUsingEip = "dnat" OvnFip = "ovn" IptablesFip = "iptables" U2OSubnetPolicyPriority = 29400 GatewayRouterPolicyPriority = 29000 NorthGatewayRoutePolicyPriority = 29250 OvnICPolicyPriority = 29500 NodeRouterPolicyPriority = 30000 NodeLocalDNSPolicyPriority = 30100 SubnetRouterPolicyPriority = 31000 OffloadType = "offload-port" InternalType = "internal-port" DpdkType = "dpdk-port" VethType = "veth-pair" HostnameEnv = "KUBE_NODE_NAME" GatewayNameEnv = "GATEWAY_NAME" MirrosRetryMaxTimes = 5 MirrosRetryInterval = 1 ChassisRetryMaxTimes = 5 ChassisCniDaemonRetryInterval = 1 ChassisControllerRetryInterval = 3 VM = "VirtualMachine" VMInstance = "VirtualMachineInstance" StatefulSet = "StatefulSet" MirrorControlAnnotation = "ovn.kubernetes.io/mirror" MirrorDefaultName = "m0" DenyAllSecurityGroup = "kubeovn_deny_all" NetemQosLatencyAnnotation = "ovn.kubernetes.io/latency" NetemQosLimitAnnotation = "ovn.kubernetes.io/limit" NetemQosLossAnnotation = "ovn.kubernetes.io/loss" NetemQosJitterAnnotation = "ovn.kubernetes.io/jitter" NetemQosLatencyAnnotationTemplate = "%s.kubernetes.io/latency" NetemQosLimitAnnotationTemplate = "%s.kubernetes.io/limit" NetemQosLossAnnotationTemplate = "%s.kubernetes.io/loss" NetemQosJitterAnnotationTemplate = "%s.kubernetes.io/jitter" PodIP = "POD_IP" ContentType = "application/vnd.kubernetes.protobuf" AcceptContentTypes = "application/vnd.kubernetes.protobuf,application/json" AttachmentProvider = "ovn.kubernetes.io/attachmentprovider" LbSvcPodImg = "ovn.kubernetes.io/lb_svc_img" OvnICKey = "origin" OvnICConnected = "connected" OvnICStatic = "static" OvnICNone = "" MatchV4Src = "ip4.src" MatchV4Dst = "ip4.dst" MatchV6Src = "ip6.src" MatchV6Dst = "ip6.dst" U2OInterconnName = "u2o-interconnection.%s.%s" U2OExcludeIPAg = "%s.u2o_exclude_ip.%s" McastQuerierName = "mcast-querier.%s" DefaultServiceSessionStickinessTimeout = 10800 OvnSubnetGatewayIptables = "ovn-subnet-gateway" QoSDirectionIngress = "ingress" QoSDirectionEgress = "egress" MainRouteTable = "" NatPolicyRuleActionNat = "nat" NatPolicyRuleActionForward = "forward" NatPolicyRuleIDLength = 12 NAT = "nat" Mangle = "mangle" Prerouting = "PREROUTING" Postrouting = "POSTROUTING" Output = "OUTPUT" OvnPrerouting = "OVN-PREROUTING" OvnPostrouting = "OVN-POSTROUTING" OvnOutput = "OVN-OUTPUT" OvnMasquerade = "OVN-MASQUERADE" OvnNatOutGoingPolicy = "OVN-NAT-POLICY" OvnNatOutGoingPolicySubnet = "OVN-NAT-PSUBNET-" TProxyListenPort = 8102 TProxyRouteTable = 10001 TProxyOutputMark = 0x90003 TProxyOutputMask = 0x90003 TProxyPreroutingMark = 0x90004 TProxyPreroutingMask = 0x90004 HealthCheckNamedVipTemplate = "%s:%s" // ip name, health check vip ConsumptionKubevirt = "kubevirt" VhostUserSocketVolumeName = "vhostuser-sockets" MigrationJobAnnotation = "kubevirt.io/migrationJobName" // migration job name MigrationSourceNodeAnnotation = "kubevirt.io/migration-source-node" // target pod has source node name MigrationSourceAnnotation = "kubevirt.io/migration-source" // migration source vm: true or false MigrationTargetAnnotation = "kubevirt.io/migration-target" // migration target vm: true or false MigrationPhaseAnnotation = "kubevirt.io/migration-phase" // migration vm phase: started/succeeded/failed MigrationPhaseStarted = "started" MigrationPhaseSucceeded = "succeeded" MigrationPhaseFailed = "failed" DefaultOVNIPSecCA = "ovn-ipsec-ca" DefaultOVSCACertPath = "/var/lib/openvswitch/pki/switchca/cacert.pem" DefaultOVSCACertKeyPath = "/var/lib/openvswitch/pki/switchca/private/cakey.pem" SignerName = "kubeovn.io/signer" )
const ( IPv4Multicast = "224.0.0.0/4" IPv4Loopback = "127.0.0.1/8" IPv4Broadcast = "255.255.255.255/32" IPv4Zero = "0.0.0.0/32" IPv4LinkLocalUnicast = "169.254.0.0/16" IPv6Unspecified = "::/128" IPv6Loopback = "::1/128" IPv6Multicast = "ff00::/8" IPv6LinkLocalUnicast = "FE80::/10" )
const VpcNatGwNameDefaultPrefix = "vpc-nat-gw"
VpcNatGwNameDefaultPrefix is the default prefix appended to the name of the NAT gateways
Variables ¶
var VpcNatGwNamePrefix = VpcNatGwNameDefaultPrefix
VpcNatGwNamePrefix is appended to the name of the StatefulSet and Pods for NAT gateways
Functions ¶
func AddressCount ¶ added in v1.7.0
func AnnounceArpAddress ¶ added in v1.9.25
func AppendGwByCidr ¶ added in v1.7.0
func ArpDetectIPConflict ¶ added in v1.9.19
func ArpDetectIPConflict(nic, ip string, mac net.HardwareAddr) (net.HardwareAddr, error)
https://www.ietf.org/rfc/rfc5227.txt returns MAC of the host if the ip address is in use
func ArpResolve ¶ added in v1.9.19
func CIDRContainIP ¶ added in v1.7.0
func CIDRGlobalUnicast ¶ added in v1.10.7
func CIDROverlap ¶ added in v1.10.7
func CheckCidrs ¶ added in v1.7.0
func CheckNodeDNSIP ¶ added in v1.12.29
func CheckProtocol ¶ added in v1.7.0
func CheckSystemCIDR ¶ added in v1.10.7
func CompareVersion ¶ added in v1.11.0
CompareVersion compare two version
func ContainsIPs ¶ added in v1.7.0
func ContainsUppercase ¶ added in v1.13.0
func CountIPNums ¶ added in v1.12.1
func DialAPIServer ¶ added in v1.12.1
func DiffStringSlice ¶ added in v0.5.0
func DoubleQuotedFields ¶ added in v1.10.7
func ExecuteCommandInContainer ¶ added in v1.7.0
func ExecuteWithOptions ¶ added in v1.7.0
func ExecuteWithOptions(client kubernetes.Interface, cfg *rest.Config, options ExecOptions) (string, string, error)
func ExpandExcludeIPs ¶ added in v1.7.0
ExpandExcludeIPs used to get exclude ips in range of subnet cidr, excludes cidr addr and broadcast addr
func ExternalBridgeName ¶ added in v1.7.1
ExternalBridgeName returns external bridge name of the provider network
func GatewayContains ¶ added in v1.7.0
func GenNatGwPodName ¶ added in v1.12.0
GenNatGwPodName returns the full name of the NAT gateway pod within a StatefulSet
func GenNatGwStsName ¶ added in v1.12.0
GenNatGwStsName returns the full name of a NAT gateway StatefulSet
func GenerateMac ¶
func GenerateMac() string
GenerateMac generates mac address. Refer from https://github.com/cilium/cilium/blob/8c7e442ccd48b9011a10f34a128ec98751d9a80e/pkg/mac/mac.go#L106
func GenerateMergePatchPayload ¶ added in v1.9.17
func GenerateRandomIP ¶ added in v1.13.0
func GenerateStrategicMergePatchPayload ¶ added in v1.9.17
func GetDefaultListenAddr ¶ added in v1.12.0
func GetDefaultListenAddr() string
func GetExternalNetwork ¶ added in v1.12.0
GetExternalNetwork returns the external network name if the external network is not specified, return the default external network name
func GetGwByCidr ¶ added in v1.7.0
func GetIPAddrWithMask ¶ added in v1.12.1
func GetIPWithoutMask ¶ added in v1.12.1
func GetNatGwExternalNetwork ¶ added in v1.12.0
func GetNodeInternalIP ¶ added in v1.7.0
func GetStringIP ¶ added in v1.7.0
func GetTruncatedUID ¶ added in v1.12.0
func IPToString ¶ added in v1.7.0
func IPv4ToUint32 ¶ added in v1.13.0
func InvalidNetworkMask ¶ added in v1.13.0
func InvalidSpecialCIDR ¶ added in v1.13.0
func IsDefaultNet ¶ added in v1.7.0
func IsDefaultNet(defaultNetAnnotation string, attach *types.NetworkSelectionElement) bool
func IsOvnNetwork ¶ added in v1.7.0
func IsOvnNetwork(netCfg *types.DelegateNetConf) bool
func IsOvnProvider ¶ added in v1.13.0
func IsStringsOverlap ¶ added in v1.7.0
IsStringsOverlap check if two string slices are overlapped
func JoinHostPort ¶ added in v1.8.2
func LabelSelectorNotEmpty ¶ added in v1.12.0
func LabelSelectorNotEquals ¶ added in v1.12.0
func LogFatalAndExit ¶ added in v1.8.15
func NodeLspName ¶ added in v1.12.15
func ParsePodNetworkAnnotation ¶ added in v1.7.0
func ParsePodNetworkAnnotation(podNetworks, defaultNamespace string) ([]*types.NetworkSelectionElement, error)
func ProtocolToFamily ¶ added in v1.7.0
ProtocolToFamily converts protocol string to netlink family
func RemoveString ¶ added in v1.7.0
func ServiceClusterIPs ¶ added in v1.9.25
func Sha256Hash ¶ added in v1.12.0
func SplitIpsByProtocol ¶ added in v1.7.0
func SplitStringIP ¶ added in v1.7.0
func SubnetBroadcast ¶ added in v1.7.1
func SubnetNumber ¶ added in v1.7.0
func TCPConnectivityCheck ¶ added in v1.9.27
func TCPConnectivityListen ¶ added in v1.9.27
func UDPConnectivityCheck ¶ added in v1.9.27
func UDPConnectivityListen ¶ added in v1.9.27
func Uint32ToIPv4 ¶ added in v1.13.0
func Uint32ToIPv6 ¶ added in v1.13.0
func UpdateNodeAnnotations ¶ added in v1.12.19
func UpdateNodeLabels ¶ added in v1.12.19
func ValidateCidrConflict ¶ added in v1.9.0
func ValidateNetworkBroadcast ¶ added in v1.13.0
func ValidatePodNetwork ¶ added in v0.4.0
func ValidateSubnet ¶ added in v1.7.0
func ValidateVpc ¶ added in v1.11.2
Types ¶
type ExecOptions ¶ added in v1.7.0
type GwIPtableCounters ¶ added in v1.12.0
type IPTableRule ¶
IPTableRule wraps iptables rule
type LogicalRouter ¶ added in v1.8.0
type LogicalRouter struct { Name string Ports []Port LogicalSwitches []LogicalSwitch }