 Documentation
      ¶
      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 DeviceType
- type InterfaceInfo
- type MultitenantPodNetworkConfig
- type MultitenantPodNetworkConfigList
- type MultitenantPodNetworkConfigSpec
- type MultitenantPodNetworkConfigStatus
- type NodeInfo
- type NodeInfoList
- type NodeInfoSpec
- 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 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"`
	// 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"`
}
    NodeInfo is the Schema for the NodeInfo API +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 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.