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.
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.