Kube-OVN API Reference¶
Based on the latest version of Kube-OVN, we have compiled a list of CRD resources supported by Kube-OVN, listing the types and meanings of each field of CRD definition for reference.
Generic Condition Definition¶
Property Name | Type | Description |
---|---|---|
type | String | Type of status |
status | String | The value of status, in the range of True , False or Unknown |
reason | String | The reason for the status change |
message | String | The specific message of the status change |
observedGeneration | Int64 | The observed generation of the resource |
lastUpdateTime | Time | The last time the status was updated |
lastTransitionTime | Time | Time of last status type change |
In each CRD definition, the Condition field in Status follows the above format, so we explain it in advance.
Core Network Resources¶
Subnet Definition¶
Subnet¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value Subnet |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | SubnetSpec | Subnet specific configuration information |
status | SubnetStatus | Subnet status information |
SubnetSpec¶
Property Name | Type | Description |
---|---|---|
default | Bool | Whether this subnet is the default subnet |
vpc | String | The vpc which the subnet belongs to, default is ovn-cluster |
protocol | String | IP protocol, the value is in the range of IPv4 , IPv6 or Dual |
namespaces | []String | The list of namespaces bound to this subnet |
cidrBlock | String | The range of the subnet, e.g. 10.16.0.0/16 |
gateway | String | The gateway address of the subnet, the default value is the first available address under the CIDRBlock of the subnet |
excludeIps | []String | The range of addresses under this subnet that will not be automatically assigned |
provider | String | Default value is OVN . In the case of multiple NICs, the value is <name>.<namespace> of the NetworkAttachmentDefinition, Kube-OVN will use this information to find the corresponding subnet resource |
gatewayType | String | The gateway type in overlay mode, either distributed or centralized |
gatewayNode | String | The gateway node when the gateway mode is centralized, node names can be comma-separated |
natOutgoing | Bool | Whether the outgoing traffic is NAT |
externalEgressGateway | String | The address of the external gateway. This parameter and the natOutgoing parameter cannot be set at the same time |
policyRoutingPriority | Uint32 | Policy route priority. Used to control the forwarding of traffic to the external gateway address after the subnet gateway |
policyRoutingTableID | Uint32 | The TableID of the local policy routing table, should be different for each subnet to avoid conflicts |
mtu | Uint32 | The MTU size of the subnet |
private | Bool | Whether the subnet is a private subnet, which denies access to addresses inside the subnet if the subnet is private |
allowSubnets | []String | If the subnet is a private subnet, the set of addresses that are allowed to access the subnet |
vlan | String | The name of vlan to which the subnet is bound |
vips | []String | The virtual-ip parameter information for virtual type lsp on the subnet |
logicalGateway | Bool | Whether to enable logical gateway |
disableGatewayCheck | Bool | Whether to skip the gateway connectivity check when creating a pod |
disableInterConnection | Bool | Whether to enable subnet interconnection across clusters |
enableDHCP | Bool | Whether to configure dhcp configuration options for lsps belong this subnet |
dhcpV4Options | String | The DHCP_Options record associated with lsp dhcpv4_options on the subnet |
dhcpV6Options | String | The DHCP_Options record associated with lsp dhcpv6_options on the subnet |
enableIPv6RA | Bool | Whether to configure the ipv6_ra_configs parameter for the lrp port of the router connected to the subnet |
ipv6RAConfigs | String | The ipv6_ra_configs parameter configuration for the lrp port of the router connected to the subnet |
acls | []Acl | The acls record associated with the logical-switch of the subnet |
allowEWTraffic | Bool | Whether to allow east-west traffic |
natOutgoingPolicyRules | []NatOutgoingPolicyRule | NAT outgoing policy rules |
u2oInterconnectionIP | String | The IP address used for Underlay/Overlay interconnection |
u2oInterconnection | Bool | Whether to enable interconnection mode for Overlay/Underlay |
enableLb | *Bool | Whether the logical-switch of the subnet is associated with load-balancer records |
enableEcmp | Bool | Centralized subnet, whether to enable ECMP routing |
enableMulticastSnoop | Bool | Whether to enable multicast snooping |
enableExternalLBAddress | Bool | Whether to enable external load balancer addresses |
routeTable | String | Route table name |
namespaceSelectors | []LabelSelector | Namespace selectors |
Acl¶
Property Name | Type | Description |
---|---|---|
direction | String | Restrict the direction of acl, which value is from-lport or to-lport |
priority | Int | Acl priority, in the range 0 to 32767 |
match | String | Acl rule match expression |
action | String | The action of the rule, which value is in the range of allow-related , allow-stateless , allow , drop , reject |
NatOutgoingPolicyRule¶
Property Name | Type | Description |
---|---|---|
match | NatOutGoingPolicyMatch | Match conditions |
action | String | Action |
NatOutGoingPolicyMatch¶
Property Name | Type | Description |
---|---|---|
srcIPs | String | Source IP address range |
dstIPs | String | Destination IP address range |
SubnetStatus¶
Property Name | Type | Description |
---|---|---|
conditions | []SubnetCondition | Subnet status change information, refer to the beginning of the document for the definition of Condition |
v4availableIPs | Float64 | Number of available IPv4 IPs |
v4availableIPrange | String | The available range of IPv4 addresses on the subnet |
v4usingIPs | Float64 | Number of used IPv4 IPs |
v4usingIPrange | String | Used IPv4 address ranges on the subnet |
v6availableIPs | Float64 | Number of available IPv6 IPs |
v6availableIPrange | String | The available range of IPv6 addresses on the subnet |
v6usingIPs | Float64 | Number of used IPv6 IPs |
v6usingIPrange | String | Used IPv6 address ranges on the subnet |
activateGateway | String | The currently working gateway node in centralized subnet of master-backup mode |
dhcpV4OptionsUUID | String | The DHCP_Options record identifier associated with the lsp dhcpv4_options on the subnet |
dhcpV6OptionsUUID | String | The DHCP_Options record identifier associated with the lsp dhcpv6_options on the subnet |
u2oInterconnectionIP | String | The IP address used for interconnection when Overlay/Underlay interconnection mode is enabled |
u2oInterconnectionMAC | String | The MAC address used for interconnection when Overlay/Underlay interconnection mode is enabled |
u2oInterconnectionVPC | String | The associated VPC when Overlay/Underlay interconnection mode is enabled |
natOutgoingPolicyRules | []NatOutgoingPolicyRuleStatus | NAT outgoing policy rules status |
mcastQuerierIP | String | The IP address of the multicast querier |
mcastQuerierMAC | String | The MAC address of the multicast querier |
IP Definition¶
IP¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources are kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource have the value IP |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IPSpec | IP specific configuration information |
IPSpec¶
Property Name | Type | Description |
---|---|---|
podName | String | Pod name which assigned with this IP |
namespace | String | The name of the namespace where the pod is bound |
subnet | String | The subnet which the ip belongs to |
attachSubnets | []String | The name of the other subnets attached to this primary IP (field deprecated) |
nodeName | String | The name of the node where the pod is bound |
ipAddress | String | IP address, in v4IP,v6IP format for dual-stack cases |
v4IpAddress | String | IPv4 IP address |
v6IpAddress | String | IPv6 IP address |
attachIps | []String | Other IP addresses attached to this primary IP (field is deprecated) |
macAddress | String | The MAC address of the bound pod |
attachMacs | []String | Other MAC addresses attached to this primary IP (field deprecated) |
containerID | String | The Container ID corresponding to the bound pod |
podType | String | Special workload pod, can be StatefulSet , VirtualMachine or empty |
Vpc Definition¶
Vpc¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value Vpc |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VpcSpec | Vpc specific configuration information |
status | VpcStatus | Vpc status information |
VpcSpec¶
Property Name | Type | Description |
---|---|---|
defaultSubnet | String | Default subnet name |
namespaces | []String | List of namespaces bound by Vpc |
staticRoutes | []StaticRoute | Static route configuration |
policyRoutes | []PolicyRoute | Policy route configuration |
vpcPeerings | []VpcPeering | VPC peering configuration |
enableExternal | Bool | Whether to enable external connection |
extraExternalSubnets | []String | Extra external subnets |
enableBfd | Bool | Whether to enable BFD (Bidirectional Forwarding Detection) |
bfdPort | BFDPort | BFD port configuration |
StaticRoute¶
Property Name | Type | Description |
---|---|---|
policy | String | Route policy |
cidr | String | Destination CIDR |
nextHopIP | String | Next hop IP address |
ecmpMode | String | ECMP mode |
bfdId | String | BFD ID |
routeTable | String | Route table name |
PolicyRoute¶
Property Name | Type | Description |
---|---|---|
priority | Int | Policy route priority |
match | String | Match conditions |
action | String | Action, can be allow , drop , reroute |
nextHopIP | String | Next hop IP address for rerouting (required only when action is reroute) |
VpcPeering¶
Property Name | Type | Description |
---|---|---|
remoteVpc | String | Remote VPC name |
localConnectIP | String | Local connection IP address |
BFDPort¶
Property Name | Type | Description |
---|---|---|
enabled | Bool | Whether BFD is enabled |
ip | String | IP address of the BFD port |
nodeSelector | LabelSelector | Node selector for selecting nodes to host the BFD LRP |
VpcStatus¶
Property Name | Type | Description |
---|---|---|
conditions | []VpcCondition | Vpc status change information, refer to the beginning of the document for the definition of Condition |
standby | Bool | Whether this is a standby VPC |
default | Bool | Whether this is the default VPC |
defaultLogicalSwitch | String | Default logical switch name |
router | String | Associated router name |
tcpLoadBalancer | String | TCP load balancer name |
udpLoadBalancer | String | UDP load balancer name |
sctpLoadBalancer | String | SCTP load balancer name |
tcpSessionLoadBalancer | String | TCP session load balancer name |
udpSessionLoadBalancer | String | UDP session load balancer name |
sctpSessionLoadBalancer | String | SCTP session load balancer name |
subnets | []String | List of subnets under the VPC |
vpcPeerings | []String | List of VPC peerings |
enableExternal | Bool | Whether external connection is enabled |
extraExternalSubnets | []String | Extra external subnets |
enableBfd | Bool | Whether BFD is enabled |
Underlay Network Configuration¶
Vlan¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all instances of this resource will be kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value Vlan |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VlanSpec | Vlan specific configuration information |
status | VlanStatus | Vlan status information |
VlanSpec¶
Property Name | Type | Description |
---|---|---|
id | Int | Vlan tag number, in the range of 0~4096 |
provider | String | The name of the ProviderNetwork to which the vlan is bound |
VlanStatus¶
Property Name | Type | Description |
---|---|---|
subnets | []String | The list of subnets to which the vlan is bound |
conflict | Bool | Whether there is a conflict |
conditions | []VlanCondition | Vlan status change information, refer to the beginning of the document for the definition of Condition |
ProviderNetwork¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources are kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value ProviderNetwork |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | ProviderNetworkSpec | ProviderNetwork specific configuration information |
status | ProviderNetworkStatus | ProviderNetwork status information |
ProviderNetworkSpec¶
Property Name | Type | Description |
---|---|---|
defaultInterface | String | The name of the NIC interface used by default for this bridge network |
customInterfaces | []CustomInterface | The special NIC configuration used by this bridge network |
excludeNodes | []String | The names of the nodes that will not be bound to this bridge network |
exchangeLinkName | Bool | Whether to exchange the bridge NIC and the corresponding OVS bridge name |
CustomInterface¶
Property Name | Type | Description |
---|---|---|
interface | String | NIC interface name used for underlay |
nodes | []String | List of nodes using the custom NIC interface |
ProviderNetworkStatus¶
Property Name | Type | Description |
---|---|---|
ready | Bool | Whether the current bridge network is in the ready state |
readyNodes | []String | The name of the node whose bridge network is ready |
notReadyNodes | []String | The name of the node whose bridge network is not ready |
vlans | []String | The name of the vlan to which the bridge network is bound |
conditions | []ProviderNetworkCondition | ProviderNetwork status change information, refer to the beginning of the document for the definition of Condition |
Security Configuration¶
SecurityGroup¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value SecurityGroup |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | SecurityGroupSpec | SecurityGroup specific configuration information |
status | SecurityGroupStatus | SecurityGroup status information |
SecurityGroupSpec¶
Property Name | Type | Description |
---|---|---|
ingressRules | []SecurityGroupRule | Ingress security group rules |
egressRules | []SecurityGroupRule | Egress security group rules |
allowSameGroupTraffic | Bool | Whether to allow traffic within the same security group |
SecurityGroupRule¶
Property Name | Type | Description |
---|---|---|
ipVersion | String | IP version, can be ipv4 or ipv6 |
protocol | SgProtocol | Protocol type, can be all , icmp , tcp or udp |
priority | Int | Rule priority, range 1-200, smaller value means higher priority |
remoteType | SgRemoteType | Remote type, can be address or securityGroup |
remoteAddress | String | Remote address |
remoteSecurityGroup | String | Remote security group name |
portRangeMin | Int | Port range minimum value, minimum value is 1 |
portRangeMax | Int | Port range maximum value, maximum value is 65535 |
policy | SgPolicy | Policy action, can be allow or drop |
SecurityGroupStatus¶
Property Name | Type | Description |
---|---|---|
portGroup | String | Associated port group |
allowSameGroupTraffic | Bool | Whether traffic within the same security group is allowed |
ingressMd5 | String | MD5 value of ingress rules |
egressMd5 | String | MD5 value of egress rules |
ingressLastSyncSuccess | Bool | Whether the last sync of ingress rules was successful |
egressLastSyncSuccess | Bool | Whether the last sync of egress rules was successful |
Load Balancing and Virtual IP¶
Vip¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value Vip |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VipSpec | Vip specific configuration information |
status | VipStatus | Vip status information |
VipSpec¶
Property Name | Type | Description |
---|---|---|
namespace | String | The namespace to which the VIP belongs |
subnet | String | The subnet to which the VIP belongs |
type | String | VIP type |
v4ip | String | IPv4 address |
v6ip | String | IPv6 address |
macAddress | String | MAC address |
selector | []String | Selector |
attachSubnets | []String | List of attached subnets |
VipStatus¶
Property Name | Type | Description |
---|---|---|
conditions | []VipCondition | VIP status change information, refer to the beginning of the document for the definition of Condition |
type | String | VIP type |
v4ip | String | IPv4 address |
v6ip | String | IPv6 address |
mac | String | MAC address |
SwitchLBRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value SwitchLBRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | SwitchLBRuleSpec | SwitchLBRule specific configuration information |
status | SwitchLBRuleStatus | SwitchLBRule status information |
SwitchLBRuleSpec¶
Property Name | Type | Description |
---|---|---|
vip | String | Virtual IP address |
namespace | String | Namespace |
selector | []String | Backend selector |
endpoints | []String | List of backend endpoints |
sessionAffinity | String | Session affinity |
ports | []SwitchLBRulePort | Port configuration |
SwitchLBRulePort¶
Property Name | Type | Description |
---|---|---|
name | String | Port name |
port | Int32 | Port number |
targetPort | Int32 | Target port number |
protocol | String | Protocol type |
SwitchLBRuleStatus¶
Property Name | Type | Description |
---|---|---|
conditions | []SwitchLBRuleCondition | SwitchLBRule status change information, refer to the beginning of the document for the definition of Condition |
ports | String | SwitchLBRule port information |
service | String | SwitchLBRule service name |
QoS and IP Pool Management¶
QoSPolicy¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value QoSPolicy |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | QoSPolicySpec | QoSPolicy specific configuration information |
QoSPolicySpec¶
Property Name | Type | Description |
---|---|---|
bandwidthLimitRules | QoSPolicyBandwidthLimitRules | Bandwidth limit rules |
shared | Bool | Whether it is a shared policy |
bindingType | QoSPolicyBindingType | Binding type |
IPPool¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value IPPool |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IPPoolSpec | IPPool specific configuration information |
status | IPPoolStatus | IPPool status information |
IPPoolSpec¶
Property Name | Type | Description |
---|---|---|
subnet | String | Subnet |
namespaces | []String | List of bound namespaces |
ips | []String | List of IP addresses |
IPPoolStatus¶
Property Name | Type | Description |
---|---|---|
v4AvailableIPs | BigInt | Number of available IPv4 addresses |
v4AvailableIPRange | String | Available IPv4 address range |
v4UsingIPs | BigInt | Number of used IPv4 addresses |
v4UsingIPRange | String | Used IPv4 address range |
v6AvailableIPs | BigInt | Number of available IPv6 addresses |
v6AvailableIPRange | String | Available IPv6 address range |
v6UsingIPs | BigInt | Number of used IPv6 addresses |
v6UsingIPRange | String | Used IPv6 address range |
conditions | []IPPoolCondition | IP pool status change information, refer to the beginning of the document for the definition of Condition |
NAT and Elastic IP Management¶
IptablesEIP¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value IptablesEIP |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IptablesEIPSpec | IptablesEIP specific configuration information |
status | IptablesEIPStatus | IptablesEIP status information |
IptablesEIPSpec¶
Property Name | Type | Description |
---|---|---|
v4ip | String | IPv4 address |
v6ip | String | IPv6 address |
macAddress | String | MAC address |
natGwDp | String | NAT gateway data path |
qosPolicy | String | QoS policy |
externalSubnet | String | External subnet |
IptablesEIPStatus¶
Property Name | Type | Description |
---|---|---|
ready | Bool | Whether IptablesEIP is configured successfully |
ip | String | IP address used by IptablesEIP, currently only supports IPv4 address |
redo | String | IptablesEIP CRD creation or update time |
nat | String | IptablesEIP usage type, can be fip , snat or dnat |
qosPolicy | String | QoS policy name |
conditions | []IptablesEIPCondition | IptablesEIP status change information, refer to the beginning of the document for the definition of Condition |
OvnEip¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value OvnEip |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | OvnEipSpec | OvnEip specific configuration information |
status | OvnEipStatus | OvnEip status information |
OvnEipSpec¶
Property Name | Type | Description |
---|---|---|
externalSubnet | String | External subnet |
v4Ip | String | IPv4 address |
v6Ip | String | IPv6 address |
macAddress | String | MAC address |
type | String | Type, can be lrp, lsp or nat |
IptablesFIPRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value IptablesFIPRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IptablesFIPRuleSpec | IptablesFIPRule specific configuration information |
IptablesFIPRuleSpec¶
Property Name | Type | Description |
---|---|---|
eip | String | Elastic IP address |
internalIP | String | Internal IP address |
OvnFip¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value OvnFip |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | OvnFipSpec | OvnFip specific configuration information |
status | OvnFipStatus | OvnFip status information |
OvnFipSpec¶
Property Name | Type | Description |
---|---|---|
ovnEip | String | Associated OVN EIP |
ipType | String | IP type, can be vip or ip |
ipName | String | IP name |
vpc | String | VPC |
v4Ip | String | IPv4 address |
v6Ip | String | IPv6 address |
type | String | Type, can be distributed or centralized |
IptablesDnatRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value IptablesDnatRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IptablesDnatRuleSpec | IptablesDnatRule specific configuration information |
IptablesDnatRuleSpec¶
Property Name | Type | Description |
---|---|---|
eip | String | Elastic IP address |
externalPort | String | External port |
protocol | String | Protocol type |
internalIP | String | Internal IP address |
internalPort | String | Internal port |
OvnDnatRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value OvnDnatRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | OvnDnatRuleSpec | OvnDnatRule specific configuration information |
status | OvnDnatRuleStatus | OvnDnatRule status information |
OvnDnatRuleSpec¶
Property Name | Type | Description |
---|---|---|
ovnEip | String | Associated OVN EIP |
ipType | String | IP type, can be vip or ip |
ipName | String | IP name |
internalPort | String | Internal port |
externalPort | String | External port |
protocol | String | Protocol type |
vpc | String | VPC |
v4Ip | String | IPv4 address |
v6Ip | String | IPv6 address |
OvnDnatRuleStatus¶
Property Name | Type | Description |
---|---|---|
vpc | String | VPC |
v4Eip | String | IPv4 EIP address |
v6Eip | String | IPv6 EIP address |
externalPort | String | External port |
v4Ip | String | IPv4 address |
v6Ip | String | IPv6 address |
internalPort | String | Internal port |
protocol | String | Protocol type |
ipName | String | IP name |
ready | Bool | Whether DNAT rule is configured successfully |
conditions | []OvnDnatRuleCondition | OVN DNAT rule status change information, refer to the beginning of the document for the definition of Condition |
IptablesSnatRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value IptablesSnatRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | IptablesSnatRuleSpec | IptablesSnatRule specific configuration information |
IptablesSnatRuleSpec¶
Property Name | Type | Description |
---|---|---|
eip | String | Elastic IP address |
internalCIDR | String | Internal CIDR range |
OvnSnatRule¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value OvnSnatRule |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | OvnSnatRuleSpec | OvnSnatRule specific configuration information |
status | OvnSnatRuleStatus | OvnSnatRule status information |
OvnSnatRuleSpec¶
Property Name | Type | Description |
---|---|---|
ovnEip | String | Associated OVN EIP |
vpcSubnet | String | VPC subnet |
ipName | String | IP name |
vpc | String | VPC |
v4IpCidr | String | IPv4 CIDR range |
v6IpCidr | String | IPv6 CIDR range |
VPC Advanced Features¶
VpcNatGateway¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value VpcNatGateway |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VpcNatGatewaySpec | VpcNatGateway specific configuration information |
status | VpcNatGatewayStatus | VpcNatGateway status information |
VpcNatGatewaySpec¶
Property Name | Type | Description |
---|---|---|
vpc | String | VPC name where the VPC gateway Pod is located |
subnet | String | Subnet name where the VPC gateway Pod belongs |
externalSubnets | []String | List of external subnets |
lanIp | String | Specified IP address allocated for the VPC gateway Pod |
selector | []String | Standard Kubernetes Selector matching information |
tolerations | []Toleration | Standard Kubernetes toleration information |
affinity | Affinity | Standard Kubernetes affinity configuration |
qosPolicy | String | QoS policy name |
bgpSpeaker | VpcBgpSpeaker | BGP speaker configuration |
VpcBgpSpeaker¶
Property Name | Type | Description |
---|---|---|
enabled | Bool | Whether to enable BGP speaker |
asn | Uint32 | Local autonomous system number |
remoteAsn | Uint32 | Remote autonomous system number |
neighbors | []String | BGP neighbor list |
holdTime | Duration | BGP hold time |
routerId | String | BGP router ID |
password | String | BGP authentication password |
enableGracefulRestart | Bool | Whether to enable graceful restart |
extraArgs | []String | Additional arguments list |
Route¶
Property Name | Type | Description |
---|---|---|
cidr | String | Route destination CIDR |
nextHopIP | String | Next hop IP address |
VpcNatGatewayStatus¶
Property Name | Type | Description |
---|---|---|
qosPolicy | String | QoS policy name |
externalSubnets | []String | List of external subnets |
selector | []String | Standard Kubernetes Selector matching information |
tolerations | []Toleration | Standard Kubernetes toleration information |
affinity | Affinity | Standard Kubernetes affinity configuration |
VpcEgressGateway¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value VpcEgressGateway |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VpcEgressGatewaySpec | VpcEgressGateway specific configuration information |
status | VpcEgressGatewayStatus | VpcEgressGateway status information |
VpcEgressGatewaySpec¶
Property Name | Type | Description |
---|---|---|
vpc | String | VPC |
replicas | Int32 | Number of replicas |
prefix | String | Name prefix |
image | String | Container image |
internalSubnet | String | Internal subnet |
externalSubnet | String | External subnet |
internalIPs | []String | List of internal IPs |
externalIPs | []String | List of external IPs |
trafficPolicy | String | Traffic policy |
VpcDns¶
Property Name | Type | Description |
---|---|---|
apiVersion | String | Standard Kubernetes version information field, all custom resources have this value as kubeovn.io/v1 |
kind | String | Standard Kubernetes resource type field, all instances of this resource will have the value VpcDns |
metadata | ObjectMeta | Standard Kubernetes resource metadata information |
spec | VpcDNSSpec | VpcDns specific configuration information |
status | VpcDNSStatus | VpcDns status information |
VpcDNSSpec¶
Property Name | Type | Description |
---|---|---|
replicas | Int32 | Number of replicas |
vpc | String | VPC |
subnet | String | Subnet |