v1alpha1¶
| Metadata | Value |
|---|---|
| Group | juneau.loutres.me |
| Version | |
| Module | github.com/1outres/juneau/controller/api/v1alpha1 |
| Property Optionality |
AddressPool¶
AddressPool is the Schema for the addresspools API.
Used by: AddressPoolList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | AddressPoolSpec | |
| status | AddressPoolStatus |
AddressPoolSpec¶
| Property | Description | Type |
|---|---|---|
| addresses | string[] | |
| advertiseMode | AddressPoolAdvertiseMode |
AddressPoolStatus¶
AddressPoolList¶
AddressPoolList contains a list of AddressPool.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | AddressPool[] |
AllocationClaim¶
AllocationClaim is the Schema for the allocationclaims API.
Used by: AllocationClaimList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | AllocationClaimSpec | |
| status | AllocationClaimStatus |
AllocationClaimSpec¶
| Property | Description | Type |
|---|---|---|
| allocationFilter | AllocationFilter restricts the candidate space inside the pools. Used when a consumer wants to take from a specific subset of CIDRs. | AllocationFilter |
| attribute | Attribute identifies the target field on the owning resource, for example status.vni or status.tableID. | string |
| poolRefs | PoolRefs lists candidate pools, evaluated in order. The first pool that has a free value satisfying the claim wins. | AllocationPoolReference[] |
| releaseAfter | ReleaseAfter specifies how long the AllocationLease should outlive this claim. While the lease is alive, no other claim can take the same value, and a re-created claim with the same identity will inherit the same value. When unset, the lease is deleted immediately alongside the claim. | metav1.Duration |
| requestedIP | RequestedIP pins a specific value for ip-typed pools. Must be a valid IPv4/IPv6 string and must fall inside one of the candidate pools' CIDRs (further restricted by AllocationFilter when set). | string |
| requestedNumber | RequestedNumber pins a specific value for number-typed pools. | uint64 |
| resourceRef | AllocationResourceReference |
AllocationClaimStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | AllocationClaimPhase | |
| value | AllocationValue |
AllocationClaimList¶
AllocationClaimList contains a list of AllocationClaim.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | AllocationClaim[] |
AllocationLease¶
AllocationLease is the Schema for the allocationleases API.
Used by: AllocationLeaseList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | AllocationLeaseSpec | |
| status | AllocationLeaseStatus |
AllocationLeaseSpec¶
| Property | Description | Type |
|---|---|---|
| ownerDeletionTimestamp | OwnerDeletionTimestamp records when the owning AllocationClaim was deleted. While unset, the lease is considered Active and will not be reaped. Once set, the lease is treated as Released and the controller will delete it after TTLSeconds elapses. | metav1.Time |
| poolRef | PoolRef references the AllocationPool that owns this lease via metadata.ownerReferences. The pool name is also kept here for efficient field-indexed lookups. | AllocationPoolReference |
| reuseKey | ReuseKey identifies the upstream owner so that a re-created AllocationClaim with the same identity can recover the value. | AllocationResourceReference |
| ttlSeconds | TTLSeconds is the grace period applied after OwnerDeletionTimestamp. Copied from the originating AllocationClaim.spec.releaseAfter. | int32 |
| value | Value is the reserved address or number. | AllocationValue |
AllocationLeaseStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| expiresAt | metav1.Time | |
| observedGeneration | int64 | |
| phase | AllocationLeasePhase |
AllocationLeaseList¶
AllocationLeaseList contains a list of AllocationLease.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | AllocationLease[] |
AllocationPool¶
AllocationPool is the Schema for the allocationpools API.
Used by: AllocationPoolList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | AllocationPoolSpec | |
| status | AllocationPoolStatus |
AllocationPoolSpec¶
| Property | Description | Type |
|---|---|---|
| ip | AllocationPoolIPSpec | |
| number | AllocationPoolNumberSpec | |
| strategy | AllocationStrategy | |
| type | AllocationType |
AllocationPoolStatus¶
| Property | Description | Type |
|---|---|---|
| allocationVersion | uint64 | |
| conditions | metav1.Condition[] | |
| lastAllocatedIP | string | |
| lastAllocatedNumber | uint64 | |
| observedGeneration | int64 |
AllocationPoolList¶
AllocationPoolList contains a list of AllocationPool.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | AllocationPool[] |
BGPAdvertisement¶
BGPAdvertisement is the Schema for the bgpadvertisements API.
Used by: BGPAdvertisementList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | BGPAdvertisementSpec | |
| status | BGPAdvertisementStatus |
BGPAdvertisementSpec¶
| Property | Description | Type |
|---|---|---|
| addressPools | string[] | |
| nodeName | NodeName, if non-empty, scopes the advertisement to a single node: only the bgp-speaker on the matching node emits the BGP route. When empty, every bgp-speaker advertises the configured prefixes. | string |
| prefix | Prefix, if non-empty, restricts the advertisement to a single CIDR prefix instead of advertising every CIDR backing the referenced AddressPool(s). The prefix must be contained in one of the referenced AddressPools' CIDRs. | string |
BGPAdvertisementStatus¶
BGPAdvertisementList¶
BGPAdvertisementList contains a list of BGPAdvertisement.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | BGPAdvertisement[] |
BGPNodeState¶
BGPNodeState is the Schema for the bgpnodestates API.
Used by: BGPNodeStateList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | BGPNodeStateSpec | |
| status | BGPNodeStateStatus |
BGPNodeStateSpec¶
BGPNodeStateStatus¶
| Property | Description | Type |
|---|---|---|
| advertisements | BGPNodeStateAdvertisement[] | |
| bgpSessions | BGPNodeStateSession[] | |
| conditions | metav1.Condition[] | |
| errors | BGPNodeStateError[] | |
| heartbeat | metav1.Time |
BGPNodeStateList¶
BGPNodeStateList contains a list of BGPNodeState.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | BGPNodeState[] |
BGPPeer¶
BGPPeer is the Schema for the bgppeers API.
Used by: BGPPeerList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | BGPPeerSpec | |
| status | BGPPeerStatus |
BGPPeerSpec¶
| Property | Description | Type |
|---|---|---|
| myASN | uint32 | |
| peerAddress | string | |
| peerASN | uint32 | |
| peerPort | uint16 |
BGPPeerStatus¶
BGPPeerList¶
BGPPeerList contains a list of BGPPeer.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | BGPPeer[] |
ElasticIP¶
ElasticIP is the Schema for the elasticips API.
Used by: ElasticIPList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | ElasticIPSpec | |
| status | ElasticIPStatus |
ElasticIPSpec¶
| Property | Description | Type |
|---|---|---|
| externalNetwork | string Required | |
| requestedIP | RequestedIP optionally pins a specific address. The address must fall inside one of the AddressPools attached to the referenced ExternalNetwork. When unset (empty string) the controller picks the first available address. | string |
ElasticIPStatus¶
| Property | Description | Type |
|---|---|---|
| address | string | |
| attachmentName | string | |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | ElasticIPPhase |
ElasticIPAttachment¶
ElasticIPAttachment is the Schema for the elasticipattachments API.
Used by: ElasticIPAttachmentList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | ElasticIPAttachmentSpec | |
| status | ElasticIPAttachmentStatus |
ElasticIPAttachmentSpec¶
| Property | Description | Type |
|---|---|---|
| elasticIPRef | ElasticIPAttachmentElasticIPRef | |
| targetRef | ElasticIPAttachmentTargetRef |
ElasticIPAttachmentStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| elasticIP | string | |
| nodeName | string | |
| observedGeneration | int64 | |
| phase | ElasticIPAttachmentPhase | |
| podIP | string |
ElasticIPAttachmentList¶
ElasticIPAttachmentList contains a list of ElasticIPAttachment.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | ElasticIPAttachment[] |
ElasticIPList¶
ElasticIPList contains a list of ElasticIP.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | ElasticIP[] |
ExternalNetwork¶
ExternalNetwork is the Schema for the externalnetworks API.
Used by: ExternalNetworkList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | ExternalNetworkSpec | |
| status | ExternalNetworkStatus |
ExternalNetworkSpec¶
| Property | Description | Type |
|---|---|---|
| addressPools | string[] | |
| type | ExternalNetworkType |
ExternalNetworkStatus¶
ExternalNetworkAttachment¶
ExternalNetworkAttachment is the Schema for the externalnetworkattachments API.
Used by: ExternalNetworkAttachmentList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | ExternalNetworkAttachmentSpec | |
| status | ExternalNetworkAttachmentStatus |
ExternalNetworkAttachmentSpec¶
| Property | Description | Type |
|---|---|---|
| externalNetwork | string | |
| nodeName | string |
ExternalNetworkAttachmentStatus¶
| Property | Description | Type |
|---|---|---|
| assignedIP | AssignedIP is the per-(ExternalNetwork, Node) NAPT source IP allocated for this attachment. Populated by the reconciler once the underlying AllocationClaim resolves to an address. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 |
ExternalNetworkAttachmentList¶
ExternalNetworkAttachmentList contains a list of ExternalNetworkAttachment.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | ExternalNetworkAttachment[] |
ExternalNetworkList¶
ExternalNetworkList contains a list of ExternalNetwork.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | ExternalNetwork[] |
NATGateway¶
NATGateway is the Schema for the natgateways API.
Used by: NATGatewayList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | NATGatewaySpec | |
| status | NATGatewayStatus |
NATGatewaySpec¶
| Property | Description | Type |
|---|---|---|
| externalNetwork | string | |
| vpc | string |
NATGatewayStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| gatewayID | GatewayID is the cluster-wide identifier allocated for this NATGateway. It is referenced by the data plane to look up per-(node, ExternalNetwork) NAPT source IPs. | uint32 |
| observedGeneration | int64 |
NATGatewayList¶
NATGatewayList contains a list of NATGateway.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | NATGateway[] |
NetworkEndpoint¶
NetworkEndpoint is the Schema for the networkendpoints API.
Used by: NetworkEndpointList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | NetworkEndpointSpec | |
| status | NetworkEndpointStatus |
NetworkEndpointSpec¶
| Property | Description | Type |
|---|---|---|
| address | Address is the L3 identity in CIDR form (e.g. "10.0.0.5/24"). | string |
| attachment | Attachment describes the local kernel iface that backs this endpoint on Spec.NodeName. Populated by the local daemon. | NetworkEndpointAttachment |
| kind | Kind identifies what produced this endpoint. | EndpointKind |
| macAddress | MACAddress is the L2 identity used as the destination MAC for this endpoint on the overlay. Always required for endpoints that participate in arp/fdb (i.e. all Kind=Pod and Kind=Node). | string |
| nodeName | NodeName pins the endpoint to a specific node. The daemon on this node owns the Attachment fields. | string |
| podRef | PodRef is required when Kind=Pod and otherwise omitted. | NetworkEndpointPodReference |
| subnet | Subnet is the L2 segment this endpoint participates in. | string |
NetworkEndpointStatus¶
| Property | Description | Type |
|---|---|---|
| nodeIP | NodeIP is the underlay IP of Spec.NodeName, populated by the controller. Used by remote daemons to populate fdb VTEP entries. | string |
NetworkEndpointList¶
NetworkEndpointList contains a list of NetworkEndpoint.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | NetworkEndpoint[] |
NetworkInterface¶
NetworkInterface is the Schema for the networkinterfaces API.
Used by: NetworkInterfaceList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | NetworkInterfaceSpec | |
| status | NetworkInterfaceStatus |
NetworkInterfaceSpec¶
| Property | Description | Type |
|---|---|---|
| address | string | |
| nodeName | string | |
| podRef | NetworkInterfacePodReference | |
| subnet | string |
NetworkInterfaceStatus¶
| Property | Description | Type |
|---|---|---|
| address | string | |
| allocationClaim | AllocationClaim names the cluster-scoped AllocationClaim that the reconciler maintains for this interface's IP reservation. Useful only for debugging — daemon/CNI consumers should rely on Address. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | NetworkInterfacePhase | |
| routes | NetworkRoute[] |
NetworkInterfaceList¶
NetworkInterfaceList contains a list of NetworkInterface.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | NetworkInterface[] |
RouteTable¶
RouteTable is the Schema for the routetables API.
Used by: RouteTableList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | RouteTableSpec | |
| status | RouteTableStatus |
RouteTableSpec¶
| Property | Description | Type |
|---|---|---|
| routes | Route[] | |
| vpc | string |
RouteTableStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| routes | Route[] | |
| tableID | uint32 |
RouteTableList¶
RouteTableList contains a list of RouteTable.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | RouteTable[] |
ServiceNATAttachment¶
ServiceNATAttachment is the Schema for the servicenatattachments API.
One ServiceNATAttachment exists per Node and represents the SNAT source IP that traffic from non-default Vpcs (with EnableService enabled) takes when reaching shared Services in the default Vpc. Resources are owned by the default Vpc and fanned out by the VpcReconciler.
Used by: ServiceNATAttachmentList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | ServiceNATAttachmentSpec | |
| status | ServiceNATAttachmentStatus |
ServiceNATAttachmentSpec¶
| Property | Description | Type |
|---|---|---|
| nodeName | string |
ServiceNATAttachmentStatus¶
| Property | Description | Type |
|---|---|---|
| assignedIP | AssignedIP is the per-Node SNAT source IP used to forward traffic from non-default Vpcs into shared Services hosted in the default Vpc. Allocated from the default Subnet's IP pool by the ServiceNATAttachmentReconciler. | string |
| assignedMAC | AssignedMAC is the synthetic MAC paired with AssignedIP, published through a derived NetworkEndpoint so the default Vpc fabric can resolve the SNAT IP via ARP/fdb back to this Node. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 |
ServiceNATAttachmentList¶
ServiceNATAttachmentList contains a list of ServiceNATAttachment.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | ServiceNATAttachment[] |
Subnet¶
Subnet is the Schema for the subnets API.
Used by: SubnetList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | SubnetSpec | |
| status | SubnetStatus |
SubnetSpec¶
| Property | Description | Type |
|---|---|---|
| cidr | string | |
| routeTable | RouteTable selects which RouteTable governs traffic from Pods in this Subnet. Empty means "use the owning Vpc's main RouteTable", which preserves the original behaviour. The referenced RouteTable must belong to the same Vpc. | string |
| vpc | string |
SubnetStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| gateway | string | |
| gatewayMAC | string | |
| observedGeneration | int64 | |
| vni | uint32 |
SubnetList¶
SubnetList contains a list of Subnet.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | Subnet[] |
Vpc¶
Vpc is the Schema for the vpcs API.
Used by: VpcList.items.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ObjectMeta | ||
| spec | VpcSpec | |
| status | VpcStatus |
VpcSpec¶
| Property | Description | Type |
|---|---|---|
| enableService | EnableService enables Service routing within this VPC. When true, the controller injects a Service-typed route into every RouteTable belonging to this VPC, so Pods in the VPC can reach Services in it. | bool |
VpcStatus¶
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| mainRouteTable | string | |
| observedGeneration | int64 | |
| vpcID | uint32 |
VpcList¶
VpcList contains a list of Vpc.
| Property | Description | Type |
|---|---|---|
| metav1.TypeMeta | ||
| metav1.ListMeta | ||
| items | Vpc[] |
AddressPoolSpec¶
AddressPoolSpec defines the desired state of AddressPool.
Used by: AddressPool.spec.
| Property | Description | Type |
|---|---|---|
| addresses | string[] | |
| advertiseMode | AddressPoolAdvertiseMode |
AllocationClaimSpec¶
AllocationClaimSpec defines the desired state of AllocationClaim.
Used by: AllocationClaim.spec.
| Property | Description | Type |
|---|---|---|
| allocationFilter | AllocationFilter restricts the candidate space inside the pools. Used when a consumer wants to take from a specific subset of CIDRs. | AllocationFilter |
| attribute | Attribute identifies the target field on the owning resource, for example status.vni or status.tableID. | string |
| poolRefs | PoolRefs lists candidate pools, evaluated in order. The first pool that has a free value satisfying the claim wins. | AllocationPoolReference[] |
| releaseAfter | ReleaseAfter specifies how long the AllocationLease should outlive this claim. While the lease is alive, no other claim can take the same value, and a re-created claim with the same identity will inherit the same value. When unset, the lease is deleted immediately alongside the claim. | metav1.Duration |
| requestedIP | RequestedIP pins a specific value for ip-typed pools. Must be a valid IPv4/IPv6 string and must fall inside one of the candidate pools' CIDRs (further restricted by AllocationFilter when set). | string |
| requestedNumber | RequestedNumber pins a specific value for number-typed pools. | uint64 |
| resourceRef | AllocationResourceReference |
AllocationClaimStatus¶
AllocationClaimStatus defines the observed state of AllocationClaim.
Used by: AllocationClaim.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | AllocationClaimPhase | |
| value | AllocationValue |
AllocationLeaseSpec¶
AllocationLeaseSpec defines the desired state of AllocationLease.
AllocationLease records a single (pool, value) reservation that survives the deletion of its owning AllocationClaim. While a lease exists no other claim can take the same value, and a claim re-created with the same ReuseKey will inherit the recorded value. Leases are managed entirely by the AllocationClaim controller; consumers of the allocation framework should never create or modify AllocationLease objects directly.
Used by: AllocationLease.spec.
| Property | Description | Type |
|---|---|---|
| ownerDeletionTimestamp | OwnerDeletionTimestamp records when the owning AllocationClaim was deleted. While unset, the lease is considered Active and will not be reaped. Once set, the lease is treated as Released and the controller will delete it after TTLSeconds elapses. | metav1.Time |
| poolRef | PoolRef references the AllocationPool that owns this lease via metadata.ownerReferences. The pool name is also kept here for efficient field-indexed lookups. | AllocationPoolReference |
| reuseKey | ReuseKey identifies the upstream owner so that a re-created AllocationClaim with the same identity can recover the value. | AllocationResourceReference |
| ttlSeconds | TTLSeconds is the grace period applied after OwnerDeletionTimestamp. Copied from the originating AllocationClaim.spec.releaseAfter. | int32 |
| value | Value is the reserved address or number. | AllocationValue |
AllocationLeaseStatus¶
AllocationLeaseStatus defines the observed state of AllocationLease.
Used by: AllocationLease.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| expiresAt | metav1.Time | |
| observedGeneration | int64 | |
| phase | AllocationLeasePhase |
AllocationPoolSpec¶
AllocationPoolSpec defines the desired state of AllocationPool.
Used by: AllocationPool.spec.
| Property | Description | Type |
|---|---|---|
| ip | AllocationPoolIPSpec | |
| number | AllocationPoolNumberSpec | |
| strategy | AllocationStrategy | |
| type | AllocationType |
AllocationPoolStatus¶
AllocationPoolStatus defines the observed state of AllocationPool.
Used by: AllocationPool.status.
| Property | Description | Type |
|---|---|---|
| allocationVersion | uint64 | |
| conditions | metav1.Condition[] | |
| lastAllocatedIP | string | |
| lastAllocatedNumber | uint64 | |
| observedGeneration | int64 |
BGPAdvertisementSpec¶
BGPAdvertisementSpec defines the desired state of BGPAdvertisement.
Used by: BGPAdvertisement.spec.
| Property | Description | Type |
|---|---|---|
| addressPools | string[] | |
| nodeName | NodeName, if non-empty, scopes the advertisement to a single node: only the bgp-speaker on the matching node emits the BGP route. When empty, every bgp-speaker advertises the configured prefixes. | string |
| prefix | Prefix, if non-empty, restricts the advertisement to a single CIDR prefix instead of advertising every CIDR backing the referenced AddressPool(s). The prefix must be contained in one of the referenced AddressPools' CIDRs. | string |
BGPNodeStateStatus¶
BGPNodeStateStatus defines the observed state of BGPNodeState.
Used by: BGPNodeState.status.
| Property | Description | Type |
|---|---|---|
| advertisements | BGPNodeStateAdvertisement[] | |
| bgpSessions | BGPNodeStateSession[] | |
| conditions | metav1.Condition[] | |
| errors | BGPNodeStateError[] | |
| heartbeat | metav1.Time |
BGPPeerSpec¶
BGPPeerSpec defines the desired state of BGPPeer.
Used by: BGPPeer.spec.
| Property | Description | Type |
|---|---|---|
| myASN | uint32 | |
| peerAddress | string | |
| peerASN | uint32 | |
| peerPort | uint16 |
ElasticIPAttachmentSpec¶
ElasticIPAttachmentSpec defines the desired state of ElasticIPAttachment.
Used by: ElasticIPAttachment.spec.
| Property | Description | Type |
|---|---|---|
| elasticIPRef | ElasticIPAttachmentElasticIPRef | |
| targetRef | ElasticIPAttachmentTargetRef |
ElasticIPAttachmentStatus¶
ElasticIPAttachmentStatus defines the observed state of ElasticIPAttachment.
Used by: ElasticIPAttachment.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| elasticIP | string | |
| nodeName | string | |
| observedGeneration | int64 | |
| phase | ElasticIPAttachmentPhase | |
| podIP | string |
ElasticIPSpec¶
ElasticIPSpec defines the desired state of ElasticIP.
Used by: ElasticIP.spec.
| Property | Description | Type |
|---|---|---|
| externalNetwork | string Required | |
| requestedIP | RequestedIP optionally pins a specific address. The address must fall inside one of the AddressPools attached to the referenced ExternalNetwork. When unset (empty string) the controller picks the first available address. | string |
ElasticIPStatus¶
ElasticIPStatus defines the observed state of ElasticIP.
Used by: ElasticIP.status.
| Property | Description | Type |
|---|---|---|
| address | string | |
| attachmentName | string | |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | ElasticIPPhase |
ExternalNetworkAttachmentSpec¶
ExternalNetworkAttachmentSpec defines the desired state of ExternalNetworkAttachment.
Used by: ExternalNetworkAttachment.spec.
| Property | Description | Type |
|---|---|---|
| externalNetwork | string | |
| nodeName | string |
ExternalNetworkAttachmentStatus¶
ExternalNetworkAttachmentStatus defines the observed state of ExternalNetworkAttachment.
Used by: ExternalNetworkAttachment.status.
| Property | Description | Type |
|---|---|---|
| assignedIP | AssignedIP is the per-(ExternalNetwork, Node) NAPT source IP allocated for this attachment. Populated by the reconciler once the underlying AllocationClaim resolves to an address. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 |
ExternalNetworkSpec¶
ExternalNetworkSpec defines the desired state of ExternalNetwork.
Used by: ExternalNetwork.spec.
| Property | Description | Type |
|---|---|---|
| addressPools | string[] | |
| type | ExternalNetworkType |
NATGatewaySpec¶
NATGatewaySpec defines the desired state of NATGateway.
Used by: NATGateway.spec.
| Property | Description | Type |
|---|---|---|
| externalNetwork | string | |
| vpc | string |
NATGatewayStatus¶
NATGatewayStatus defines the observed state of NATGateway.
Used by: NATGateway.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| gatewayID | GatewayID is the cluster-wide identifier allocated for this NATGateway. It is referenced by the data plane to look up per-(node, ExternalNetwork) NAPT source IPs. | uint32 |
| observedGeneration | int64 |
NetworkEndpointSpec¶
NetworkEndpointSpec defines the desired state of NetworkEndpoint.
Used by: NetworkEndpoint.spec.
| Property | Description | Type |
|---|---|---|
| address | Address is the L3 identity in CIDR form (e.g. "10.0.0.5/24"). | string |
| attachment | Attachment describes the local kernel iface that backs this endpoint on Spec.NodeName. Populated by the local daemon. | NetworkEndpointAttachment |
| kind | Kind identifies what produced this endpoint. | EndpointKind |
| macAddress | MACAddress is the L2 identity used as the destination MAC for this endpoint on the overlay. Always required for endpoints that participate in arp/fdb (i.e. all Kind=Pod and Kind=Node). | string |
| nodeName | NodeName pins the endpoint to a specific node. The daemon on this node owns the Attachment fields. | string |
| podRef | PodRef is required when Kind=Pod and otherwise omitted. | NetworkEndpointPodReference |
| subnet | Subnet is the L2 segment this endpoint participates in. | string |
NetworkEndpointStatus¶
NetworkEndpointStatus defines the observed state of NetworkEndpoint.
Used by: NetworkEndpoint.status.
| Property | Description | Type |
|---|---|---|
| nodeIP | NodeIP is the underlay IP of Spec.NodeName, populated by the controller. Used by remote daemons to populate fdb VTEP entries. | string |
NetworkInterfaceSpec¶
NetworkInterfaceSpec defines the desired state of NetworkInterface.
Used by: NetworkInterface.spec.
| Property | Description | Type |
|---|---|---|
| address | string | |
| nodeName | string | |
| podRef | NetworkInterfacePodReference | |
| subnet | string |
NetworkInterfaceStatus¶
NetworkInterfaceStatus defines the observed state of NetworkInterface.
Used by: NetworkInterface.status.
| Property | Description | Type |
|---|---|---|
| address | string | |
| allocationClaim | AllocationClaim names the cluster-scoped AllocationClaim that the reconciler maintains for this interface's IP reservation. Useful only for debugging — daemon/CNI consumers should rely on Address. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| phase | NetworkInterfacePhase | |
| routes | NetworkRoute[] |
RouteTableSpec¶
RouteTableSpec defines the desired state of RouteTable.
Used by: RouteTable.spec.
| Property | Description | Type |
|---|---|---|
| routes | Route[] | |
| vpc | string |
RouteTableStatus¶
RouteTableStatus defines the observed state of RouteTable.
Used by: RouteTable.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| observedGeneration | int64 | |
| routes | Route[] | |
| tableID | uint32 |
ServiceNATAttachmentSpec¶
ServiceNATAttachmentSpec defines the desired state of ServiceNATAttachment.
Used by: ServiceNATAttachment.spec.
| Property | Description | Type |
|---|---|---|
| nodeName | string |
ServiceNATAttachmentStatus¶
ServiceNATAttachmentStatus defines the observed state of ServiceNATAttachment.
Used by: ServiceNATAttachment.status.
| Property | Description | Type |
|---|---|---|
| assignedIP | AssignedIP is the per-Node SNAT source IP used to forward traffic from non-default Vpcs into shared Services hosted in the default Vpc. Allocated from the default Subnet's IP pool by the ServiceNATAttachmentReconciler. | string |
| assignedMAC | AssignedMAC is the synthetic MAC paired with AssignedIP, published through a derived NetworkEndpoint so the default Vpc fabric can resolve the SNAT IP via ARP/fdb back to this Node. | string |
| conditions | metav1.Condition[] | |
| observedGeneration | int64 |
SubnetSpec¶
SubnetSpec defines the desired state of Subnet.
Used by: Subnet.spec.
| Property | Description | Type |
|---|---|---|
| cidr | string | |
| routeTable | RouteTable selects which RouteTable governs traffic from Pods in this Subnet. Empty means "use the owning Vpc's main RouteTable", which preserves the original behaviour. The referenced RouteTable must belong to the same Vpc. | string |
| vpc | string |
SubnetStatus¶
SubnetStatus defines the observed state of Subnet.
Used by: Subnet.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| gateway | string | |
| gatewayMAC | string | |
| observedGeneration | int64 | |
| vni | uint32 |
VpcSpec¶
VpcSpec defines the desired state of Vpc.
Used by: Vpc.spec.
| Property | Description | Type |
|---|---|---|
| enableService | EnableService enables Service routing within this VPC. When true, the controller injects a Service-typed route into every RouteTable belonging to this VPC, so Pods in the VPC can reach Services in it. | bool |
VpcStatus¶
VpcStatus defines the observed state of Vpc.
Used by: Vpc.status.
| Property | Description | Type |
|---|---|---|
| conditions | metav1.Condition[] | |
| mainRouteTable | string | |
| observedGeneration | int64 | |
| vpcID | uint32 |
AddressPoolAdvertiseMode¶
Used by: AddressPoolSpec.advertiseMode.
AllocationClaimPhase¶
Used by: AllocationClaimStatus.phase.
AllocationFilter¶
Used by: AllocationClaimSpec.allocationFilter.
| Property | Description | Type |
|---|---|---|
| cidrs | CIDRs further narrow the candidate address space inside ip-typed pools. Each entry must be a subset of one of the pool CIDRs. | string[] |
AllocationLeasePhase¶
Used by: AllocationLeaseStatus.phase.
AllocationPoolIPSpec¶
Used by: AllocationPoolSpec.ip.
| Property | Description | Type |
|---|---|---|
| cidrs | CIDR ranges that participate in this pool. The union forms the candidate address space. | string[] |
| excluded | Excluded lists individual addresses that must never be allocated. Typically populated with reserved IPs such as gateway, network or broadcast addresses. | string[] |
AllocationPoolNumberSpec¶
Used by: AllocationPoolSpec.number.
| Property | Description | Type |
|---|---|---|
| max | uint64 | |
| min | uint64 |
AllocationPoolReference¶
Used by: AllocationClaimSpec.poolRefs, and AllocationLeaseSpec.poolRef.
| Property | Description | Type |
|---|---|---|
| name | string |
AllocationResourceReference¶
Used by: AllocationClaimSpec.resourceRef, and AllocationLeaseSpec.reuseKey.
| Property | Description | Type |
|---|---|---|
| apiVersion | string | |
| kind | string | |
| name | string | |
| namespace | Namespace of the referenced resource. Required when the owner is a namespaced resource; omit for cluster-scoped owners. | string |
AllocationStrategy¶
Used by: AllocationPoolSpec.strategy.
AllocationType¶
Used by: AllocationPoolSpec.type.
AllocationValue¶
Used by: AllocationClaimStatus.value, and AllocationLeaseSpec.value.
| Property | Description | Type |
|---|---|---|
| ip | string | |
| number | uint64 |
BGPNodeStateAdvertisement¶
Used by: BGPNodeStateStatus.advertisements.
| Property | Description | Type |
|---|---|---|
| addressPool | string | |
| lastSyncedAt | metav1.Time | |
| prefixes | Prefixes is the set of CIDRs that bgp-speaker intends to advertise from this AddressPool. Derived from AddressPool.spec.addresses at reconcile time, not observed on the wire (BIRD BMP does not expose adj-RIB-out). | string[] |
BGPNodeStateError¶
Used by: BGPNodeStateStatus.errors.
| Property | Description | Type |
|---|---|---|
| lastSeen | metav1.Time | |
| message | string | |
| resourceKind | string | |
| resourceName | string |
BGPNodeStateSession¶
Used by: BGPNodeStateStatus.bgpSessions.
| Property | Description | Type |
|---|---|---|
| lastError | string | |
| peerAddress | PeerAddress is the BGP peer's IP address as observed on the wire via BMP. Always set. | string |
| peerName | PeerName is the BGPPeer resource name that configured this session. Empty when the BGPPeer resource could not be resolved (e.g. deleted but session still active, or bird.conf not yet reloaded). | string |
| state | string | |
| upSince | metav1.Time |
ElasticIPAttachmentElasticIPRef¶
Used by: ElasticIPAttachmentSpec.elasticIPRef.
| Property | Description | Type |
|---|---|---|
| name | string |
ElasticIPAttachmentPhase¶
Used by: ElasticIPAttachmentStatus.phase.
ElasticIPAttachmentTargetRef¶
Used by: ElasticIPAttachmentSpec.targetRef.
| Property | Description | Type |
|---|---|---|
| networkInterfaceName | string |
ElasticIPPhase¶
Used by: ElasticIPStatus.phase.
EndpointKind¶
EndpointKind enumerates the kinds of network endpoints that can join an L2 segment (Subnet) on the data plane.
The data plane reconcilers (arp/fdb/pod-iface/attacher) are kind-agnostic; Kind exists for observability, validation (kind-specific required fields), and provider-specific bookkeeping (e.g. PodRef back-pointer for Kind=Pod).
Used by: NetworkEndpointSpec.kind.
ExternalNetworkType¶
Used by: ExternalNetworkSpec.type.
NetworkEndpointAttachment¶
NetworkEndpointAttachment describes the local kernel iface that realizes this endpoint on Spec.NodeName. Populated by the daemon running on Spec.NodeName after the veth is created. Other nodes' daemons read the rest of Spec but ignore Attachment (ifindex is meaningless across nodes).
Used by: NetworkEndpointSpec.attachment.
| Property | Description | Type |
|---|---|---|
| hostMACAddress | HostMACAddress is the MAC of the host-side veth peer (the side that faces the host network stack on Spec.NodeName). Used by the data plane to populate ifindex_host_mac. | string |
| ifindex | Ifindex is the BPF-attached side of the veth pair on Spec.NodeName. | int |
NetworkEndpointPodReference¶
Used by: NetworkEndpointSpec.podRef.
| Property | Description | Type |
|---|---|---|
| interface | string | |
| name | string | |
| uid | string |
NetworkInterfacePhase¶
Used by: NetworkInterfaceStatus.phase.
NetworkInterfacePodReference¶
Used by: NetworkInterfaceSpec.podRef.
| Property | Description | Type |
|---|---|---|
| interface | string | |
| name | string | |
| uid | string |
NetworkRoute¶
Used by: NetworkInterfaceStatus.routes.
| Property | Description | Type |
|---|---|---|
| dst | string | |
| gw | string |
Route¶
Used by: RouteTableSpec.routes, and RouteTableStatus.routes.
| Property | Description | Type |
|---|---|---|
| dst | string | |
| subnet | string | |
| via | RouteVia |
RouteVia¶
Used by: Route.via.
| Property | Description | Type |
|---|---|---|
| endpointName | Endpoint is required when type=endpoint. Refers to a NetworkEndpoint by name. | string |
| natGateway | NATGateway is required when type=natGateway. Refers to a NATGateway by name (cluster-scoped). | string |
| type | RouteViaType |
RouteViaType¶
Used by: RouteVia.type.