v1alpha1

package
v0.0.0-...-87a21aa Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 3, 2024 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PoolAlgorithmConsistentHash = "GSLB_ALGORITHM_CONSISTENT_HASH"
	PoolAlgorithmGeo            = "GSLB_ALGORITHM_GEO"
	PoolAlgorithmRoundRobin     = "GSLB_ALGORITHM_ROUND_ROBIN"
	PoolAlgorithmTopology       = "GSLB_ALGORITHM_TOPOLOGY"
)
View Source
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"
)
View Source
const (
	GSNameType = "HOSTNAME"
)

how the Global services are going to be named

Variables

View Source
var (
	SchemeBuilder runtime.SchemeBuilder

	AddToScheme = localSchemeBuilder.AddToScheme
)
View Source
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

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.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL