- Alertmanager
The Alertmanager is a service for handling alerts sent by client applications, such as
Prometheus
.See also the official Prometheus documentation for Alertmanager.
API Server kube-apiserver
The Kubernetes API Server validates and configures data for the Kubernetes objects that make up a cluster, such as Nodes <Node>
or Pods <Pod>
.
See also the official Kubernetes documentation for kube-apiserver.
Bootstrap Bootstrap node The Bootstrap node is the first machine on which MetalK8s is installed, and from where the cluster will be deployed to other machines. It also serves as the entrypoint for upgrades of the cluster.
Controller Manager kube-controller-manager
The Kubernetes controller manager embeds the core control loops shipped with Kubernetes, which role is to watch the shared state from API Server
and make changes to move the current state towards the desired state.
See also the official Kubernetes documentation for kube-controller-manager.
etcd
etcd
is a distributed data store, which is used in particular for the persistent storage ofAPI Server
.For more information, see etcd.io.
- Kubeconfig
A configuration file for
kubectl
, which includes authentication through embedded certificates.See also the official Kubernetes documentation for kubeconfig.
- Kubelet
The kubelet is the primary "node agent" that runs on each cluster node.
See also the official Kubernetes documentation for kubelet.
- Namespace
A Namespace is a Kubernetes abstraction to support multiple virtual clusters backed by the same physical cluster, providing a scope for resource names.
See also the official Kubernetes documentation for namespaces.
- Node
A Node is a Kubernetes worker machine - either virtual or physical. A Node contains the services required to run
Pods <Pod>
.See also the official Kubernetes documentation for Nodes.
- Node manifest
The YAML file describing a
Node
.See also the official Kubernetes documentation for Nodes management.
- Pod
A Pod is a group of one or more containers sharing storage and network resources, with a specification of how to run these containers.
See also the official Kubernetes documentation for Pods.
- Prometheus
Prometheus serves as a time-series database, and is used in MetalK8s as the storage for all metrics exported by applications, whether being provided by the cluster or installed afterwards.
For more details, see prometheus.io.
- SaltAPI
SaltAPI is an HTTP service for exposing operations to perform with a
Salt Master
. The version deployed by MetalK8s is configured to use the cluster authentication/authorization services.See also the official SaltStack documentation for SaltAPI.
- Salt Master
The Salt Master is a daemon responsible for orchestrating infrastructure changes by managing a set of
Salt Minions <Salt Minion>
.See also the official SaltStack documentation for Salt Master.
- Salt Minion
The Salt Minion is an agent responsible for operating changes on a system. It runs on all MetalK8s nodes.
See also the official SaltStack documentation for Salt Minion.
Scheduler kube-scheduler
The Kubernetes scheduler is responsible for assigning Pods <Pod>
to specific Nodes <Node>
using a complex set of constraints and requirements.
See also the official Kubernetes documentation for kube-scheduler.
- Service
A Kubernetes Service is an abstract way to expose an application running on a set of
Pods <Pod>
as a network service.See also the official Kubernetes documentation for Services.
- Taint
Taints are a system for Kubernetes to mark
Nodes <Node>
as reserved for a specific use-case. They are used in conjunction withtolerations <Toleration>
.See also the official Kubernetes documentation for taints and tolerations.
- Toleration
Tolerations allow to mark
Pods <Pod>
as schedulable for allNodes <Node>
matching some filter, described withtaints <Taint>
.See also the official Kubernetes documentation for taints and tolerations.
kubectl
kubectl
is a CLI interface for interacting with a Kubernetes cluster.See also the official Kubernetes documentation for
kubectl
_.