Documentation ¶
Index ¶
Constants ¶
const ( ClusterIdPropertyName = "cluster.clusterset.k8s.io" ClusterSetIdPropertyName = "clusterset.k8s.io" )
const ( EndpointIpv4Attr = "AWS_INSTANCE_IPV4" EndpointPortAttr = "AWS_INSTANCE_PORT" EndpointPortNameAttr = "ENDPOINT_PORT_NAME" EndpointProtocolAttr = "ENDPOINT_PROTOCOL" EndpointReadyAttr = "READY" EndpointHostnameAttr = "HOSTNAME" EndpointNodeNameAttr = "NODENAME" ClusterIdAttr = "CLUSTER_ID" ClusterSetIdAttr = "CLUSTERSET_ID" ServicePortNameAttr = "SERVICE_PORT_NAME" ServicePortAttr = "SERVICE_PORT" ServiceTargetPortAttr = "SERVICE_TARGET_PORT" ServiceProtocolAttr = "SERVICE_PROTOCOL" ServiceTypeAttr = "SERVICE_TYPE" ServiceExportCreationAttr = "SERVICE_EXPORT_CREATION_TIMESTAMP" K8sVersionAttr = "K8S_CONTROLLER" )
Cloudmap Instances IP and Port is supposed to be AWS_INSTANCE_IPV4 and AWS_INSTANCE_PORT Rest are custom attributes
Variables ¶
This section is empty.
Functions ¶
func EndpointIdFromIPAddressAndPort ¶ added in v0.2.0
EndpointIdFromIPAddressAndPort converts an IP address to human-readable identifier.
Types ¶
type Changes ¶
type Changes struct { // List of endpoints that need to be created Create []*Endpoint // List of endpoints that need to be updated Update []*Endpoint // List of endpoints that need to be deleted Delete []*Endpoint }
func (*Changes) HasDeletes ¶ added in v0.2.0
func (*Changes) HasUpdates ¶ added in v0.2.0
type ClusterUtils ¶ added in v0.3.0
type ClusterUtils struct {
// contains filtered or unexported fields
}
ClusterUtils provides utility functions for working with clusters
func NewClusterUtils ¶ added in v0.3.0
func NewClusterUtils(client client.Client) ClusterUtils
func NewClusterUtilsWithValues ¶ added in v0.3.0
func NewClusterUtilsWithValues(clusterId string, clusterSetId string) ClusterUtils
func (*ClusterUtils) GetClusterProperties ¶ added in v0.3.0
func (r *ClusterUtils) GetClusterProperties(ctx context.Context) (*clusterProperties, error)
func (*ClusterUtils) LoadClusterProperties ¶ added in v0.3.0
func (r *ClusterUtils) LoadClusterProperties(ctx context.Context) error
type Endpoint ¶
type Endpoint struct { Id string IP string EndpointPort Port ServicePort Port ClusterId string ClusterSetId string ServiceType ServiceType ServiceExportCreationTimestamp int64 Ready bool Hostname string Nodename string Attributes map[string]string }
Endpoint holds basic values and attributes for an endpoint.
func NewEndpointFromInstance ¶
func NewEndpointFromInstance(inst *types.HttpInstanceSummary) (*Endpoint, error)
NewEndpointFromInstance converts a Cloud Map HttpInstanceSummary to an endpoint.
func (*Endpoint) Equals ¶
Equals evaluates if two Endpoints are "deeply equal" (including all fields).
func (*Endpoint) GetCloudMapAttributes ¶ added in v0.1.1
GetCloudMapAttributes extracts endpoint attributes for Cloud Map service instance registration.
type Namespace ¶ added in v0.1.1
type Namespace struct { Id string Name string Type NamespaceType }
Namespace hold namespace attributes
type NamespaceType ¶ added in v0.1.1
type NamespaceType string
const ( HttpNamespaceType NamespaceType = "HTTP" DnsPrivateNamespaceType NamespaceType = "DNS_PRIVATE" // UnsupportedNamespaceType Placeholder NamespaceType to denote not supported values UnsupportedNamespaceType NamespaceType = "" )
func ConvertNamespaceType ¶ added in v0.1.1
func ConvertNamespaceType(nsType types.NamespaceType) (namespaceType NamespaceType)
func (*NamespaceType) IsUnsupported ¶ added in v0.1.1
func (namespaceType *NamespaceType) IsUnsupported() bool
type Plan ¶
type Plan struct { // List of current instances Current []*Endpoint // List of desired instances Desired []*Endpoint }
func (*Plan) CalculateChanges ¶
CalculateChanges returns list of Changes that need to applied
type Port ¶ added in v0.2.0
type Service ¶
Service holds namespace and endpoint state for a named service.
func (*Service) GetEndpoints ¶ added in v0.3.1
type ServiceType ¶ added in v0.3.0
type ServiceType string
const ( HeadlessType ServiceType = "Headless" ClusterSetIPType ServiceType = "ClusterSetIP" )
func (ServiceType) String ¶ added in v0.3.0
func (serviceType ServiceType) String() string
Gives string representation for ServiceType