constants

package
v1.0.1 Latest Latest
Warning

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

Go to latest
Published: Jan 22, 2020 License: Apache-2.0 Imports: 1 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// EdgeLBIngressClassAnnotationKey is the key of the annotation that selects the ingress controller used to satisfy a given Ingress resource.
	// This is the same annotation that is used by Ingress controllers such as "kubernetes/ingress-nginx" or "containous/traefik".
	EdgeLBIngressClassAnnotationKey = "kubernetes.io/ingress.class"
	// EdgeLBIngressClassAnnotationValue is the value that must be used for the annotation that selects the ingress controller used to satisfy a given Ingress resource.
	// Only Ingres resources having this as the value of the aforementioned annotation will be provisioned using EdgeLB.
	EdgeLBIngressClassAnnotationValue = "edgelb"

	// DklbConfigAnnotationKey is the key of the annotation that holds the target EdgeLB pool's specification for a given Service/Ingress resource.
	DklbConfigAnnotationKey = annotationKeyPrefix + "dklb-config"

	// DklbPaused is the key of the annotation that holds whether a given Service/Ingress resource is currently paused.
	// While this annotation is set to "true" on a given Ingress/Service resource, the only actions that dlkb will perform on the resource is validation and defaulting (via the admission webhook).
	// It is used mostly to facilitate end-to-end testing, as it allows to simulate certain scenarios that would otherwise be very hard to simulate.
	// It also allows for performing end-to-end testing on the admission webhook without the need for provisioning EdgeLB pools.
	DklbPaused = annotationKeyPrefix + "dklb-paused"

	// DklbSecretAnnotationKey is the key of the annotation that holds the MD5 hash of the base64 decoded certificate and private key.
	DklbSecretAnnotationKey = annotationKeyPrefix + "dklb-hash"
)
View Source
const (
	// EdgeLBBackendBackup holds the value used as part of "miscStr" in order to instruct EdgeLB to use a given server only as "backup".
	EdgeLBBackendBackup = "backup"
	// EdgeLBBackendBalanceLeastConnections holds the value used to request the "leastconn" mode for a backend.
	EdgeLBBackendBalanceLeastConnections = "leastconn"
	// EdgeLBBackendInsecureSkipTLSVerify holds the value used as part of "miscStr" in order to disable verification of the TLS certificate presented by a given backend (if any).
	EdgeLBBackendInsecureSkipTLSVerify = "ssl verify none"
	// EdgeLBBackendTLSCheck holds the value used as part of "miscStr" in order to instruct EdgeLB to perform health-checks over TLS.
	EdgeLBBackendTLSCheck = "check-ssl"
	// EdgeLBCloudProviderPoolNamePrefix is the prefix used in the names of EdgeLB pools requesting a cloud load-balancer to be configured.
	EdgeLBCloudProviderPoolNamePrefix = "cloud"
	// EdgeLBFrontendBindAddress holds the bind address to use in EdgeLB frontends.
	EdgeLBFrontendBindAddress = "0.0.0.0"
	// EdgeLBRolePublic is the role used to schedule an EdgeLB pool onto a public DC/OS agent.
	EdgeLBRolePublic = "slave_public"
	// EdgeLBRolePrivate is the value used to schedule an EdgeLB pool onto a private DC/OS agent.
	EdgeLBRolePrivate = "*"
	// EdgeLBHostNetwork is the value used to schedule an EdgeLB pool onto the host network.
	EdgeLBHostNetwork = ""
	// EdgeLBPoolNameRegex is the regular expression used to validate the name of an EdgeLB pool.
	EdgeLBPoolNameRegex = "^[a-z0-9]([a-z0-9-]{0,61}[a-z0-9])?$"
)
View Source
const (
	// ReasonNoDefaultBackendSpecified is the reason used in Kubernetes events emitted whenever an Ingress resource doesn't define a default backend.
	ReasonNoDefaultBackendSpecified = "NoDefaultBackendSpecified"
	// ReasonInvalidBackendService is the reason used in Kubernetes events emitted due to a missing or otherwise invalid Service resource referenced by an Ingress resource.
	ReasonInvalidBackendService = "InvalidBackendService"
	// ReasonTranslationError is the reason used in Kubernetes events emitted due to failed translation of a Service/Ingress resource into an EdgeLB pool.
	// TODO (@bcustodio) Understand if we should break this down into more fine-grained reasons (e.g. "InvalidSpec", "NetworkingError", ...).
	ReasonTranslationError = "TranslationError"
	// ReasonTranslationPaused is the reason used in Kubernetes events emitted while translation for a given Service/Ingress resource is paused.
	ReasonTranslationPaused = "TranslationPaused"
	// ReasonSecretReflectionError is the reason used in Kubernetes events emitted when an error occurs
	// reflecting the Kubernetes secret to DC/OS.
	ReasonSecretReflectionError = "SecretReflectionError"
)
View Source
const (
	// ComponentName is the component name to report when performing leader election and emitting Kubernetes events.
	ComponentName = "dklb"
	// DefaultBackendServiceName is the name of the Service resource that exposes dklb as a default backend for Ingress resources.
	DefaultBackendServiceName = "dklb"
	// DefaultBackendServicePort is the service port defined in the Service resource that exposes dklb as a default backend for Ingress resources.
	DefaultBackendServicePort = 80
	// DefaultEdgeLBHost is the default host at which the EdgeLB API server can be reached.
	DefaultEdgeLBHost = "api.edgelb.marathon.l4lb.thisdcos.directory"
	// DefaultEdgeLBPath is the default path at which the EdgeLB API server can be reached.
	DefaultEdgeLBPath = "/"
	// DefaultEdgeLBPoolGroup is the name of the DC/OS service group in which to create EdgeLB pools by default.
	DefaultEdgeLBPoolGroup = "dcos-edgelb/pools"
	// DefaultEdgeLBPoolSize is the default number of load balancers in the EdgeLB pool.
	DefaultEdgeLBPoolSize = 1
	// DefaultEdgeLBScheme is the default scheme to use when communicating with the EdgeLB API server.
	DefaultEdgeLBScheme = "http"
	// DefaultResyncPeriod is the (default) maximum amount of time that may elapse between two consecutive synchronizations of Ingress/Service resources and the status of EdgeLB pools.
	DefaultResyncPeriod = 2 * time.Minute
	// KubeNodeTaskPattern is the pattern used to match Mesos tasks that correspond to Kubernetes nodes (either private or public).
	KubeNodeTaskPattern = "^kube-node-.*$"
	// KubeSystemNamespaceName holds the name of the "kube-system" namespace.
	KubeSystemNamespaceName = "kube-system"
)
View Source
const (
	// DefaultDCOSVirtualNetworkName is the name of the virtual network that exists by default in DC/OS.
	DefaultDCOSVirtualNetworkName = "dcos"
)

Variables

This section is empty.

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

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