sigs.k8s.io/cluster-api@v1.6.3/docs/book/src/reference/glossary.md (about)

     1  # Table of Contents
     2  
     3  [A](#a) | [B](#b) | [C](#c) | [D](#d) | [E](#e) | [H](#h) | [I](#i) | [K](#k) | [L](#l)| [M](#m) | [N](#n) | [O](#o) | [P](#p) | [R](#r) | [S](#s) | [T](#t) | [W](#w)
     4  
     5  # A
     6  ---
     7  
     8  ### Add-ons
     9  
    10  Services beyond the fundamental components of Kubernetes.
    11  
    12  * __Core Add-ons__: Addons that are required to deploy a Kubernetes-conformant cluster: DNS, kube-proxy, CNI.
    13  * __Additional Add-ons__: Addons that are not required for a Kubernetes-conformant cluster (e.g. metrics/Heapster, Dashboard).
    14  
    15  # B
    16  ---
    17  
    18  ### Bootstrap
    19  
    20  The process of turning a server into a Kubernetes node. This may involve assembling data to provide when creating the server that backs the Machine, as well as runtime configuration of the software running on that server.
    21  
    22  ### Bootstrap cluster
    23  
    24  A temporary cluster that is used to provision a Target Management cluster.
    25  
    26  ### Bootstrap provider
    27  
    28  Refers to a [provider](#provider) that implements a solution for the [bootstrap](#bootstrap) process.
    29  Bootstrap provider's interaction with Cluster API is based on what is defined in the [Cluster API contract](#contract).
    30  
    31  See [CABPK](#cabpk).
    32  
    33  # C
    34  ---
    35  
    36  ### CAEP
    37  Cluster API Enhancement Proposal - patterned after [KEP](https://git.k8s.io/enhancements/keps/README.md). See [template](https://github.com/kubernetes-sigs/cluster-api/blob/main/docs/proposals/YYYYMMDD-template.md)
    38  
    39  ### CAPI
    40  Core Cluster API
    41  
    42  ### CAPA
    43  Cluster API Provider AWS
    44  
    45  ### CABPK
    46  Cluster API Bootstrap Provider Kubeadm
    47  
    48  ### CABPOCNE
    49  Cluster API Bootstrap Provider Oracle Cloud Native Environment (OCNE)
    50  
    51  ### CACPOCNE
    52  Cluster API Control Plane Provider Oracle Cloud Native Environment (OCNE)
    53  
    54  ### CAPC
    55  Cluster API Provider CloudStack
    56  
    57  ### CAPD
    58  Cluster API Provider Docker
    59  
    60  ### CAPDO
    61  Cluster API Provider DigitalOcean
    62  
    63  ### CAPG
    64  Cluster API Google Cloud Provider
    65  
    66  ### CAPH
    67  Cluster API Provider Hetzner
    68  
    69  ### CAPHV
    70  Cluster API Provider Hivelocity
    71  
    72  ### CAPIBM
    73  Cluster API Provider IBM Cloud
    74  
    75  ### CAPM3
    76  Cluster API Provider Metal3
    77  
    78  ### CAPN
    79  Cluster API Provider Nested
    80  
    81  ### CAPX
    82  Cluster API Provider Nutanix
    83  
    84  ### CAPKK
    85  Cluster API Provider KubeKey
    86  
    87  ### CAPK
    88  Cluster API Provider Kubevirt
    89  
    90  ### CAPO
    91  Cluster API Provider OpenStack
    92  
    93  ### CAPOSC
    94  Cluster API Provider Outscale
    95  
    96  ### CAPOCI
    97  Cluster API Provider Oracle Cloud Infrastructure (OCI)
    98  
    99  ### CAPV
   100  Cluster API Provider vSphere
   101  
   102  ### CAPVC
   103  Cluster API Provider vcluster
   104  
   105  ### CAPVCD
   106  Cluster API Provider VMware Cloud Director
   107  
   108  ### CAPZ
   109  Cluster API Provider Azure
   110  
   111  ### Cloud provider
   112  
   113  Or __Cloud service provider__
   114  
   115  Refers to an information technology (IT) company that provides computing resources (e.g. AWS, Azure, Google, etc.).
   116  
   117  ### Cluster
   118  
   119  A full Kubernetes deployment. See Management Cluster and Workload Cluster.
   120  
   121  ### ClusterClass
   122  
   123  A collection of templates that define a topology (control plane and workers) to be used to continuously reconcile one or more Clusters.
   124  See [ClusterClass](../tasks/experimental-features/cluster-class/index.md)
   125  
   126  ### Cluster API
   127  
   128  Or __Cluster API project__
   129  
   130  The Cluster API sub-project of the SIG-cluster-lifecycle. It is also used to refer to the software components, APIs, and community that produce them.
   131  
   132  See [core provider](#core-provider)
   133  
   134  ### Cluster API Runtime
   135  
   136  The Cluster API execution model, a set of controllers cooperating in managing the Kubernetes cluster lifecycle.
   137  
   138  ### Cluster Infrastructure
   139  
   140  or __Kubernetes Cluster Infrastructure__
   141  
   142  Defines the **infrastructure that supports a Kubernetes cluster**, like e.g. VPC, security groups, load balancers, etc. Please note that in the context of managed Kubernetes some of those components are going to be provided by the corresponding abstraction for a specific Cloud provider (EKS, OKE, AKS etc), and thus Cluster API should not take care of managing a subset or all those components.
   143  
   144  ### Contract
   145  
   146  Or __Cluster API contract__
   147  
   148  Defines a set of rules a [provider](#provider) is expected to comply with in order to interact with Cluster API.
   149  Those rules can be in the form of CustomResourceDefinition (CRD) fields and/or expected behaviors to be implemented.
   150  
   151  ### Control plane
   152  
   153  The set of Kubernetes services that form the basis of a cluster. See also [https://kubernetes.io/docs/concepts/#kubernetes-control-plane](https://kubernetes.io/docs/concepts/#kubernetes-control-plane) There are two variants:
   154  
   155  * __Self-provisioned__: A Kubernetes control plane consisting of pods or machines wholly managed by a single Cluster API deployment.
   156  * __External__ or __Managed__: A control plane offered and controlled by some system other than Cluster API (e.g., GKE, AKS, EKS, IKS).
   157  
   158  ### Control plane provider
   159  
   160  Refers to a [provider](#provider) that implements a solution for the management of a Kubernetes [control plane](#control-plane).
   161  Control plane provider's interaction with Cluster API is based on what is defined in the [Cluster API contract](#contract).
   162  
   163  See [KCP](#kcp).
   164  
   165  ### Core provider
   166  
   167  Refers to a [provider](#provider) that implements Cluster API core controllers; if you
   168  consider that the first project that must be deployed in a management Cluster is Cluster API itself, it should be clear why
   169  the Cluster API project is also referred to as the core provider.
   170  
   171  See [CAPI](#cluster-api).
   172  
   173  # D
   174  ---
   175  
   176  ### Default implementation
   177  
   178  A feature implementation offered as part of the Cluster API project and maintained by the CAPI core team; For example
   179  [KCP](#kcp) is a default implementation for a [control plane provider](#control-plane-provider).
   180  
   181  # E
   182  ---
   183  
   184  ### External patch
   185  
   186  [Patch](#patch) generated by an external component using [Runtime SDK](#runtime-sdk). Alternative to [inline patch](#inline-patch).
   187  
   188  ### External patch extension
   189  
   190  A [runtime extension](#runtime-extension) that implements a [topology mutation hook](#topology-mutation-hook).
   191  
   192  # H
   193  ---
   194  
   195  ### Horizontal Scaling
   196  
   197  The ability to add more machines based on policy and well-defined metrics. For example, add a machine to a cluster when CPU load average > (X) for a period of time (Y).
   198  
   199  ### Host
   200  
   201  see [Server](#server)
   202  
   203  # I
   204  ---
   205  
   206  ### Infrastructure provider
   207  
   208  Refers to a [provider](#provider) that implements provisioning of infrastructure/computational resources required by
   209  the Cluster or by Machines (e.g. VMs, networking, etc.).
   210  Infrastructure provider's interaction with Cluster API is based on what is defined in the [Cluster API contract](#contract).
   211  
   212  Clouds infrastructure providers include AWS, Azure, or Google; while VMware, MAAS, or metal3.io can be defined as bare metal providers.
   213  When there is more than one way to obtain resources from the same infrastructure provider (e.g. EC2 vs. EKS in AWS) each way is referred to as a variant.
   214  
   215  For a complete list of providers see [Provider Implementations](providers.md).
   216  
   217  ### Inline patch
   218  
   219  A [patch](#patch) defined inline in a [ClusterClass](#clusterclass). An alternative to an [external patch](#external-patch).
   220  
   221  ### In-place mutable fields
   222  
   223  Fields which changes would only impact Kubernetes objects or/and controller behaviour
   224  but they won't mutate in any way provider infrastructure nor the software running on it. In-place mutable fields
   225  are propagated in place by CAPI controllers to avoid the more elaborated mechanics of a replace rollout.
   226  They include metadata, MinReadySeconds, NodeDrainTimeout, NodeVolumeDetachTimeout and NodeDeletionTimeout but are
   227  not limited to be expanded in the future.
   228  
   229  ### Instance
   230  
   231  see [Server](#server)
   232  
   233  ### Immutability
   234  
   235  A resource that does not mutate.  In Kubernetes we often state the instance of a running pod is immutable or does not change once it is run.  In order to make a change, a new pod is run.  In the context of [Cluster API](#cluster-api) we often refer to a running instance of a [Machine](#machine) as being immutable, from a [Cluster API](#cluster-api) perspective.
   236  
   237  ### IPAM provider
   238  
   239  Refers to a [provider](#provider) that allows Cluster API to interact with IPAM solutions.
   240  IPAM provider's interaction with Cluster API is based on the `IPAddressClaim` and `IPAddress` API types.
   241  
   242  # K
   243  ---
   244  
   245  ### Kubernetes-conformant
   246  
   247  Or __Kubernetes-compliant__
   248  
   249  A cluster that passes the Kubernetes conformance tests.
   250  
   251  ### k/k
   252  
   253  Refers to the [main Kubernetes git repository](https://github.com/kubernetes/kubernetes) or the main Kubernetes project.
   254  
   255  ### KCP
   256  
   257  Kubeadm Control plane Provider
   258  
   259  # L
   260  ---
   261  
   262  ### Lifecycle hook
   263  A [Runtime Hook](#runtime-hook) that allows external components to interact with the lifecycle of a Cluster.
   264  
   265  See [Implementing Lifecycle Hooks](../tasks/experimental-features/runtime-sdk/implement-lifecycle-hooks.md)
   266  # M
   267  ---
   268  
   269  ### Machine
   270  
   271  Or __Machine Resource__
   272  
   273  The Custom Resource for Kubernetes that represents a request to have a place to run kubelet.
   274  
   275  See also: [Server](#server)
   276  
   277  ### Manage a cluster
   278  
   279  Perform create, scale, upgrade, or destroy operations on the cluster.
   280  
   281  ### Managed Kubernetes
   282  
   283  Managed Kubernetes refers to any Kubernetes cluster provisioning and maintenance abstraction, usually exposed as an API, that is natively available in a Cloud provider. For example: [EKS](https://aws.amazon.com/eks/), [OKE](https://www.oracle.com/cloud/cloud-native/container-engine-kubernetes/), [AKS](https://azure.microsoft.com/en-us/products/kubernetes-service), [GKE](https://cloud.google.com/kubernetes-engine), [IBM Cloud Kubernetes Service](https://www.ibm.com/cloud/kubernetes-service), [DOKS](https://www.digitalocean.com/products/kubernetes), and many more throughout the Kubernetes Cloud Native ecosystem.
   284  
   285  ### Managed Topology
   286  
   287  See [Topology](#topology)
   288  
   289  ### Management cluster
   290  
   291  The cluster where one or more Infrastructure Providers run, and where resources (e.g. Machines) are stored. Typically referred to when you are provisioning multiple workload clusters.
   292  
   293  ### Multi-tenancy
   294  
   295  Multi tenancy in Cluster API defines the capability of an infrastructure provider to manage different credentials, each
   296  one of them corresponding to an infrastructure tenant.
   297  
   298  Please note that up until v1alpha3 this concept had a different meaning, referring to the capability to run multiple
   299  instances of the same provider, each one with its own credentials; starting from v1alpha4 we are disambiguating the two concepts.
   300  
   301  See [Multi-tenancy](../developer/architecture/controllers/multi-tenancy.md) and [Support multiple instances](../developer/architecture/controllers/support-multiple-instances.md).
   302  
   303  # N
   304  ---
   305  
   306  ### Node pools
   307  
   308  A node pool is a group of nodes within a cluster that all have the same configuration.
   309  
   310  # O
   311  ---
   312  
   313  ### Operating system
   314  
   315  Or __OS__
   316  
   317  A generically understood combination of a kernel and system-level userspace interface, such as Linux or Windows, as opposed to a particular distribution.
   318  
   319  # P
   320  ---
   321  
   322  ### Patch
   323  
   324  A set of instructions describing modifications to a Kubernetes object. Examples include JSON Patch and JSON Merge Patch.
   325  
   326  ### Pivot
   327  
   328  Pivot is a process for moving the provider components and declared cluster-api resources from a Source Management cluster to a Target Management cluster.
   329  
   330  The pivot process is also used for deleting a management cluster and could also be used during an upgrade of the management cluster.
   331  
   332  ### Provider
   333  
   334  Or __Cluster API provider__
   335  
   336  This term was originally used as abbreviation for [Infrastructure provider](#infrastructure-provider), but currently it is used
   337  to refer to any project that can be deployed and provides functionality to the Cluster API management Cluster.
   338  
   339  See [Bootstrap provider](#bootstrap-provider), [Control plane provider](#control-plane-provider), [Core provider](#core-provider),
   340  [Infrastructure provider](#infrastructure-provider), [IPAM provider](#ipam-provider)  [Runtime extension provider](#runtime-extension-provider).
   341  
   342  ### Provider components
   343  
   344  Refers to the YAML artifact published as part of the release process for [providers](#provider);
   345  it usually includes Custom Resource Definitions (CRDs), Deployments (to run the controller manager), RBAC, etc.
   346  
   347  In some cases, the same expression is used to refer to the instances of above components deployed in a management cluster.
   348  
   349  See [Provider repository](#provider-repository)
   350  
   351  ### Provider repository
   352  
   353  Refers to the location where the YAML for [provider components](#provider-components) are hosted; usually a provider repository hosts
   354  many version of provider components, one for each released version.
   355  
   356  # R
   357  ---
   358  
   359  ### Runtime Extension
   360  
   361  An external component which is part of a system built on top of Cluster API that can handle requests for a specific Runtime Hook.
   362  
   363  See [Runtime SDK](#runtime-sdk)
   364  
   365  ### Runtime Extension provider
   366  
   367  Refers to a [provider](#provider) that implements one or more [runtime extensions](#runtime-extension).
   368  Runtime Extension provider's interaction with Cluster API are based on the Open API spec for [runtime hooks](#runtime-hook).
   369  
   370  ### Runtime Hook
   371  
   372  A single, well identified, extension point allowing applications built on top of Cluster API to hook into specific moments of the [Cluster API Runtime](#cluster-api-runtime), e.g. [BeforeClusterUpgrade](../tasks/experimental-features/runtime-sdk/implement-lifecycle-hooks.md#beforeclusterupgrade), [TopologyMutationHook](#topology-mutation-hook).
   373  
   374  See [Runtime SDK](#runtime-sdk)
   375  
   376  ### Runtime SDK
   377  
   378  A developer toolkit required to build Runtime Hooks and Runtime Extensions.
   379  
   380  See [Runtime SDK](../tasks/experimental-features/runtime-sdk/index.md)
   381  
   382  # S
   383  ---
   384  
   385  ### Scaling
   386  
   387  Unless otherwise specified, this refers to horizontal scaling.
   388  
   389  ### Stacked control plane
   390  
   391  A control plane node where etcd is colocated with the Kubernetes API server, and
   392  is running as a static pod.
   393  
   394  ### Server
   395  
   396  The infrastructure that backs a [Machine Resource](#machine), typically either a cloud instance, virtual machine, or physical host.
   397  
   398  # T
   399  ---
   400  
   401  ### Topology
   402  
   403  A field in the Cluster object spec that allows defining and managing the shape of the Cluster's control plane and worker machines from a single point of control. The Cluster's topology is based on a [ClusterClass](#clusterclass).
   404  Sometimes it is also referred as a managed topology.
   405  
   406  See [ClusterClass](#clusterclass)
   407  
   408  
   409  ### Topology Mutation Hook
   410  
   411  A [Runtime Hook](#runtime-hook) that allows external components to generate [patches](#patch) for customizing Kubernetes objects that are part of a [Cluster topology](#topology).
   412  
   413  See [Topology Mutation](../tasks/experimental-features/runtime-sdk/implement-topology-mutation-hook.md)
   414  
   415  # W
   416  ---
   417  
   418  ### Workload Cluster
   419  
   420  A cluster created by a ClusterAPI controller, which is *not* a bootstrap cluster, and is meant to be used by end-users, as opposed to by CAPI tooling.
   421  
   422  ### WorkerClass
   423  
   424  A collection of templates that define a set of worker nodes in the cluster. A ClusterClass contains zero or more WorkerClass definitions.
   425  
   426  See [ClusterClass](#clusterclass)