Managing Clusters

View clusters created with Kommander or any connected Kubernetes cluster

Creating or Connecting Clusters

Kommander allows you to monitor and manage very large numbers of clusters and so we make it easy to either connect existing clusters or create new clusters whose lifecycle is managed by Konvoy.

From the dashboard page or the clusters page, click Add Cluster and Create Konvoy Cluster.

Add Cluster Options

Creating a Konvoy Cluster

Connecting an Existing Cluster

Using the Add Cluster option, you can attach an already existing cluster, even an existing Konvoy cluster, directly to Kommander. Enjoy all the multi-cluster management and monitoring benefits that Kommander provides while keeping your existing cluster on its current provider & infrastructure.

See Attach Cluster

Creating a Konvoy Cluster via YAML

Clicking the Upload YAML option will allow you to utilize config generated by the Konvoy CLI tool. An example config can be created in the file cluster.yaml by running konvoy init. Ensure the correct Cloud Provider credentials are selected and add any cluster labels that apply.

Create Cluster Upload YAML

Adding/Removing Cluster Labels

Cluster labels are matched to the selectors created for projects. If a cluster is removed from a project any resources deployed to the cluster from that Project will be removed. If a cluster is added to a project any existing project resources will be deployed to the cluster.

Valid labels

  • Valid labels must have a key and a value, separated by a colon and a space. For example, “env: dev”
  • Valid label keys and values must be alphanumeric and can contain “-”, “_”, or “.”
  • Valid label keys and values must not start or end with “-”, “_”, or “.”

Types

There are several types of cluster types to be aware of in the Clusters tab.

  • Attached: A cluster that was not created with Kommander. Attached clusters’ lifecycle cannot be managed.
  • Managed: A Konvoy cluster that was created with Kommander. Managed clusters’ lifecycle can be managed.
  • Management: The Konvoy cluster that hosts Kommander.

Upgrading Kubernetes version

You can upgrade Kubernetes version on a running cluster from the Clusted Detail page (Figure 2.) Select an available desired version from the Version dropdown and confirm your action in the confirmation dialog.

Update Kubernetes Version Action

Update Kubernetes Version Action

Editing Clusters

Edit a Cluster Action

Editing an Attached cluster

For an Attached cluster you can only edit lables that are assigned to it.

Edit an Attached Cluster

Editing a Managed cluster

For a Managed cluster you can edit its name, labels, cloud provider tags and its node pools.

Edit a Cluster Form

Editing a node pool

When editing a node pool you can only increase the number of nodes in the pool. This is to prevent loosing any workloads that are currently running on the cluster.

You can also add labels and taints to a node pool.

Edit a Cluster Node Pools

Editing a labels and cloud provider tags

Edit a Cluster Labels and Cloud Provider Tags

Disconnect vs Delete

When you attach a cluster to Kommander that was not created with Kommander, you may later disconnect it. This does not alter the running state of the cluster, but simply removes it from the Kommander UI.

For managed clusters created with Kommander, disconnecting the cluster is not an option, but it can be deleted. This completely removes the cluster and all of its cloud assets.

WARNING: If you delete the management (Konvoy) cluster, you won't be able to use Kommander to delete the managed clusters that were created by Kommander. Be sure and delete any managed clusters before finally deleting the Konvoy cluster if your intention is to delete all clusters.

Statuses

Status Description
Pending This is the initial state when a cluster is created or connected.
Loading Data The cluster has been added to Kommander and we are fetching details about the cluster. This is the status before Active.
Active The cluster is connected to API server
Provisioning* The cluster is being created on your cloud provider. This process can take a long time. To follow the progress of creation, click “View Logs” in the dropdown menu.
Joining Cluster is being joined to the management cluster for federation.
Joined The join process is done, we wait for the first bit of data from the cluster to arrive
Deleting Cluster is being deleted. This process may a long time.
Error There has been an error connecting to the cluster or retrieving data from the cluster.
Failed* The cluster has failed to be provisioned. For more info on the failure, click “View Logs” in the dropdown menu.
Join Failed This can happen when kubefed does not have permission to create entities in the target cluster.
Unjoining Kubefed cleans up after itself, removing all installed resources on the target cluster.
Unjoined The cluster has been disconnected from the management cluster.
Unjoin Failed Unjoining from kubefed failed or some other error with deleting or disconnecting.
Deleting The cluster and it’s resources are being removed from your cloud provider. Click “View Logs” in the dropdown menu to follow progress. This process may a long time.
Deleted The cluster and it’s resources have been removed from your cloud provider.
Provisioned* The cluster has been created on your cloud provider.

* These statuses only happen on Managed clusters

Resources

Cluster card with resources

Figure 1. A cluster card with resources

Resource Description
CPU Requests The portion of the allocatable CPU resource that the cluster is requesting to be allocated. Measured in number of cores (e.g.: .5 cores)
CPU Limits The portion of the allocatable CPU resource that the cluster is limited to allocating. Measured in number of cores (e.g.: .5 cores)
CPU Usage How much of the allocatable CPU resource that is being consumed. Cannot be higher than the configured CPU limit. Measured in number of cores (e.g.: .5 cores)
Memory Requests The portion of the allocatable memory resource that the cluster is requesting to be allocated. Measured in bytes (e.g.: 64 MiB)
Memory Limits The portion of the allocatable memory resource that the cluster is limited to allocating. Measured in bytes (e.g.: 64 MiB)
Memory Usage How much of the allocatable memory resource that is being consumed. Cannot be higher than the configured memory limit. Measured in bytes (e.g.: 64 MiB)
Disk Requests The portion of the allocatable ephemeral storage resource that the cluster is requesting to be allocated. Measured in bytes (e.g.: 64 MiB)
Disk Limits The portion of the allocatable ephemeral storage resource that the cluster is limited to allocating. Measured in bytes (e.g.: 64 MiB)

For more detailed information, see the Kubernetes documentation about resources.

Platform Services

Services that have been installed on your management cluster. You can visit a cluster’s detail page to see which platform services have been enabled under the “Manage” section.

Cluster Detail Page

Figure 2. Cluster detail page