Kubermatic makes full use of Kubernetes cluster to organize and scale workloads, depending on your and your customer’s needs. In a typical small-scale setup, pictured below, a single cluster contains Kubermatic and the master components for every customer cluster.
The Master Cluster a Kubernetes cluster which is responsible for storing the information about users, projects and SSH keys. It hosts the Kubermatic components and might also act as a seed cluster.
The Kubermatic components are the
The Seed Cluster is a Kubernetes cluster which is responsible for hosting the master components of a customer cluster.
The seed cluster uses namespaces of Kubernetes to logically separate resources from each other. Kubermatic will install the master components of a Kubernetes cluster within each namespace, plus a light monitoring stack consisting of Prometheus and an OpenVPN server to allow secure communication between the master components in the seed cluster and the pod/service network of the worker nodes.
The Customer Cluster is a Kubernetes cluster created and managed by Kubermatic.
Kubermatic has the concept of Datacenters, for example “AWS US-East”, “DigitalOcean Frankfurt” or a local vSphere deployment. Datacenters are used to specify where customer clusters can be created in, so you can choose to only support running customer clusters on AWS.
Instead of running the Kubermatic master and seed components in a single cluster, it is advisable for large-scale deployments to have multiple, dedicated seed clusters, as pictured below.
This setup is useful for keeping the latency between the master components of a customer cluster and the worker nodes as small as possible, improving the Kubernetes performance for customers. In this setup, the supported datacenters are assigned to a single seed, for example
seed-uson GKE in
us-east1supports creating clusters in
seed-euon Amazon EC2 in
eu-west-1supports creating clusters in
See the installation documentation for more details on how to setup datacenters.