Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the network v1alpha1 API group +kubebuilder:object:generate=true +groupName=networking.tkg.tanzu.vmware.com
Index ¶
- Constants
- Variables
- type AKODeploymentConfig
- func (in *AKODeploymentConfig) DeepCopy() *AKODeploymentConfig
- func (in *AKODeploymentConfig) DeepCopyInto(out *AKODeploymentConfig)
- func (in *AKODeploymentConfig) DeepCopyObject() runtime.Object
- func (r *AKODeploymentConfig) SetupWebhookWithManager(mgr ctrl.Manager) error
- func (r *AKODeploymentConfig) ValidateCreate() error
- func (r *AKODeploymentConfig) ValidateDelete() error
- func (r *AKODeploymentConfig) ValidateUpdate(old runtime.Object) error
- type AKODeploymentConfigList
- type AKODeploymentConfigSpec
- type AKODeploymentConfigStatus
- type AKOIngressConfig
- type AKOL4Config
- type AKOLogConfig
- type AKORbacConfig
- type AVITenant
- type ControlPlaneNetwork
- type DataNetwork
- type ExtraConfigs
- type IPPool
- type NamespaceSelector
- type NetworksConfig
- type NodeNetwork
- type NodePortSelector
- type SecretRef
- type SecretReference
- type VIPNetwork
Constants ¶
const ( TKGSystemNamespace = "tkg-system" TKGClusterNameLabel = "tkg.tanzu.vmware.com/cluster-name" TKGClusterNameSpaceLabel = "tkg.tanzu.vmware.com/cluster-namespace" TKGManagememtClusterRoleLabel = "cluster-role.tkg.tanzu.vmware.com/management" TKGAddonAnnotationKey = "tkg.tanzu.vmware.com/addon-type" TKGAddOnLabelAddonNameKey = "tkg.tanzu.vmware.com/addon-name" TKGAddOnLabelClusterNameKey = "tkg.tanzu.vmware.com/cluster-name" TKGAddOnLabelClusterctlKey = "clusterctl.cluster.x-k8s.io/move" TKGAddOnSecretType = "tkg.tanzu.vmware.com/addon" TKGClusterClassAddOnSecretType = "clusterbootstrap-secret" TKGAddOnSecretDataKey = "values.yaml" TKGDataValueFormatString = "#@data/values\n#@overlay/match-child-defaults missing_ok=True\n---\n" TKGSkipDeletePkgiAnnotationKey = "run.tanzu.vmware.com/skip-packageinstall-deletion" ManagementClusterAkoDeploymentConfig = "install-ako-for-management-cluster" WorkloadClusterAkoDeploymentConfig = "install-ako-for-all" AkoUserRoleName = "ako-essential-role" ClusterFinalizer = "ako-operator.networking.tkg.tanzu.vmware.com" AkoDeploymentConfigFinalizer = "ako-operator.networking.tkg.tanzu.vmware.com" AkoDeploymentConfigKind = "AKODeploymentConfig" AkoDeploymentConfigVersion = "networking.tanzu.vmware.com/v1alpha1" AkoStatefulSetName = "ako" AkoConfigMapName = "avi-k8s-config" AkoConfigMapCloudNameKey = "cloudName" AkoConfigMapControllerIPKey = "controllerIP" AkoConfigMapVipNetworkListKey = "vipNetworkList" AkoClusterBootstrapRefNamePrefix = "load-balancer-and-ingress-service.tanzu.vmware.com" AkoPackageInstallName = "load-balancer-and-ingress-service" AkoPreferredIPAnnotation = "ako.vmware.com/load-balancer-ip" AviClusterLabel = "networking.tkg.tanzu.vmware.com/avi" AviClusterDeleteConfigLabel = "networking.tkg.tanzu.vmware.com/avi-config-delete" AviClusterSecretType = "avi.cluster.x-k8s.io/secret" AviNamespace = "avi-system" AviCredentialName = "avi-controller-credentials" AviCAName = "avi-controller-ca" AviCertificateKey = "certificateAuthorityData" AviResourceCleanupReason = "AviResourceCleanup" AviResourceCleanupSucceededCondition clusterv1.ConditionType = "AviResourceCleanupSucceeded" AviUserCleanupSucceededCondition clusterv1.ConditionType = "AviUserCleanupSucceeded" PreTerminateAnnotation = clusterv1.PreTerminateDeleteHookAnnotationPrefix + "/avi-cleanup" HAServiceName = "control-plane" HAServiceBootstrapClusterFinalizer = "ako-operator.networking.tkg.tanzu.vmware.com/ha" HAServiceAnnotationsKey = "skipnodeport.ako.vmware.com/enabled" HAAVIInfraSettingAnnotationsKey = "aviinfrasetting.ako.vmware.com/name" AKODeploymentConfigControllerName = "akodeploymentconfig-controller" )
Variables ¶
var ( // GroupVersion is group version used to register these objects GroupVersion = schema.GroupVersion{Group: "networking.tkg.tanzu.vmware.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 AKODeploymentConfig ¶
type AKODeploymentConfig struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec AKODeploymentConfigSpec `json:"spec,omitempty"` Status AKODeploymentConfigStatus `json:"status,omitempty"` }
AKODeploymentConfig is the Schema for the akodeploymentconfigs API
func (*AKODeploymentConfig) DeepCopy ¶
func (in *AKODeploymentConfig) DeepCopy() *AKODeploymentConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKODeploymentConfig.
func (*AKODeploymentConfig) DeepCopyInto ¶
func (in *AKODeploymentConfig) DeepCopyInto(out *AKODeploymentConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AKODeploymentConfig) DeepCopyObject ¶
func (in *AKODeploymentConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*AKODeploymentConfig) SetupWebhookWithManager ¶
func (r *AKODeploymentConfig) SetupWebhookWithManager(mgr ctrl.Manager) error
func (*AKODeploymentConfig) ValidateCreate ¶
func (r *AKODeploymentConfig) ValidateCreate() error
ValidateCreate implements webhook.Validator so a webhook will be registered for the type
func (*AKODeploymentConfig) ValidateDelete ¶
func (r *AKODeploymentConfig) ValidateDelete() error
ValidateDelete implements webhook.Validator so a webhook will be registered for the type
func (*AKODeploymentConfig) ValidateUpdate ¶
func (r *AKODeploymentConfig) ValidateUpdate(old runtime.Object) error
ValidateUpdate implements webhook.Validator so a webhook will be registered for the type
type AKODeploymentConfigList ¶
type AKODeploymentConfigList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []AKODeploymentConfig `json:"items"` }
AKODeploymentConfigList contains a list of AKODeploymentConfig
func (*AKODeploymentConfigList) DeepCopy ¶
func (in *AKODeploymentConfigList) DeepCopy() *AKODeploymentConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKODeploymentConfigList.
func (*AKODeploymentConfigList) DeepCopyInto ¶
func (in *AKODeploymentConfigList) DeepCopyInto(out *AKODeploymentConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*AKODeploymentConfigList) DeepCopyObject ¶
func (in *AKODeploymentConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type AKODeploymentConfigSpec ¶
type AKODeploymentConfigSpec struct { // CloudName speficies the AVI Cloud AKO will be deployed with CloudName string `json:"cloudName"` // Controller is the AVI Controller endpoint to which AKO talks to // provision Load Balancer resources // The format is [scheme://]address[:port] // * scheme http or https, defaults to https if not // specified // * address IP address of the AVI Controller // specified // * port if not specified, use default port for // the corresponding scheme Controller string `json:"controller"` // ControllerVersion is the AVI Controller version which AKO Operator and AKO talks to. // this value can be auto detected and corrected. ControllerVersion string `json:"controllerVersion,omitempty"` // ServiceEngineGroup is the group name of Service Engine that's to be used by the set // of AKO Deployments ServiceEngineGroup string `json:"serviceEngineGroup"` // Label selector for Clusters. The Clusters that are // selected by this will be the ones affected by this // AKODeploymentConfig. // It must match the Cluster labels. This field is immutable. // +optional ClusterSelector metav1.LabelSelector `json:"clusterSelector,omitempty"` // WorkloadCredentialRef points to a Secret resource which includes the username // and password to access and configure the Avi Controller. // // * username Username used with basic authentication for // the Avi REST API // * password Password used with basic authentication for // the Avi REST API // // This field is optional. When it's not specified, username/password // will be automatically generated for each Cluster and Tenant needs to // be non-nil in this case. // +optional WorkloadCredentialRef SecretReference `json:"workloadCredentialRef,omitempty"` // AdminCredentialRef points to a Secret resource which includes the username // and password to access and configure the Avi Controller. // // * username Username used with basic authentication for // the Avi REST API // * password Password used with basic authentication for // the Avi REST API // // This credential needs to be bound with admin tenant and will be used // by AKO Operator to automate configurations and operations. AdminCredentialRef SecretReference `json:"adminCredentialRef"` // CertificateAuthorityRef points to a Secret resource that includes the // AVI Controller's CA // // * certificateAuthorityData PEM-encoded certificate authority // certificates // CertificateAuthorityRef SecretReference `json:"certificateAuthorityRef"` // The AVI tenant for the current AKODeploymentConfig // This field is optional. // +optional Tenant AVITenant `json:"tenant,omitempty"` // DataNetworks describes the Data Networks the AKO will be deployed // with. // This field is immutable. DataNetwork DataNetwork `json:"dataNetwork"` // ControlPlaneNetwork describes the control plane network of the clusters selected by an akoDeploymentConfig // // +optional ControlPlaneNetwork ControlPlaneNetwork `json:"controlPlaneNetwork,omitempty"` // ExtraConfigs contains extra configurations for AKO Deployment // // +optional ExtraConfigs ExtraConfigs `json:"extraConfigs,omitempty"` }
AKODeploymentConfigSpec defines the desired state of an AKODeploymentConfig AKODeploymentConfig describes the shared configurations for AKO deployments across a set of Clusters.
func (*AKODeploymentConfigSpec) DeepCopy ¶
func (in *AKODeploymentConfigSpec) DeepCopy() *AKODeploymentConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKODeploymentConfigSpec.
func (*AKODeploymentConfigSpec) DeepCopyInto ¶
func (in *AKODeploymentConfigSpec) DeepCopyInto(out *AKODeploymentConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKODeploymentConfigStatus ¶
type AKODeploymentConfigStatus struct { // ObservedGeneration reflects the generation of the most recently // observed AKODeploymentConfig. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions defines current state of the AKODeploymentConfig. // +optional Conditions clusterv1.Conditions `json:"conditions,omitempty"` }
AKODeploymentConfigStatus defines the observed state of AKODeploymentConfig
func (*AKODeploymentConfigStatus) DeepCopy ¶
func (in *AKODeploymentConfigStatus) DeepCopy() *AKODeploymentConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKODeploymentConfigStatus.
func (*AKODeploymentConfigStatus) DeepCopyInto ¶
func (in *AKODeploymentConfigStatus) DeepCopyInto(out *AKODeploymentConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKOIngressConfig ¶
type AKOIngressConfig struct { // DisableIngressClass will prevent AKO Operator to install AKO // IngressClass into workload clusters for old version of K8s // // +optional DisableIngressClass *bool `json:"disableIngressClass,omitempty"` // DefaultIngressController bool describes ako is the default // ingress controller to use // // +optional DefaultIngressController *bool `json:"defaultIngressController,omitempty"` // ServiceType string describes ingress methods for a service // Valid value should be NodePort, ClusterIP and NodePortLocal // +kubebuilder:validation:Enum=NodePort;ClusterIP;NodePortLocal // +optional ServiceType string `json:"serviceType,omitempty"` // ShardVSSize describes ingress shared virtual service size // Valid value should be SMALL, MEDIUM, LARGE or DEDICATED, default value is SMALL // +kubebuilder:validation:Enum=SMALL;MEDIUM;LARGE;DEDICATED // +optional ShardVSSize string `json:"shardVSSize,omitempty"` // PassthroughShardSize controls the passthrough virtualservice numbers // Valid value should be SMALL, MEDIUM or LARGE, default value is SMALL // +kubebuilder:validation:Enum=SMALL;MEDIUM;LARGE // +optional PassthroughShardSize string `json:"passthroughShardSize,omitempty"` // NodeNetworkList describes the details of network and CIDRs // are used in pool placement network for vcenter cloud. Node Network details // are not needed when in NodePort mode / static routes are disabled / non vcenter clouds. // +optional NodeNetworkList []NodeNetwork `json:"nodeNetworkList,omitempty"` // NoPGForSNI describes if you want to get rid of poolgroups from SNI VSes. // Do not use this flag, if you don't want http caching, default value is false. // +optional NoPGForSNI *bool `json:"noPGForSNI,omitempty"` // Enabling this flag would tell AKO to start processing multi-cluster ingress objects // +optional EnableMCI *bool `json:"enableMCI,omitempty"` }
AKOIngressConfig contains ingress configurations for AKO Deployment
func (*AKOIngressConfig) DeepCopy ¶
func (in *AKOIngressConfig) DeepCopy() *AKOIngressConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKOIngressConfig.
func (*AKOIngressConfig) DeepCopyInto ¶
func (in *AKOIngressConfig) DeepCopyInto(out *AKOIngressConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKOL4Config ¶
type AKOL4Config struct { // DefaultDomain controls the default sub-domain to use for L4 VSes when multiple sub-domains // are configured in the cloud. // +optional DefaultDomain string `json:"defaultDomain,omitempty"` // AutoFQDN controls the FQDN generation. // Valid value should be default(<svc>.<ns>.<subdomain>), flat (<svc>-<ns>.<subdomain>) or disabled, // +kubebuilder:validation:Enum=default;flat;disabled // +optional AutoFQDN string `json:"autoFQDN,omitempty"` }
AKOL4Config contains L4 load balancer configurations for AKO Deployment
func (*AKOL4Config) DeepCopy ¶
func (in *AKOL4Config) DeepCopy() *AKOL4Config
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKOL4Config.
func (*AKOL4Config) DeepCopyInto ¶
func (in *AKOL4Config) DeepCopyInto(out *AKOL4Config)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKOLogConfig ¶
type AKOLogConfig struct { // LogLevel specifies the AKO pod log level // Valid value should be INFO, DEBUG, WARN or ERROR, default value is INFO // +kubebuilder:validation:Enum=INFO;DEBUG;WARN;ERROR // +optional LogLevel string `json:"logLevel,omitempty"` // PersistentVolumeClaim specifies if a PVC should make for AKO logging // +optional PersistentVolumeClaim string `json:"persistentVolumeClaim,omitempty"` // MountPath specifies the path to mount PVC // +optional MountPath string `json:"mountPath,omitempty"` // LogFile specifies the log file name // +optional LogFile string `json:"logFile,omitempty"` }
func (*AKOLogConfig) DeepCopy ¶
func (in *AKOLogConfig) DeepCopy() *AKOLogConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKOLogConfig.
func (*AKOLogConfig) DeepCopyInto ¶
func (in *AKOLogConfig) DeepCopyInto(out *AKOLogConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AKORbacConfig ¶
type AKORbacConfig struct { // PspPolicyAPIVersion decides the API version of the PodSecurityPolicy PspPolicyAPIVersion string `json:"pspPolicyAPIVersion,omitempty"` // PspEnabled enables the deployment of a PodSecurityPolicy that grants // AKO the proper role // +optional PspEnabled *bool `json:"pspEnabled,omitempty"` }
func (*AKORbacConfig) DeepCopy ¶
func (in *AKORbacConfig) DeepCopy() *AKORbacConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AKORbacConfig.
func (*AKORbacConfig) DeepCopyInto ¶
func (in *AKORbacConfig) DeepCopyInto(out *AKORbacConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AVITenant ¶
type AVITenant struct { // Context is the type of AVI tenant context. Defaults to Provider. This field is immutable. // +kubebuilder:validation:Enum=Provider;Tenant Context string `json:"context,omitempty"` // Name is the name of the tenant. This field is immutable. Name string `json:"name"` }
AVITenant describes settings for an AVI Tenant object
func (*AVITenant) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AVITenant.
func (*AVITenant) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlaneNetwork ¶
ControlPlaneNetwork describes the ControlPlane Network of the clusters selected by an akoDeploymentConfig
func (*ControlPlaneNetwork) DeepCopy ¶
func (in *ControlPlaneNetwork) DeepCopy() *ControlPlaneNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlaneNetwork.
func (*ControlPlaneNetwork) DeepCopyInto ¶
func (in *ControlPlaneNetwork) DeepCopyInto(out *ControlPlaneNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DataNetwork ¶
type DataNetwork struct { Name string `json:"name"` CIDR string `json:"cidr"` IPPools []IPPool `json:"ipPools,omitempty"` }
DataNetwork describes one AVI Data Network
func (*DataNetwork) DeepCopy ¶
func (in *DataNetwork) DeepCopy() *DataNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DataNetwork.
func (*DataNetwork) DeepCopyInto ¶
func (in *DataNetwork) DeepCopyInto(out *DataNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtraConfigs ¶
type ExtraConfigs struct { // Defines AKO instance is primary or not. Value `true` indicates that AKO instance is primary. // In a multiple AKO deployment in a cluster, only one AKO instance should be primary. // Default value: true. // +optional PrimaryInstance *bool `json:"primaryInstance,omitempty"` // Log specifies the configuration for AKO logging // +optional Log AKOLogConfig `json:"log,omitempty"` // FullSyncFrequency controls how often AKO polls the Avi controller to update itself // with cloud configurations. Default value is 1800 // +optional FullSyncFrequency string `json:"fullSyncFrequency,omitempty"` // ApiServerPort specifies Internal port for AKO's API server for the liveness probe of the AKO pod // default port is 8080 // +optional ApiServerPort *int `json:"apiServerPort,omitempty"` // Defines Enable or disable Event broadcasting via AKO // +optional EnableEvents *bool `json:"enableEvents,omitempty"` // DisableStaticRouteSync describes ako should sync static routing or not. // If the POD networks are reachable from the Avi SE, this should be to true. // Otherwise, it should be false. // It would be true by default. // +optional DisableStaticRouteSync *bool `json:"disableStaticRouteSync,omitempty"` // CniPlugin describes which cni plugin cluster is using. // default value is antrea, set this string if cluster cni is other type. // AKO supported CNI: antrea|calico|canal|flannel|openshift|ncp // +kubebuilder:validation:Enum=antrea;calico;canal;flannel;openshift;ncp // +optional CniPlugin string `json:"cniPlugin,omitempty"` // EnableEVH specifies if you want to enable the Enhanced Virtual Hosting Model // in Avi Controller for the Virtual Services, default value is false // +optional EnableEVH *bool `json:"enableEVH,omitempty"` // Layer7Only specifies if you want AKO only to do layer 7 load balancing. // default value is false // +optional Layer7Only *bool `json:"layer7Only,omitempty"` // NameSpaceSelector contains label key and value used for namespace migration. // Same label has to be present on namespace/s which needs migration/sync to AKO // +optional NamespaceSelector NamespaceSelector `json:"namespaceSelector,omitempty"` // ServicesAPI specifies if enables AKO in services API mode: https://kubernetes-sigs.github.io/service-apis/. // Currently, implemented only for L4. This flag uses the upstream GA APIs which are not backward compatible // with the advancedL4 APIs which uses a fork and a version of v1alpha1pre1 // default value is false // +optional ServicesAPI *bool `json:"servicesAPI,omitempty"` // Enabling this flag would tell AKO to create Parent VS per Namespace in EVH mode // default value is false // +optional VIPPerNamespace *bool `json:"vipPerNamespace,omitempty"` // This flag needs to be enabled when AKO is be to brought up in an Istio environment // default value is false // +optional IstioEnabled *bool `json:"istioEnabled,omitempty"` // This is the list of system namespaces from which AKO will not listen any Kubernetes object event. // +optional BlockedNamespaceList []string `json:"blockedNamespaceList,omitempty"` // This flag can take values V4 or V6 (default V4) // default value is V4 // +kubebuilder:validation:Enum=V4;V6 // +optional IpFamily string `json:"ipFamily,omitempty"` // If this flag is set to true, AKO will only handle default secrets from the namespace where AKO is installed // This flag is applicable only to Openshift clusters // default value is false // +optional UseDefaultSecretsOnly *bool `json:"useDefaultSecretsOnly,omitempty"` // NetworksConfig specifies the network configurations for virtual services. // +optional NetworksConfig NetworksConfig `json:"networksConfig,omitempty"` // IngressConfigs specifies ingress configuration for ako // +optional IngressConfigs AKOIngressConfig `json:"ingress,omitempty"` // IngressConfigs specifies L4 load balancer configuration for ako // +optional L4Configs AKOL4Config `json:"l4Config,omitempty"` // NodePortSelector only applicable if serviceType is NodePort // +optional NodePortSelector NodePortSelector `json:"nodePortSelector,omitempty"` // Rbac specifies the configuration for AKO Rbac // +optional Rbac AKORbacConfig `json:"rbac,omitempty"` }
ExtraConfigs contains extra configurations for AKO Deployment
func (*ExtraConfigs) DeepCopy ¶
func (in *ExtraConfigs) DeepCopy() *ExtraConfigs
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtraConfigs.
func (*ExtraConfigs) DeepCopyInto ¶
func (in *ExtraConfigs) DeepCopyInto(out *ExtraConfigs)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type IPPool ¶
type IPPool struct { // Start represents the starting IP address of the pool. Start string `json:"start"` // End represents the ending IP address of the pool. End string `json:"end"` // Type represents the type of IP Address // +kubebuilder:validation:Enum=V4; Type string `json:"type"` }
IPPool defines a contiguous range of IP Addresses
func (*IPPool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new IPPool.
func (*IPPool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NamespaceSelector ¶
type NamespaceSelector struct { LabelKey string `json:"labelKey,omitempty"` LabelValue string `json:"labelValue,omitempty"` }
NameSpaceSelector contains label key and value used for namespace migration
func (*NamespaceSelector) DeepCopy ¶
func (in *NamespaceSelector) DeepCopy() *NamespaceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NamespaceSelector.
func (*NamespaceSelector) DeepCopyInto ¶
func (in *NamespaceSelector) DeepCopyInto(out *NamespaceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NetworksConfig ¶
type NetworksConfig struct { // EnableRHI specifies cluster wide setting for BGP peering. // default value is false // +optional EnableRHI *bool `json:"enableRHI,omitempty"` // BGPPeerLabels specifies BGP peers, this is used for selective VsVip advertisement. // +optional BGPPeerLabels []string `json:"bgpPeerLabels,omitempty"` // T1 Logical Segment mapping for backend network. Only applies to NSX-T cloud. // +optional NsxtT1LR string `json:"nsxtT1LR,omitempty"` }
func (*NetworksConfig) DeepCopy ¶
func (in *NetworksConfig) DeepCopy() *NetworksConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NetworksConfig.
func (*NetworksConfig) DeepCopyInto ¶
func (in *NetworksConfig) DeepCopyInto(out *NetworksConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeNetwork ¶
type NodeNetwork struct { // NetworkName is the name of this network // +optional NetworkName string `json:"networkName,omitempty"` // Cidrs represents all the IP CIDRs in this network // +optional Cidrs []string `json:"cidrs,omitempty"` }
func (*NodeNetwork) DeepCopy ¶
func (in *NodeNetwork) DeepCopy() *NodeNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeNetwork.
func (*NodeNetwork) DeepCopyInto ¶
func (in *NodeNetwork) DeepCopyInto(out *NodeNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePortSelector ¶
type NodePortSelector struct { Key string `json:"key,omitempty"` Value string `json:"value,omitempty"` }
NodePortSelector is only applicable if serviceType is NodePort
func (*NodePortSelector) DeepCopy ¶
func (in *NodePortSelector) DeepCopy() *NodePortSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePortSelector.
func (*NodePortSelector) DeepCopyInto ¶
func (in *NodePortSelector) DeepCopyInto(out *NodePortSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SecretRef ¶
type SecretRef struct { // Name is the name of resource being referenced. Name string `json:"name"` // Namespace of the resource being referenced. Namespace string `json:"namespace"` }
SecretRef references a Kind Secret object in the same kubernetes cluster
func (*SecretRef) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SecretRef.
func (*SecretRef) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VIPNetwork ¶
VIPNetwork describes a VIPNetwork in the adc file
func (*VIPNetwork) DeepCopy ¶
func (in *VIPNetwork) DeepCopy() *VIPNetwork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VIPNetwork.
func (*VIPNetwork) DeepCopyInto ¶
func (in *VIPNetwork) DeepCopyInto(out *VIPNetwork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.