Documentation ¶
Index ¶
- Constants
- Variables
- func Resource(resource string) schema.GroupResource
- type DownResponse
- type GSLBConfig
- type GSLBConfigList
- type GSLBConfigSpec
- type GSLBConfigSpecList
- type GSLBConfigStatus
- type GSLBHostRule
- type GSLBHostRuleList
- type GSLBHostRuleSpec
- type GSLBHostRuleStatus
- type GSLBLeader
- type GeoFallback
- type MemberCluster
- type PoolAlgorithmSettings
- type PublicIPElem
- type SitePersistence
- type ThirdPartyMember
- type TrafficSplitElem
Constants ¶
const ( PoolAlgorithmConsistentHash = "GSLB_ALGORITHM_CONSISTENT_HASH" PoolAlgorithmGeo = "GSLB_ALGORITHM_GEO" PoolAlgorithmRoundRobin = "GSLB_ALGORITHM_ROUND_ROBIN" PoolAlgorithmTopology = "GSLB_ALGORITHM_TOPOLOGY" )
const ( GSLBServiceDownResponseNone = "GSLB_SERVICE_DOWN_RESPONSE_NONE" GSLBServiceDownResponseAllRecords = "GSLB_SERVICE_DOWN_RESPONSE_ALL_RECORDS" GSLBServiceDownResponseFallbackIP = "GSLB_SERVICE_DOWN_RESPONSE_FALLBACK_IP" GSLBServiceDownResponseEmpty = "GSLB_SERVICE_DOWN_RESPONSE_EMPTY" )
const (
GSNameType = "HOSTNAME"
)
how the Global services are going to be named
Variables ¶
var ( SchemeBuilder runtime.SchemeBuilder AddToScheme = localSchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{
Group: "amko.vmware.com",
Version: "v1alpha1",
}
Define your schema name and the version
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type DownResponse ¶
type DownResponse struct { Type string `json:"type,omitempty"` FallbackIP string `json:"fallbackIP,omitempty"` }
DownResponse defines the properties of the DNS service such as response towards the client when the GSLB service is DOWN, fallback IP to use in A response to the client query.
func (*DownResponse) DeepCopy ¶
func (in *DownResponse) DeepCopy() *DownResponse
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DownResponse.
func (*DownResponse) DeepCopyInto ¶
func (in *DownResponse) DeepCopyInto(out *DownResponse)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GSLBConfig ¶
type GSLBConfig struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // spec for GSLB Config Spec GSLBConfigSpec `json:"spec,omitempty"` // +optional Status GSLBConfigStatus `json:"status,omitempty"` }
GSLBConfig is the top-level type
func (*GSLBConfig) DeepCopy ¶
func (in *GSLBConfig) DeepCopy() *GSLBConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBConfig.
func (*GSLBConfig) DeepCopyInto ¶
func (in *GSLBConfig) DeepCopyInto(out *GSLBConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GSLBConfig) DeepCopyObject ¶
func (in *GSLBConfig) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GSLBConfigList ¶
type GSLBConfigList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` Items []GSLBConfig `json:"items"` }
GSLBConfigList is a list of GSLBConfig resources
func (*GSLBConfigList) DeepCopy ¶
func (in *GSLBConfigList) DeepCopy() *GSLBConfigList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBConfigList.
func (*GSLBConfigList) DeepCopyInto ¶
func (in *GSLBConfigList) DeepCopyInto(out *GSLBConfigList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GSLBConfigList) DeepCopyObject ¶
func (in *GSLBConfigList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GSLBConfigSpec ¶
type GSLBConfigSpec struct { GSLBLeader GSLBLeader `json:"gslbLeader,omitempty"` MemberClusters []MemberCluster `json:"memberClusters,omitempty"` RefreshInterval int `json:"refreshInterval,omitempty"` LogLevel string `json:"logLevel,omitempty"` UseCustomGlobalFqdn *bool `json:"useCustomGlobalFqdn,omitempty"` }
GSLBConfigSpec is the GSLB configuration
func (*GSLBConfigSpec) DeepCopy ¶
func (in *GSLBConfigSpec) DeepCopy() *GSLBConfigSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBConfigSpec.
func (*GSLBConfigSpec) DeepCopyInto ¶
func (in *GSLBConfigSpec) DeepCopyInto(out *GSLBConfigSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GSLBConfigSpecList ¶
type GSLBConfigSpecList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` Items []GSLBConfigSpec `json:"items"` }
+k8s:deepcopy-gen:interfaces=k8s.io/apimachinery/pkg/runtime.Object
func (*GSLBConfigSpecList) DeepCopy ¶
func (in *GSLBConfigSpecList) DeepCopy() *GSLBConfigSpecList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBConfigSpecList.
func (*GSLBConfigSpecList) DeepCopyInto ¶
func (in *GSLBConfigSpecList) DeepCopyInto(out *GSLBConfigSpecList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GSLBConfigSpecList) DeepCopyObject ¶
func (in *GSLBConfigSpecList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GSLBConfigStatus ¶
type GSLBConfigStatus struct {
State string `json:"state,omitempty"`
}
GSLBConfigStatus represents the state and status message of the GSLB cluster
func (*GSLBConfigStatus) DeepCopy ¶
func (in *GSLBConfigStatus) DeepCopy() *GSLBConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBConfigStatus.
func (*GSLBConfigStatus) DeepCopyInto ¶
func (in *GSLBConfigStatus) DeepCopyInto(out *GSLBConfigStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GSLBHostRule ¶
type GSLBHostRule struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ObjectMeta `json:"metadata,omitempty"` // spec for GSLB Config Spec GSLBHostRuleSpec `json:"spec,omitempty"` // +optional Status GSLBHostRuleStatus `json:"status,omitempty"` }
GSLBHostRule is the top-level type which allows a user to override certain fields of a GSLB Service.
func (*GSLBHostRule) DeepCopy ¶
func (in *GSLBHostRule) DeepCopy() *GSLBHostRule
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBHostRule.
func (*GSLBHostRule) DeepCopyInto ¶
func (in *GSLBHostRule) DeepCopyInto(out *GSLBHostRule)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GSLBHostRule) DeepCopyObject ¶
func (in *GSLBHostRule) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GSLBHostRuleList ¶
type GSLBHostRuleList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` Items []GSLBHostRule `json:"items"` }
GSLBHostRuleList is a list of GSLBHostRule resources
func (*GSLBHostRuleList) DeepCopy ¶
func (in *GSLBHostRuleList) DeepCopy() *GSLBHostRuleList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBHostRuleList.
func (*GSLBHostRuleList) DeepCopyInto ¶
func (in *GSLBHostRuleList) DeepCopyInto(out *GSLBHostRuleList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GSLBHostRuleList) DeepCopyObject ¶
func (in *GSLBHostRuleList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GSLBHostRuleSpec ¶
type GSLBHostRuleSpec struct { // Fqdn is the fqdn of the GSLB Service for which the below properties can be // changed. Fqdn string `json:"fqdn,omitempty"` // TTL is Time To Live in seconds. This tells a DNS resolver how long to hold this DNS // record. TTL *int `json:"ttl,omitempty"` // PoolAlgorithmSettings defines the properties for a Gslb Service pool algorithm PoolAlgorithmSettings *PoolAlgorithmSettings `json:"poolAlgorithmSettings,omitempty"` // To maintain stickiness to the site where the connection was initiated, the site persistence has // to be enabled and a profile ref has to be provided. SitePersistence *SitePersistence `json:"sitePersistence,omitempty"` // ThirdPartyMembers is a list of third party members site ThirdPartyMembers []ThirdPartyMember `json:"thirdPartyMembers,omitempty"` // HealthMonitorRefs is a list of custom health monitors which will monitor the // GSLB Service's pool members. HealthMonitorRefs []string `json:"healthMonitorRefs,omitempty"` // HealthMonitorTemplate is a custom Health Monitor template based on which the // health monitors will be created. HealthMonitorTemplate *string `json:"healthMonitorTemplate,omitempty"` // TrafficSplit defines the weightage of traffic that can be routed to each cluster. TrafficSplit []TrafficSplitElem `json:"trafficSplit,omitempty"` // DownResponse defines the properties of the DNS service such as response towards the client when the GSLB service is DOWN, // fallback IP to use in A response to the client query. DownResponse *DownResponse `json:"downResponse,omitempty"` // PublicIP determines the publicip of a cluster where traffic should be routed PublicIP []PublicIPElem `json:"publicIP,omitempty"` // ControlPlaneHmOnly will only enable hm on control plane and would not create data plane HM for GSLB service ControlPlaneHmOnly *bool `json:"controlPlaneHmOnly,omitempty"` }
GSLBHostRuleSpec defines all the properties of a GSLB Service that can be overridden by a user.
func (*GSLBHostRuleSpec) DeepCopy ¶
func (in *GSLBHostRuleSpec) DeepCopy() *GSLBHostRuleSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBHostRuleSpec.
func (*GSLBHostRuleSpec) DeepCopyInto ¶
func (in *GSLBHostRuleSpec) DeepCopyInto(out *GSLBHostRuleSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GSLBHostRuleStatus ¶
type GSLBHostRuleStatus struct { Error string `json:"error,omitempty"` Status string `json:"status,omitempty"` }
GSLBHostRuleStatus contains the current state of the GSLBHostRule resource. If the current state is rejected, then an error message is also shown in the Error field.
func (*GSLBHostRuleStatus) DeepCopy ¶
func (in *GSLBHostRuleStatus) DeepCopy() *GSLBHostRuleStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBHostRuleStatus.
func (*GSLBHostRuleStatus) DeepCopyInto ¶
func (in *GSLBHostRuleStatus) DeepCopyInto(out *GSLBHostRuleStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GSLBLeader ¶
type GSLBLeader struct { Credentials string `json:"credentials,omitempty"` ControllerVersion string `json:"controllerVersion,omitempty"` ControllerIP string `json:"controllerIP,omitempty"` Tenant *string `json:"tenant,omitempty"` }
GSLBLeader is the leader node in the GSLB cluster
func (*GSLBLeader) DeepCopy ¶
func (in *GSLBLeader) DeepCopy() *GSLBLeader
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GSLBLeader.
func (*GSLBLeader) DeepCopyInto ¶
func (in *GSLBLeader) DeepCopyInto(out *GSLBLeader)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GeoFallback ¶
type GeoFallback struct { LBAlgorithm string `json:"lbAlgorithm,omitempty"` HashMask *int `json:"hashMask,omitempty"` }
func (*GeoFallback) DeepCopy ¶
func (in *GeoFallback) DeepCopy() *GeoFallback
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GeoFallback.
func (*GeoFallback) DeepCopyInto ¶
func (in *GeoFallback) DeepCopyInto(out *GeoFallback)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type MemberCluster ¶
type MemberCluster struct {
ClusterContext string `json:"clusterContext,omitempty"`
}
MemberCluster defines a GSLB member cluster details
func (*MemberCluster) DeepCopy ¶
func (in *MemberCluster) DeepCopy() *MemberCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new MemberCluster.
func (*MemberCluster) DeepCopyInto ¶
func (in *MemberCluster) DeepCopyInto(out *MemberCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PoolAlgorithmSettings ¶
type PoolAlgorithmSettings struct { LBAlgorithm string `json:"lbAlgorithm,omitempty"` HashMask *int `json:"hashMask,omitempty"` FallbackAlgorithm *GeoFallback `json:"geoFallback,omitempty"` }
PoolAlgorithmSettings define a set of properties to select the Gslb Algorithm for a Gslb Service pool. This is to select the appropriate server in a Gslb Service pool.
func (*PoolAlgorithmSettings) DeepCopy ¶
func (in *PoolAlgorithmSettings) DeepCopy() *PoolAlgorithmSettings
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PoolAlgorithmSettings.
func (*PoolAlgorithmSettings) DeepCopyInto ¶
func (in *PoolAlgorithmSettings) DeepCopyInto(out *PoolAlgorithmSettings)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PublicIPElem ¶
type PublicIPElem struct { // Cluster is the cluster context Cluster string `json:"cluster"` IP string `json:"ip"` }
PublicIPElem determines the publicip of a cluster where traffic should be routed
func (*PublicIPElem) DeepCopy ¶
func (in *PublicIPElem) DeepCopy() *PublicIPElem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PublicIPElem.
func (*PublicIPElem) DeepCopyInto ¶
func (in *PublicIPElem) DeepCopyInto(out *PublicIPElem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SitePersistence ¶
type SitePersistence struct { Enabled bool `json:"enabled,omitempty"` ProfileRef string `json:"profileRef,omitempty"` PKIProfileRef *string `json:"pkiProfileRef,omitempty"` }
SitePersistence has the required properties to enable site persistence for a GS. If it needs to be enabled, `Enabled` must be set to true, and a persistence profile ref has to be specified.
func (*SitePersistence) DeepCopy ¶
func (in *SitePersistence) DeepCopy() *SitePersistence
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SitePersistence.
func (*SitePersistence) DeepCopyInto ¶
func (in *SitePersistence) DeepCopyInto(out *SitePersistence)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ThirdPartyMember ¶
type ThirdPartyMember struct { VIP string `json:"vip,omitempty"` Site string `json:"site,omitempty"` PublicIP string `json:"publicIP,omitempty"` }
func (*ThirdPartyMember) DeepCopy ¶
func (in *ThirdPartyMember) DeepCopy() *ThirdPartyMember
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ThirdPartyMember.
func (*ThirdPartyMember) DeepCopyInto ¶
func (in *ThirdPartyMember) DeepCopyInto(out *ThirdPartyMember)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TrafficSplitElem ¶
type TrafficSplitElem struct { // Cluster is the cluster context Cluster string `json:"cluster,omitempty"` Weight uint32 `json:"weight,omitempty"` Priority uint32 `json:"priority,omitempty"` }
TrafficSplitElem determines how much traffic to be routed to a cluster.
func (*TrafficSplitElem) DeepCopy ¶
func (in *TrafficSplitElem) DeepCopy() *TrafficSplitElem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TrafficSplitElem.
func (*TrafficSplitElem) DeepCopyInto ¶
func (in *TrafficSplitElem) DeepCopyInto(out *TrafficSplitElem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.