Documentation ¶
Overview ¶
Package v1alpha1 contains API Schema definitions for the networking.fleet v1alpha1 API group. +kubebuilder:object:generate=true +groupName=networking.fleet.azure.com
Index ¶
- Constants
- Variables
- type ClusterID
- type ClusterNamespace
- type ClusterStatus
- type Endpoint
- type EndpointSliceExport
- type EndpointSliceExportList
- type EndpointSliceExportSpec
- type EndpointSliceImport
- type EndpointSliceImportList
- type ExportedObjectReference
- type InternalServiceExport
- type InternalServiceExportList
- type InternalServiceExportSpec
- type InternalServiceExportStatus
- type InternalServiceImport
- type InternalServiceImportList
- type InternalServiceImportSpec
- type MonitorConfig
- type MultiClusterService
- type MultiClusterServiceConditionType
- type MultiClusterServiceList
- type MultiClusterServiceSpec
- type MultiClusterServiceStatus
- type OwnerServiceReference
- type ServiceExport
- type ServiceExportConditionType
- type ServiceExportList
- type ServiceExportStatus
- type ServiceImport
- type ServiceImportList
- type ServiceImportRef
- type ServiceImportStatus
- type ServiceImportType
- type ServiceInUseBy
- type ServicePort
- type TrafficManagerBackend
- type TrafficManagerBackendConditionReason
- type TrafficManagerBackendConditionType
- type TrafficManagerBackendList
- type TrafficManagerBackendRef
- type TrafficManagerBackendSpec
- type TrafficManagerBackendStatus
- type TrafficManagerEndpointStatus
- type TrafficManagerMonitorProtocol
- type TrafficManagerProfile
- type TrafficManagerProfileConditionReason
- type TrafficManagerProfileConditionType
- type TrafficManagerProfileList
- type TrafficManagerProfileRef
- type TrafficManagerProfileSpec
- type TrafficManagerProfileStatus
Constants ¶
const ( // TrafficManagerBackendConditionAccepted condition indicates whether endpoints have been created or updated for the profile. // This does not indicate whether or not the configuration has been propagated to the data plane. // // Possible reasons for this condition to be True are: // // * "Accepted" // // Possible reasons for this condition to be False are: // // * "Invalid" // * "Pending" TrafficManagerBackendConditionAccepted TrafficManagerBackendConditionType = "Accepted" // TrafficManagerBackendReasonAccepted is used with the "Accepted" condition when the condition is True. TrafficManagerBackendReasonAccepted TrafficManagerBackendConditionReason = "Accepted" // TrafficManagerBackendReasonInvalid is used with the "Accepted" condition when one or // more endpoint references have an invalid or unsupported configuration // and cannot be configured on the Profile with more details in the message. TrafficManagerBackendReasonInvalid TrafficManagerBackendConditionReason = "Invalid" // TrafficManagerBackendReasonPending is used with the "Accepted" when creating or updating endpoint hits an internal error with // more details in the message and the controller will keep retry. TrafficManagerBackendReasonPending TrafficManagerBackendConditionReason = "Pending" )
const ( // TrafficManagerProfileConditionProgrammed condition indicates whether a profile has been generated that is assumed to be ready // soon in the underlying data plane. This does not indicate whether or not the configuration has been propagated // to the data plane. // // It is a positive-polarity summary condition, and so should always be // present on the resource with ObservedGeneration set. // // Possible reasons for this condition to be True are: // // * "Programmed" // // Possible reasons for this condition to be False are: // // * "Invalid" // * "DNSNameNotAvailable" // * "Pending" TrafficManagerProfileConditionProgrammed TrafficManagerProfileConditionType = "Programmed" // TrafficManagerProfileReasonProgrammed is used with the "Programmed" condition when the condition is true. TrafficManagerProfileReasonProgrammed TrafficManagerProfileConditionReason = "Programmed" // TrafficManagerProfileReasonInvalid is used with the "Programmed" when the profile is syntactically or semantically invalid. TrafficManagerProfileReasonInvalid TrafficManagerProfileConditionReason = "Invalid" // TrafficManagerProfileReasonDNSNameNotAvailable is used with the "Programmed" condition when the generated DNS name is not available. TrafficManagerProfileReasonDNSNameNotAvailable TrafficManagerProfileConditionReason = "DNSNameNotAvailable" // TrafficManagerProfileReasonPending is used with the "Programmed" when creating or updating the profile hits an internal error // with more details in the message and the controller will keep retry. TrafficManagerProfileReasonPending TrafficManagerProfileConditionReason = "Pending" )
Variables ¶
var ( // GroupVersion is group version used to register these objects. GroupVersion = schema.GroupVersion{Group: "networking.fleet.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 ClusterNamespace ¶
type ClusterNamespace string
ClusterNamespace is the namespace reserved for a specific member cluster in the hub cluster.
type ClusterStatus ¶
type ClusterStatus struct { // cluster is the name of the exporting cluster. Must be a valid RFC-1123 DNS label. Cluster string `json:"cluster"` }
ClusterStatus contains service configuration mapped to a specific source cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Endpoint ¶
type Endpoint struct { // Addresses of the Endpoint. // Addresses should be interpreted per its owner EndpointSliceExport's addressType field. This field contains // at least one address and at maximum 100; for more information about this constraint, // see https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#endpoint-v1beta1-discovery-k8s-io. // +kubebuilder:validation:Required // +kubebuilder:validation:MinItems:1 // +kubebuilder:validation:MaxItems:100 Addresses []string `json:"addresses"` }
Endpoint includes all exported addresses from a logical backend.
func (*Endpoint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Endpoint.
func (*Endpoint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointSliceExport ¶
type EndpointSliceExport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:Required Spec EndpointSliceExportSpec `json:"spec"` }
EndpointSliceExport is a data transport type that member clusters in the fleet use to upload the spec of an EndpointSlice to the hub cluster.
func (*EndpointSliceExport) DeepCopy ¶
func (in *EndpointSliceExport) DeepCopy() *EndpointSliceExport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceExport.
func (*EndpointSliceExport) DeepCopyInto ¶
func (in *EndpointSliceExport) DeepCopyInto(out *EndpointSliceExport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointSliceExport) DeepCopyObject ¶
func (in *EndpointSliceExport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EndpointSliceExportList ¶
type EndpointSliceExportList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []EndpointSliceExport `json:"items"` }
EndpointSliceExportList contains a list of EndpointSliceExports.
func (*EndpointSliceExportList) DeepCopy ¶
func (in *EndpointSliceExportList) DeepCopy() *EndpointSliceExportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceExportList.
func (*EndpointSliceExportList) DeepCopyInto ¶
func (in *EndpointSliceExportList) DeepCopyInto(out *EndpointSliceExportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointSliceExportList) DeepCopyObject ¶
func (in *EndpointSliceExportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EndpointSliceExportSpec ¶
type EndpointSliceExportSpec struct { // The type of addresses carried by this EndpointSliceExport. // At this stage only IPv4 addresses are supported. // +kubebuilder:validation:Enum:="IPv4" // +kubebuilder:default:="IPv4" AddressType discoveryv1.AddressType `json:"addressType"` // A list of unique endpoints in the exported EndpointSlice. // +kubebuilder:validation:Required // +listType=atomic Endpoints []Endpoint `json:"endpoints"` // The list of ports exported by each endpoint in this EndpointSliceExport. Each port must have a unique name. // When the field is empty, it indicates that there are no defined ports. When a port is defined with a nil // port value, it indicates that all ports are exported. Each slice may include a maximum of 100 ports. // +optional // +listType=atomic Ports []discoveryv1.EndpointPort `json:"ports"` // The reference to the source EndpointSlice. // +kubebuilder:validation:Required EndpointSliceReference ExportedObjectReference `json:"endpointSliceReference"` // The reference to the owner Service. // +kubebuilder:validation:Required OwnerServiceReference OwnerServiceReference `json:"ownerServiceReference"` }
EndpointSliceExportSpec specifies the spec of an exported EndpointSlice.
func (*EndpointSliceExportSpec) DeepCopy ¶
func (in *EndpointSliceExportSpec) DeepCopy() *EndpointSliceExportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceExportSpec.
func (*EndpointSliceExportSpec) DeepCopyInto ¶
func (in *EndpointSliceExportSpec) DeepCopyInto(out *EndpointSliceExportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type EndpointSliceImport ¶
type EndpointSliceImport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:Required Spec EndpointSliceExportSpec `json:"spec"` }
EndpointSliceImport is a data transport type that hub cluster uses to distribute exported EndpointSlices to member clusters.
func (*EndpointSliceImport) DeepCopy ¶
func (in *EndpointSliceImport) DeepCopy() *EndpointSliceImport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceImport.
func (*EndpointSliceImport) DeepCopyInto ¶
func (in *EndpointSliceImport) DeepCopyInto(out *EndpointSliceImport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointSliceImport) DeepCopyObject ¶
func (in *EndpointSliceImport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type EndpointSliceImportList ¶
type EndpointSliceImportList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []EndpointSliceImport `json:"items"` }
EndpointSliceImportList contains a list of EndpointSliceExports.
func (*EndpointSliceImportList) DeepCopy ¶
func (in *EndpointSliceImportList) DeepCopy() *EndpointSliceImportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EndpointSliceImportList.
func (*EndpointSliceImportList) DeepCopyInto ¶
func (in *EndpointSliceImportList) DeepCopyInto(out *EndpointSliceImportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*EndpointSliceImportList) DeepCopyObject ¶
func (in *EndpointSliceImportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExportedObjectReference ¶
type ExportedObjectReference struct { // The ID of the cluster where the object is exported. // +kubebuilder:validation:Required ClusterID string `json:"clusterId"` // The API version of the referred object. // +optional APIVersion string `json:"apiVersion,omitempty"` // The kind of the referred object. // +kubebuilder:validation:Required Kind string `json:"kind"` // The namespace of the referred object. // +kubebuilder:validation:Required Namespace string `json:"namespace"` // The name of the referred object. // +kubebuilder:validation:Required Name string `json:"name"` // The resource version of the referred object. // +kubebuilder:validation:Required ResourceVersion string `json:"resourceVersion"` // The generation of the referred object. // +kubebuilder:validation:Required Generation int64 `json:"generation"` // The UID of the referred object. // +kubebuilder:validation:Required UID types.UID `json:"uid"` // The namespaced name of the referred object. // +kubebuilder:validation:Required NamespacedName string `json:"namespacedName"` // The timestamp from a local clock when the generation of the object is exported. // This field is marked as optional for backwards compatibility reasons. // +kubebuilder:validation:Optional ExportedSince metav1.Time `json:"exportedSince,omitempty"` }
ExportedObjectReference helps operators identify the source of an exported object, e.g. an EndpointSliceExport. +structType=atomic
func FromMetaObjects ¶
func FromMetaObjects(clusterID string, typeMeta metav1.TypeMeta, objMeta metav1.ObjectMeta, exportedSince metav1.Time) ExportedObjectReference
FromMetaObjects builds a new ExportedObjectReference using TypeMeta and ObjectMeta fields from an object.
func (*ExportedObjectReference) DeepCopy ¶
func (in *ExportedObjectReference) DeepCopy() *ExportedObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExportedObjectReference.
func (*ExportedObjectReference) DeepCopyInto ¶
func (in *ExportedObjectReference) DeepCopyInto(out *ExportedObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExportedObjectReference) UpdateFromMetaObject ¶
func (e *ExportedObjectReference) UpdateFromMetaObject(objMeta metav1.ObjectMeta, exportedSince metav1.Time)
UpdateFromMetaObject updates an existing ExportedObjectReference. Note that most fields in an ExportedObjectReference should be immutable after creation.
type InternalServiceExport ¶
type InternalServiceExport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +optional Spec InternalServiceExportSpec `json:"spec,omitempty"` // +optional Status InternalServiceExportStatus `json:"status,omitempty"` }
InternalServiceExport is a data transport type that member clusters in the fleet use to upload the spec of exported Service to the hub cluster.
func (*InternalServiceExport) DeepCopy ¶
func (in *InternalServiceExport) DeepCopy() *InternalServiceExport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceExport.
func (*InternalServiceExport) DeepCopyInto ¶
func (in *InternalServiceExport) DeepCopyInto(out *InternalServiceExport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalServiceExport) DeepCopyObject ¶
func (in *InternalServiceExport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalServiceExportList ¶
type InternalServiceExportList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []InternalServiceExport `json:"items"` }
InternalServiceExportList contains a list of InternalServiceExports.
func (*InternalServiceExportList) DeepCopy ¶
func (in *InternalServiceExportList) DeepCopy() *InternalServiceExportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceExportList.
func (*InternalServiceExportList) DeepCopyInto ¶
func (in *InternalServiceExportList) DeepCopyInto(out *InternalServiceExportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalServiceExportList) DeepCopyObject ¶
func (in *InternalServiceExportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalServiceExportSpec ¶
type InternalServiceExportSpec struct { // A list of ports exposed by the exported Service. // +listType=atomic Ports []ServicePort `json:"ports"` // The reference to the source Service. // +kubebuilder:validation:Required ServiceReference ExportedObjectReference `json:"serviceReference"` // Type is the type of the Service in each cluster. Type corev1.ServiceType `json:"type,omitempty"` // IsDNSLabelConfigured determines if the Service has a DNS label configured. // A valid DNS label should be configured when the public IP address of the Service is configured as an Azure Traffic // Manager endpoint. // Reference link: // * https://cloud-provider-azure.sigs.k8s.io/topics/loadbalancer/ // * https://learn.microsoft.com/en-us/azure/traffic-manager/traffic-manager-endpoint-types#azure-endpoints IsDNSLabelConfigured bool `json:"isDNSLabelConfigured,omitempty"` // IsInternalLoadBalancer determines if the Service is an internal load balancer type. IsInternalLoadBalancer bool `json:"isInternalLoadBalancer,omitempty"` // PublicIPResourceID is the Azure Resource URI of public IP. This is only applicable for Load Balancer type Services. PublicIPResourceID *string `json:"externalIPResourceID,omitempty"` }
InternalServiceExportSpec specifies the spec of an exported Service; at this stage only the ports of an exported Service are sync'd.
func (*InternalServiceExportSpec) DeepCopy ¶
func (in *InternalServiceExportSpec) DeepCopy() *InternalServiceExportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceExportSpec.
func (*InternalServiceExportSpec) DeepCopyInto ¶
func (in *InternalServiceExportSpec) DeepCopyInto(out *InternalServiceExportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InternalServiceExportStatus ¶
type InternalServiceExportStatus struct { // +optional // +patchStrategy=merge // +patchMergeKey=type // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
InternalServiceExportStatus contains the current status of an InternalServiceExport.
func (*InternalServiceExportStatus) DeepCopy ¶
func (in *InternalServiceExportStatus) DeepCopy() *InternalServiceExportStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceExportStatus.
func (*InternalServiceExportStatus) DeepCopyInto ¶
func (in *InternalServiceExportStatus) DeepCopyInto(out *InternalServiceExportStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type InternalServiceImport ¶
type InternalServiceImport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +kubebuilder:validation:Required Spec InternalServiceImportSpec `json:"spec"` // status contains information about the exported services that form // the multi-cluster service referenced by this ServiceImport. // +optional Status ServiceImportStatus `json:"status,omitempty"` }
InternalServiceImport is used by the MCS controller to import the Service to a single cluster manually, while ServiceImport is logical identifiers for a Service that exists in another cluster or that stretches across multiple clusters and it will be automatically created in the hub cluster when exporting service.
func (*InternalServiceImport) DeepCopy ¶
func (in *InternalServiceImport) DeepCopy() *InternalServiceImport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceImport.
func (*InternalServiceImport) DeepCopyInto ¶
func (in *InternalServiceImport) DeepCopyInto(out *InternalServiceImport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalServiceImport) DeepCopyObject ¶
func (in *InternalServiceImport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalServiceImportList ¶
type InternalServiceImportList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. // +optional metav1.ListMeta `json:"metadata,omitempty"` // List of InternalServiceImport. // +listType=set Items []InternalServiceImport `json:"items"` }
InternalServiceImportList represents a list of InternalServiceImport.
func (*InternalServiceImportList) DeepCopy ¶
func (in *InternalServiceImportList) DeepCopy() *InternalServiceImportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceImportList.
func (*InternalServiceImportList) DeepCopyInto ¶
func (in *InternalServiceImportList) DeepCopyInto(out *InternalServiceImportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*InternalServiceImportList) DeepCopyObject ¶
func (in *InternalServiceImportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type InternalServiceImportSpec ¶
type InternalServiceImportSpec struct { // The reference to the source ServiceImport. // +kubebuilder:validation:Required ServiceImportReference ExportedObjectReference `json:"serviceImportReference"` }
InternalServiceImportSpec specifies the spec of InternalServiceImport.
func (*InternalServiceImportSpec) DeepCopy ¶
func (in *InternalServiceImportSpec) DeepCopy() *InternalServiceImportSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new InternalServiceImportSpec.
func (*InternalServiceImportSpec) DeepCopyInto ¶
func (in *InternalServiceImportSpec) DeepCopyInto(out *InternalServiceImportSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MonitorConfig ¶ added in v0.2.10
type MonitorConfig struct { // The monitor interval for endpoints in this profile. This is the interval at which Traffic Manager will check the health // of each endpoint in this profile. // You can specify two values here: 30 seconds (normal probing) and 10 seconds (fast probing). // +optional // +kubebuilder:default=30 // +kubebuilder:validation:Enum=10;30 IntervalInSeconds *int64 `json:"intervalInSeconds,omitempty"` // The path relative to the endpoint domain name used to probe for endpoint health. // +optional // +kubebuilder:default="/" Path *string `json:"path,omitempty"` // The TCP port used to probe for endpoint health. // +optional // +kubebuilder:default=80 Port *int64 `json:"port,omitempty"` // The protocol (HTTP, HTTPS or TCP) used to probe for endpoint health. // +kubebuilder:validation:Enum=HTTP;HTTPS;TCP // +optional // +kubebuilder:default="HTTP" Protocol *TrafficManagerMonitorProtocol `json:"protocol,omitempty"` // The monitor timeout for endpoints in this profile. This is the time that Traffic Manager allows endpoints in this profile // to response to the health check. // +optional // * If the IntervalInSeconds is set to 30 seconds, then you can set the Timeout value between 5 and 10 seconds. // If no value is specified, it uses a default value of 10 seconds. // * If the IntervalInSeconds is set to 10 seconds, then you can set the Timeout value between 5 and 9 seconds. // If no Timeout value is specified, it uses a default value of 9 seconds. // +kubebuilder:validation:Minimum=5 // +kubebuilder:validation:Maximum=10 TimeoutInSeconds *int64 `json:"timeoutInSeconds,omitempty"` // The number of consecutive failed health check that Traffic Manager tolerates before declaring an endpoint in this profile // Degraded after the next failed health check. // +optional // +kubebuilder:validation:Minimum=0 // +kubebuilder:validation:Maximum=9 // +kubebuilder:default=3 ToleratedNumberOfFailures *int64 `json:"toleratedNumberOfFailures,omitempty"` }
MonitorConfig defines the endpoint monitoring settings of the Traffic Manager profile. https://learn.microsoft.com/en-us/azure/traffic-manager/traffic-manager-monitoring
func (*MonitorConfig) DeepCopy ¶ added in v0.2.10
func (in *MonitorConfig) DeepCopy() *MonitorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MonitorConfig.
func (*MonitorConfig) DeepCopyInto ¶ added in v0.2.10
func (in *MonitorConfig) DeepCopyInto(out *MonitorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiClusterService ¶
type MultiClusterService struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` Spec MultiClusterServiceSpec `json:"spec"` // +optional Status MultiClusterServiceStatus `json:"status,omitempty"` }
MultiClusterService is the Schema for creating north-south L4 load balancer to consume services across clusters.
func (*MultiClusterService) DeepCopy ¶
func (in *MultiClusterService) DeepCopy() *MultiClusterService
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterService.
func (*MultiClusterService) DeepCopyInto ¶
func (in *MultiClusterService) DeepCopyInto(out *MultiClusterService)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultiClusterService) DeepCopyObject ¶
func (in *MultiClusterService) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MultiClusterServiceConditionType ¶
type MultiClusterServiceConditionType string
MultiClusterServiceConditionType identifies a specific condition.
const ( // MultiClusterServiceValid means that the ServiceImported referenced by this // multi-cluster service and its configurations have been recognized as valid by a mcs-controller. // This will be false if the ServiceImport is not found in the hub cluster. MultiClusterServiceValid MultiClusterServiceConditionType = "Valid" )
type MultiClusterServiceList ¶
type MultiClusterServiceList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []MultiClusterService `json:"items"` }
MultiClusterServiceList contains a list of MultiClusterService.
func (*MultiClusterServiceList) DeepCopy ¶
func (in *MultiClusterServiceList) DeepCopy() *MultiClusterServiceList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterServiceList.
func (*MultiClusterServiceList) DeepCopyInto ¶
func (in *MultiClusterServiceList) DeepCopyInto(out *MultiClusterServiceList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*MultiClusterServiceList) DeepCopyObject ¶
func (in *MultiClusterServiceList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type MultiClusterServiceSpec ¶
type MultiClusterServiceSpec struct { // ServiceImport is the reference to the Service with the same name exported in the member clusters. ServiceImport ServiceImportRef `json:"serviceImport,omitempty"` }
MultiClusterServiceSpec defines the desired state of MultiClusterService.
func (*MultiClusterServiceSpec) DeepCopy ¶
func (in *MultiClusterServiceSpec) DeepCopy() *MultiClusterServiceSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterServiceSpec.
func (*MultiClusterServiceSpec) DeepCopyInto ¶
func (in *MultiClusterServiceSpec) DeepCopyInto(out *MultiClusterServiceSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MultiClusterServiceStatus ¶
type MultiClusterServiceStatus struct { // LoadBalancerStatus represents the status of a load-balancer. // if one is present. // +optional LoadBalancer corev1.LoadBalancerStatus `json:"loadBalancer,omitempty"` // Current service state // +optional // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
MultiClusterServiceStatus represents the current status of a multi-cluster service.
func (*MultiClusterServiceStatus) DeepCopy ¶
func (in *MultiClusterServiceStatus) DeepCopy() *MultiClusterServiceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MultiClusterServiceStatus.
func (*MultiClusterServiceStatus) DeepCopyInto ¶
func (in *MultiClusterServiceStatus) DeepCopyInto(out *MultiClusterServiceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OwnerServiceReference ¶
type OwnerServiceReference struct { // The namespace of the owner Service. // +kubebuilder:validation:Required Namespace string `json:"namespace"` // The name of the owner Service. // +kubebuilder:validation:Required Name string `json:"name"` // The namespaced name (key) of the owner Service. // +kubebuilder:validation:Required NamespacedName string `json:"namespacedName"` }
OwnerServiceReference points to the Service that owns the exported EndpointSlice.
func (*OwnerServiceReference) DeepCopy ¶
func (in *OwnerServiceReference) DeepCopy() *OwnerServiceReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OwnerServiceReference.
func (*OwnerServiceReference) DeepCopyInto ¶
func (in *OwnerServiceReference) DeepCopyInto(out *OwnerServiceReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceExport ¶
type ServiceExport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // +optional Status ServiceExportStatus `json:"status,omitempty"` }
ServiceExport declares that the associated service should be exported to other clusters.
func (*ServiceExport) DeepCopy ¶
func (in *ServiceExport) DeepCopy() *ServiceExport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExport.
func (*ServiceExport) DeepCopyInto ¶
func (in *ServiceExport) DeepCopyInto(out *ServiceExport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceExport) DeepCopyObject ¶
func (in *ServiceExport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceExportConditionType ¶
type ServiceExportConditionType string
ServiceExportConditionType identifies a specific condition on a ServiceExport.
const ( // ServiceExportValid means that the service referenced by this service export has been recognized as valid. // This will be false if the service is found to be unexportable (e.g. ExternalName, not found). ServiceExportValid ServiceExportConditionType = "Valid" // ServiceExportConflict means that there is a conflict between two exports for the same Service. // When "True", the condition message should contain enough information to diagnose the conflict: // field(s) under contention, which cluster won, and why. // Users should not expect detailed per-cluster information in the conflict message. ServiceExportConflict ServiceExportConditionType = "Conflict" )
type ServiceExportList ¶
type ServiceExportList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []ServiceExport `json:"items"` }
ServiceExportList contains a list of ServiceExport.
func (*ServiceExportList) DeepCopy ¶
func (in *ServiceExportList) DeepCopy() *ServiceExportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportList.
func (*ServiceExportList) DeepCopyInto ¶
func (in *ServiceExportList) DeepCopyInto(out *ServiceExportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceExportList) DeepCopyObject ¶
func (in *ServiceExportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceExportStatus ¶
type ServiceExportStatus struct { // +optional // +patchStrategy=merge // +patchMergeKey=type // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
ServiceExportStatus contains the current status of an export.
func (*ServiceExportStatus) DeepCopy ¶
func (in *ServiceExportStatus) DeepCopy() *ServiceExportStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceExportStatus.
func (*ServiceExportStatus) DeepCopyInto ¶
func (in *ServiceExportStatus) DeepCopyInto(out *ServiceExportStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImport ¶
type ServiceImport struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // status contains information about the exported services that form // the multi-cluster service referenced by this ServiceImport. // +optional Status ServiceImportStatus `json:"status,omitempty"` }
ServiceImport describes a service imported from clusters in a ClusterSet.
func (*ServiceImport) DeepCopy ¶
func (in *ServiceImport) DeepCopy() *ServiceImport
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImport.
func (*ServiceImport) DeepCopyInto ¶
func (in *ServiceImport) DeepCopyInto(out *ServiceImport)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceImport) DeepCopyObject ¶
func (in *ServiceImport) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceImportList ¶
type ServiceImportList struct { metav1.TypeMeta `json:",inline"` // Standard list metadata. // +optional metav1.ListMeta `json:"metadata,omitempty"` // List of ServiceImport. // +listType=set Items []ServiceImport `json:"items"` }
ServiceImportList contains a list of ServiceImport.
func (*ServiceImportList) DeepCopy ¶
func (in *ServiceImportList) DeepCopy() *ServiceImportList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportList.
func (*ServiceImportList) DeepCopyInto ¶
func (in *ServiceImportList) DeepCopyInto(out *ServiceImportList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServiceImportList) DeepCopyObject ¶
func (in *ServiceImportList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ServiceImportRef ¶
type ServiceImportRef struct { // Name is the name of the referent. // // +kubebuilder:validation:MaxLength=63 // +kubebuilder:validation:Pattern=`^([a-z]([-a-z0-9]*[a-z0-9])?)$` // +required Name string `json:"name"` }
ServiceImportRef is the reference to the ServiceImport. To consume multi-cluster service, users are expected to use ServiceImport. When mcs controller sees the MCS definition, the ServiceImport will be created in the importing cluster to represent the multi-cluster service.
func (*ServiceImportRef) DeepCopy ¶
func (in *ServiceImportRef) DeepCopy() *ServiceImportRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportRef.
func (*ServiceImportRef) DeepCopyInto ¶
func (in *ServiceImportRef) DeepCopyInto(out *ServiceImportRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImportStatus ¶
type ServiceImportStatus struct { // ip will be used as the VIP for this service when type is ClusterSetIP. // +kubebuilder:validation:MaxItems:=1 // +optional IPs []string `json:"ips,omitempty"` // type defines the type of this service. // Must be ClusterSetIP or Headless. // +kubebuilder:validation:Enum=ClusterSetIP;Headless // +optional Type ServiceImportType `json:"type,omitempty"` // Supports "ClientIP" and "None". Used to maintain session affinity. // Enable client IP based session affinity. // Must be ClientIP or None. // Defaults to None. // Ignored when type is Headless // More info: https://kubernetes.io/docs/concepts/services-networking/service/#virtual-ips-and-service-proxies // +optional SessionAffinity corev1.ServiceAffinity `json:"sessionAffinity,omitempty"` // sessionAffinityConfig contains session affinity configuration. // +optional SessionAffinityConfig *corev1.SessionAffinityConfig `json:"sessionAffinityConfig,omitempty"` // +listType=atomic // +optional Ports []ServicePort `json:"ports,omitempty"` // clusters is the list of exporting clusters from which this service was derived. // +optional // +patchStrategy=merge // +patchMergeKey=cluster // +listType=map // +listMapKey=cluster Clusters []ClusterStatus `json:"clusters,omitempty"` }
ServiceImportStatus describes derived state of an imported service.
func (*ServiceImportStatus) DeepCopy ¶
func (in *ServiceImportStatus) DeepCopy() *ServiceImportStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceImportStatus.
func (*ServiceImportStatus) DeepCopyInto ¶
func (in *ServiceImportStatus) DeepCopyInto(out *ServiceImportStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServiceImportType ¶
type ServiceImportType string
ServiceImportType designates the type of a ServiceImport
const ( // ClusterSetIP are only accessible via the ClusterSet IP. ClusterSetIP ServiceImportType = "ClusterSetIP" // Headless services allow backend pods to be addressed directly. Headless ServiceImportType = "Headless" )
type ServiceInUseBy ¶
type ServiceInUseBy struct {
MemberClusters map[ClusterNamespace]ClusterID
}
ServiceInUseBy describes the member clusters that have requested to import a Service from the hub cluster. This object is not provided directly as a part of fleet networking API, but provided as a contract for marshaling/unmarshaling ServiceImport annotations, specifically for
- the InternalServiceImport controller to annotate on a ServiceImport which member clusters have requested to import the Service; and
- the EndpointSliceExport controller to find out from annotations on a ServiceImport which member clusters have requested to import the Service.
func (*ServiceInUseBy) DeepCopy ¶
func (in *ServiceInUseBy) DeepCopy() *ServiceInUseBy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServiceInUseBy.
func (*ServiceInUseBy) DeepCopyInto ¶
func (in *ServiceInUseBy) DeepCopyInto(out *ServiceInUseBy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ServicePort ¶
type ServicePort struct { // The name of this port within the service. This must be a DNS_LABEL. // All ports within a ServiceSpec must have unique names. When considering the endpoints for a Service, // this must match the 'name' field in the EndpointPort. // Optional if only one ServicePort is defined on this service. // +optional Name string `json:"name,omitempty"` // The IP protocol for this port. Supports "TCP", "UDP", and "SCTP". // Default is TCP. // +kubebuilder:validation:Enum:=TCP;UDP;SCTP Protocol corev1.Protocol `json:"protocol,omitempty"` // The application protocol for this port. // This field follows standard Kubernetes label syntax. // Un-prefixed names are reserved for IANA standard service names (as per // RFC-6335 and http://www.iana.org/assignments/service-names). // Non-standard protocols should use prefixed names such as // mycompany.com/my-custom-protocol. // Field can be enabled with ServiceAppProtocol feature gate. // +optional AppProtocol *string `json:"appProtocol,omitempty"` // +kubebuilder:validation:Required // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Maximum=65535 // The port that will be exposed by this service. Port int32 `json:"port"` // The port to access on the pods targeted by the service. // +optional TargetPort intstr.IntOrString `json:"targetPort,omitempty"` }
ServicePort represents the port on which the service is exposed.
func (*ServicePort) DeepCopy ¶
func (in *ServicePort) DeepCopy() *ServicePort
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ServicePort.
func (*ServicePort) DeepCopyInto ¶
func (in *ServicePort) DeepCopyInto(out *ServicePort)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ServicePort) ToServicePort ¶
func (in *ServicePort) ToServicePort() corev1.ServicePort
ToServicePort converts ServicePort to a K8 ServicePort.
type TrafficManagerBackend ¶ added in v0.2.10
type TrafficManagerBackend struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // The desired state of TrafficManagerBackend. Spec TrafficManagerBackendSpec `json:"spec"` // The observed status of TrafficManagerBackend. // +optional Status TrafficManagerBackendStatus `json:"status,omitempty"` }
TrafficManagerBackend is used to manage the Azure Traffic Manager Endpoints using cloud native way. A backend contains one or more endpoints. Therefore, the controller may create multiple endpoints under the Traffic Manager Profile. https://learn.microsoft.com/en-us/azure/traffic-manager/traffic-manager-endpoint-types
func (*TrafficManagerBackend) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerBackend) DeepCopy() *TrafficManagerBackend
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerBackend.
func (*TrafficManagerBackend) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerBackend) DeepCopyInto(out *TrafficManagerBackend)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficManagerBackend) DeepCopyObject ¶ added in v0.2.10
func (in *TrafficManagerBackend) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficManagerBackendConditionReason ¶ added in v0.2.10
type TrafficManagerBackendConditionReason string
TrafficManagerBackendConditionReason defines the set of reasons that explain why a particular backend has been raised.
type TrafficManagerBackendConditionType ¶ added in v0.2.10
type TrafficManagerBackendConditionType string
TrafficManagerBackendConditionType is a type of condition associated with a TrafficManagerBackendStatus. This type should be used within the TrafficManagerBackendStatus.Conditions field.
type TrafficManagerBackendList ¶ added in v0.2.10
type TrafficManagerBackendList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []TrafficManagerBackend `json:"items"` }
TrafficManagerBackendList contains a list of TrafficManagerBackend.
func (*TrafficManagerBackendList) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerBackendList) DeepCopy() *TrafficManagerBackendList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerBackendList.
func (*TrafficManagerBackendList) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerBackendList) DeepCopyInto(out *TrafficManagerBackendList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficManagerBackendList) DeepCopyObject ¶ added in v0.2.10
func (in *TrafficManagerBackendList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficManagerBackendRef ¶ added in v0.2.10
type TrafficManagerBackendRef struct { // Name is the reference to the ServiceImport in the same namespace as the TrafficManagerBackend object. // +required Name string `json:"name"` }
TrafficManagerBackendRef is the reference to a backend. Currently, we only support one backend type: ServiceImport.
func (*TrafficManagerBackendRef) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerBackendRef) DeepCopy() *TrafficManagerBackendRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerBackendRef.
func (*TrafficManagerBackendRef) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerBackendRef) DeepCopyInto(out *TrafficManagerBackendRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerBackendSpec ¶ added in v0.2.10
type TrafficManagerBackendSpec struct { // Which TrafficManagerProfile the backend should be attached to. // +required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.profile is immutable" Profile TrafficManagerProfileRef `json:"profile"` // The reference to a backend. // +required // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="spec.backend is immutable" Backend TrafficManagerBackendRef `json:"backend"` // The total weight of endpoints behind the serviceImport when using the 'Weighted' traffic routing method. // Possible values are from 1 to 1000. // By default, the routing method is 'Weighted', so that it is required for now. // +optional // +kubebuilder:validation:Minimum=1 // +kubebuilder:validation:Maximum=1000 // For example, if there are two clusters exporting the service via public ip, each public ip will be configured // as "Weight"/2. Weight *int64 `json:"weight,omitempty"` }
func (*TrafficManagerBackendSpec) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerBackendSpec) DeepCopy() *TrafficManagerBackendSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerBackendSpec.
func (*TrafficManagerBackendSpec) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerBackendSpec) DeepCopyInto(out *TrafficManagerBackendSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerBackendStatus ¶ added in v0.2.10
type TrafficManagerBackendStatus struct { // Endpoints contains a list of accepted Azure endpoints which are created or updated under the traffic manager Profile. // +optional Endpoints []TrafficManagerEndpointStatus `json:"endpoints,omitempty"` // Current backend status. // +optional // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
func (*TrafficManagerBackendStatus) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerBackendStatus) DeepCopy() *TrafficManagerBackendStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerBackendStatus.
func (*TrafficManagerBackendStatus) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerBackendStatus) DeepCopyInto(out *TrafficManagerBackendStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerEndpointStatus ¶ added in v0.2.10
type TrafficManagerEndpointStatus struct { // Name of the endpoint. // +required Name string `json:"name"` // The weight of this endpoint when using the 'Weighted' traffic routing method. // Possible values are from 1 to 1000. // +optional Weight *int64 `json:"weight,omitempty"` // The fully-qualified DNS name or IP address of the endpoint. // +optional Target *string `json:"target,omitempty"` // Cluster is where the endpoint is exported from. // +optional Cluster *ClusterStatus `json:"cluster,omitempty"` }
TrafficManagerEndpointStatus is the status of Azure Traffic Manager endpoint which is successfully accepted under the traffic manager Profile.
func (*TrafficManagerEndpointStatus) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerEndpointStatus) DeepCopy() *TrafficManagerEndpointStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerEndpointStatus.
func (*TrafficManagerEndpointStatus) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerEndpointStatus) DeepCopyInto(out *TrafficManagerEndpointStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerMonitorProtocol ¶ added in v0.2.10
type TrafficManagerMonitorProtocol string
TrafficManagerMonitorProtocol defines the protocol used to probe for endpoint health.
const ( TrafficManagerMonitorProtocolHTTP TrafficManagerMonitorProtocol = "HTTP" TrafficManagerMonitorProtocolHTTPS TrafficManagerMonitorProtocol = "HTTPS" TrafficManagerMonitorProtocolTCP TrafficManagerMonitorProtocol = "TCP" )
type TrafficManagerProfile ¶ added in v0.2.10
type TrafficManagerProfile struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // The desired state of TrafficManagerProfile. Spec TrafficManagerProfileSpec `json:"spec"` // The observed status of TrafficManagerProfile. // +optional Status TrafficManagerProfileStatus `json:"status,omitempty"` }
TrafficManagerProfile is used to manage a simple Azure Traffic Manager Profile using cloud native way. https://learn.microsoft.com/en-us/azure/traffic-manager/traffic-manager-overview
func (*TrafficManagerProfile) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerProfile) DeepCopy() *TrafficManagerProfile
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfile.
func (*TrafficManagerProfile) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerProfile) DeepCopyInto(out *TrafficManagerProfile)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficManagerProfile) DeepCopyObject ¶ added in v0.2.10
func (in *TrafficManagerProfile) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficManagerProfileConditionReason ¶ added in v0.2.10
type TrafficManagerProfileConditionReason string
TrafficManagerProfileConditionReason defines the set of reasons that explain why a particular profile condition type has been raised.
type TrafficManagerProfileConditionType ¶ added in v0.2.10
type TrafficManagerProfileConditionType string
TrafficManagerProfileConditionType is a type of condition associated with a Traffic Manager Profile. This type should be used within the TrafficManagerProfileStatus.Conditions field.
type TrafficManagerProfileList ¶ added in v0.2.10
type TrafficManagerProfileList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // +listType=set Items []TrafficManagerProfile `json:"items"` }
TrafficManagerProfileList contains a list of TrafficManagerProfile.
func (*TrafficManagerProfileList) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerProfileList) DeepCopy() *TrafficManagerProfileList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileList.
func (*TrafficManagerProfileList) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerProfileList) DeepCopyInto(out *TrafficManagerProfileList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*TrafficManagerProfileList) DeepCopyObject ¶ added in v0.2.10
func (in *TrafficManagerProfileList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type TrafficManagerProfileRef ¶ added in v0.2.10
type TrafficManagerProfileRef struct { // Name is the name of the referenced trafficManagerProfile. // +required Name string `json:"name"` }
TrafficManagerProfileRef is a reference to a trafficManagerProfile object in the same namespace as the TrafficManagerBackend object.
func (*TrafficManagerProfileRef) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerProfileRef) DeepCopy() *TrafficManagerProfileRef
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileRef.
func (*TrafficManagerProfileRef) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerProfileRef) DeepCopyInto(out *TrafficManagerProfileRef)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerProfileSpec ¶ added in v0.2.10
type TrafficManagerProfileSpec struct { // The endpoint monitoring settings of the Traffic Manager profile. // +optional MonitorConfig *MonitorConfig `json:"monitorConfig,omitempty"` }
TrafficManagerProfileSpec defines the desired state of TrafficManagerProfile. For now, only the "Weighted" traffic routing method is supported.
func (*TrafficManagerProfileSpec) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerProfileSpec) DeepCopy() *TrafficManagerProfileSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileSpec.
func (*TrafficManagerProfileSpec) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerProfileSpec) DeepCopyInto(out *TrafficManagerProfileSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficManagerProfileStatus ¶ added in v0.2.10
type TrafficManagerProfileStatus struct { // DNSName is the fully-qualified domain name (FQDN) of the Traffic Manager profile. // It consists of profile name and the DNS domain name used by Azure Traffic Manager to form the fully-qualified // domain name (FQDN) of the profile. // For example, "<TrafficManagerProfileNamespace>-<TrafficManagerProfileName>.trafficmanager.net" // +optional DNSName *string `json:"dnsName,omitempty"` // Current profile status. // +optional // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` }
func (*TrafficManagerProfileStatus) DeepCopy ¶ added in v0.2.10
func (in *TrafficManagerProfileStatus) DeepCopy() *TrafficManagerProfileStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficManagerProfileStatus.
func (*TrafficManagerProfileStatus) DeepCopyInto ¶ added in v0.2.10
func (in *TrafficManagerProfileStatus) DeepCopyInto(out *TrafficManagerProfileStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
Source Files ¶
- common_types.go
- endpointsliceexport_types.go
- endpointsliceimport_types.go
- groupversion_info.go
- internalserviceexport_types.go
- internalserviceimport_types.go
- multiclusterservice_types.go
- serviceexport_types.go
- serviceimport_types.go
- trafficmanagerbackend_types.go
- trafficmanagerprofile_types.go
- zz_generated.deepcopy.go