3 ways to spin up a Kubernetes cluster

Kim Schlesinger

Posted: March 8, 20224 min read
<- Back to Blog Home

Share

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!Sign up

Adopting Kubernetes can be complex and time-consuming. From initial exploration to implementation and beyond, the journey can take weeks, months, or even years. By using a managed Kubernetes service and choosing the best available technique to spin up clusters, organizations can move through the initial stages of implementation more quickly. Then they can get to work making the Kubernetes clusters production ready—implementing things like logging, monitoring, ingress setup, backup, security, and optimizing clusters in a way that makes sense for an organization.

When deciding how to create and deploy Kubernetes clusters quickly, three options to consider are a web interface, the command line, and terraform.

The web interface

Using a web interface like the one offered through DigitalOcean’s Managed Kubernetes allows users to spin up a Kubernetes cluster with a visual, easy-to-use interface without the complexities of handling the control plane and containerized infrastructure. Users can choose their configuration settings using dropdown menus, checkboxes, and other visual means. With a web interface, users can spin up a Kubernetes cluster in minutes, making it an excellent option for quick prototyping, proof of concept needs, and comparing managed Kubernetes services between providers.

When deciding if using a web interface is the best option for you, remember that while it’s easy, it’s impossible to share the Kubernetes configuration. This can mean it’s difficult to repeat the configuration, and easy for the person who set it up to forget the configuration details. However, if you’re looking for a way to get a Kubernetes cluster up and running immediately and are willing to accept some technical debt upfront, you can use a web interface to move quickly and refactor later.

Benefits:

  • It’s extremely fast
  • It’s visual and easy to use
  • It’s easy to spin clusters up and down

Considerations:

  • It’s impossible to share the configuration
  • It’s difficult to repeat
  • Centralizes all cluster knowledge with one person

The command line interface

The command line is a text-based interface that allows you to interact with the cloud provider’s API. Developers can use the command line to create, configure, and destroy resources, including Kubernetes clusters. For example, DigitalOcean’s command line interface doctl provides users with the ability to interact with resources like Droplets, Kubernetes clusters, firewalls, load balancers, database clusters, domains, and more through DigitalOcean’s API.

Using the command line to spin up a Kubernetes cluster is a developer-friendly technique that’s fast enough for quick prototyping and proof of concept. It’s a great option for developers who are already familiar with using the command line to interact with other offerings from their provider. Additionally, once you figure out the command for spinning up a Kubernetes cluster, it’s possible to write an automation script that repeats the process as many times as needed.

When assessing if using the command line to spin up a Kubernetes cluster is right for you, consider that it can be hard to share the configuration. The commands themselves can be quite long and involved, requiring familiarity and understanding of the documentation from your provider. It can be difficult to repeat if you’re spinning up the cluster from the command line and not creating a script to automate the repetition. If you do choose to write a script, remember that they can often be idiosyncratic and reflect the thought process of the individual writing the script, making them hard to understand from others.

Benefits:

  • Fast - great for proof of concept
  • Developer friendly
  • It’s possible to write an automation script

Considerations:

  • It can be hard to share the configuration.
  • It may be challenging to repeat if you’re not creating a script
  • Scripts that are created are idiosyncratic

Terraform

Terraform is an infrastructure as code tool that allows you to define the cloud infrastructure resources you want to create and then use the command line to invoke terraform commands, enabling the tool to create those resources for you. Using Terraform allows you to harness the power of infrastructure as code. You can create a file, commit it into your version control system and share it with other people, and it has a familiar syntax, making it easily repeatable. The file also becomes auditable, allowing you to run it through different scanning systems to see if there are any issues with your file before applying anything. Terraform is a great option for clusters being worked on by teams. It’s also really good for disaster recovery scenarios because it allows you to spin up a new cluster and transfer workloads really quickly if one of your Kubernetes clusters goes down.

When evaluating if Terraform is right for you, consider that it does require more work than the command line interface or the web interface, and it requires more technical expertise.

Benefits:

  • Enables you to preview infrastructure
  • It has version control
  • It’s easily repeatable
  • It’s auditable
  • Great for teams

Considerations:

  • Requires more effort than command line or web interfaces
  • Requires more technical expertise from the team

See how it works

In this deploy session, we walk through the web interface, the command line, and terraform, getting into the details of how each option works. To learn more about the different ways to spin up a Kubernetes cluster, watch the session recording:

Try it today

With DigitalOcean, control plane nodes are accessible. So spin up a DigitalOcean Kubernetes cluster today and test it yourself! For more information about using DigitalOcean and Managed Kubernetes for your business, contact our sales team.

Share

Try DigitalOcean for free

Click below to sign up and get $200 of credit to try our products over 60 days!Sign up

Related Articles

Choosing the Right DigitalOcean Offering for Your AI/ML Workload
Cloud education

Choosing the Right DigitalOcean Offering for Your AI/ML Workload

Top 10 Reasons to Choose DigitalOcean’s Managed Kafka Solution
Cloud education

Top 10 Reasons to Choose DigitalOcean’s Managed Kafka Solution

Accelerate Your Business with DigitalOcean App Platform
Cloud education

Accelerate Your Business with DigitalOcean App Platform