Documentation ¶
Overview ¶
Package consts provides most useful constant for Liqo Controllers
Index ¶
Constants ¶
View Source
const ( // OverrideAddressAnnotation is the annotation used to override the address of a service. OverrideAddressAnnotation = "liqo.io/override-address" // OverridePortAnnotation is the annotation used to override the port of a service. OverridePortAnnotation = "liqo.io/override-port" // APIServerSupportAnnotation is the annotation used to enable the API server support for a pod. APIServerSupportAnnotation = "liqo.io/api-server-support" // APIServerSupportAnnotationValueRemote is the value of the annotation used to enable the API server support for a pod. APIServerSupportAnnotationValueRemote = "remote" // APIServerSupportAnnotationValueDisabled is the value of the annotation used to disable the API server support for a pod. APIServerSupportAnnotationValueDisabled = "disabled" // RemoteServiceAccountNameAnnotation is the annotation used to set the name of the service account used by a pod // in the remote cluster. This annotation requires the API server support to be "remote" for the pod and the // remote service account to be created. RemoteServiceAccountNameAnnotation = "liqo.io/remote-service-account-name" // LabelsTemplateAnnotationKey contains a cache to store labels keys that belongs to a template. LabelsTemplateAnnotationKey = "liqo.io/template-labels" // AnnotsTemplateAnnotationKey contains a cache to store annotations keys that belongs to a template. AnnotsTemplateAnnotationKey = "liqo.io/template-annotations" // UninstallingAnnotationKey is the annotation used to signal liqo is being uninstalled. UninstallingAnnotationKey = "liqo.io/uninstalling" // UninstallingAnnotationValue is the value of the annotation used to signal liqo is being uninstalled. UninstallingAnnotationValue = "true" )
View Source
const ( // ClusterIDLabelName is the name of the label key to use with Cluster ID. ClusterIDLabelName = "clusterID" // ClusterIDConfigMapKey is the key of the configmap where the cluster-id is stored. ClusterIDConfigMapKey = "CLUSTER_ID" // ClusterNameConfigMapKey is the key of the configmap where the cluster-name is stored. ClusterNameConfigMapKey = "CLUSTER_NAME" // ClusterIDConfigMapNameLabelValue value of the name key of the configmap used to get it by label. ClusterIDConfigMapNameLabelValue = "clusterid-configmap" )
View Source
const ( // ProviderClusterLabel is the cluster label used to indicate the cluster provider. ProviderClusterLabel = "liqo.io/provider" // TopologyRegionClusterLabel is the cluster label used to indicate the cluster region. TopologyRegionClusterLabel = "topology.kubernetes.io/region" )
View Source
const ( // DefaultLiqoNamespace represents the default namespace where liqo is installed in. DefaultLiqoNamespace = "liqo" // AuthServiceName contains the name of the Liqo Authentication service. AuthServiceName = "liqo-auth" )
View Source
const ( // GatewayResourceLabel is the label added to a gateway resource. GatewayResourceLabel = "networking.liqo.io/gateway-resource" // GatewayResourceLabelValue is the value of the label added to a gateway resource. GatewayResourceLabelValue = "true" // GatewayTypeServer indicates a Gateway of type server. GatewayTypeServer = "server" // GatewayTypeClient indicates a Gateway of type client. GatewayTypeClient = "client" // PrivateKeyField is the data field of the secrets containing private keys. PrivateKeyField = "privateKey" // PublicKeyField is the data field of the secrets containing public keys. PublicKeyField = "publicKey" // ClusterRoleBindingFinalizer is the finalizer added ti the owner when a ClusterRoleBinding is created. ClusterRoleBindingFinalizer = "networking.liqo.io/clusterrolebinding" // GatewayNameLabel is the label added to a resource to identify the Gateway it belongs to. GatewayNameLabel = "networking.liqo.io/gateway-name" // GatewayNamespaceLabel is the label added to a resource to identify the namespace of the Gateway it belongs to. GatewayNamespaceLabel = "networking.liqo.io/gateway-namespace" )
View Source
const ( // DefaultRouteTable is the name of the default table used for routes. DefaultRouteTable = "liqo" // InternalFabricName is the label used to identify the internal fabric name. InternalFabricName = "networking.liqo.io/internal-fabric-name" // InternalNodeName is the label used to identify the internal node name. InternalNodeName = "networking.liqo.io/internal-node-name" // InternalFabricGeneveTunnelFinalizer is the finalizer used to ensure that the geneve tunnel is deleted and the // id is freed. InternalFabricGeneveTunnelFinalizer = "networking.liqo.io/internal-fabric-geneve-tunnel-finalizer" )
View Source
const ( // IpamPort is the port used by the IPAM gRPC server. IpamPort = 6000 // NetworkNotRemappedLabelKey is the label key used to mark a Network that does not need CIDR remapping. NetworkNotRemappedLabelKey = "ipam.liqo.io/network-not-remapped" // NetworkNotRemappedLabelValue is the label value used to mark a Network that does not need CIDR remapping. NetworkNotRemappedLabelValue = "true" // NetworkTypeLabelKey is the label key used to indicate the type of a Network. NetworkTypeLabelKey = "ipam.liqo.io/network-type" // NetworkTypePodCIDR is the constant representing a network of type podCIDR. NetworkTypePodCIDR NetworkType = "pod-cidr" // NetworkTypeServiceCIDR is the constant representing a network of type serviceCIDR. NetworkTypeServiceCIDR NetworkType = "service-cidr" // NetworkTypeExternalCIDR is the constant representing a network of type externalCIDR. NetworkTypeExternalCIDR NetworkType = "external-cidr" // NetworkTypeInternalCIDR is the constant representing a network of type internalCIDR. NetworkTypeInternalCIDR NetworkType = "internal-cidr" // NetworkTypeReserved is the constant representing a network of type reserved subnet. NetworkTypeReserved NetworkType = "reserved" // DefaultCIDRValue is the default value for a string that contains a CIDR. DefaultCIDRValue = "None" )
View Source
const ( // K8sAppNameKey = key of the label used to denote a deployed application name. K8sAppNameKey = "app.kubernetes.io/name" // K8sAppComponentKey = key of the label used to denote a deployed application component. K8sAppComponentKey = "app.kubernetes.io/component" // AuthAppName label value that denotes the name of the liqo-auth deployment. AuthAppName = "auth" // ControllerManagerAppName label value that denotes the name of the liqo-controller-manager deployment. ControllerManagerAppName = "controller-manager" // APIServerProxyAppName label value that denotes the name of the liqo-api-server-proxy deployment. APIServerProxyAppName = "proxy" // IpamStorageResourceLabelKey is the constant representing // the key of the label assigned to all IpamStorage resources. IpamStorageResourceLabelKey = "ipam.liqo.io/ipamstorage" // IpamStorageResourceLabelValue is the constant representing // the value of the label assigned to all IpamStorage resources. IpamStorageResourceLabelValue = "true" )
View Source
const ( // RemoteClusterID is used to obtain cluster-id from different Liqo resources. RemoteClusterID = "liqo.io/remote-cluster-id" // TypeLabel is the key of a Liqo label that identifies different types of nodes. // todo: change to NodeTypeLabel TypeLabel = "liqo.io/type" // TypeNode is the value of a Liqo label that identifies Liqo virtual nodes. // todo: change to VirtualNodeType TypeNode = "virtual-node" // DocumentationURL is the URL to official Liqo Documentation. DocumentationURL = "https://doc.liqo.io/" // DefaultNamespaceOffloadingName is the default name of NamespaceOffloading resources. Every namespace that has // to be offloaded with Liqo, must have a NamespaceOffloading resource with this name. DefaultNamespaceOffloadingName = "offloading" // SchedulingLiqoLabel is necessary in order to allow Pods to be scheduled on remote clusters. SchedulingLiqoLabel = "liqo.io/scheduling-enabled" // SchedulingLiqoLabelValue unique value allowed for SchedulingLiqoLabel. SchedulingLiqoLabelValue = "true" // RemoteNamespaceManagedByAnnotationKey is the annotation that identifies the NamespaceMap managing a given remote namespace. RemoteNamespaceManagedByAnnotationKey = "liqo.io/managed-by-namespace-map" // RemoteNamespaceOriginalNameAnnotationKey is the annotation that identifies the original name of a remote namespace. RemoteNamespaceOriginalNameAnnotationKey = "liqo.io/original-name" // RemoteNamespaceClusterRoleName is the name of the cluster role used to grant permissions to the virtual kubelet in remote namespaces. RemoteNamespaceClusterRoleName = "liqo-virtual-kubelet-remote" )
View Source
const ( // ClusterNameParameter is the name of the parameter specifying the cluster name. ClusterNameParameter = "cluster-name" // ClusterLabelsParameter is the name of the parameter specifying the cluster labels. ClusterLabelsParameter = "cluster-labels" // ReservedSubnetsParameter is the name of the parameter specifying the cluster's reserved subnets. ReservedSubnetsParameter = "reserved-subnets" // EnableLanDiscoveryParameter is the name of the parameter specifying whether the lan discovery is enabled. EnableLanDiscoveryParameter = "enable-lan-discovery" // GenerateNameParameter is the name of the parameter specifying whether to generate a random name for the cluster. GenerateNameParameter = "generate-name" // ResourcePluginAddressParameter is the name of the parameter specifying the address of a resource plugin. ResourcePluginAddressParameter = "resource-plugin-address" // NotApplicable is a constant used to represent a not applicable value. NotApplicable = "N/A" )
View Source
const ( // OwnershipLocal indicates that the resource is owned by the local cluster. OwnershipLocal OwnershipType = "Local" // In particular: // - the spec of the resource is owned by the local cluster. // - the status by the remote cluster. OwnershipShared OwnershipType = "Shared" // AllowList reflects only the resources with a specific annotation. AllowList ReflectionType = "AllowList" // DenyList reflects all the resources excluding the ones with a specific annotation. DenyList ReflectionType = "DenyList" // CustomLiqo reflects the resources following the custom Liqo logic. CustomLiqo ReflectionType = "CustomLiqo" // ReplicationRequestedLabel is the key of a label indicating whether the given resource should be replicated remotely. ReplicationRequestedLabel = "liqo.io/replication" // ReplicationRequestedLabelValue is the value of a label indicating that the given resource should be replicated remotely. ReplicationRequestedLabelValue = "true" // ReplicationOriginLabel is the key of a label indicating the origin cluster of a replicated resource. ReplicationOriginLabel = "liqo.io/originID" // ReplicationDestinationLabel is the key of a label indicating the destination cluster of a replicated resource. ReplicationDestinationLabel = "liqo.io/remoteID" // ReplicationStatusLabel is the key of a label indicating that this resource has been created by a remote cluster through replication. ReplicationStatusLabel = "liqo.io/replicated" // LocalPodLabelKey label key added to all the local pods that have been offloaded/replicated to a remote cluster. LocalPodLabelKey = "liqo.io/shadowPod" // LocalPodLabelValue value of the label added to the local pods that have been offloaded/replicated to a remote cluster. LocalPodLabelValue = "true" // ManagedByLabelKey is the label key used to indicate that a given resource is managed by another one. ManagedByLabelKey = "liqo.io/managed-by" // ManagedByShadowPodValue it the label value used to indicate that a given resource is managed by a ShadowPod. ManagedByShadowPodValue = "shadowpod" // ManagedByShadowEndpointSliceValue it the label value used to indicate that a given resource is managed by a ShadowEndpointSlice. ManagedByShadowEndpointSliceValue = "shadowendpointslice" // LocalResourceOwnership label key added to a resource when it is owned by a local component. // Ex. Local networkconfigs are owned by the component that creates them. If the resource is replicated in // a remote cluster this label is removed by the CRDReplicator. LocalResourceOwnership = "liqo.io/ownership" // ForceRemoteNodePortAnnotationKey is the annotation key used to indicate that a service should be forced to // use the same node port on both clusters. ForceRemoteNodePortAnnotationKey = "liqo.io/force-remote-node-port" // SkipReflectionAnnotationKey is the annotation key used to indicate that a given object should not be reflected into a remote cluster. SkipReflectionAnnotationKey = "liqo.io/skip-reflection" // AllowReflectionAnnotationKey is the annotation key used to indicate that a given object should be reflected into a remote cluster. AllowReflectionAnnotationKey = "liqo.io/allow-reflection" // PodAntiAffinityPresetKey is the annotation key used to express an anti-affinity preset to apply to offloaded pods. PodAntiAffinityPresetKey = "liqo.io/anti-affinity-preset" // VKSkipUnmapIPAnnotationKey is the annotation key used to tell the VK to skip the unmapping of the IP as already managed by another entity. VKSkipUnmapIPAnnotationKey = "liqo.io/vk-skip-unmap-ip" // PodAntiAffinityPresetValueSoft is the annotation value corresponding to the "soft" anti-affinity preset (i.e., preferred). PodAntiAffinityPresetValueSoft = "soft" // PodAntiAffinityPresetValueHard is the annotation value corresponding to the "hard" anti-affinity preset (i.e., required). PodAntiAffinityPresetValueHard = "hard" // PodAntiAffinityPresetValuePropagate is the annotation value corresponding to the propagation of the original pod anti-affinity constrains. PodAntiAffinityPresetValuePropagate = "propagate" // PodAntiAffinityLabelsKey is the annotation key used to specify a subset of the pod label keys for the anti-affinity constraints. PodAntiAffinityLabelsKey = "liqo.io/anti-affinity-labels" RemoteUnavailableKey = "liqo.io/remote-unavailable" // not available. RemoteUnavailableValue = "true" )
View Source
const ( // StorageProvisionerName is the name of the liqo storage provisioner. StorageProvisionerName = "liqo.io/storage" // StorageAvailableLabel is the label used to mark if the liqo storage is available on a virtual node. StorageAvailableLabel = "storage.liqo.io/available" // VirtualPvcNamespaceLabel is the label used to mark the namespace of a virtual PVC. VirtualPvcNamespaceLabel = "storage.liqo.io/virtual-pvc-namespace" // VirtualPvcNameLabel is the label used to mark the name of a virtual PVC. VirtualPvcNameLabel = "storage.liqo.io/virtual-pvc-name" // StorageNamespaceLabel is the label used to mark the liqo storage namespace. StorageNamespaceLabel = "liqo.io/storage-provisioner" )
View Source
const (
// ResourceOfferNameLabel is the label used to identify the related ResourceOffer.
ResourceOfferNameLabel = "resourceoffer.liqo.io/name"
)
View Source
const ( // VirtualNodeTolerationKey all Pods that have to be scheduled on virtual nodes must have this toleration // to Liqo taint. VirtualNodeTolerationKey = "virtual-node.liqo.io/not-allowed" )
Variables ¶
This section is empty.
Functions ¶
func ClusterIDConfigMapSelector ¶ added in v0.3.1
ClusterIDConfigMapSelector returns the selector for the configmap where the cluster-id is stored.
Types ¶
type OwnershipType ¶
type OwnershipType string
OwnershipType indicates the type of ownership over a resource.
type PeeringPhase ¶
type PeeringPhase string
PeeringPhase contains the status of the peering with a remote cluster.
const ( // PeeringPhaseNone -> no pering has been established. PeeringPhaseNone PeeringPhase = "None" // PeeringPhaseAuthenticated -> an identity to interact with the remote cluster is available. PeeringPhaseAuthenticated PeeringPhase = "Authenticated" // PeeringPhaseEstablished -> the peering has been established (either incoming or outgoing). PeeringPhaseEstablished PeeringPhase = "Established" // PeeringPhaseIncoming -> an incoming peering has been established. PeeringPhaseIncoming PeeringPhase = "Incoming" // PeeringPhaseOutgoing -> an outgoing peering has been established. PeeringPhaseOutgoing PeeringPhase = "Outgoing" // PeeringPhaseBidirectional -> both incoming and outgoing peerings have been established. PeeringPhaseBidirectional PeeringPhase = "Bidirectional" )
type ReflectionType ¶ added in v0.9.4
type ReflectionType string
ReflectionType is the type of reflection.
Click to show internal directories.
Click to hide internal directories.