How to Create Kubernetes Clusters Using the Control Panel

DigitalOcean Kubernetes (DOKS) is a managed Kubernetes service that lets you deploy Kubernetes clusters without the complexities of handling the control plane and containerized infrastructure. Clusters are compatible with standard Kubernetes toolchains and integrate natively with DigitalOcean Load Balancers and block storage volumes.

You can create a DigitalOcean Kubernetes Cluster at any time from the DigitalOcean Control Panel by opening the Create menu in the top right.

The create menu

In the Create menu, click Clusters to go to the Create a Cluster page. On this page, you'll choose a Kubernetes version, datacenter region, and cluster capacity for your cluster and then create it.

Select a Kubernetes version

The latest stable release is selected by default. Older patch versions of the same minor release are available to support application-specific requirements.

Choose a datacenter region

Choose the region for your cluster. Your cluster's master and worker nodes will be located in the same region.

If you plan to use block storage volumes for persistent data storage, choose a region with block storage support. If you add a DigitalOcean Load Balancer to your deployment, it will automatically be placed in the same region as the cluster.

VPC Networking

In the VPC Network section, choose a VPC network for the cluster. You can choose one you've created or use your default network for the datacenter region. VPC enables an additional networking interface that can only be accessed by other resources within the same VPC network. This keeps traffic between Droplets and other applicable resource from being routed outside the datacenter over the public internet.

Choose cluster capacity

To create a cluster, you need to add at least one node pool with at least one worker. Specify the following fields for the node pool:

  • Node pool name. Choose a name for the node pool when it's created. Nodes inside this pool inherit this naming scheme when they are created. If you rename the node pool later, the nodes will only inherit the new naming scheme when they are recreated (when you recycle the nodes or resize the node pool).

  • Machine type (Droplet). Choose if you want your worker nodes to be backed by Basic, General Purpose, or CPU-Optimized Droplet plans.

  • Node plan. Choose the specific plan you want for your worker nodes. Each of the workers in a node pool has identical resources.

    To take advantage of different resource capacities, you can add additional node pools with the Add Additional Node Pool button and assign pods to the node pools with the appropriate worker resourcing.

  • Number nodes. Choose how many nodes to include in the node pool. By default, three worker nodes are selected because this is the minimum number to ensure high availability.

One-node clusters are an inexpensive option to begin learning Kubernetes or for a development environment where resiliency isn't a concern. However, a stand-alone Droplet with a container runtime or minikube will generally give you better performance than a one-node cluster for the same cost.

At the bottom of this section, you'll see the monthly rate for your cluster based on the resources you've chosen. When you create the cluster, billing begins for each resource (e.g. worker nodes, block storage volumes, load balancers) as it is created and ends as it is destroyed.

Add Tags

Clusters automatically have three tags:

  • k8s
  • The specific cluster ID, like k8s:EXAMPLEc-3515-4a0c-91a3-2452eEXAMPLE
  • The resource type, e.g. k8s:worker

You can also add custom tags to worker nodes in the Tags field.

Choose a name

By default, cluster names begin with k8s, followed by the version of Kubernetes, the datacenter region, and the cluster ID. You can customize the cluster name, which will also be used in the tag.

Create Cluster

When you've entered your other settings, create the cluster by clicking the Create Cluster button. It can take several minutes for cluster creation to finish.

Once your cluster is provisioned, use kubectl, the official Kubernetes command-line client, to manage the cluster. See How to Connect to a DigitalOcean Kubernetes Cluster to get set up.