Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the acn v1alpha1 API group +kubebuilder:object:generate=true +groupName=multitenancy.acn.azure.com
Index ¶
- Variables
- type DeviceInfo
- type DeviceType
- type InterfaceInfo
- type MultitenantPodNetworkConfig
- type MultitenantPodNetworkConfigList
- type MultitenantPodNetworkConfigSpec
- type MultitenantPodNetworkConfigStatus
- type NodeInfo
- type NodeInfoList
- type NodeInfoSpec
- type NodeInfoStatus
- type PNIStatus
- type PodNetwork
- type PodNetworkConfig
- type PodNetworkInstance
- type PodNetworkInstanceList
- type PodNetworkInstanceSpec
- type PodNetworkInstanceStatus
- type PodNetworkList
- type PodNetworkSpec
- type PodNetworkStatus
- type Status
Constants ¶
This section is empty.
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "multitenancy.acn.azure.com", Version: "v1alpha1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion} // AddToScheme adds the types in this group-version to the given scheme. AddToScheme = SchemeBuilder.AddToScheme )
Functions ¶
This section is empty.
Types ¶
type DeviceInfo ¶ added in v1.5.31
type DeviceInfo struct { DeviceType DeviceType `json:"deviceType,omitempty"` MacAddress string `json:"macAddress"` }
func (*DeviceInfo) DeepCopy ¶ added in v1.5.31
func (in *DeviceInfo) DeepCopy() *DeviceInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeviceInfo.
func (*DeviceInfo) DeepCopyInto ¶ added in v1.5.31
func (in *DeviceInfo) DeepCopyInto(out *DeviceInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeviceType ¶ added in v1.5.29
type DeviceType string
+kubebuilder:validation:Enum=acn.azure.com/vnet-nic;acn.azure.com/infiniband-nic
const ( DeviceTypeVnetNIC DeviceType = "acn.azure.com/vnet-nic" DeviceTypeInfiniBandNIC DeviceType = "acn.azure.com/infiniband-nic" )
type InterfaceInfo ¶ added in v1.5.29
type InterfaceInfo struct { // NCID is the network container id NCID string `json:"ncID,omitempty"` // PrimaryIP is the ip allocated to the network container // +kubebuilder:validation:Optional PrimaryIP string `json:"primaryIP,omitempty"` // MacAddress is the MAC Address of the VM's NIC which this network container was created for MacAddress string `json:"macAddress,omitempty"` // GatewayIP is the gateway ip of the injected subnet // +kubebuilder:validation:Optional GatewayIP string `json:"gatewayIP,omitempty"` // SubnetAddressSpace is the subnet address space of the injected subnet // +kubebuilder:validation:Optional SubnetAddressSpace string `json:"subnetAddressSpace,omitempty"` // DeviceType is the device type that this NC was created for DeviceType DeviceType `json:"deviceType,omitempty"` // AccelnetEnabled determines if the CNI will provision the NIC with accelerated networking enabled // +kubebuilder:validation:Optional AccelnetEnabled bool `json:"accelnetEnabled,omitempty"` }
func (*InterfaceInfo) DeepCopy ¶ added in v1.5.29
func (in *InterfaceInfo) DeepCopy() *InterfaceInfo
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InterfaceInfo.
func (*InterfaceInfo) DeepCopyInto ¶ added in v1.5.29
func (in *InterfaceInfo) DeepCopyInto(out *InterfaceInfo)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultitenantPodNetworkConfig ¶
type MultitenantPodNetworkConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec MultitenantPodNetworkConfigSpec `json:"spec,omitempty"` Status MultitenantPodNetworkConfigStatus `json:"status,omitempty"` }
MultitenantPodNetworkConfig is the Schema for the multitenantpodnetworkconfigs API +kubebuilder:resource:shortName=mtpnc,scope=Namespaced +kubebuilder:subresource:status +kubebuilder:metadata:labels=managed= +kubebuilder:metadata:labels=owner= +kubebuilder:printcolumn:name="PodNetworkInstance",type=string,JSONPath=`.spec.podNetworkInstance` +kubebuilder:printcolumn:name="PodNetwork",type=string,JSONPath=`.spec.podNetwork` +kubebuilder:printcolumn:name="PodName",type=string,JSONPath=`.spec.podName`
func (*MultitenantPodNetworkConfig) DeepCopy ¶
func (in *MultitenantPodNetworkConfig) DeepCopy() *MultitenantPodNetworkConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultitenantPodNetworkConfig.
func (*MultitenantPodNetworkConfig) DeepCopyInto ¶
func (in *MultitenantPodNetworkConfig) DeepCopyInto(out *MultitenantPodNetworkConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultitenantPodNetworkConfig) DeepCopyObject ¶
func (in *MultitenantPodNetworkConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*MultitenantPodNetworkConfig) IsReady ¶ added in v1.5.30
func (m *MultitenantPodNetworkConfig) IsReady() bool
IsReady checks if all the required fields in the MTPNC status are populated
type MultitenantPodNetworkConfigList ¶
type MultitenantPodNetworkConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []MultitenantPodNetworkConfig `json:"items"` }
MultitenantPodNetworkConfigList contains a list of PodNetworkConfig
func (*MultitenantPodNetworkConfigList) DeepCopy ¶
func (in *MultitenantPodNetworkConfigList) DeepCopy() *MultitenantPodNetworkConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultitenantPodNetworkConfigList.
func (*MultitenantPodNetworkConfigList) DeepCopyInto ¶
func (in *MultitenantPodNetworkConfigList) DeepCopyInto(out *MultitenantPodNetworkConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultitenantPodNetworkConfigList) DeepCopyObject ¶
func (in *MultitenantPodNetworkConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MultitenantPodNetworkConfigSpec ¶
type MultitenantPodNetworkConfigSpec struct { // name of PNI object from requesting cx pod // +kubebuilder:validation:Optional PodNetworkInstance string `json:"podNetworkInstance,omitempty"` // name of PN object from requesting cx pod PodNetwork string `json:"podNetwork"` // name of the requesting cx pod PodName string `json:"podName,omitempty"` }
MultitenantPodNetworkConfigSpec defines the desired state of PodNetworkConfig
func (*MultitenantPodNetworkConfigSpec) DeepCopy ¶
func (in *MultitenantPodNetworkConfigSpec) DeepCopy() *MultitenantPodNetworkConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultitenantPodNetworkConfigSpec.
func (*MultitenantPodNetworkConfigSpec) DeepCopyInto ¶
func (in *MultitenantPodNetworkConfigSpec) DeepCopyInto(out *MultitenantPodNetworkConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultitenantPodNetworkConfigStatus ¶
type MultitenantPodNetworkConfigStatus struct { // Deprecated - use InterfaceInfos // +kubebuilder:validation:Optional NCID string `json:"ncID,omitempty"` // Deprecated - use InterfaceInfos // +kubebuilder:validation:Optional PrimaryIP string `json:"primaryIP,omitempty"` // Deprecated - use InterfaceInfos // +kubebuilder:validation:Optional MacAddress string `json:"macAddress,omitempty"` // Deprecated - use InterfaceInfos // +kubebuilder:validation:Optional GatewayIP string `json:"gatewayIP,omitempty"` // InterfaceInfos describes all of the network container goal state for this Pod // +kubebuilder:validation:Optional InterfaceInfos []InterfaceInfo `json:"interfaceInfos,omitempty"` }
MultitenantPodNetworkConfigStatus defines the observed state of PodNetworkConfig
func (*MultitenantPodNetworkConfigStatus) DeepCopy ¶
func (in *MultitenantPodNetworkConfigStatus) DeepCopy() *MultitenantPodNetworkConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultitenantPodNetworkConfigStatus.
func (*MultitenantPodNetworkConfigStatus) DeepCopyInto ¶
func (in *MultitenantPodNetworkConfigStatus) DeepCopyInto(out *MultitenantPodNetworkConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeInfo ¶
type NodeInfo struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NodeInfoSpec `json:"spec,omitempty"` Status NodeInfoStatus `json:"status,omitempty"` }
NodeInfo is the Schema for the NodeInfo API +kubebuilder:subresource:status +kubebuilder:resource:shortName=ni,scope=Cluster,path=nodeinfo +kubebuilder:printcolumn:name="VMUniqueID",type=string,priority=0,JSONPath=`.spec.vmUniqueID`
func (*NodeInfo) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInfo.
func (*NodeInfo) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeInfo) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeInfoList ¶
type NodeInfoList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NodeInfo `json:"items"` }
NodeInfoList contains a list of NodeInfo
func (*NodeInfoList) DeepCopy ¶
func (in *NodeInfoList) DeepCopy() *NodeInfoList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInfoList.
func (*NodeInfoList) DeepCopyInto ¶
func (in *NodeInfoList) DeepCopyInto(out *NodeInfoList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodeInfoList) DeepCopyObject ¶
func (in *NodeInfoList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type NodeInfoSpec ¶
type NodeInfoSpec struct { // +kubebuilder:validation:Optional VMUniqueID string `json:"vmUniqueID,omitempty"` }
NodeInfoSpec defines the desired state of NodeInfo
func (*NodeInfoSpec) DeepCopy ¶
func (in *NodeInfoSpec) DeepCopy() *NodeInfoSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInfoSpec.
func (*NodeInfoSpec) DeepCopyInto ¶
func (in *NodeInfoSpec) DeepCopyInto(out *NodeInfoSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeInfoStatus ¶ added in v1.5.31
type NodeInfoStatus struct { // +kubebuilder:validation:Optional DeviceInfos []DeviceInfo `json:"deviceInfos,omitempty"` }
NodeInfoStatus defines the observed state of NodeInfo
func (*NodeInfoStatus) DeepCopy ¶ added in v1.5.31
func (in *NodeInfoStatus) DeepCopy() *NodeInfoStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeInfoStatus.
func (*NodeInfoStatus) DeepCopyInto ¶ added in v1.5.31
func (in *NodeInfoStatus) DeepCopyInto(out *NodeInfoStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PNIStatus ¶ added in v1.5.22
type PNIStatus string
PNIStatus indicates the status of PNI +kubebuilder:validation:Enum=Ready;CreateReservationSetError;PodNetworkNotReady;InsufficientIPAddressesOnSubnet
type PodNetwork ¶
type PodNetwork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PodNetworkSpec `json:"spec,omitempty"` Status PodNetworkStatus `json:"status,omitempty"` }
PodNetwork is the Schema for the PodNetworks API +kubebuilder:resource:shortName=pn,scope=Cluster +kubebuilder:subresource:status +kubebuilder:printcolumn:name="Status",type=string,priority=1,JSONPath=`.status.status` +kubebuilder:printcolumn:name="Address Prefixes",type=string,priority=1,JSONPath=`.status.addressPrefixes` +kubebuilder:printcolumn:name="Network",type=string,priority=1,JSONPath=`.spec.networkID` +kubebuilder:printcolumn:name="Subnet",type=string,priority=1,JSONPath=`.spec.subnetResourceID` +kubebuilder:printcolumn:name="SubnetGUID",type=string,priority=1,JSONPath=`.spec.subnetGUID` +kubebuilder:printcolumn:name="DeviceType",type=string,priority=1,JSONPath=`.spec.subnetGUID`
func (*PodNetwork) DeepCopy ¶
func (in *PodNetwork) DeepCopy() *PodNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetwork.
func (*PodNetwork) DeepCopyInto ¶
func (in *PodNetwork) DeepCopyInto(out *PodNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodNetwork) DeepCopyObject ¶
func (in *PodNetwork) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodNetworkConfig ¶ added in v1.5.29
type PodNetworkConfig struct { // PodNetwork is the name of a PodNetwork resource PodNetwork string `json:"podNetwork"` // PodIPReservationSize is the number of IP address to statically reserve // +kubebuilder:default=0 PodIPReservationSize int `json:"podIPReservationSize,omitempty"` }
PodNetworkConfig describes a template for how to attach a PodNetwork to a Pod
func (*PodNetworkConfig) DeepCopy ¶ added in v1.5.29
func (in *PodNetworkConfig) DeepCopy() *PodNetworkConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkConfig.
func (*PodNetworkConfig) DeepCopyInto ¶ added in v1.5.29
func (in *PodNetworkConfig) DeepCopyInto(out *PodNetworkConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodNetworkInstance ¶
type PodNetworkInstance struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec PodNetworkInstanceSpec `json:"spec,omitempty"` Status PodNetworkInstanceStatus `json:"status,omitempty"` }
PodNetworkInstance is the Schema for the PodNetworkInstances API +kubebuilder:resource:shortName=pni,scope=Namespaced +kubebuilder:subresource:status +kubebuilder:metadata:labels=managed= +kubebuilder:metadata:labels=owner= +kubebuilder:printcolumn:name="Status",type=string,JSONPath=`.status.status` +kubebuilder:printcolumn:name="PodNetworks",priority=1,type=string,JSONPath=`.spec.podNetworks`
func (*PodNetworkInstance) DeepCopy ¶
func (in *PodNetworkInstance) DeepCopy() *PodNetworkInstance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkInstance.
func (*PodNetworkInstance) DeepCopyInto ¶
func (in *PodNetworkInstance) DeepCopyInto(out *PodNetworkInstance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodNetworkInstance) DeepCopyObject ¶
func (in *PodNetworkInstance) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodNetworkInstanceList ¶
type PodNetworkInstanceList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PodNetworkInstance `json:"items"` }
PodNetworkInstanceList contains a list of PodNetworkInstance
func (*PodNetworkInstanceList) DeepCopy ¶
func (in *PodNetworkInstanceList) DeepCopy() *PodNetworkInstanceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkInstanceList.
func (*PodNetworkInstanceList) DeepCopyInto ¶
func (in *PodNetworkInstanceList) DeepCopyInto(out *PodNetworkInstanceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodNetworkInstanceList) DeepCopyObject ¶
func (in *PodNetworkInstanceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodNetworkInstanceSpec ¶
type PodNetworkInstanceSpec struct { // Deprecated - use PodNetworks // +kubebuilder:validation:Optional PodNetwork string `json:"podnetwork,omitempty"` // Deprecated - use PodNetworks // +kubebuilder:default=0 PodIPReservationSize int `json:"podIPReservationSize,omitempty"` // PodNetworkConfigs describes each PodNetwork to attach to a single Pod // optional for now in case orchestrator uses the deprecated fields // +kubebuilder:validation:Optional PodNetworkConfigs []PodNetworkConfig `json:"podNetworkConfigs"` }
PodNetworkInstanceSpec defines the desired state of PodNetworkInstance
func (*PodNetworkInstanceSpec) DeepCopy ¶
func (in *PodNetworkInstanceSpec) DeepCopy() *PodNetworkInstanceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkInstanceSpec.
func (*PodNetworkInstanceSpec) DeepCopyInto ¶
func (in *PodNetworkInstanceSpec) DeepCopyInto(out *PodNetworkInstanceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodNetworkInstanceStatus ¶
type PodNetworkInstanceStatus struct { // +kubebuilder:validation:Optional PodIPAddresses []string `json:"podIPAddresses,omitempty"` Status PNIStatus `json:"status,omitempty"` PodNetworkStatuses map[string]PNIStatus `json:"podNetworkStatuses,omitempty"` }
PodNetworkInstanceStatus defines the observed state of PodNetworkInstance
func (*PodNetworkInstanceStatus) DeepCopy ¶
func (in *PodNetworkInstanceStatus) DeepCopy() *PodNetworkInstanceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkInstanceStatus.
func (*PodNetworkInstanceStatus) DeepCopyInto ¶
func (in *PodNetworkInstanceStatus) DeepCopyInto(out *PodNetworkInstanceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodNetworkList ¶
type PodNetworkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PodNetwork `json:"items"` }
PodNetworkList contains a list of PodNetwork
func (*PodNetworkList) DeepCopy ¶
func (in *PodNetworkList) DeepCopy() *PodNetworkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkList.
func (*PodNetworkList) DeepCopyInto ¶
func (in *PodNetworkList) DeepCopyInto(out *PodNetworkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PodNetworkList) DeepCopyObject ¶
func (in *PodNetworkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PodNetworkSpec ¶
type PodNetworkSpec struct { // NetworkID is the identifier for the network, e.g. vnet guid or IB network ID // +kubebuilder:validation:Optional NetworkID string `json:"networkID,omitempty"` // DeviceType is the device type that is required by this network // +kubebuilder:validation:Optional DeviceType DeviceType `json:"deviceType,omitempty"` // customer subnet id // +kubebuilder:validation:Optional SubnetResourceID string `json:"subnetResourceID,omitempty"` // customer subnet guid // +kubebuilder:validation:Optional SubnetGUID string `json:"subnetGUID,omitempty"` // Deprecated - Use NetworkID // +kubebuilder:validation:Optional VnetGUID string `json:"vnetGUID,omitempty"` }
PodNetworkSpec defines the desired state of PodNetwork
func (*PodNetworkSpec) DeepCopy ¶
func (in *PodNetworkSpec) DeepCopy() *PodNetworkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkSpec.
func (*PodNetworkSpec) DeepCopyInto ¶
func (in *PodNetworkSpec) DeepCopyInto(out *PodNetworkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PodNetworkStatus ¶
type PodNetworkStatus struct { // +kubebuilder:validation:Optional Status Status `json:"status,omitempty"` AddressPrefixes []string `json:"addressPrefixes,omitempty"` }
PodNetworkStatus defines the observed state of PodNetwork
func (*PodNetworkStatus) DeepCopy ¶
func (in *PodNetworkStatus) DeepCopy() *PodNetworkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PodNetworkStatus.
func (*PodNetworkStatus) DeepCopyInto ¶
func (in *PodNetworkStatus) DeepCopyInto(out *PodNetworkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.